Название: Introduction to Intelligent Robot System Design: Application Development with ROS Автор: Gang Peng, Tin Lun Lam, Chunxu Hu, Yu Yao Издательство: Springer/Publishing House of Electronics Industry Год: 2023 Страниц: 580 Язык: английский Формат: pdf (true) Размер: 24.7 MB
Robotics is an integrated application field that covers many disciplines such as mechatronics, automation control, electronic information, AI, machine vision, network communication, and materials, and energy. Driven by project-based tasks and integrating advanced engineering object teaching methods, this book adopts a teaching mode that combines theoretical knowledge with practice, to build sensor-based intelligent robot systems development with ROS step by step, enabling readers to enhance their project development capabilities for practical application.
The book introduces the composition of intelligent robot system and ROS from shallow to deep, not only enabling readers to quickly understand robotics and get started with ROS, but also presenting the basic principles and common algorithms in both mobile robot and manipulator. The comprehensive contents include ROS principles, mobile robot control, laser detection and ranging (LiDAR), localization and mapping, path planning and navigation, manipulator control, image recognition, camera calibration, depth camera, target grasping, visual SLAM, and differences between ROS 2 and ROS 1 programming. Furthermore, this book emphasizes hands-on practice and applications of the learned knowledge. The selected topics are conducive to mastering the development methods of ROS application software and full-stack development capabilities of robot system. Readers will learn the following contents from this book:
• Application programming development methods of ROS • Methods of robot motion modeling and GUI visualization in ROS • Development of robot sensors and actuators in the ROS • SLAM algorithms and multi-sensor fusion methods • Navigation and path planning methods of mobile robot based on ROS • Manipulator motion model, and MoveIt and Gazebo simulations • Application development of computer vision in ROS • Calibration of camera intrinsic parameters and extrinsic parameters, and hand-eye calibration • 2D/3D vision-based object recognition and manipulator control • Application development of visual SLAM system • ROS 2 programming foundation
This book contains 11 chapters, organized into four sections. Part I presents foundations of ROS application system (Chaps. 1–3, 11), which will help readers to understand the composition of robot system, familiarize themselves with the functional uses of typical sensors and actuators, as well as Linux operations and the use of common ROS function packages, and learn how to perform robot modeling. Then, readers will learn to use ROS to implement robot simulations and connect to a physical robot for motion control and sensor data acquisition, which can enable them to build simple ROS application. Furthermore, ROS 2 programming foundation, including differences between ROS 2 and ROS 1 are also presented. Part II describes how to build a multi-sensor mobile robot platform based on LiDAR, IMU, encoder, etc. (Chaps. 4–6). Readers will learn SLAM foundations, robot localization and mapping methods, sensor calibration, and navigation and path planning. This part will teach readers how to design and develop a relatively complete ROS mobile robot application system. Part III introduces vision-based manipulator motion control (Chaps. 7–9), which covers manipulator control, computer vision, calibration of camera intrinsic parameters and extrinsic parameters, Deep Learning, and object grasping. Readers can acquire the ROS and image expertise required to design and develop vision-based intelligent manipulator robot systems by practicing the tasks presented in this section. Part IV covers the development of vision SLAM system for mobile robot (Chap. 10), which includes the vision SLAM framework and several typical visual SLAM algorithms. This section is suitable for readers who are engaged in the advanced development of intelligent mobile robot and unmanned systems.
Each chapter is organized with corresponding tasks for hands-on practice, enabling readers to enjoy the fun of running ROS applications while also deepening their understanding of theoretical knowledge. These programs involve the C/C++ or Python programming languages, and readers should have a basic knowledge of Linux and some computer programming skills. Linux should be known well by robot system developers. In addition, some mathematics knowledge are also required, including advanced mathematics, probability theory, linear algebra, and matrix theory.
Скачать Introduction to Intelligent Robot System Design: Application Development with ROS