GP2Y0A710K Distance Sensor (100-550cm) เซ็นเซอร์ตรวจวัดระยะทางระยะไกล

GP2Y0A710K Distance Sensor (100-550cm) เซ็นเซอร์ตรวจวัดระยะทางระยะไกล

            GP2Y0A710K เป็นหน่วยเซ็นเซอร์วัดระยะทางที่ใช้หลักการ PSD (Position Sensitive Detector) ในการตรวจวัดระยะทางโดยวัดระยะทางจากแสงสะท้อนของเซ็นเซอร์อินฟราเรด IRED (Infrared Emitting Diode) และการประมวลผลของสัญญาณวงจรมีความหลากหลายในการสะท้อนแสงของวัตถุ สามารถนำไปใช้ได้กับบอร์ด ATX2, POP-X2 , IPST-SE, Arduino R3B, ESP8266(Node MCU)  เป็นต้น

           คุณสมบัติ

           1. ระยะทางที่สามารถวัดได้ตั้งแต่ 100-550 เซนติเมตร
           2. อินพุตจากขาสัญญาณอะนาลอก
           3.ขนาดของตัวเซ็นเซอร์ 58×17.6×22.5 มิลลิเมตร
           4. มีขาต่อใช้งาน 3 ขาคือ ขาต่อไฟเลี้ยง (Vcc), ขากราวด์ (GND) และขาแรงดันเอาต์พุต (Vout)
           5. ค่าแรงดันเอาต์พุตตั้งแต่ 4.5V ถึง 5.5V

           การประยุกต์ใช้งาน

          1. Projector (for auto focus)
          2. หุ่นยนต์ทำความสะอาด
          3. ตรวจวัดระยะทางของวัตถุ
          4. ตรวจจับความเคลื่อนไหวของคน
          5. ฯลฯ

 

  
          ตารางเปรียบเทียบการทำงานของ เเรงดัน เเละการวัดระยะทาง

          แรงดัน VS ระยะทาง แรงดันของไฟฟ้าที่ใช้ในการทำงานในการวัดระยะทาง (ช่วงระยะทางคือ 1 เมตรถึง 5.5m)

          กราฟเเสดงเเรงดันของไฟฟ้าในการวัดระยะทาง

            ตัวอย่างการใช้งานของเซ็นเซอร์ GP2Y0A710K

            ในตัวอย่างนี้เราจะนำเซ็นเซอร์ GP2Y0A710K ต่อใช้งานเข้ากับบอร์ด Arduino R3B ซึ่งในบอร์ดจะมีขา IDC ตัวผู้อยู่บนบอร์ด โดยสามารถนำขา IDC ตัวเมียที่มากับเซ็นเซอร์ GP2Y0A710K เสียบไปได้เลย ในตัวบอร์ด Arduino R3B ก็จะมีทั้งพอร์ตขาดิจิตอลเเละอานะลอก ที่เป็น IDC ตัวผู้เเละตัวเมีย มาให้เราเลือกใช้โดยสามารถเสียบใช้งานได้ทั้ง 2 แบบ

            การต่อวงจร

            จากในรูปเราสามารถนำสาย IDC ตัวเมียมาเสียบได้เลย สายไฟเส้นสีดำคือขา GND, เส้นที่เเดงคือขา Vcc เเละเส้นสีน้ำเงินหรืออาจจะเป็นสีขาวเเล้วเเต่รุ่น จะเป็นขาของ Signal หรือขาสัญญาณ ในตัวอย่างนำเซ็นเซอร์ GP2Y04710K ต่อเข้ากับขาสัญญาณอะนาลอก A4

            ตัวอย่างการเขียนโปรแกรม

/*
Tested by Awiruth by Inex
14/11/2016*/

/*Principle of this ranger: (See details in datasheet.)
Voltage is linear to the inverse of distance. (Distance range is 1m to 5.5m)
Two reference points:
Analog Voltage(V)   Digital value(0-1023)    Distance(cm)
  2.5                512                     100
  1.4                286                     500
Then, we have a linear equation of digital value and distance.
(512-sensorValue)/(1/100-1/distance)=(512-286)/(0.01-0.002) 
=> distance=28250/(sensorValue-229.5);
*/

void setup() { Serial.begin(9600); } int sensorValue; int distance; void loop() { sensorValue = analogRead(4); if (sensorValue >= 513) //Check Under Range { Serial.println("Under Range"); } if (sensorValue <= 280) { Serial.println("Over Range"); //Check Over Range } if(sensorValue>=280 && sensorValue<=512) //Corresponding distance range from 1m to 5.5m { Serial.print("The distance is: "); distance=28250/(sensorValue-229.5); Serial.print(distance); Serial.println("cm"); } delay(200); }

            การทำงานของโปรแกรม

            โปรแกรมจะทำการอ่านค่าจากสัญญาณอะนาลอก เเละนำค่าที่ได้จะนำไปคำนวณตามสูตรที่อยู่ในโปรแกรม เมื่อค่าของสัญญาณอะนะลอกมีค่าน้อยเเสดงว่าวัตุนั้นอยู่ไกล เเละถ้าค่าสัญญาณอะนะลอกน้อยเเสดงว่าวัตถุที่ตรวจจับได้นั้นอยู่ใกล้ เมื่อเซ็นเซอร์มีระยะทางที่วัดได้ต่ำกว่า 100 CM จะเเสดง Under Range เเละถ้าเซ็นวัดได้ระยะทางที่ไกลกว่า 550 CM จะเเสดง Over Range เเละถ้ามีค่าที่อยู่ในระยะ 100-550 CM จะทำการเเสดงระยะขึ้นมา ตามรูปภาพด่านล่าง

            เสร็จเเล้วสำหรับตัวอย่างการใช้งานเซ็นเซอร์ตรวจวัดระยะทางระยะไกล GP2Y0A710K Distance Sensor (100-550cm) สามารถนำไปประยุกต์ใช้ได้หลาย ๆ อย่าง ทำเป็นโครงงาน หรือ ติดไว้กับหุ่นยนต์ โดยสามารถใช้ได้กับบอร์ดหุ่นยนต์ POP-X2 ATX2 หรือ IPST-SE ก็ได้เช่นกัน

 

Facebook Comments