Подключение датчика линии arduino
Датчик линии выполнен на оптопаре TCRT5000. Установите два аналоговых сенсора линии на днище мобильной платформы, чтобы заставить робота не выезжать за пределы территории обозначенной контуром или следовать за нарисованной линией.
Сенсор способен не только отличать чёрную поверхность от белой, но и фиксировать все оттенки серого. Это дает вам возможность точно контролировать процесс перехода границы от черного к белому и поможет роботу не сбиться с пути.
Все подробности работы сенсора читайте в разделе на оптопару TCRT5000.
Датчик общается с микроконтроллером через аналоговый сигнал. На роль контроллера для работы с датчиком линии рассмотрим платформу Arduino Uno.
Что понадобится
- 1× Arduino Uno
- 1× Датчик линии TCRT5000 / Аналоговый (Trema-модуль)
- 1× Соединительные провода «папа-мама»
- 1× Кабель USB (A — B)
Для быстрой сборки и отладки устройства рекомендуем взять плату расширения Trema Shield, которая надевается сверху на Uno R3 методом бутерброда.
Исходный код
Выведем показания аналогового датчика линии в консоль. Для наглядного теста сенсора мы приготовили шкалу от чёрного к белому со всеми оттенками серого, которую можно распечатать на обычном принтере.
// Определяем ядро платы Arduino // для установки рабочего напряжения #if defined(__AVR__) #define OPERATING_VOLTAGE 5.0 #else #define OPERATING_VOLTAGE 3.3 #endif // GPIO пин с поддержкой АЦП constexpr auto PIN_SENSOR = A0; void setup() { // Открываем Serial-порт Serial.begin(9600); } void loop() { // Считываем данные с датчика линии int valueSensor = analogRead(PIN_SENSOR); // Переводим данные с датчика в напряжение float voltageSensor = valueSensor * OPERATING_VOLTAGE / 1024.0; // Выводим выходное напряжение в Serial-порт Serial.print("Value = "); Serial.print(voltageSensor); Serial.println(" Volts"); // Ждём 100 мс delay(100); }
Оптопара TCRT5000
Датчик линии выполнен на оптопаре TCRT5000, которая состоит из двух элементов — ИК-светодиода (излучателя) и фототранзистора (приемника). Когда светодиод излучает инфракрасный свет, световой поток отражается от поверхности и попадает на фототранзистор, где преобразуется в электрический сигнал. Темный цвет отражает меньше света, светлый — больше.
Показания датчика линии зависит от цвета объекта и расстояния сенсора до детектируемой поверхности.
- Цвет объекта. Чем белее отражающая поверхность, тем выше уровень напряжение на выходе «S». Чем чернее отражающая поверхность, тем ниже уровень сигнала на выходе «S». Пропасть над столом равносильно максимально черной поверхности.
- Расстояние сенсора до детектируемой поверхности. Датчик способен выдавать «адекватные» показания при расстоянии между сенсором и детектируемой поверхностью в диапазоне от 3 до 12 мм. При расстоянии менее 3 миллиметров — перегородка между ИК-излучателем и приемником мешает сенсору принимать отраженный свет. А при расстоянии более 12 миллиметров — отраженный свет рассеивается и не доходит до приемника.
Trema-контакты
Датчик линии подключается к управляющей электронике через группу из трёх контактов.
Контакт | Функция | Подключение |
---|---|---|
S | Выходной сигнал сенсора | Подключите к пину ввода-вывода микроконтроллера с поддержкой АЦП. |
V | Питание | Подключите к питанию микроконтроллера. |
G | Земля | Подключите к земле микроконтроллера. |
Комплектация
- 1× Плата-модуль
- 1× Трёхпроводной шлейф
Характеристики
- Модель: Датчик линии TCRT5000 / Аналоговый (Trema-модуль)
- Оптопара: TCRT5000
- Область видимости сенсора: 3–12 мм
- Напряжение питания Vcc: 3,3–5 В
- Аппаратный интерфейс: контакты S-V-G
- Программный интерфейс: аналоговый сигнал
- Выходное напряжение: 0–Vcc В
- Диаметр монтажного отверстия: 3,2 мм
- Размеры: 43,3×12,3×16,3 мм
Рабочая программа:
//Пин датчика
#degine sens_pin 8
#define led_pin 22
//Переменная, где будет хранится информация
//о том, что перед датчиком
//черное-true, белое- true,
boolean light;
voud setup() {
pinMode(led_pin, OUTPUT;
}
void loop() {
light = digitalRead(sens_pin);
if (light == HIGH)
digitalWrite(led_pin, HIGH);
else
digitalWrite(led_pin, LOW); }
Дата: 2023-01-18   Автор: Админ   Просмотров: 2337
Контакты
Если у Вас есть вопросы, мы с удовольствием на них ответим.
Адрес:
Мурманская область, г.Полярный ул. Красный Горн, д.16
Почта:
zatocdod@mail.ru
Телефон:
+7 (815-51) 7-59-64