-
Введение
-
Глава 1. Аппаратная основа
- Содержание Главы 1
- Подготовка
- Плата Arduino UNO
- Плата управления моторами
- Плата связи с датчиками
- Аппаратная основа на базе набора miniQ
- Аппаратная основа на базе набора Turtle
- Аппаратная основа на базе набора ShieldBot
- Как ученики строили своих miniQ роботов
- Этапы сборки
- Система электропитания робота
- Провода энкодеров и датчиков линии
- Завершение главы 1
-
Глава 2. Начало работ с системой программирования Arduino
- Содержание Главы 2
- Подготовка
- Общие правила организации систем управления
- Входные данные. Датчики
- Обработка данных. Микроконтроллер
- Выходные данные. Исполнительные устройства
- То, что нужно всегда помнить
- Начало работы с системой Arduino
- Загрузка программы-примера “Мигающий огонь”
- Модификация программы “Мигающий огонь”
- Алгоритм программы “Мигающий огонь”
- Завершение Главы 2
-
Глава 3. Управление тяговыми моторами
-
Глава 4. Связь с ультразвуковым датчиком расстояния
- Содержание Главы 4
- Подготовка
- Постановка задач
- Электрическое подключение датчиков расстояния
- Разработка алгоритма
- Исходный текст
- Адреса Echo и Trigger как глобальные переменные
- Отладка и испытание программы
- Руководство пользователя
- Приложение 4.1. Подсказки по сложному алгоритму
- Приложение 4.2. Исходный текст (для упрощённого алгоритма)
- Завершение главы 4
- Факультативная часть главы 4
-
Глава 5. Робот следует за рукой или лидером
- Содержание главы 5
- Подготовка
- Релейный регулятор
- Пропорциональный регулятор
- Утилиты
- UTILIT_OneRangeMeter ()
- UTILIT_Motors_Control ()
- UTILIT_Hand_Follow_Proportional (int _range_needed)
- Два факультативных упражнения после перерыва
- Программа следования за лидером
- Постановка задачи
- Макрос следования за Лидером
- Отладка и испытание программы Programm_modul_5_Leader_Follow.ino
- Если что-то не так
- Исследуем робота
- Важные замечания
- Приложение 5.1 Алгоритм пропорционального регулирования
- Приложение 5.2. Исходный текст утилиты регулятора для следования за рукой
- Приложение 5.3. Документация для макроса и утилит следования за лидером
- MACROS_Leader_Follow (int _distasnce_to_leader)
- UTILIT_LeftRightRangeMeter ()
- UTILIT_Leader_Follow_Proportional (int _range_needed)
- UTILIT_Motors_Control () & UTILIT_Motors_Stop ()
- Завершение главы 5
- Как можно улучшить нашего робота?
-
Глава 6. Структура программного обеспечения
- Содержание главы 6
- Подготовка
- Уровни программного обеспечения
- loop ()
- Задачи
- Макросы
- Утилиты
- Драйверы. Библиотеки. Калькуляторы
- Ввод-вывод
- Глобальные переменные
- Правила обмена информации между уровнями
- Практическое занятие 6.1. Учтём трение в механизмах
- Практическое занятие 6.2. Доворот в сторону лидера умножением
- Практическое занятие 6.3. Доворот в сторону лидера сложением
- Практическое занятие 6.4. Доворот в сторону лидера обнулением
- Практическое занятие 6.5. Делаем калькулятор
- Гонки за лидером
- Послесловие
- Список программ для Ардуино
- Лицензионное соглашение
Аппаратная основа на базе набора miniQ
В нашем кружке мы собрали несколько роботов на базе набора miniQ и один робот на базе набора Turtle. Набор miniQ продаётся во многих интернет-магазинах. Как он выглядит можно посмотреть по ссылке: http://arduino-kit.com.ua/2wd-miniq-robot-chassis-dlya-arduino

Как собрать из его деталей основу для робота, очень подробно описано на сайте amperka.ru в разделе: “Вики” – “Робот, ездящий по линии”.
Там же есть подробная инструкция, как написать и отладить программу для робота, ездящего по линии. Для нашего курса эта программа большого интереса не представляет, но может служить хорошим подспорьем для начала работ по Arduino.
Наши роботы на базе miniQ сделаны более компактно, но, по большому счёту, это вопрос вкуса и эстетических предпочтений. В любом случае лучше отказаться от батарейки «Крона» в пользу блока аккумуляторов, ввести в схему выключатель электропитания и гнездо для подзарядки.
Кроме этого надо будет вырезать из тонкой фанеры круг с тем же диаметром, что основной диск набора, и закрепить его сверху на длинных стойках. Получится как бы цилиндр. На верхнем диске позже Вы напишете имя робота. В нашем кружке есть роботы с именами: Гоша, Саша, Миша, Паша и Кеша.
Между верхним и нижним дисками образуется довольно много пустого пространства. Его мы будем использовать впоследствии для размещения различных датчиков.
Для построения аппаратной основы робота на базе набора miniQ потребуется:
- Набор miniQ.
- Плата Arduino UNO или её полный функциональный аналог.
- Плата MotorShield и плата TroykaShield или их функциональные аналоги других производителей.
- Две платы энкодеров для набора miniQ.
- Два цифровых чёрно-белых датчика линии (необязательно).
- Пластмассовый блок для восьми батарей типа АА и восемь перезаряжаемых аккумуляторных батарей типа АА с выходным напряжением 1.2 вольт (ёмкость батарей не ниже 2000 миллиампер-час каждая).
- Микропереключатель электропитания и гнездо для подключения блока зарядки.
- Металлические или пластмассовые стойки крепления плат (винт-гайка М3) следующих типоразмеров: 5, 10, 15, 20 мм (по 4-6 штук каждого типоразмера), винты и гайки М3 и электрические провода.
При изготовлении наших роботов нам пришлось немного поработать сверлом, надфилями и паяльником.
Металлические или пластмассовые стойки необходимы для крепления платы Arduino UNO, блока батарей и верхнего круга. После сборки аппаратной основы у Вас, возможно, останутся лишние стойки. Их можно будет применить позже для достройки робота.
На фотографиях ниже Вы можете видеть одного из наших роботов, построенных на базе набора miniQ. Его зовут Кеша.