Оптический датчик SHARP 2Y0A21
"Робот и Я"
Принцип работы оптического датчика Sharp заключается в том, что лазерный луч отражается от препятствия и попадает на матрицу в разные её места, в зависимости от того, на каком расстоянии произошло отражение.


Выход датчика нелинеен. Зависимость показаний датчика от расстояния имеет следующий вид:


Пик в начале первого графика объясняется тем, что датчик не способен обнаруживать объекты на малых расстояниях. Также, у разных моделей таких датчиков будут разные минимальное и максимальное расстояния.
Подключение
Датчик Sharp аналоговый, а значит его можно подключить к одному из входов АЦП Ардуино. В нашем случае, подключаем к A0.
SHARP 2Y0A21 | GND | VCC | OUT |
Arduino | GND | +5V | A0 |
float measur = analogRead(SENS_PIN);
voltage = measur * 5 / 1023;
dist = 65 * pow(voltage, -1.10); // вычисляем расстояние
Чертёж с размерами датчика

Купить можно за 400 руб