Формат - 70 х 100/16
Объем - 336 стр.
Тематика - Технические науки, промышленность -> Робототехника
Руководство для начинающих конструкторов написано в форме практических проектов по построению мобильных роботов. Для их реализации выбрана популярная платформа Arduino и единая базовая четырехколесная конструкция. Сложность проектов возрастает от простой, управляемой с пульта «машинки» до интеллектуального говорящего робота. Рассказано, как управлять моторами, осуществлять сборку механики и электроники, программировать основные функции и управлять роботом. Роботы смогут обходить препятствия, выбираться из запутанных лабиринтов, искать кегли и определять их цвета, ориентироваться по электронному компасу, гироскопу и даже балансировать на двух колесах.
Во 2-м издании обновлены все алгоритмы, добавлены проекты гироскоп-акселерометр, говорящий робот, голосовое управление роботом, механическая «рука» и др.
Электронный архив, находящийся на сайте издательства, содержит детали робота для печати на 3d-принтере, векторные рисунки для резки лазером, листинги, дополнительные библиотеки и программы.
А что бы не тратить время на поиски акрила и лазерного станка, где его порезать - не лучше ли обратить внимание на коробочную подарочную версию робота "ROBOT BIN CLASSIC", собираемого по авторской инструкции от М.Момота?
"Эту книгу я составлял как руководство для начинающих Конструкторов, людей, которым нравится конструировать. А за основу взял конструирование мобильных роботов на популярной платформе Arduino, позволяющей реализовывать как простейших, так и достаточно интеллектуальных роботов. Платформа открытая, изготавливать дополнительные модули для нее может любой человек или организация, то же относится и к программам.
Представленные проекты имеют единую колесную базу, но различаются системами датчиков и программным кодом. В процессе сборки вы научитесь программировать на платформе Arduino, обращаться с электронными компонентами, усвоите принципы действия датчиков, при помощи которых роботы следят за внешним миром, научитесь удаленному управлению и сможете конструировать своих оригинальных роботов."
Михаил Момот, автор книги
Об авторе
Момот Михаил Викторович, доцент кафедры информационных систем Томского политехнического университета., Увлекается робототехникой, поклонник и пропагандист проекта Arduino с 2014 года. Основатель неформального клуба робототехников "Лига роботов ЮТИ ТПУ", объединяющего школьников студентов, преподавателей.
Полное содержание
| Введение | 1 |
Глава 1. Основные составные части робота | 5 |
| Информационно-измерительная система | 5 |
| Датчик касания | 6 |
| Датчик температуры | 6 |
| Датчик освещенности | 7 |
| Датчик препятствия | 7 |
| Ультразвуковой датчик расстояния | 8 |
| Оптический рефлекторный датчик расстояния | 8 |
| Детектор шума | 9 |
| Энкодер | 10 |
| Датчик движения | 10 |
| Датчик газа | 11 |
| Датчик влажности | 11 |
| Видеокамера | 12 |
| Система принятия решений | 12 |
| Микроконтроллер | 13 |
| Контроллер Arduino | 13 |
| Система связи | 15 |
| Инфракрасный приемник | 15 |
| Канал Bluetooth | 16 |
| Канал Wi-Fi | 16 |
| Дисплей | 17 |
| Исполнительная система | 17 |
| Электрический двигатель постоянного тока | 18 |
| Сервомотор | 19 |
| Шаговый двигатель | 19 |
| Система энергоснабжения | 20 |
| Механика робота | 20 |
| Вспомогательные элементы | 20 |
| Резистор | 20 |
| Светодиод | 21 |
| Выключатель | 21 |
| Сервисные платы | 21 |
| Выводы | 23 |
Глава 2. Провода и их соединения | 24 |
| Виды проводов | 24 |
| Одножильные | 24 |
| Многожильные | 25 |
| Способы соединений проводов | 25 |
| Скрутка | 25 |
| Разъемные соединения | 26 |
| Пайка и ее основы | 28 |
| Оборудование и материалы | 28 |
| Этапы пайки | 29 |
| Выбор паяльника | 30 |
| Уход за паяльником | 31 |
| Припои | 31 |
| Флюсы | 32 |
| Выводы | 33 |
Глава 3. Электропитание | 34 |
| Закон Ома | 34 |
| Электрическая мощность | 34 |
| Характеристики элементов питания | 35 |
| Номинальное напряжение | 35 |
| Номинальный ток | 35 |
| Емкость | 35 |
| Форм-фактор | 35 |
| Типы элементов электрического питания | 35 |
| Солевые батареи | 36 |
| Алкалиновые батареи | 36 |
| Никель-металлогидридные аккумуляторы | 36 |
| Литий-ионные аккумуляторы | 36 |
| Стабилизация электропитания | 37 |
| Стабилизация напряжения | 38 |
| Стабилизация электрического тока | 40 |
| Измерение электрического тока, напряжения и сопротивления | 40 |
| Выводы | 42 |
Глава 4. Основы программирования Arduino | 43 |
| Компьютерная программа | 43 |
| Алгоритм | 44 |
| Среда разработки Arduino IDE | 45 |
| Установка Arduino IDE | 45 |
| Начало работы с Arduino IDE | 46 |
| Подключение контроллера Arduino к ПК | 46 |
| Мигаем светодиодом | 50 |
| Мониторинг работы программы | 51 |
| Переменные | 52 |
| Условные операторы | 54 |
| Оператор if ... else | 54 |
| Оператор switch ... case | 57 |
| Операторы циклов while и for | 58 |
| Функции | 60 |
| Элементы объектно-ориентированного программирования | 61 |
| Разделение программы (внутренние библиотеки) | 62 |
| Выводы | 63 |
Глава 5. Ходовая часть | 64 |
| Типы ходовых частей | 64 |
| Ноги | 64 |
| Гусеницы | 66 |
| Колеса с дифференциалом | 67 |
| Колеса на моторах | 67 |
| Летающие роботы | 68 |
| Выбор двигателей | 69 |
| Драйверы двигателей | 70 |
| Широтно-импульсная модуляция | 73 |
| Вращение в обе стороны | 73 |
| Сборка макета | 75 |
| Управляем двигателем без Arduino | 75 |
| Подключаем контроллер Arduino | 77 |
| Тестовая программа управления двигателями | 79 |
| Добавляем регулирование на основе ШИМ | 80 |
| Тестовая программа управления двигателями с регуляцией на основе ШИМ | 81 |
| Регулирование скорости вращения без использования аппаратного ШИМ | 82 |
| Выводы | 84 |
Глава 6. Сборка базовой модели | 85 |
| Минимальный комплект | 85 |
| Элементы питания | 88 |
| Двигатели | 88 |
| Драйвер двигателей | 91 |
| Соединение платы драйвера и двигателей | 93 |
| Проверка правильности подключения платы драйвера и двигателей | 94 |
| Верх корпуса | 99 |
| Установка устройств обратной связи | 103 |
| Светодиод | 103 |
| Зуммер | 107 |
| Укладка проводов | 108 |
| Выводы | 109 |
Глава 7. Схема управления движением | 110 |
| Переменные и функции управления моторами | 110 |
| Функции движений | 111 |
| Первая поездка | 111 |
| Алгоритм | 111 |
| Программа | 112 |
| Разделяем программу на два файла | 115 |
| Сигнал светодиодом | 118 |
| Выводы | 119 |
Глава 8. Дистанционное управление роботом | 121 |
| Способы дистанционного управления | 121 |
| Управление роботом по каналу инфракрасной связи | 122 |
| Схема подключения | 124 |
| Рекомендации по установке | 124 |
| Установка расширенной библиотеки | 126 |
| Получение кодов кнопок для используемого пульта | 126 |
| Программа | 129 |
| Управление роботом по каналу Bluetooth | 134 |
| Подбор элементной базы | 135 |
| Подключение к Arduino | 136 |
| Смена имени робота | 138 |
| Настройка смартфона | 140 |
| Устранение радиопомех | 141 |
| Программа | 142 |
| Выводы | 146 |
Глава 9. Движение по черной линии | 147 |
| Обнаружение черной линии | 148 |
| Фотодиод | 148 |
| Фоторезистор | 149 |
| Фототранзистор | 150 |
| Инфракрасный датчик отражения TCRT 5000 | 150 |
| Подготовка робота: установка датчиков | 152 |
| Выводы | 157 |
Глава 10. Поворотная голова | 158 |
| Ультразвуковой дальномер HC-SR04 | 158 |
| Схема подключения | 159 |
| Измерение расстояния | 161 |
| Управление сервомотором | 163 |
| Монтаж головы | 164 |
| Если что-то пошло не так... | 168 |
| Выводы | 169 |
Глава 11. Ходовые испытания: обход препятствий | 170 |
| Программа проверки и настройки основных функций робота | 170 |
| Константы и постоянные времени | 174 |
| Отладка программы | 175 |
| Выводы | 179 |
Глава 12. Робот, находящий выход из лабиринта | 180 |
| Способ обхода лабиринта | 181 |
| Обход лабиринта без модернизации робота | 182 |
| Программа | 184 |
| Сравнение и выбор датчиков | 186 |
| Ультразвуковой датчик HC-SR04 | 186 |
| Инфракрасный детектор препятствия | 187 |
| Инфракрасный датчик Sharp GP2Y0A21YK | 187 |
| Обоснование выбора датчиков препятствия | 188 |
| Модернизация робота | 188 |
| Монтаж детекторов препятствия | 188 |
| Программа для робота с детекторами препятствия | 192 |
| Модернизируем программу | 196 |
| Выводы | 198 |
Глава 13. Робот, держащий направление по электронному компасу | 199 |
| О компасе подробнее | 199 |
| Электронный компас | 200 |
| Подключение | 200 |
| Организация обмена данными | 202 |
| Модернизация робота | 203 |
| Получение данных от HMC5883L | 205 |
| Правильная установка магнитометра | 209 |
| Программа | 210 |
| Дополнительные материалы по калибровке | 214 |
| Выводы | 214 |
Глава 14. Робот, держащий направление по электронному гироскопу-акселерометру | 215 |
| Гироскоп | 215 |
| Акселерометр | 217 |
| Электронный гироскоп | 218 |
| Подключение гироскопа-акселерометра MPU-6050 | 219 |
| Получение данных с MPU-6050 | 221 |
| Шкала значений MPU-6050 | 223 |
| Модернизация робота | 224 |
| Схема подключения | 224 |
| Программирование | 225 |
| Основные функции | 225 |
| Программа | 233 |
| Выводы | 236 |
Глава 15. Робот, играющий в кегельринг | 238 |
| Простой кегельринг | 239 |
| Двухцветный кегельринг | 243 |
| Порядок обхода | 243 |
| Обнаружение черной линии | 244 |
| Обнаружение кегли | 244 |
| Определение цвета кегли | 246 |
| Коррекция направления движения | 246 |
| Модернизация робота с использованием гироскопа | 247 |
| Установка датчиков | 249 |
| Программа | 251 |
| Выводы | 254 |
Глава 16. Говорящий робот | 255 |
| Создание и монтаж аудиосистемы робота | 255 |
| Подготовка аудиосообщений | 263 |
| Модернизация программы | 266 |
| Выводы | 272 |
Глава 17. Балансирующий робот | 273 |
| Сборка балансирующего робота | 273 |
| Схема подключения | 273 |
| Конструкция | 274 |
| Программирование | 276 |
| Программа на показаниях гироскопа | 276 |
| Программа с фильтром Калмана | 279 |
| Программа с комплементарным фильтром | 283 |
| Комплементарный фильтр | 283 |
| Точная настройка | 284 |
| Выводы | 287 |
Глава 18. Некоторые улучшения и прочая полезная информация | 288 |
| Если не хватает портов ввода/вывода | 288 |
| Сдвиговые регистры: подключаем 8 светодиодов, электронное табло и управляем 18-ю выходами | 288 |
| Аналоговый мультиплексор: подключаем 16 и более аналоговых датчиков | 294 |
| Многоканальный PWM-драйвер: робот-андроид на 16 сервомоторах | 296 |
| Универсальное решение: два контроллера Arduino в связке | 299 |
| Подключаем шаговые двигатели | 302 |
| Робот, выполняющий голосовые команды | 305 |
| Рука для робота | 310 |
|   |   |
| Еще раз об электронном архиве | 312 |
| Как связаться с автором? | 312 |
|   |   |
| Приложение 1. Описание платы Arduino Sensor Shield v5.0 | 313 |
| Приложение 2. Содержание электронного архива | 316 |
| Предметный указатель | 321 |




