این ماژول یک سنسور اندازه گیری فاصله ساخت شرکت SHARP می باشد . GP2Y0A710K0F ها بر اساس دو واحد PSD (آشکار ساز موقعیت بر اساس حساسیت ) و IRED (دیود های انتشار مادونه قرمز ) عمل می کنند . در این سنسور با انتشار نور مادونه قرمز به صورت متمرکز و دریافت بازتاب آن مقدار فاصله تا جسم روبه رو اندازه گیری می شود . سنسور گیرنده این ماژول دارای تکنولوژی PSD است به طوریکه زاویه بازتابش و موقعیت تابش بر روی آن حساس است لذا اثر تابش محیط بر روی عملکر این سنسور اثری ندارد . همچنین این ماژول دارای واحد DSP داخلی جهت پردازش سیگنال خروجی گیرنده است . خروجی این ماژول به صورت آنالوگ می باشد و سیگنالی بین 1.5 تا 3 ولت است . الگوی تغییر اندازه گیری این ماژول به دو صورت می باشد ، برای فاصله های کمتر از 70cm ولتاژ خروجی بر اساس فاصله افزایش می یابد و برای فاصله های بیشتر از 70cm ولتاژ خروجی کاهش پیدا می کند . این سنسور دارای بیشترین برد در بین سنسور های IR شرکت Sharp می باشد .
مشخصات :
– عملکرد نوری بر پایه IRED
– دارای تکنولوژی PSD و عدم حساسیت به تابش های محیطی
– اندازه گیری فاصله از 100cm تا 550cm
– ولتاژ کاری 4.5 تا 5 ولت
– دارای ابعاد 58*17.6*22.5
– قطر سنسور های فرستنده و گیرنده 16mm
– خروجی به صورت آنالوگ
– حداکثر جریان مصرفی 30mA
پین های ماژول 2Y0A710 :
این ماژول داری 5 پین به صورت زیر می باشد.
راه اندازی 2Y0A710 توسط آردوینو :
راه اندازی این ماژول بسیار ساده است . متناسب با فاصله ای که از جسم وجود دارد ولتاژی بین 1.3 تا 3 ولت در خروجی قرار خواهد گرفت . می توان این سنسور را با استفاده از ADC ها راه اندازی کرد .
در مثال زیر مقدار قرار گرفته بر روی پین A0 در Serial monitor آردوینو IDE نمایش داده می شود . پین های VCC را به +5 و Ground را به GND آردوینو متصل کنید . همچنین پین Output را به A0 آردوینو وصل کنید .
کد های آردوینو :
#include <SharpIR.h> // Define model and input pin: #define IRPin A0 #define model 100500 // Create variable to store the distance: int distance_cm; /* Model : GP2Y0A02YK0F --> 20150 GP2Y0A21YK0F --> 1080 GP2Y0A710K0F --> 100500 GP2YA41SK0F --> 430 */ // Create a new instance of the SharpIR class: SharpIR mySensor = SharpIR(IRPin, model); void setup() { // Begin serial communication at a baud rate of 9600: Serial.begin(9600); } void loop() { // Get a distance measurement and store it as distance_cm: distance_cm = mySensor.distance(); // Print the measured distance to the serial monitor: Serial.print("Mean distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(1000); }