Вот уже год как я занимаюсь робототехникой. Вначале были простенькие BEAM- букашки на микриках, далее line – трейсеры на l293, сумоисты – толкатели на логике. И вот наконец решил построить что –то более серьёзное – робот пылесос! Но, как известно серьёзному роботу нужен хороший мозг, из всех доступных вариантов самым подходящим является Микроконтроллер.
Сначала я хотел приобрести ARDUINO в качестве мозга, а также сенсоры и датчики POLOLY. Но далее посчитав во сколько мне всё это с доставкой обойдётся – понял что собрать всё это самому будет намного дешевле.
Вот из чего сейчас состоит мой набор модулей:

1. Контроллер (основной модуль).
На плате основного модуля находится стабилизатор напряжения на 5В, напряжение питания 7.4 – 12В, микроконтроллер ATmega16 (вместо него можно установить ATmega32 или 644). Порты A, B, C и D контроллера выведены на штыревые разъёмы. В верхней части платы расположен разъём для подключения ISP программатора. Для подключения питания остальных модулей, на плате имеется группа разъёмов (+ -).

Принципиальная схема:

2. Драйвер коллекторных двигателей.
Драйвер является посредником между электродвигателем и контроллером. Устройство выполнено на микросхеме l298N, что обеспечивает возможность использовать двигатели с током до 2 ампер, в случае использования драйвера на всю мощность, на него необходимо установить радиатор.

Я специально не стал применять в схеме различные инверторы, призванные сэкономить порты контроллера, дабы упростить схему. Питание двигателей подаётся на винтовой клемник расположенный в нижней части платы. Запитать двигатели можно также от основного источника, для этого нужно установить перемычку JMP1.

Таблица: Управление двигателями.
ENABLE1 (2)
INPUT1 (3)
INPUT2 (4)
MOTOR 1(2)
0
Что угодно
Что угодно
0
0
стоп
1
1
0
1
0
В одну сторону
1
0
1
0
1
В другую сторону
1
1
1
1
1
стоп
1
0
0
0
0
стоп
3. ISP программатор.
В данное время для прошивки контроллера я использую простой ISP программатор – 5 проводков с LTP порта. Надо сказать что при моём достаточно грубом обращении с ним за 2 месяца эксплуатирования я не сжёг ещё не одного пина LTP порта.


4. Модуль связи с компьютером RS232 – UART.
Ну а здесь всё по дата щиту, а я лишь сделал разводку платы.


5. Инфракрасный датчик препятствий.
Датчик препятствий состоит из 2-х частей:
— собственно сам датчик на базе ИК приёмника SM3374 (аналог TSOP1836) и ИК светодиода.
— генератор, подающий импульсы ножной частоты на ИК светодиод, но о нём ниже.
Я разделил этот модуль на две части специально, для того чтобы можно было использовать TSOP, отдельно, в качестве приёмника для связи с контроллером по RC5.
Схема:

Подстрочный резистор R2 служит для управления яркостью ИК диода.
Из-за простоты, разводку платы я делать не стал и собрал этот модуль на макетке.

6. Модуль генератора импульсов для засветки инфракрасных TSOP –ов.
Генератор собран на микросхеме NE555:


Частота устанавливается с помощью построечного резистора R1.
К генератору можно подключить до трёх датчиков.
Для подключения ИК бампера к управляющей плате используется разъем PLS6. К нему подведены выходы датчиков и вход сброса 555-го таймера и шины питания. Активный уровень сигнала сброса – нулевой. Вход сброса отключает генерацию несущей частоты.
В архиве так же приложена схема и разводка платы сдвоенного генератора на микросхеме NE556, на случай если понадобится генерировать сигнал для засветки TSOP – ов разной частоты.

Печатные платы модулей сделаны ЛУТ методом.

Вот простой пример использования этих модулей:

Платформа взята от танка на дистанционном управлении. После подачи напряжения на контроллер, робот едет вперёд, обнаружив перед собой препятствие, ИК датчиком, отъезжает назад, разворачивается на 100 градусов и едет дальше, пока не обнаружит другое препятствие.
Автор: Феофанов Иван
Скачать список элементов (PDF)
Прикрепленные файлы:
- robo_modul.rar (83 Кб)
- Тестовая прошивка.rar (1 Кб)