Начало работы с Arduino Robot
Первые шаги по настройке Arduino Robot
Примечание
Это устаревший продукт.
С помощью Arduino Robot вы можете изучать электронику, механику и программирование. Это крошечный компьютер на колёсах. Он поставляется с рядом примеров проектов, которые можно легко повторить, и является мощной робототехнической платформой, которую можно модифицировать для выполнения всевозможных задач.
Робот поставляется с большим количеством входов: два потенциометра, пять кнопок, цифровой компас, пять датчиков пола и считыватель SD-карт. Он также имеет динамик, два мотора и цветной экран в качестве выходов. Вы можете управлять всеми этими датчиками и исполнительными механизмами через библиотеку Robot.
На роботе установлены две различные платы: плата управления (Control Board, верхняя) и плата моторов (Motor Board, нижняя). Если вы только начинаете знакомство с электроникой и программированием, вам следует работать с платой управления. По мере накопления опыта вы можете захотеть поэкспериментировать с платой моторов.
Плата управления робота
Плата моторов робота
Настройка робота
Когда вы впервые откроете робота, вам нужно будет выполнить несколько действий, прежде чем он будет готов к движению.
Во-первых, вам нужно вставить SD-карту в слот на задней стороне TFT-экрана, а затем вставить экран в разъём на плате управления робота. Экран должен быть ориентирован так, чтобы синий текст с надписью «SD Card» находился рядом с кнопками и динамиком.
После установки экрана вам нужно прикрепить защитную крышку для нижней платы. Это поможет предотвратить повреждение платы моторов объектами на земле. Прикрепите защитное покрытие к нижней части робота, как показано ниже.
Содержимое SD-карты
SD-карта используется для хранения информации, которую робот может считывать. Она поставляется предварительно загруженной изображениями и звуковыми файлами, используемыми в примерах Explore. Освоившись с функциональностью робота, вы сможете добавлять собственные файлы. Если вы случайно удалите файлы, используемые в примерах Explore, вы можете скопировать их из каталога SDcontent, расположенного в библиотеке робота. Также можно скачать файлы здесь.
Подключение робота к компьютеру
Каждая плата робота имеет микроконтроллер, который программируется независимо от другого. Рекомендуется программировать только плату управления (верхнюю плату), пока вы не освоитесь с функциональностью робота. Плата моторов (нижняя плата) имеет стандартную прошивку, которая подходит для большинства задач общего назначения.
Подключите плату управления к компьютеру USB-кабелем.
После подключения платы зелёный светодиод с маркировкой PWR на плате управления загорится. Светодиод LED1 под ним мигнёт несколько раз. На плате моторов красные светодиоды с маркировкой LED1–LED5 (на противоположной стороне от переключателя питания) также должны загореться.
Если светодиоды на какой-либо плате не загораются, проверьте, подключён ли плоский 10-контактный кабель связи рядом с переключателем питания к обеим платам.
Установка драйверов
OSX
При первом подключении робота к компьютеру под управлением OSX запустится «Keyboard Setup Assistant». Для робота ничего настраивать не нужно, поэтому можно закрыть этот диалог, нажав красную кнопку в верхнем левом углу окна.
Windows
Следующие инструкции предназначены для Windows 7. Они также действительны для Windows XP с небольшими различиями в диалоговых окнах.
Подключите плату и дождитесь начала процесса установки драйверов Windows. Если установщик не запустится автоматически, перейдите в Диспетчер устройств Windows (Пуск > Панель управления > Оборудование) и найдите запись Arduino Robot. Щёлкните правой кнопкой мыши и выберите Обновить драйвер.
На следующем экране выберите «Выполнить поиск драйверов на этом компьютере» и нажмите Далее.
Нажмите кнопку Обзор…. Появится другой диалог: перейдите к папке с только что загруженным программным обеспечением Arduino. Выберите папку drivers и нажмите OK, затем нажмите Далее.
Вы получите уведомление о том, что плата не прошла тестирование логотипа Windows. Нажмите кнопку Всё равно продолжить.
Через несколько мгновений окно сообщит, что мастер завершил установку ПО для Arduino Robot. Нажмите кнопку Закрыть.
Linux
Для Linux установка драйверов не требуется. (Протестировано с Ubuntu 12.04)
Привет, пользователь!
Arduino Robot поставляется с предустановленным приложением, которое запросит ваше имя, как вы хотите назвать робота и ваше местоположение. Следите за экраном робота для получения информации о том, как ввести данные с помощью кнопок и потенциометра.
Вы можете запитать робота с помощью 4 батарей AAA или подключить USB-кабель к плате моторов или плате управления.
После прохождения процедуры настройки робота вы можете начать писать свои собственные программы для его управления.
Загрузка тестового скетча
Для программирования робота подключите плату управления к компьютеру через USB. Откройте Arduino IDE и загрузите скетч, расположенный в File > Examples > Robot_Control > learn > MotorTest.
Вам нужно сообщить IDE, на какую плату Arduino нацелено ваше программное обеспечение, поэтому откройте меню Tools > Board и выберите Arduino Robot Control.
Arduino IDE должна знать, к какому из USB-портов подключён робот. Меню Tools > Serial отображает доступные порты.
если показан только один элемент, нажмите на него.
если показаны два или более, вы можете отключить плату управления и снова открыть меню; исчезнувшая запись должна соответствовать роботу. Подключите плату снова и выберите этот последовательный порт.
Нажмите кнопку «Upload» в верхнем левом углу окна IDE. Подождите несколько секунд — вы должны увидеть мигающие светодиоды RX и TX на плате. Если загрузка прошла успешно, в строке состояния программы появится сообщение «Done uploading.». После этого можно отключить робота от USB-кабеля.
С установленными батареями включите переключатель питания и поставьте робота на пол. Робот должен показать вам несколько базовых движений. Поздравляем! Вы запустили робота.
Если робот не двигается, выключите переключатель питания. Подключите плату моторов к компьютеру USB-кабелем. Загрузите скетч File > Examples > Robot_Motor > Robot_Motor_Core в IDE и выберите Arduino Robot Motor в меню Boards. Загрузите этот скетч, отключите от компьютера и попробуйте включить снова.
Примечание
Если последовательный порт не появляется после подключения робота, и перезапуск IDE / переподключение робота не помогает, выполните следующие шаги:
Откройте очень простой скетч, например Blink или BareMinimum
Нажмите кнопку загрузки
Когда в строке состояния появится «Uploading…», дважды нажмите кнопку сброса на плате управления
Последовательный порт должен появиться как обычно.
Движение робота
Этот скетч заставляет робота двигаться вперёд и назад повторяющимся образом.
Каждый раз, когда вы пишете код для робота, обязательно включайте <ArduinoRobot.h> в начале скетча. Это импортирует необходимые библиотеки для управления роботом.
Объект Robot не нужно инициализировать.
Чтобы заставить колёса двигаться, вызовите Robot.motorsWrite(). motorsWrite() требует 2 аргумента: скорость левого мотора и скорость правого мотора. Эти значения варьируются от -255 до 255, где -255 — полная скорость назад, а 255 — полная скорость вперёд. Если вы передадите значение 0, мотор перестанет вращать колесо.
После загрузки скетча отключите USB-кабель от робота. Когда USB подключён, моторы робота отключены. Включите питание и наблюдайте, как он двигается!
#include <ArduinoRobot.h> // импорт библиотеки робота
void setup(){
Robot.begin(); // инициализация библиотеки
}
void loop(){
// движение вперёд в течение одной секунды
Robot.motorsWrite(255,255);
delay(1000);
Robot.motorsWrite(0,0); // остановка
delay(1000);
// движение назад в течение одной секунды
Robot.motorsWrite(-255,-255);
delay(1000);
Robot.motorsWrite(0,0); // остановка
delay(1000);
}
Чтение кнопок
Вы напишете скетч, который выводит нажатия кнопок на экран.
Сначала подключите библиотеку Robot.
#include <ArduinoRobot.h>
В setup() запустите робота и экран.
void setup(){
Robot.begin();
Robot.beginTFT();
}
В loop() каждые 100 мс считывайте состояние кнопок. Если какая-либо из них нажата, выведите имя на экран.
void loop(){
Robot.debugPrint(Robot.keyboardRead(), 10, 10);
delay(100);
}
В папке explore примеров робота есть скетч Logo, который объединяет этот пример с движением робота из предыдущего раздела.
Изменение скорости мотора с помощью потенциометра
Этот пример позволяет управлять скоростью, с которой робот движется по прямой. Поворачивая ручку и отображая значения в диапазон от -255 до 255, вы устанавливаете скорость и направление (вперёд или назад) робота.
Сначала подключите библиотеку Robot.
#include <ArduinoRobot.h>
В setup() вызовите Robot.begin() для инициализации функций робота. Также вызовите Robot.beginTFT() для инициализации экрана.
void setup(){
Robot.begin();
Robot.beginTFT();
}
В loop() считайте значение потенциометра с помощью Robot.knobRead(). Преобразуйте его значение (число от 0 до 1023) в диапазон от -255 до 255. Выведите это значение на экран и используйте его для изменения скорости моторов.
void loop(){
int val=map(Robot.knobRead(),0,1023,-255,255);
Robot.debugPrint(val);
Robot.motorsWrite(val,val);
delay(10);
}
Мотор робота отключён, когда подключён через USB. После программирования робота отключите USB-кабель и вставьте батареи. Включите переключатель питания и наблюдайте за движением робота. Поймайте робота и поверните ручку, чтобы изменить его скорость.
Издаём звуки
Робот имеет два различных средства воспроизведения звука. Есть простой гудок, но робот также может создавать более сложные звуки, считывая секвенсированную музыку с SD-карты. В этом примере вы начнёте с гудка. Чтобы узнать о более сложном воспроизведении, смотрите пример Melody в папке learn.
Сначала подключите библиотеку Robot.
#include <ArduinoRobot.h>
В setup() вызовите Robot.begin() для инициализации функций робота. Также вызовите Robot.beginSpeaker() для инициализации динамика.
void setup(){
Robot.begin();
Robot.beginSpeaker();
}
В loop() вы можете вызвать Robot.beep() для создания гудка. Существует три различных типа гудков: простой гудок, двойной гудок и длинный гудок.
void loop() {
Robot.beep(BEEP_SIMPLE);
delay(1000);
Robot.beep(BEEP_DOUBLE);
delay(1000);
Robot.beep(BEEP_LONG);
delay(1000);
}
Следующие шаги
С роботом можно сделать множество вещей. Несколько примеров на этой странице не могут передать всего. Чтобы увидеть более сложные примеры того, на что способен робот, посмотрите скетчи в папке Explore примеров робота. Это более полные примеры, демонстрирующие различные применения робота.
Вам нужно будет откалибровать модуль компаса робота, чтобы он плавно поворачивался. Если вы используете старую модель с Honeywell HMC 6352, обратитесь к этому руководству: Calibrate Compass.
Чтобы узнать больше о функциональности конкретных входов и выходов робота, загляните в папку learn в примерах робота.
Обязательно посетите страницу библиотеки Robot и страницу оборудования для получения дополнительной технической информации о роботе.