Tft монитор для парктроника подключение ардуино
В данной статье мы рассмотрим как сделать примитивный парктроник.
Для реализации будем использовать следующие компоненты. Мозгом будет являться Arduino на микроконтроллере atmega328p.
Измерять расстояние до объекта у нас будет ультразвуковой дальномер HC-SR04. Его принцип работы заключается в отправке ультразвукового сигнала одним сенсором и когда тот отразится от объекта, улавливает его другим сенсором.
Сигнализировать о приближении к дальномеру объекта будут у нас светодиоды в количестве 6 штук. Я решил взять разного цвета. Два зеленых, два желтых и два красных. Так для наглядности будет понятнее насколько близко находится объект.
Ну и еще для звукового сигнала решил использовать пьезоизлучатель. Который будет пищать при приближении объекта.
Подключать все описанные компоненты будем следующим образом:
Датчик HC-SR04 мы будем подключать к 12 и 13 пинам ардуино. Диодов как и говорилось ранее возьмем 6 шт. и подключим их с 2 по 7 пины ардуино. А буззер подключим к 11 пину ардуино.
После подключения всех компонентов к ардуино. Нам нужно будет залить в микроконтроллер скетч. Его можно найти у меня на сайте. Ссылка на сайт будет тут.
Получившийся парктроник подойдет для установки в гараж. И мы всегда сможем анализировать сколько места осталось до какого-то объекта.
Ну а демонстрация работы показана в видео тут:
В этом крафте покажу как сделать парктроник на Arduino при помощи ультразвукового дальномера HC-SR04. Дешевый и простой в использовании дальномер подойдет также для создания навигации в робототехнике, чтобы объезжать препятствия. Его также можно использовать при создании сигнализации или управлении освещением.
Ультразвуковой шилд HC-SR04 для Arduino или Ultrasonic sensor, работает по принципу эхо-локации излучает звуковую волну и принимает отраженный эхо-сигнал. Время между отправленным и принятым сигналом можно преобразовать в расстояние.
Видео ультразвуковой парктроник на Arduino
Чтобы сделать парктроник своими руками понадобится
- Arduino
- Ультразвуковой дальномер HC-SR04
- Светодиоды — 6шт.
- Резисторы 220Ом — 6шт.
- Провода папа-папа
- Пьезодинамик — 1шт.
- Макетная плата
Делаем парктроник при помощи Arduino и датчика HC-SR04
На макетной плате размещаем 6 светодиодов. У светодиодов минус будет общим. Катод ( короткая ножка) подсоединяем к минусовой шине на макетной плате.
К длинным ножкам светодиодов (анод) подключаем резистор 220Ом, без него светодиод сгорит.
По центру устанавливаем ультразвуковой датчик.
Дальномер HC-SR04 имеет 4 ножки:
К ножкам датчика парктроника подключаем провода. Echo будет соединен с 12-м контактом, а Trig с 13-м. GND к земле на плате микроконтроллера, а Vcc соответственно к выводу 5В на Arduino.
Также подключаем провода к ножкам резисторов. И последовательно к пинам Arduino от 2 до 7.
Пьезопищалка имеет два контакта плюс и минус. Отрицательный контакт можно объединить с минусом от ультразвукового дальномера. А положительный соединить с 11 пином на плате Arduino UNO.
Код программы для парктроника на Arduino
Чтобы схема парктроника на Arduino заработала, необходимо написать и загрузить скетч (код программы).
При приближении на указанную в скетче дистанцию будут загораться последовательно светодиоды и звучать сигнал разной тональности, который предупредит об опасном сближении.
Итак, в этом видео я собираюсь использовать ультразвуковой датчик для расчета расстояния до автомобиля от стены гаража и отображения его с помощью зеленых, желтых и красных светодиодов.
Общая стоимость проекта составляет около $ 20 - $ 25.
Проект имеет 3 фазы
Фаза 1: Ожидание автомобиля
На этом этапе устройство продолжает искать движущийся объект в непосредственной близости от датчиков. Если объект находится в непосредственной близости, то один из трех светодиодов включается в зависимости от того, насколько далеко перемещается объект. Если объект слишком близко, то раздается звук, чтобы уведомить водителя о расстоянии к стене.
Фаза 2: В гараже нет автомобиля.
Если поблизости нет объекта, выключаются все светодиоды.
Фаза 3: Автомобиль остановился (Припаркован в нужном месте).
Если объект остановился и все еще находится в непосредственной близости, ожидание 20 циклов процессора, а затем выключаются светодиоды.
Для этого очень простого проекта нам нужно:
- Плата
- Arduino nano / uno (все, что удобно)
- Красный, зеленый и желтый светодиоды
- 3 x 220 Ом Резистора для светодиодов
- Один ультразвуковой датчик HC-SRO4
- Зуммер или звуковой сигнал и резистор на 100 Ом
- 220vAC/5vDC понижающий модуль
- Кабель Ethernet
- Соединительные кабели
- USB-кабель для загрузки кода в Arduino
- и общее оборудование для пайки
Подключите красный светодиод к контакту D2, желтый светодиод к D3 и зеленый светодиод к D4 от Arduino, поставив резистор 220 Ом между платой Arduino и светодиодами. Теперь подключите зуммер к аналоговому выводу A0. Затем подключите вывод Trig Ультразвукового датчика к D5 и ECHO к D6 Arduino. Как только все модули подключены к плате Arduino, пришло время связать все положительные и отрицательные контакты. Соедините все положительные контакты модулей с понижающим модулем +5v, и отрицательные контакты на клемму -VE модуля. Вот и все, теперь мы можем загрузить наш эскиз на доску.
В этой сборке я использую 3 светодиода для отображения расстояния, однако вы можете заменить 3 светодиода светодиодом RGB, или вы также можете использовать массив светодиодов, таких как индикатор уровня звука, для отображения движения автомобиля.
Источник питания 220 В будет подключен к клеммной колодке. Затем базовый блок будет подключен к светодиодам и источнику питания с помощью кабеля Ethernet.
Код программы
int trigPin = PD5; // Sensor Trip pin connected to Arduino pin D5
int echoPin = PD6; // Sensor Echo pin connected to Arduino pin D6
int redLED = PD2; // Red LED connected to pin D2
int yellowLED = PD3; // Yellow LED connected to pin D3
int greenLED = PD4; // Green LED connected to pin D4
int buzzer = A0; // Buzzer connected to Analogue pin A0
long TempDistance = 0; // A variable to store the temporary distance
int counter = 0; // Counter value to check if the object has stopped moving
Интересный пример использования Arduino UNO в качестве парктроника. В качестве ультразвукового датчика используем HC-SR04.
Ничего особенного в использовании и настройке нет, даже напротив — всё очень просто. Я надеюсь что вопрос — Как настроить Ultrasonic Sensor? Где взять скетч для сенсора HC-SR04? После прочтения этой статьи больше не возникнет.
Парктроник на Arduino. Урок 8
Схема соединений. Парктроник на Arduino
Что необходимо для этого урока:
Arduino Uno R3 — 1 шт.
Резисторы 200-520 Ом. — 10шт.
Светодиоды:
Зеленые — 3 шт.
Синие — 3 шт.
Желтые — 2 шт.
Красные — 2 шт.
Ультразвуковой датчик измерения расстояния HC-SR04 — 1шт.
Модуль HC-SR04, позволяет измерять расстояния в приличном диапазоне, причём, достаточно точно. Расстояние до преграды которое он определяет колеблется от 2см до 400см, с шагом 0,3см. Напряжение питания 5V. Его работе не мешает солнечный свет. Но что что мешает, так это мягкие шторы — тюль, и домашние животные, расстояние до них он определяет с ошибками.
Индикатором работы парктроника являются светодиодные индикаторы — расстояние более 1 метра — зелёные, каждый последующий зажигаетя при изменеии растояния на 10 см. Последний красный загораетя, если расстояние сократилось и стало менее 10см. Индикация осуществляется как в светодиодном индикаторе пиковой мощности.
Подключение
На плате имеется 16 выводов, три из которых не используются. Выводы 11-14 подключены к разъему SD карты.
Программный SPI
Существует два основных варианта подключения Arduino и дисплея через SPI. В первом случае, можно использовать любые из GPIO выводов Arduino, но при этом будет использован медленный программный SPI драйвер. Пример такой схемы подключения представлен ниже.
Аппаратный SPI
Как известно, Arduino имеет встроенный аппаратный SPI. На Arduino Nano для этого используются выводы с 10 по 13.
Аппаратный SPI + SD карта
Как я уже написал, на плате дисплея есть слот для SD карт. Чтобы была возможность выводить с карты битмапы, слот, также как и сам дисплей, необходимо подключить к SPI шине.
Программа
Для управления дисплеем воспользуемся библиотеками Adafruit_ST7735 и Adafruit_GFX. Первая непосредственно дружит с драйвером дисплея, а вторая предоставляет функции для рисования разных геометрических фигур.
Для установки этих библиотек, потребуется скачать соответствующие архивы о указанным ссылкам, распаковать их в папку с установленным Arduino IDE: . /arduino/libraries. И не забыть переименовать их, убрав из названия символ "-" (иначе либы не подключатся).
После установки указанных библиотек, в списке примеров появится новый раздел Adafruit_ST7735, из которого нам понадобятся только три примера.
Скетч "graphicstest" использует первый вариант подключения - программный SPI. Второй скетч " graphicstest_highspeed " использует аппаратный SPI и выполняется гораздо быстрее первого варианта. Наконец, третья программа "spitftbitmap" выводит на дисплей картинку, заранее сохраненную на SD карточку. Картинка должна быть битмапом (.bmp) с глубиной цвета 24бит и с разрешением, ясен пень, 128х160 пикселей.
Для первых двух тестов я снял небольшое кино, с тем чтобы было понятно, как влияет использование аппаратного SPI на скорость отрисовки геометрии.
Читайте также: