SimpleJoy
Постановка задачи

В октябре 2017 к нам снова обратился образовательный клуб «Геккон», для которого мы делали проект Робомега. Для продолжения обучения школьников робототехнике требовался пульт управления и плата, которой этот пульт бы управлял. Имеющиеся на рынке решения не удовлетворяли заказчика либо дальностью связи, либо своим функционалом, либо своей стоимостью, либо всем вместе. Требовалось добиться:

  • максимальной дальности работы этого пульта не выходя за рамки не требующих лицензирования ограничений;
  • минимальной стоимости платы;
  • как можно меньшего размера управляемой платы: ее планируется встраивать в модели самолетов.

Мы разработали две платы — управляющую и управляемую — и написали прошивку для обеих.

Плата пульта

Пульт представляет собой плату размером 108 на 72 мм. На ней расположены:

  • два джойстика, для управления двигателями постоянного тока и сервоприводами, каждый из которых позволяет крутить ручку по двум координатам;
  • два переменных резистора для тех же целей;
  • пять кнопок. Одна из них зарезервирована для управления самого пульта, она включает и выключает подсветку;
  • экран. На экране отображается уровень заряда батарейки, уровень сигнала связи с платой, номер радиоканала (в одном пространстве нам будет необходимо управлять несколькими роботами). Также на экране отображается положение джойстиков и положение резисторов. Радиоканалов может быть сто (можно и больше, но нет необходимости);
  • dip-переключатель для задания радиоканала, то есть восемь маленьких переключателей, которые позволяют двоичным образом задать номер. Это избыточно (у нас не 255, а 99 каналов), но решили зарезервировать на будущее на всякий случай;
  • два светодиода: включение питания и наличие радиосвязи;
  • питание: три батарейки ААА;
  • micro-USB разъем для управления с компьютера.

Заказчик корпус для пульта сделает сам, от нас требовалось только разработать плату.

Управляемая плата

Управляемая плата предназначена для расположения внутри управляемого объекта: робота-машинки или робота-самолета. Ее размер 90 на 24 мм, из них 30 мм длины составляет антенна.

На плате расположены:

  • шесть трехконтактных разъемов (на каждом питание, земля и сигнал), это разъемы для подключения сервоприводов. При изменении положения джойстика или переменного резистора на эти сигналы подается соответствующий сигнал управления сервопривода;
  • четыре двухконтактных разъема для подключения двигателей постоянного тока. При получении сигнала от джойстика двигатель, подключенный к этому разъему начинает крутиться в ту или иную сторону в зависимости от угла отклонения джойстика;
  • еще два двухконтактных разъема, к которым также можно подключить двигатели постоянного тока, но в отличие от предыдущих двух нельзя менять направление вращения, только мощность, которая подается на эти контакты. К плате можно подключить довольно много разной периферии;
  • светодиод индикации питания;
  • светодиод индикации наличия радиосвязи:
  • такой же как на пульте восьмиконтактный переключатель для задания радиоканала;
  • питание: предполагается, что плата будет питаться от двух АА или ААА батареек, или одного Li-ion аккумулятора или от четырех NiCad аккумуляторов, как пожелает заказчик;
  • micro-USB разъем для управления с компьютера.
Антенны и радиосвязь

Для обеспечения радиосвязи были рассчитаны и оптимизированы антенны для обеих плат. Проектировка оказалась удачной, радиосигнал благополучно пробивает здание клуба с множеством бетонных перекрытий, на открытой местности порядка трехсот метров. На обеих платах антенны сформированы прямо на плате. Если после получения управляемой платой последнего управляющего пакета прошло 5 секунд, движки отключаются. Это необходимо для того, чтобы при потере сигнала робот-машинка остановилась.

Взаимодействие с компьютером

На каждой плате есть micro-Usb разъем, и процессор позволяет перепрошиваться посредством этого разъема. Процессор по нажатию кнопки входит в состояние бутлоадера, и для того, чтобы перепрошить плату нет необходимости в физическом программаторе, достаточно скачать специальную программу и подключить плату к компьютеру.

Также с точки зрения компьютера пульт — это последовательный порт, как следствие можно давать команды по этому порту, тем самым управляя удаленной платой не при помощи джойстиков и резисторов, а с компьютера, что открывает широкие возможности взаимодействия с роботом.

Вначале подается команда игнорировать джойстики, потом — команды текущего положения джойстиков и резисторов, а в конце — команда перестать игнорировать джойстики. Аналогично можно сделать для платы приемника, но неясно зачем.

Над проектом работали

Постановка задачи: клуб «Геккон».

Верификация тз: Йолаф.
Разработка печатной платы, программирование, сборка образцов: Крэйл.
Текст статьи: Нотиэль. 

Search

Tags
nfc волшебство всепроекты замок звук игротехника образование распознаваниежестов свет стимпанк удобныеприборы универсальныеустройства фантастика чуятьдругдруга