Лодка на Arduino с датчиками

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

Эта простая маленькая плавающая лодка «отскакивает» от стены и ей можно управлять при помощи фонарика.

Необходимые материалы

Клейкая лента
Термоклей и термопистолет
Два небольших двигателя постоянного тока
Две бутылки от воды
Провода
Два небольших пропеллера
Arduino + USB кабель + компьютер
Пластиковая коробка
9В батарея и разъем
Мощные диоды (например, 1N4004)
Разные резисторы
MOSFET транзистор или TIP 120
Две кнопки без фиксации и два фотоэлемента
Ножницы
Паяльник и припой

Установка двигателей в крышки от бутылок

1. Снимите крышки с бутылок.
2. Сделайте отверстия в каждой крышке.
3. Выдавите термоклей внутри крышки, но не закрывайте отверстия. Поместите вал двигателя в отверстие и посадите его на клей. После того как клей засохнет, вал должен свободно вращаться.
Сделайте это с каждой крышкой.

Скрепление бутылок

Скрепите бутылки вместе по принципу плота при помощи 2-х или 3-х полос клейкой ленты.

Провода к двигателям

Если на двигатели нет проводов, то припаяйте длинные (около 30см) провода к двигателям, прикреплённым к пробкам.

Сделайте небольшую щель для вывода проводов от двигателей в каждой бутылке.

Закрутите крышки на бутылки и проденьте провода через щели. Если крышка плохо закручивается, то приклейте её термоклеем.

Корпус для электроники

Приклейте пластиковую коробку на бутылки. Сделайте на боку коробки отверстие для проводов от двигателей. После этого, заклейте щели сделанные в бутылках термоклеем для герметичности.

Электронная часть

В схеме в качестве электронного ключа используется TIP 120 (или аналогичный транзистор Дарлингтона или MOSFET).
Он используется для коммутации нагрузки потребляющей большой ток, потому что Arduino не может дать достаточно тока для двигателей.  
Соберите  эту схему для первого двигателя и потом повторите для второго (вторая батарея не нужна).

Датчики

Проявите творческий подход! Если вам не нужны все датчики, то оставьте лишь необходимые.

Ультразвуковой дальномер Ping от Parallax прекрасно работает на передней части лодки и показывает наличие препятствия на пути. Фотоэлементы могут действовать как антенны, если вы хотите лодку, которая плывет на свет. Две кнопки по бокам лодки используются как датчик препятствия. Вы можете модифицировать код и использовать другие, например ИК датчики.

Схемы для различных датчиков

На рисунке изображена схема с простой кнопкой и 1K резистором. Повторите её для 2-х кнопок и установите их по обеим сторонам лодки. Это позволяет изменять направление движения в случае столкновения. Больше информации об этой схеме и образцы кода можно найти по ссылке

На втором рисунке изображена схема с фотоэлементом и 1K резистором. Повторите её два раза и разместите фотоэлементы по разным сторонам лодки. Больше информации и образцы кода можно найти по ссылке.

Код программы

Вы можете скачать готовые код, который я написал, чтобы дать лодке базовую функциональность. Он поддерживает фотоэлементы, ультразвуковой дальномер и кнопки. Лодка старается избегать препятствий по курсу. Если лодка натыкается на препятствие сбоку, то она поворачивает в другую сторону.  
По ссылке вы можете найти различные коды для лодки, если вы не хотите использовать все датчики, а лишь некоторые.

Или вы можете написать свой собственный код.

Окончательная сборка лодки

Установите вашу схему, Arduino и батареи в коробку и закройте её.

Откройте Arduino IDE. Выберите правильный файл и порт. Скомпилируйте и загрузите код в контроллер.

Проверка водонепроницаемости и тесты

Заклейте все отверстия и потенциальные места утечки термоклеем. Заизолируйте все провода (например от кнопок) во избежание кроткого замыкания.

И приступайте к испытанием в воде!

Оригинал статьи

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.