Рассмотрим ещё один вариант ИК-датчика измерения расстояния SHARP — GP2Y0A02YK0F.
Именно такой сенсор часто и удобно применяется в робототехнике (например, в «Poor Man’s Lidar» — PML — «лазерном дальномере бедных»)
Принцип работы
Работает сенсор по тому же принципу триангуляции, как и похожие сенсоры SHARP (см.
Датчик измерения расстояния SHARP-GP2Y0A02YK0F)
Сенсор SHARP-GP2Y0A02YK0F
Размеры
Особенности
1. Диапазон измерения расстояния: от 20 до 150 см
2. Аналоговый выход
3. Размеры: 29.5x13x21.6 мм
4. Потребление тока: 33 мА
5. Напряжение питания: от 4.5 до 5.5 В
* В целях стабилизации линии питания, рекомендуется, между Vcc и GND сенсора установить конденсатор 10 uF или более.
Применение
1. Безконтактный переключатель (сантехника, управление освещением и т.п.)
2. Датчик экономии энергии (ATM, копиры, вендинговые машины, ноутбуки, LCD-мониторы)
3. Развлекательное оборудование (роботы, аркадные игровые автоматы)
Подключается сенсор при помощи 3-пинового разъёма:
Vo, GND, Vcc
Аналоговый сигнал снимается с пина Vo.
Сенсор имеет нелинейный выход: при линейном увеличении расстояния, сигнал на аналоговом выходе увеличивается/уменьшается нелинейно:
Излом в начале графика, объясняется неспособностью дальномера обнаруживать объекты на близком расстоянии.
SHARP и Arduino
Работать с этим сенсором SHARP так же просто — подключаем к нему питание и заводим вывод Vo на аналоговый вход Arduino.
тестовый скетч для Arduino:
// // SHARP IR sensor testing // int IRpin = 0; // аналоговый пин для подключения выхода Vo сенсора void setup() { Serial.begin(9600); // старт последовательного порта } void loop() { // 5V/1024 = 0.0048828125 float volts = analogRead(IRpin)*0.0048828125; // считываем значение сенсора и переводим в напряжение float distance = 65*pow(volts, -1.10); // worked out from graph 65 = theretical distance / (1/Volts)S - luckylarry.co.uk Serial.println(distance); // выдаём в порт delay(100); // ждём }
документация на SHARP-GP2Y0A02YK0F (PDF)
Оборудование предоставлено компанией Farnell, за что ей (и лично Ryan Gibson) большое спасибо!
Ссылки
SHARP — GP2Y0A02YK0F — SENSOR, DISTANCE, ANALOGUE O/P
Arduino – Using a Sharp IR Sensor for Distance Calculation
По теме
Программирование Arduino — аналоговый ввод/вывод
Датчик измерения расстояния SHARP-GP2Y0A02YK0F
Датчик измерения расстояния SHARP-GP2Y0A02YK0F — рассчёт расстояния