Изучение робототехники с использованием Python, Джозеф Л., 2019.
В данной книге рассказывается, как с нуля построить автономный мобильный обслуживающий робот, с помощью которого можно подавать еду в квартире, гостинице и ресторане. Благодаря подробным пошаговым инструкциям читатель узнает весь процесс разработки робота - начиная с теоретической части (принципы дифференциального привода, кинематики и обратной кинематики) и заканчивая практической реализацией (сборка отдельных компонентов, согласование приводов и датчиков с контроллерами). Много внимания уделено программной части - использованию метаоперационной системы ROS, моделированию в Gazebo, обработке изображений в OpenCV, разработке GUI робота на Qt и Python.
Издание предназначено для широкого круга читателей, увлеченных робототехникой, программированием и самостоятельной сборкой различных DIY-устройств.

Моделирование робота с дифференциальным приводом.
В этой главе мы рассмотрим модель робота с дифференциальным приводом и создадим URDF-модель робота в ROS. URDF - это универсальный формат XML-файла, используемый для описания всех элементов робота в ROS.
Устройство, которое мы собираемся построить, используется в качестве робота-помощника в отелях и ресторанах и предназначено подавать еду и напитки. Название такого робота - Chefbot.
В этой главе мы полностью смоделируем робот, познакомимся с созданной с помощью системы CAD (САПР - системы автоматического проектирования) конструкцией всех механических элементов и последовательностью сборки. Кроме того, мы рассмотрим конструкцию этого устройства в 2D- и 3D-npoeкт-циях и создадим его модель в формате URDF.
В отелях работают роботы больших размеров. Мы же построим робот для тестирования программного обеспечения. Поэтому он будет миниатюрным. Если вы желаете построить его с нуля, т. е. от начала и до конца, значит, эта глава для вас. Если же вы не желаете самостоятельно собирать робот из отдельных деталей, воспользуйтесь роботизированной платформой, например Turtlebot. Эта роботизированная платформа уже есть на рынке.
ОГЛАВЛЕНИЕ.
Составители.
Введение.
Глава 1. Начало работы с операционной системой для робота (ROS).
Технические условия.
Введение в ROS.
Концепции ROS.
Установка ROS на Ubuntu.
Введение в catkin.
Создание пакета ROS.
Введение в Gazebo.
Итоги.
Вопросы.
Глава 2. Основные понятия роботов с дифференциальным приводом.
Математическое моделирование робота.
Введение в систему дифференциального привода и кинематику робота.
Прямая кинематика дифференциального робота.
Объяснение уравнений прямой кинематики.
Обратная кинематика.
Итоги.
Вопросы.
Дополнительная информация.
Глава 3. Моделирование робота с дифференциальным приводом.
Технические требования.
Требования к сервисному роботу.
Приводной механизм ходовой части робота.
Выбор двигателей и колес.
Результаты проектирования.
Конструкция шасси робота.
Установка LibreCAD, Blender и MeshLab.
Установка LibreCAD.
Установка Blender.
Установка MeshLab.
Создание 2D CAD-чертежа робота с помощью LibreCAD.
Конструкция опорной плиты робота.
Конструкция нижней и верхней стоек.
Конструкция колеса и крепления для колеса и мотора.
Конструкция опорного колеса.
Конструкция средней плиты.
Конструкция верхней плиты.
Работа с 3D-моделью робота с использованием Blender.
Скрипты Python в Blender.
Введение в API Blender Python.
Скрипт Python модели робота.
Создание модели URDF-робота.
Создание пакета описания ChefBot в ROS.
Итоги.
Вопросы.
Дополнительная информация.
Глава 4. Моделирование дифференциального привода робота , управляемого операционной системой ROS.
Технические условия.
Начало работы с симулятором Gazebo.
Графический интерфейс пользователя Gazebo.
Работа с симулятором TurtleBot 2.
Перемещение робота.
Создание симуляции в Chefbot.
Преобразование глубины изображения с помощью лазерного сканера.
Теги и плагины URDF для моделирования Gazebo.
Визуализация данных датчика робота.
Начало работы с одновременной локализацией и картографированием.
Создание карты с помощью SLAM.
Начало работы с адаптивным методом локализации Монте-Карло.
Реализация AMCL в среде Gazebo.
Автономная навигация Chefbot в отеле с использованием Gazebo.
Итоги.
Вопросы.
Дополнительная информация.
Глава 5. Проектирование оборудования и схем ChefBot.
Технические условия.
Спецификации оборудования Chefbot.
Структурная схема робота.
Двигатель и энкодер.
Драйвер двигателя.
Встроенный контроллер.
Ультразвуковые датчики.
Инерциальный блок измерения (акселерометр и гироскоп).
Kinect/Orbbec Astra.
Центральный процессор.
Динамики/микрофон.
Источник питания/аккумулятор.
Как работает оборудование ChefBot?.
Итоги.
Вопросы.
Дополнительная информация.
Глава 6. Согласование приводов и датчиков с контроллером робота.
Технические условия.
Согласование редукторного двигателя постоянного тока с Tiva C LaunchPad.
Дифференциальный привод колесного робота.
Установка Energia IDE.
Код взаимодействия с двигателями.
Интерфейс квадратурного энкодера с Tiva C Launchpad.
Обработка данных энкодера.
Код согласования квадратурного энкодера.
Работа с приводом Dynamixel.
Работа с ультразвуковыми датчиками расстояния.
Согласование HC-SR04 с Tiva C LaunchPad.
Работа с ИК-датчиком расстояния.
Работа с инерционным измерительным модулем.
Инерциальная навигация.
Взаимодействие MPU 6050 с Tiva C LaunchPad.
Код согласования в Energia.
Итоги.
Вопросы.
Дополнительная информация.
Глава 7. Согласование датчиков зрения с ROS.
Технические требования.
Список робототехнических датчиков зрения и библиотек для работы с изображением.
Pixy2/CMUcam5.
Веб-камера Logitech C920.
Kinect 360.
Intel RealSense серии D400.
Датчик глубины изображения Orbbec Astra.
Введение в OpenCV, OpenNI и PCL.
Что такое OpenCV?.
Что такое OpenNI?.
Что такое PCL?.
Программирование Kinect с использованием Python ROS, OpenCV и OpenNI.
Как запустить драйвер OpenNI.
Интерфейс ROS в формате OpenCV.
Согласование Orbbec Astra с ROS.
Установка драйвера Astra-ROS.
Работа с облаками точек с помощью Kinect, ROS, OpenNI и PCL.
Открытие устройства и создание облака точек.
Преобразование данных облака точек в данные лазерного сканирования.
Работа в SLAM с помощью ROS и Kinect.
Итоги.
Вопросы.
Дополнительная информация.
Глава 8. Создание аппаратного обеспечения ChefBot и интеграция ПО программного обеспечения.
Технические требования.
Сборка ChefBot из ранее изготовленных деталей и комплектующих.
Конфигурирование бортового компьютера ChefBot и установка пакетов ChefBot ROS.
Согласование датчиков ChefBot с Tiva C LaunchPad.
Встроенный код для ChefBot.
Написание драйвера Ros Python для ChefBot.
Функции исполняемого файла ChefBot ROS.
Элементы Python ChefBot и запуск файлов.
Построение карты комнаты с помощью SLAM в ROS.
ROS: локализация и навигация.
Итоги.
Вопросы.
Дополнительная информация.
Глава 9. Разработка графического интерфейса для робота с использованием Qt и Python.
Технические требования.
Установка Qt на Ubuntu 16.04 LTS.
Взаимодействие Python и Qt.
PyQt.
PySide.
Работа с PyQt и PySide.
Представляем Qt Designer.
Сигналы и слоты Qt.
Преобразование UI-файла в код Python.
Определение и добавление слота в код PyQt.
Работа с приложением Hello World GUI.
ChefBot – управление с помощью графического интерфейса.
Установка и работа с rqt в Ubuntu 16.04 LTS.
Итоги.
Вопросы.
Дополнительная литература.
Подводим итоги.
Предметный указатель.
Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Изучение робототехники с использованием Python, Джозеф Л., 2019 - fileskachat.com, быстрое и бесплатное скачивание.
Скачать pdf
Ниже можно купить эту книгу, если она есть в продаже, и похожие книги по лучшей цене со скидкой с доставкой по всей России.Купить книги
Скачать - pdf - Яндекс.Диск.
Дата публикации:
Теги: учебник по информатике :: информатика :: компьютеры :: Джозеф :: робототехника
Смотрите также учебники, книги и учебные материалы:
Предыдущие статьи:








