Difference between revisions of "SNS-GP2Y0A21YK0F"

(GP2Y0A21YK0F)
 
(5 intermediate revisions by the same user not shown)
Line 4: Line 4:
 
The output / distance relations is like this:
 
The output / distance relations is like this:
  
[[File:Example.jpg]]
+
[[File:Example.png]]
  
 
[http://luckylarry.co.uk/arduino-projects/arduino-using-a-sharp-ir-sensor-for-distance-calculation/ have nice article about measuring distance with Arduino]
 
[http://luckylarry.co.uk/arduino-projects/arduino-using-a-sharp-ir-sensor-for-distance-calculation/ have nice article about measuring distance with Arduino]
Line 13: Line 13:
 
      
 
      
 
     void setup() {
 
     void setup() {
       Serial.begin(9600);                             // start the serial port
+
       Serial.begin(9600);   // start the serial port
 
     }
 
     }
 
      
 
      
 
     void loop() {
 
     void loop() {
       float volts = analogRead(IRpin)*0.0048828125;   // value from sensor * (5/1024) - if running 3.3.volts then change 5 to 3.3
+
       float volts = analogRead(IRpin)*0.0048828125; // value from sensor * (5/1024)
       float distance = 65*pow(volts, -1.10);         // worked out from graph 65 = theretical distance / (1/Volts)S - luckylarry.co.uk
+
       float distance = 65*pow(volts, -1.10);       // worked out from graph 65
       Serial.println(distance);                       // print the distance
+
       Serial.println(distance);                     // print the distance
       delay(100);                                     // arbitary wait time.
+
       delay(100);                                   // arbitary wait time.
 
     }
 
     }
 +
 +
[[Category:Components:Sensors]]

Latest revision as of 05:11, 23 July 2014

GP2Y0A21YK0F

GP2Y0A21YK0F is IR distance sensor 10-80cm with analog output. The output / distance relations is like this:

Example.png

have nice article about measuring distance with Arduino

the final code is:

   int IRpin = 1;     // analog pin for reading the IR sensor
   
   void setup() {
     Serial.begin(9600);   // start the serial port
   }
   
   void loop() {
     float volts = analogRead(IRpin)*0.0048828125; // value from sensor * (5/1024)
     float distance = 65*pow(volts, -1.10);        // worked out from graph 65
     Serial.println(distance);                     // print the distance
     delay(100);                                   // arbitary wait time.
   }