repkatech
repkatech
53 просмотров0 комментариев

Проект “Ультразвуковой парковочный ассистент” на базе одноплатного компьютера Repka PI 4.

Представляю вам образовательный проект — “Ультразвуковой парковочный ассистент”, разработанный в рамках учебно-методического комплекса на базе одноплатного компьютера Repka PI 4. #

Этот проект использует ультразвуковой датчик HC-SR04 для измерения расстояния до объекта, что позволяет удобно отслеживать приближение автомобилей или других объектов, например, при парковке. Система визуализирует информацию о расстоянии на 7-сегментном дисплее, а также управляет RGB-светодиодами и пассивным зуммером, которые изменяют свое поведение в зависимости от того, насколько близко находится объект.

Проект «Ультразвуковой парковочный ассистент» является отличным примером применения ультразвуковой технологии в повседневной жизни, позволяя с помощью простых визуальных и звуковых сигналов помогать пользователю в процессе парковки.

Проект будет собираться с использованием “Учебно-методический комплекс REPKA”. Схему сборки можно найти в разделе "Примеры готовых проектов" учебного пособия УМК “REPKA”.

Также все необходимые материалы и схемы подключения доступны в репозитории на платформе Gitflic.

Компоненты проекта

  1. Зуммер пассивный модуль (Passive buzzer KY-006) — для подачи звуковых сигналов, изменяющихся по тону в зависимости от расстояния, см. рисунок 1.

2. 7-сегментный индикатор 0.36" — для отображения числовых значений расстояния, см рисунок 2.

3. Адресная светодиодная лента (WS2812) — используется для визуальной индикации состояния с помощью цветных светодиодов, см рисунок 3.

4. Ультразвуковой датчик расстояния (HC-SR04) — для измерения расстояния до объекта, см. рисунок 4.

Вы можете приобрести все необходимые компоненты отдельно от "Учебно-методический комплекс REPKA". Ссылки на модули приведены в таблице ниже.

Компонент Ссылка на приобретение
Монтажная/макетная плата Ссылка
Шлейф Ссылка
Переходник с шлейфа на макетную плату Ссылка
Соединительные провода

Провода соединительные м-п

Провода соединительные п-п

Провода соединительные п-п

7-сегментный индикатор 0.36" Ссылка
Зуммер пассивный модуль (Passive buzzer KY-006) Ссылка
Адресная светодиодная лента (WS2812) Ссылка
Ультразвуковой датчик расстояния (HC-SR04) Ссылка

Подготовительный этап

1. Подключим дополнительное питание 5V к макетной плате:

2. После чего выведем дополнительное питание на макетную плату:

3. Подключим переходник с шлейфа на макетную плату:

4. Соединим шлейф с переходником для подключения к макетной плате и Repka Pi 4:

5. Итоговый результат должен выглядеть таким образом:

Сборка проекта

Во время сборки проекта будем регулярно обращаться к электрической принципиальной схеме и монтажной схеме, представленными в учебном пособии (см. рисунки 5 и 6). Эти схемы будут служить основным ориентиром на всех этапах подключения компонентов, обеспечивая точность и правильность сборки устройства.

Для разработки кода будет использоваться текстовый редактор Geany, который входит в состав стандартного ПО Репка ОС.

Электрическая принципиальная схема

Монтажная схема

1. Подключение пассивного зуммера.

Обратимся к рисункам 5 и 6. Из них видно, что устройство подключается через GPIO12 и питается от 3.3V.

1.1. Выполним подключение к макетной плате согласно таблице 1.

Макетная плата

Пассивный зуммер

3.3V

VCC

GPIO12

IO

GND

GND

Таблица 1. Подключение пассивного зуммера к макетной плате.

1.2. Результат подключения будет выглядеть следующим образом, см. рисунок 7:

2. Для проверки правильности подключения используем python скрипт из репозитория repka-pi_iot-examples.

2.1. Клонируем репозиторий:

git clone git@gitflic.ru:repka_pi/repka-pi_iot-examples.git

2.2. Переходим в репозиторий:

cd repka-pi_iot-examples/

2.3. Выполним установку зависимостей.

2.3.1. Если хотите установить зависимости только для зуммера, выполните:

make setup-KY-006

2.3.2. Если хотите установить зависимости для всех датчиков и проектов, выполните:

make setup-all

2.4. Запускаем скрипт для проверки работоспособности прибора:

make KY-006

2.4.1. Если нет никакой реакции, то проверьте номер GPIO указанный в скрипте по пути devices/executive/KY-006_example/py

BEEP_PIN = 111  # Укажите номер пина, к которому подключен BEEP

2.4.2. Обратимся к пособию УМК “REPKA”, в котором представлена распиновка Repka PI 4 (рисунок 8).  Из нее следует, что уникальный идентификатор порта GPIO12 равен 360.

2.4.3. Внесем правки в код и выполним скрипт

 BEEP_PIN = 360  # Укажите номер пина, к которому подключен BEEP

2.5. После запуска зуммер должен воспроизвести мелодию.

3. Подключение 7-сегментного индикатор 0.36".

Как видно из схемы устройство подключается через порты GPIO и резисторы 100 Ом.

3.1. Согласно рисункам 6 и 7 подключим резисторы к индикатору:
3.2. Подключаем 7-сегментный индикатор к GPIO: 18, 23, 24, 25, 4, 17, 27, 22 через резисторы для защиты цепей. Важно не перепутать выводы, так как цифра на индикаторе строятся путем подачи низкого или высокого сигнала:

4. Аналогично пункту 2 выполним проверку подключения датчика.

4.1. Если ранее не устанавливали все зависимости командой setup-all, то установим зависимости для FYS-3611, выполнив:

make setup-FYS-3611

4.2. Запустим python скрипт, который находится по пути devices/input-output/FYS-3611_example:

make FYS-3611

4.3. Если все подключено верно, то все сегменты должны загореться, см. рисунок 11.

5. Подключение адресной светодиодной ленты (WS2812).

Как видно из рисунков 5 и 6 устройство подключается к MOSI через резистор 100 Ом и питается от 5V.

5.1. Выполним подключение согласно таблице 2.

Макетная плата

WS2812

5V

5V

GND

GND

MOSI

MOSI

Таблица 2. Подключение WS2812 к макетной плате.

5.2. Результат подключения устройства можно наблюдать на рисунке 12.

6. Аналогично пункту 2 выполним проверку подключения датчика.

6.1. Если ранее не устанавливали все зависимости командой setup-all, то установим зависимости для FYS-3611, выполнив:

make setup-ws2812

6.2. Запустим python скрипт, который находится по пути devices/input-output/WS2812_example:

make ws2812

6.3. При правильном подключении лента будет поочередно освещаться тремя основными цветами: сначала зеленым, затем красным и синим.

7. Подключение ультразвуковой датчик расстояния (HC-SR04).

Наконец, подключим ключевой компонент нашего проекта — ультразвуковой датчик. Как показано на рисунках 5 и 6, датчик работает от питания 5V и подключается к GPIO пинам 5 и 6 для передачи сигнала.

7.1. Выполним подключение согласно таблице 3.

Макетная плата

HC-SR04

5V

5V

GND

GND

GPIO 5

ECHO

GPIO 6

TRIG

Таблица 3. Подключение HC-SR04 к макетной плате.

7.2. Итоговый вид проекта выглядит следующим образом:

8. Аналогично пункту 2 выполним проверку подключения датчика.

8.1. Если ранее не устанавливали все зависимости командой setup-all, то установим зависимости для RGB модуля, выполнив:

make setup-HC-SR04 

8.2. В скрипте, который находится по пути devices/sensors/HC-SR04_example, необходимо изменить уникальные идентификаторы пинов GPIO, чтобы они соответствовали вашему подключению.

# Инициализация пинов

TRIGGER_PIN = 357  # GPIO пин для Trigger
ECHO_PIN = 356     # GPIO пин для Echo

8.2. Запустим python скрипт:

make HC-SR04 

8.3. При правильном подключении в консоли будет отображаться расстояние до цели:

Запуск проекта

Теперь, когда все компоненты подключены, можно запустить проект "Парковочиный". Для этого в репозитории repka-pi_iot-examples выполняем команду:

make parking-assistant

После запуска в консоли может наблюдать расстояние до цели:
На 7-сегментном дисплее будет отображаться первый разряд числа, которое измеряется с помощью ультразвукового датчика, и отображаться на дисплее, показывая значение до сотни. Зуммер будет изменять свой тон в зависимости от расстояния: чем ближе объект, тем выше тон. RGB-лента также будет изменять цвет в зависимости от расстояния: зеленый — для дальнего расстояния, красный — для ближнего, синий — для средней дистанции.

Практическая значимость проекта

Проект "Ультразвуковой парковочный ассистент" представляет собой эффективное применение ультразвуковых технологий для решения повседневных задач, таких как парковка. Этот проект позволяет интегрировать ультразвуковой датчик для измерения расстояния, создавая систему, которая визуально и звуково информирует пользователя о расстоянии до объектов, что особенно полезно при парковке в ограниченных пространствах. Система с 7-сегментным дисплеем, RGB-светодиодами и пассивным зуммером делает использование устройства интуитивно понятным и доступным. Практическая значимость этого проекта заключается в его возможности улучшить безопасность и удобство парковки, предотвращая столкновения и обеспечивая точную информацию о расстоянии до препятствий.

Расширение проекта

Проект "Ультразвуковой парковочный ассистент" можно расширить несколькими способами для улучшения функциональности и повышения удобства использования:

  1. Интеграция с мобильными устройствами: можно добавить возможность отправки уведомлений на мобильные устройства пользователя с помощью Bluetooth или Wi-Fi, чтобы отслеживать ситуацию вокруг автомобиля дистанционно.

  2. Подключение дополнительных сенсоров: для повышения точности можно интегрировать другие типы датчиков, например, инфракрасные или камеры для создания более сложных систем парковки.

Эти дополнения сделают проект более гибким и функциональным, а также обеспечат его использование в более широком диапазоне приложений.

Видеообзор проекта

Для более детального ознакомления с проектом, вы можете посмотреть видеообзор на платформе Rutube.

Пример использования с Python

Проект полностью реализован на языке Python. Код для работы с парковочным ассистентом можно найти в репозитории на платформе Gitflic.


Комментарии (0)

Для участия в обсуждении Вы должны быть авторизованным пользователем
Темы

Навигация

ВойтиРегистрация