суббота, 19 июля 2008 г.

Управление роботом. Компьютер, КПК или микроконтроллер?

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

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

В некоторых проектах можно встретить в качестве устройства управления роботом -КПК. Сегодня КПК оснащаются мощными процессорами, большой памятью, коммуникационными устройствами такими как GPS, GPRS, EDGE, Bluetooth, WiFi. Некоторые коммуникаторы оснащены камерами высокого разрешения. Для программирования созданы различные визуальные студии. Например, для программирования устройств на Windows Mobile, используется Microsoft Visual Studio.NET, которая также включает эмулятор КПК.

Как очень хороший пример такого соединения КПК+робот, может послужить робот WiMo. Это мобильный робот, управляемый с компьютера через коммуникатор на базе Windows Mobile.
При создании робота, использовался готовый контроллер OOPic и коммуникатор на Windows Mobile. Связь между коммуникатором и контроллером осуществляется через интерфейс Bluetooth. Связь между роботом и компьютером осуществляется через интерфейс WiFi. Через WiFi робот получает голосовые различные голосовые команды. Через встроенную камеру коммуникатора, можно на растоянии наблюдать за происходящим глазами робота.

Но при использовании КПК есть и свои недостатки:
  • Программирование и отладка программ на КПК намного труднее, чем на обычном компьютере.
  • Сложность в подключении внешних устройств.
При выборе компьютера или ноутбука, как устройства управления поведением робота, мы получаем все те преимущества к которым привыкли: подключение различных внешних устройств, возможности современного высокоуровневого программирования, использование готовых библиотек и наработок.

Примером использования компьютера в качестве "мозгов" для робота, может послужить проект "Самодельный робот" на сайте http://robot.paccbet.ru. Это робот, управляемый с ноутбука. На сайте автора, собранно достаточно интересного материала для создания самодельного робота и использовать в качестве "мозгов" старенький ПК или ноутбук.

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

В своем проекте я решил использовать микроконтроллер AVR, который будет отвечать за работу двигателей робота и собирать информацию с различных датчиков. В качестве "мозгов" будет использоваться компьютер или точнее сказать плата mini-ITX. Но об этом я расскажу позже.