Разработка робота с нуля — не простая задача для начинающего инженера. Какие модули могут понадобиться? Как их разместить? Как предугадать все варианты использования робота, которые захочется воплотить в жизнь в будущем? С Arduino Robot эти проблемы вас не коснутся.
Arduino Robot — первая официальная робо-платформа от Arduino, разработанная на основе Arduino Leonardo. Этот робот готов к работе «из коробки». Он уже содержит в себе датчики, кнопки, цветной дисплей, разъём для micro-SD карты, цифровой компас, громкоговоритель. А благодаря библиотеке RobotLibrary процесс «оживления» вашего робота не займёт много времени. Вместе с тем Arduino Robot отлично подходит для модификаций. Он содержит большое количество удобно расположенных посадочных мест для различных датчиков, манипуляторов и другой периферии, а также площадки для прототипирования.
Arduino Robot — идеальная платформа для соревнований по робототехнике. Эта платформа позволит предоставить участникам одинаковые стартовые условия и поможет продемонстрировать своё мастерство.
Arduino Robot состоит из двух плат — платы управления и моторной платы. Каждая плата представляет из себя полноценную Arduino-платформу на основе контроллера ATmega32u4, которая программируется с помощью Arduino IDE.
Плата управления | |
---|---|
Микроконтроллер | ATmega32u4 |
Рабочее напряжение | 5 В |
Количество цифровых входов/выходов | 6 |
…из них могут использоваться как аналоговые входы | 4 |
Количество аналоговых входов, доступных через мультиплексор | 8 |
Максимальный ток через контакт входа/выхода | 40 мА |
Объём Flash-памяти | 32 кБ |
Объём SRAM-памяти | 2,5 кБ |
Объём внутренней EEPROM-памяти | 1 кБ |
Объём внешней EEPROM-памяти, подключённой через I²C | 1 кБ |
Тактовая частота | 16 МГц |
Также на борту платы управления:
Моторная плата | |
---|---|
Микроконтроллер | ATmega32u4 |
Рабочее напряжение | 5 В |
Максимальный ток через контакт входа/выхода | 40 мА |
Количество цифровых входов/выходов | 4 |
... из них могут использоваться как аналоговые входы | 4 |
Количество каналов PWM | 1 |
Объём Flash-памяти | 32 кБ |
Объём SRAM-памяти | 2,5 кБ |
Объём внутренней EEPROM-памяти | 1 кБ |
Тактовая частота | 16 МГц |
Также на борту моторной платы:
Arduino Robot может быть запитан от USB или от 4 АА аккумуляторов. Источник питания выбирается автоматически.
Батарейный отсек содержит 4 АА никель-металлгидридных аккумулятора.
Внимание! Не используйте обычные батарейки для питания вашего робота. Робот может быть запитан только аккумуляторами.
Робот содержит встроенное зарядное устройство для аккумуляторов. Для его работы необходим внешний источник постоянного тока на 9 В. Воспользуйтесь импульсным блоком питания для подзарядки вашего робота.
При питании от USB зарядное устройство и моторы автоматически отключаются.
Плата управления получает питание от моторной платы.
Микроконтроллер ATmega32u4 содержит
Плата контроля содержит 512 Кбит EEPROM-памяти, доступной через I²C-интерфейс.
Для увеличения памяти присутствует слот для micro-SD карты, который встроен в цветной графический TFT-экран. С SD-картой можно работать при помощи микроконтроллера платы управления.
Максимальный ток через каждый контакт — 40 мА, максимальное напряжение - 5 В. Представленные ниже обозначения контактов совпадают с их названиями в библиотеке Robot Library. Контакты имеют определённые функции:
Плата управления. Контакты TK0 — TK7. Это 8 аналоговых входов, которые подключены через мультиплексор к одному аналоговому входу микроконтроллера. Они могут использоваться для подключения аналоговых сенсоров.
Плата управления. Контакты TKD0 — TKD5. Это цифровые входы/выходы, подключённые к микроконтроллеру. Для их чтения используется функция Robot.digitalRead(), а для записи — Robot.digitalWrite(). Контакты TKD0 — TKD3 могут также использоваться как аналоговые входы при помощи функции Robot.analogRead().
Однако, цифровые входы/выходы TKD4 и TKD5 задействованы в управлении мультиплексором аналоговых входов TK0 — TK7, поэтому невозможно одновременно использовать TKD4, TKD5 и TK0 — TK7.
Связь плат между собой осуществляется с помощью последовательных портов микропроцессоров. Платы соединены 10-жильным плоским кабелем, через который происходит питание платы управления, производится связь микропроцессоров и передаётся дополнительная информация, например текущий заряд аккумуляторов.
Плата управления. Порт связи по протоколу SPI используется для управления цветным TFT-дисплеем и SD-картой. Если вы хотите прошить микроконтроллер через SPI-порт с помощью внешнего программатора, не забудьте сперва отсоединить дисплей.
Светодиоды платы управления. На плате управления расположены три светодиода. Один отображает наличие питания (PWR). Два других отображают связь через USB-порт (LED1/RX и TX). Светодиод LED1 вы можете использовать из своей программы.
Обе платы имеют порты для подключения по протоколу I²C. Доступны 3 порта для распайки на плате управления. На моторной плате находится 1 порт I²C.
К компьютеру робот подключается через USB-порт, и определяется как виртуальный COM-порт. Светодиоды LED1/RX и TX горят только во время связи между компьютером и роботом. Внимание! Обе платы имеют разные USB-идентификаторы устройства, поэтому они будут доступны на разных портах в Arduino IDE. Перед прошивкой платы убедитесь что вы используете правильный порт.
Робот может быть запрограммирован при помощи Arduino IDE или визуальной среды XOD IDE. В меню «Инструменты» → «Плата» выберите «Arduino Robot Control Board» при работе с платой управления, или «Arduino Robot Motor Board» при работе с моторной платой.
Одиночное нажатие кнопки сброса перезапустит вашу программу. После двойного нажатия кнопки сброса будет инициализирован загрузчик.