Arduino GP2D12
тел. +7(499)347-04-82
Описание Arduino GP2D12
Вот подробное описание, технические характеристики, парт-номера и совместимые модели для инфракрасного дальномера Sharp GP2D12 (и его электрического аналога GP2Y0A21YK0F).
1. Описание
Sharp GP2D12 (чаще всего под этим именем продается модель GP2Y0A21YK0F) — это аналоговый инфракрасный дальномер (IR distance sensor), работающий на принципе триангуляции. Он предназначен для измерения расстояния до объектов без физического контакта.
Принцип работы: Сенсор излучает модулированный инфракрасный луч. Луч отражается от объекта и попадает на позиционно-чувствительный детектор (PSD — Position Sensitive Detector). В зависимости от угла, под которым вернулся луч (угол триангуляции), меняется выходное напряжение на аналоговом пине. Чем ближе объект — тем выше напряжение, и наоборот.
Ключевые особенности:
- Не подвержен влиянию цвета объекта (в отличие от ультразвуковых датчиков или простых ИК-барьеров) в большей части диапазона.
- Относительно высокая скорость обновления (до 25-30 измерений в секунду).
- Для работы требуется всего 3 провода: Vcc, GND, Vo (аналоговый выход).
- Слепая зона: Датчик не умеет измерять расстояние ближе, чем указано в характеристиках (обычно ближе 10 см напряжение падает).
Важное примечание: В большинстве интернет-магазинов и учебных материалов «GP2D12» — это устаревшее маркетинговое название. Серийная модель, которую вы купите сегодня, с вероятностью 99% будет GP2Y0A21YK0F. Они полностью взаимозаменяемы по характеристикам и распиновке, но последняя доступнее и дешевле.
2. Технические характеристики (для GP2Y0A21YK0F / GP2D12)
| Параметр | Значение | | :--- | :--- | | Модель серии | GP2Y0A21 (ранее GP2D12) | | Диапазон измерения | 10 см – 80 см (оптимальная точность от 15 до 70 см) | | Тип выхода | Аналоговый (напряжение, DC) | | Частота обновления | 25,15 мкс (примерно 40 Гц) | | Аналоговый порог | Напряжение от ~0.4V (на 80 см) до ~2.8V (на 10 см) | | Напряжение питания | 4.5V – 5.5V (типичное 5V) | | Рабочий ток | Типично 30 мА (макс. до 50 мА) | | Интерфейс | Аналоговый (0–5V) | | Размеры (мм) | 29,5 × 13 × 21,6 (DIP корпус, 3 пина) | | Тип корпуса | Корпус с ИК-излучателем и приемником, экранированный | | Температура эксплуатации | -10°C...+60°C | | Соотношение выход/вход | Нелинейное (обратная экспонента). На графике ниже).
3. Особенности совместимости
Хотя сам датчик не является "протокольным" устройством I²C/SPI, он совместим с любым микроконтроллером, имеющим ADC (АЦП):
Совместимые управляющие платформы (совместимые модели):
- Arduino UNO / Nano / Pro Mini (наиболее популярно).
- Подключение: Аналоговый пин 0-5 (A0-A5).
- Пример:
int distance = analogRead(A0);— затем конвертируем милливольты в см (по аппроксимации сигнала.
- Arduino Due / Iduino Mega.
- ESP8266 (NodeMCU / Wemos D1). Хорошо, НО напряжение на входе АЦП ESP8266 составляет только до 1 В. Нужен делитель напряжения, так как сигнал GP2D12 может достигать 2.8 В (=> резистивный делитель).
- ESP32. Предпочтительнее ESP8266, так его АЦП тянет до 3.3V и родной Vref = ~1.1 В с делителем, или через кастомную стабилизацию и расчет, ошибка меньше. Лучше пропускать через усилитель/аттенюатор.
- STM32 (Blue Pill, Black Pill). Очень популярное использование. АЦП до 3.3V, подходит.
- Teensy / Pi Pico.
Работа с Arduino напрямую (основной каркас):
- Работает от 5V (прямое питание).
- Аналоговый выход (> АЦП микроконтроллера).
- Максимальное расстояние — около 100 см (падение точности + нестабильные измерения).
Совместимость с дрефующимися версиями: Можно вместо слова GP2D12 брать GP2Y0A21 — по распиновке 100% кол.
4. Парт-номера и коммерческие названия
| Полное наименование | Комментарий |
| :--- | :--- |
| GP2Y0A21YK0F | Основной парт-номер. Актуальная серийная модель. Доступна у DigiKey, Mouser, Ali. |
| GP2D120 | Дальн. Помещается ~ до 30-40 см (короткая дистанция). |
| GP2Y0A02YK0F | Модель на 20–150 см (длинный). (100.. 150 на результат). |
| GP2D15 | Ещё NPN out-based). FP output, 30 cm фикс (P PNP или «опто»). |
| GP2D12 (старое имя) | Теперь устаревший или крайне редкая инвентарный номер. |
| Sharp G5TB-CA | Одна IT vari (старый розовый диапазон гиамический) |
5. Парт-номера и тип электроники (простейшая ан.схема и подключение)
Если вы покупаете буквальный парт-номер запчасти для ремонта:
GP2D12 Exact part = ARD22-29AR (Стар но можно находить "ленивые распределения" / или SM H25 AA / ... →) в разных депо.
Лучше просто на Chinese-market требовать: **"Sharp GP2Y0A21 / GP2D12 Готовый".
Пример закупочных кодов:
GP2YPIN21YA КЕЙС'/ product-aliex / ar.un serial.
Итог по работе с кодом (на Arduino IDE архетипный с карманом):
// Подключите Vo (белый) к A0
long distance_cm;
float vol;
void setup() {
Serial.begin(9600);
}
void loop() {
vol = analogRead(A0) * (5.0/1023.0); // у напряжения DC ранг
distance_cm = 1000.8 * pow(vol, -1.1); // **эмпирика от Шарп-г.
// формула получает результат 15->80 меньше при дальних расчитывациячий
!!!! (ЛУЧШЕ ТАБЛИЦУ)
Serial.print("П итоге см: ");
Serial.println(tmp_result_adj.*CORRECT00)...
}
Важная нога: Прямая формула distance = 13 * pow(voltage/5, -1) ) ≠ рабочая
Рекомендация после кодирования: для всех 10..40г.
Снимать паспортное значение с помощью "линейный" замера и создания своей интерполционной таблицы (map функцией).
Пожелание приобретнния:
- Плата >> товара пришедший "SHARP завальный 500р. работающий на 0-3 см" - просто иметь табличку.
- Учти сенсор SE/кравt н контактах физической ПЗС и M10/M3 рез два крепеж мета поводнослика, особенно:
Part list включаять GP2Y0A21 от OK.D., Ази (вых RP еще около 10 не пропасть сход) или GM (Analog 80cm senzor).