СПб.: БХВ-Петербург, 2017. — 288 с.
Руководство для начинающих конструкторов написано в форме практических проектов по построению мобильных роботов. Для их реализации выбрана популярная платформа Arduino и единая базовая четырехколесная конструкция. Сложность проектов возрастает от простой, управляемой с пульта «машинки» до интеллектуального робота, самостоятельно играющего в кегельринг. Рассказано, как управлять моторами, осуществлять сборку механики и электроники, программировать основные функции и управлять роботом. Роботы смогут обходить препятствия, выбираться из запутанных лабиринтов, искать кегли и определять их цвета, ориентироваться по электронному компасу и даже балансировать на двух колесах.
Электронный архив, содержит детали робота для печати на 3d-принтepe, векторные рисунки для резки лазером, листинги и дополнительные библиотеки.
Для читателей, интересующихся электроникой и робототехникой.
Оглавление:
Введение
Основные составные части роботаИнформационно-измерительная система
Датчик касания
Датчик температуры
Датчик освещенности
Датчик препятствия
Ультразвуковой датчик расстояния
Оптический рефлекторный датчик расстояния
Детектор шума
Энкодер
Датчик движения
Датчик газа
Датчик влажности
Видеокамера
Система принятия решений
Микроконтроллер
Контроллер Arduino
Система связи
Инфракрасный приемник
Канал Bluetooth
Канал Wi-Fi
Дисплей
Исполнительная система
Электрический двигатель постоянного тока
Сервомотор
Шаговый двигатель
Система энергоснабжения
Механика робота
Вспомогательные элементы
Резистор
Светодиод
Выключатель
Выводы
Провода и их соединенияВиды проводов
Одножильные
Многожильные
Способы соединений проводов
Скрутка
Соединение клеммами
Пайка и ее основы
Оборудование и материалы
Этапы пайки
Выбор паяльника
Уход за паяльником
Припои
Флюсы
Выводы
ЭлектропитаниеЗакон Ома
Электрическая мощность
Характеристики элементов питания
Номинальное напряжение
Номинальный ток
Емкость
Форм-фактор
Типы элементов электрического питания
Солевые батареи
Алкалиновые батареи
Никель-металлогидридные аккумуляторы
Литий-ионные аккумуляторы
Стабилизация электропитания
Стабилизация напряжения
Стабилизация электрического тока
Выводы
Основы программирования ArduinoКомпьютерная программа
Алгоритм
Среда разработки Arduino IDE
Установка Arduino IDE
Начало работы с Arduino IDE
Подключение контроллера Arduino к ПК
Мигаем светодиодом
Мониторинг работы программы
Переменные
Условные операторы
Оператор If... else
Оператор switch... case
Операторы циклов while и for
Функции
Элементы объектно-ориентированного программирования
Выводы
Ходовая частьТипы ходовых частей
Ноги
Гусеницы
Колеса с дифференциалом
Колеса на моторах
Летающие роботы
Выбор двигателей
Драйверы двигателей
Широтно-импульсная модуляция
Вращение в обе стороны
Выводы
Сборка базовой моделиМинимальный комплект
Элементы питания
Двигатели
Драйвер двигателей
Соединение платы драйвера и двигателей
Проверка правильности подключения платы драйвера и двигателей
Подключение платы драйвера к контроллеру Arduino
Верх корпуса
Выключатель
Бокс для элементов питания
Подключение электропитания
Укладка проводов
Выводы
Схема управления движениемПеременные и функции управления моторами
Функции движений
Первая поездка
Алгоритм
Программа
Выводы
Дистанционное управление роботомСпособы дистанционного управления
Управление роботом по каналу инфракрасной связи
Схема подключения
Рекомендации по установке
Установка расширенной библиотеки
Получение кодов кнопок для используемого пульта
Программа
Управление роботом по каналу Bluetooth
Подбор элементной базы
Подключение к Arduino
Смена имени робота
Настройка смартфона
Устранение радиопомех
Программа
Выводы
Поворотная головаУльтразвуковой дальномер HC-SR04
Схема подключения
Измерение расстояния
Управление сервомотором
Монтаж головы
Если что-то пошло не так
Выводы
Ходовые испытания — обход препятствийПрограмма проверки и настройки основных функций робота
Константы и постоянные времени
Отладка программы
Выводы
Робот, находящий выход из лабиринтаСпособ обхода лабиринта
Обход лабиринта без модернизации робота
Программа
Сравнение и выбор датчиков
Ультразвуковой датчик HC-SR04
Инфракрасный детектор препятствия
Инфракрасный датчик Sharp GP2Y0A21YK
Обоснование выбора датчика препятствия
Модернизация робота
Монтаж детекторов препятствия
Программа для робота с детекторами препятствия
Модернизируем программу
Выводы
Робот, играющий в кегельрингПростой кегельринг
Двухцветный кегельринг
Порядок обхода
Обнаружение черной линии
Фотодиод
Фоторезистор
Фототранзистор
Инфракрасный датчик отражения TCRT 5000
Обнаружение кегли
Определение цвета кегли
Коррекция направления движения
Модернизация робота
Установка датчиков
Схема соединений
Программа
Алгоритм поиска кегли
Алгоритм взаимодействия с кеглей
Выводы
Робот, держащий направление по электронному компасуО компасе подробнее
Электронный компас
Подключение
Организация обмена данными
Модернизация робота
Получение данных от HMC5883L
Правильная установка магнитометра
Программа
Калибровка
Выводы
Балансирующий роботГироскоп
Акселерометр
Электронный гироскоп
Подключение гироскопа-акселерометра MPU-6050
Получение данных с MPU-6050
Шкала значений MPU-6050
Сборка балансирующего робота
Схема подключения
Конструкция
Программирование
Программа на показаниях гироскопа
Программа с фильтром Калмана
Программа с комплементарным фильтром
Комплементарный фильтр
Точная настройка
Выводы
Некоторые улучшения и прочая полезная информацияМодернизация детектора препятствий
Точные повороты
Самостоятельная сборка корпуса робота
Листинги
Интересные каналы YouTube
Приложение. Коммутационная плата Arduino UNO Sensor Shield V5.0
Приложение. Крепление серводвигателя и ультразвукового дальномера HC-SR04 на шасси робота
Приложение. Описание электронного архива
Предметный указатель