Робот на лазерном управлении

Разработанное устройство представляет собой электронную игрушку, управляемую световыми импульсами на расстоянии, а в частности — при помощи лазерной указки. В качестве световых датчиков в устройстве используются четыре фоторезистора. Робот выполняет команды: Вперед, Вправо, Влево, Стоп. Управление роботом осуществляется подачей световых импульсов на датчики (фоторезисторы). Каждый датчик отвечает за определенную команду. Датчик расположенный «на носу» корпуса робота отвечает за команду Вперед, левый фоторезистор — поворот Влево, правый фоторезистор — поворот Вправо, фоторезистор который находится сзади — команда Стоп. Обработку сигналов, принятых с фоторезисторов выполняет программа инициализации микроконтроллера. В представленной схеме устройства используется микроконтроллер PIC16F872. Питание устройства производится от трех пальчиковых батареек номиналом 1,5 В. Схема разработанного устройства представлена на рисунке 1. На рисунке 2 показан внешний вид устройства без корпуса. Разводка печатной платы двухслойная (рис. 3). Устройство было смоделировано в программе Crocodile Technology. Данная программа имеет свой PCB-редактор (рис. 4 — Разводка печатной платы устройства в PCB-редакторе программы Crocodile Technology). Рисунок 5 демонстрирует алгоритм работы программы инициализации микроконтроллера. 

Рис. 1. Схема разработанного устройства.

Рис. 2. Внешний вид устройства без корпуса.

Рис. 3. Разводка печатной платы.

Рис. 4. Разводка печатной платы в PCB-редакторе программы Crocodile Technology.

Рис. 5. Алгоритм работы программы инициализации микроконтроллера. 

Программа опрашивает порты микроконтроллера. Если на каком-то из портов появляется логическая единица (срабатывает фотодатчик) — на выходы микроконтроллера подается одна из комбинаций: 11, 01, 10, 00, что приводит в движение (или наоборот – останавливает) соответствующий мотор, а значит и колесо робота.

Таблица 1. Таблица логических сигналов управления устройством.

 Вход МК   Выход МК   Команда 
  1000    11  Вперед
  0100    01  Вправо
  0010    10   Влево
  0001    00   Стоп

Схема и смоделированное устройство в программе Crocodile Technology находится в прикрепленном файле Sxema_robot.cxt. Причина, по которой нельзя в данной схеме использовать шифратор. Комбинация логических сигналов сохраняется на выходах микроконтроллера до тех пор, пока на его входе не появится новая команда (новая логическая единица — импульс света). То есть программа микроконтроллера не реагирует на комбинацию 0000 на входе. При использовании шифратора при исчезновении импульса света устройство остановится. Таким образом, для того, что бы робот был в движении — необходимо было бы постоянно удерживать световой луч на датчике, что, по моему мнению, неудобно при управлении устройством. В нашем случае для того, что бы привести в движение устройство достаточно кратковременного импульса света.

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
DD1 Микросхема К561ПУ4 1
DD2 МК PIC 8-бит PIC16F872 1
С1, С2 Конденсатор 22 пФ 2
R1-R4 Фоторезистор 1 МОм 4
R5-R8 Резистор 600 кОм 4
R9 Резистор 1 Ом 1
R10, R11 Резистор 2.4 кОм 2
ZQ1 Кварцевый резонатор 4 МГц 1
Электродвигатель 2
SA1 Выключатель 1
Батарея питания 1.5 В 3