Дизайн
и веб-разработка
Реклама
в интернете
Хостинг Телефония
и интернет
Слаботочные
системы
Магазин
 
ООО «Нетфорт» Москва,
ул. Нагатинская, д. 1, стр. 5
Схема проезда
+7 (495) 787-42-50

eDroid: Требования к системе

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

Что мы хотим

Хотим мы, чтоб оно ездило и управлялось через Интернет. Да чтобы еще и запас по модернизации был. Что же, попробуем как-то формализовать наши пожелания. Что должен уметь наш робот:

  • Двигаться вперед и назад
  • Поворачивать влево и вправо
  • Светить лампочками
  • Обладать каким-нибудь эффектором  — водяной или пневматической пушкой, манипулятором
  • Обладать расширяемым набором датчиков, например, датчиком освещенности
  • Перезагружать компьютер при его зависании
  • Принимать пакет байт от гипотетического устройства
  • Передавать изображение с web-камеры в режиме реального времени по WiFi
  • Получать по WiFi команды с сервера и выполнять их

Посмотрим, что нам нужно с точки зрения схемотехники для реализации этих умений

  1. Все, связанное с web-камерой и WiFi берет на себя компьютер, от нас никак аппаратных доработок не требуется. Будем считать, что камера у нас закреплена стационарно либо же используется готовая управляемая камера.
  2. Движение робота вперед и назад, повороты  — требуют одного двигателя для ведущих колес и одного двигателя для рулевого привода. Конечно, можно обойтись и электромагнитами, тогда у руля будет всего три положения  — левое, правое и среднее.
  3. Иллюминация требует транзисторных ключей, либо же микросхем, специально предназначенных для управления лампами.
  4. Какой бы эффектор мы не использовали, он будет требовать управления приводами. Чтобы не увеличивать количество электродвигателей, скорее всего это будут электромагниты. Значит, нужно заложить некоторое количество силовых ключей, к которым мы будем подключать требуемое по мере необходимости.
  5. Датчики могут быть весьма многообразными. Мы решили не создавать себе проблем с компараторами и аналоговыми устройствами, и заложить некоторое количество цифровых входов. А уж на них можно будет навешивать любые датчики по мере необходимости. Например, датчик в переднем бампере (разомкнут  — нет препятствия, замкнут  — уперлись в стену) и т.д.
  6. Перезагрузка компьютера  — весьма сомнительная функция, появилась исключительно из-за инерции мышления «объект автономный, должен уметь сам себя перезапускать, если что“. Ну ладно, поставим оптрон, перемыкающий RESET на плате компьютера.
  7. Прием байт от гипотетического устройства  — это задел на очень далекое будущее. Например, мы когда-нибудь сделаем второго робота, оснастим их стыковочными узлами и станут они собираться в Вольтрона  — защитника Вселенной… Кстати, неплохо бы тогда оставить и какие-нибудь логические выходы, чтобы можно было не только принимать байты, но и отправлять их.

Более-менее определившись, что мы хотим от робота, в итоге получили примерно такой список того, что будет на плате:

  1. Микроконтроллер.
  2. Два драйвера шаговых двигателей, они же могут управлять и двигателями постоянного тока, изменяя направление их вращения.
  3. Микросхема управления лампами, до трех ламп. Строго говоря, это могут быть любые устройства с током потребления не более 500 мА, но в нашем случае  — лампы. Выбор в сторону специализированной схемы сделан исключительно потому, что запаивать схему приятнее, чем отдельные транзисторы (а на самом деле  — просто та же инерция мышления).
  4. Полевые транзисторы на ток порядка 10А, что позволит подключать всякие приятные штуки (например, метатель дротиков).
  5. Пара мультиплексоров на 8 каналов  — так мы сможем подключить аж 16 цифровых датчиков. Перефразируя Билла Гейтса  — "16 цифровых входов будет достаточно всем».
  6. Оптрон, перемыкающий контакты RESET на материнской плате. Конечно, можно и без оптрона  — но, если хотите, это тоже инерция мышления.
  7. Для приема цифровых данных от других устройств и передачи их можно было воспользоваться встроенными средствами микроконтроллера… Можно, но мы будем этого делать. Какие там будут устройства  — еще неизвестно, потому оставим один вход и один выход, а по мере необходимости реализуем любой желаемый протокол.

Итоги

Мы решили, что будет уметь наш робот и какие элементы будут на плате. Количество силовых транзисторов определим, когда займемся интерфейсом и платой, к ним у нас жестких пожеланий нет. Ясно, что будет их больше одного, но меньше 16. Пора приниматься за интерфейс взаимодействия «компьютер-контроллер».

18 июля 2011 12:38

Записи на ту же тему