舉報

會員
Learning Robotics using Python
RobotOperatingSystem(ROS)isoneofthemostpopularroboticssoftwareframeworksinresearchandindustry.Ithasvariousfeaturesforimplementdifferentcapabilitiesinarobotwithoutimplementingthemfromscratch.ThisbookstartsbyshowingyouthefundamentalsofROSsoyouunderstandthebasicsofdifferentialrobots.Then,you'lllearnaboutrobotmodelingandhowtodesignandsimulateitusingROS.Movingon,we'lldesignrobothardwareandinterfacingactuators.Then,you'lllearntoconfigureandprogramdepthsensorsandLIDARsusingROS.Finally,you'llcreateaGUIforyourrobotusingtheQtframework.Bytheendofthistutorial,you'llhaveaclearideaofhowtointegrateandassembleeverythingintoarobotandhowtobundlethesoftwarepackage.
目錄(226章)
倒序
- 封面
- 版權(quán)信息
- Dedication
- Packt Upsell
- Why subscribe?
- PacktPub.com
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- Getting Started with Robot Operating System
- Technical requirements
- Introduction to ROS
- ROS concepts
- The ROS filesystem
- The ROS Computation Graph
- The ROS community level
- Installing ROS on Ubuntu
- Introducing catkin
- Creating a ROS package
- Hello_world_publisher.py
- Hello_world_subscriber.py
- Introducing Gazebo
- Installing Gazebo
- Testing Gazebo with the ROS interface
- Summary
- Questions
- Understanding the Basics of Differential Robots
- Mathematical modeling of the robot
- Introduction to the differential drive system and robot kinematics
- Forward kinematics of a differential robot
- Explanations of the forward kinematics equation
- Inverse kinematics
- Summary
- Questions
- Further information
- Modeling the Differential Drive Robot
- Technical requirements
- Requirements of a service robot
- Robot drive mechanism
- Selection of motors and wheels
- Calculation of RPM of motors
- Calculation of motor torque
- The design summary
- The robot chassis design
- Installing LibreCAD Blender and MeshLab
- Installing LibreCAD
- Installing Blender
- Installing MeshLab
- Creating 2D CAD drawing of a robot using LibreCAD
- The base plate designs
- Base plate pole design
- Wheel motor and motor clamp design
- Caster wheel design
- Middle plate design
- Top plate design
- Working with a 3D model of the robot using Blender
- Python scripting in Blender
- Introduction to Blender Python APIs
- Python script of the robot model
- Creating a URDF model of the robot
- Creating a Chefbot description ROS package
- Summary
- Questions
- Further reading
- Simulating a Differential Drive Robot Using ROS
- Technical requirements
- Getting started with the Gazebo simulator
- The Gazebo's graphical user interface
- The Scene
- The Left Panel
- Right Panel
- Gazebo toolbars
- Upper toolbar
- Bottom toolbar
- Working with a TurtleBot 2 simulation
- Moving the robot
- Creating a simulation of Chefbot
- Depth image to laser scan conversion
- URDF tags and plugins for Gazebo simulation
- Cliff sensor plugin
- Contact sensor plugin
- Gyroscope plugin
- Differential drive plugin
- Depth camera plugin
- Visualizing the robot sensor data
- Getting started with Simultaneous Localization and Mapping
- Implementing SLAM in the Gazebo environment
- Creating a map using SLAM
- Getting started with Adaptive Monte Carlo Localization
- Implementing AMCL in the Gazebo environment
- Autonomous navigation of Chefbot in the hotel using Gazebo
- Summary
- Questions
- Further reading
- Designing ChefBot Hardware and Circuits
- Technical requirements
- Specifications of the ChefBot's hardware
- Block diagram of the robot
- Motor and encoder
- Selecting motors encoders and wheels for the robot
- Motor driver
- Selecting a motor driver/controller
- Input pins
- Output pins
- Power supply pins
- Embedded controller board
- Ultrasonic sensors
- Selecting an ultrasonic sensor
- Inertial measurement unit
- Kinect/Orbbec Astra
- Central processing unit
- Speakers/mic
- Power supply/battery
- How ChefBot’s hardware works’?
- Summary
- Questions
- Further reading
- Interfacing Actuators and Sensors to the Robot Controller
- Technical requirements
- Interfacing DC geared motor to Tiva C LaunchPad
- Differential wheeled robot
- Installing Energia IDE
- Motor interfacing code
- Interfacing quadrature encoder with Tiva C Launchpad
- Processing encoder data
- Quadrature encoder interfacing code
- Working with Dynamixel actuators
- Working with ultrasonic distance sensors
- Interfacing HC-SR04 to Tiva C LaunchPad
- Working of HC-SR04
- Interfacing Code of Tiva C Launchpad
- Interfacing Tiva C LaunchPad with Python
- Working with the IR proximity sensor
- Working with Inertial Measurement Units
- Inertial navigation
- Interfacing MPU 6050 with Tiva C LaunchPad
- Setting the MPU 6050 library in Energia
- Interfacing code of Energia
- Summary
- Questions
- Further reading
- Interfacing Vision Sensors with ROS
- Technical requirements
- List of robotic vision sensors and image libraries
- Pixy2/CMUcam5
- Logitech C920 webcam
- Kinect 360
- Intel RealSense D400 series
- Orbbec Astra depth sensor
- Introduction to OpenCV OpenNI and PCL
- What is OpenCV?
- Installation of OpenCV from the source code in Ubuntu
- Reading and displaying an image using the Python-OpenCV interface
- Capturing from the web camera
- What is OpenNI?
- Installing OpenNI in Ubuntu
- What is PCL?
- Programming Kinect with Python using ROS OpenCV and OpenNI
- How to launch the OpenNI driver
- The ROS interface with OpenCV
- Creating a ROS package with OpenCV support
- Displaying Kinect images using Python ROS and cv_bridge
- Interfacing Orbbec Astra with ROS
- Installing the Astra–ROS driver
- Working with point clouds using Kinect ROS OpenNI and PCL
- Opening the device and generating a point cloud
- Conversion of point cloud data to laser scan data
- Working with SLAM using ROS and Kinect
- Summary
- Questions
- Further reading
- Building ChefBot Hardware and the Integration of Software
- Technical requirements
- Building ChefBot hardware
- Configuring ChefBot PC and setting ChefBot ROS packages
- Interfacing ChefBot sensors to the Tiva-C LaunchPad
- Embedded code for ChefBot
- Writing a ROS Python driver for ChefBot
- Understanding ChefBot ROS launch files
- Working with ChefBot Python nodes and launch files
- Working with SLAM on ROS to build a map of the room
- Working with ROS localization and navigation
- Summary
- Questions
- Further reading
- Designing a GUI for a Robot Using Qt and Python
- Technical requirements
- Installing Qt on Ubuntu 16.04 LTS
- Working with Python bindings of Qt
- PyQt
- Installing PyQt in Ubuntu 16.04 LTS
- PySide
- Installing PySide on Ubuntu 16.04 LTS
- Working with PyQt and PySide
- Introducing Qt Designer
- Qt signals and slots
- Converting a UI file into Python code
- Adding a slot definition to PyQt code
- Operation of the Hello World GUI application
- Working with ChefBot's control GUI
- Installing and working with rqt in Ubuntu 16.04 LTS
- Summary
- Questions
- Further reading
- Assessments
- Chapter 1 Getting Started with the Robot Operating System
- Chapter 2 Understanding the Basics of Differential Robots
- Chapter 3 Modeling the Differential Drive Robot
- Chapter 4 Simulating a Differential Drive Robot Using ROS
- Chapter 5 Designing ChefBot Hardware and Circuits
- Chapter 6 Interfacing Actuators and Sensors to the Robot Controller
- Chapter 7 Interfacing Vision Sensors with ROS
- Chapter 8 Building ChefBot Hardware and Integration of Software
- Chapter 9 Designing a GUI for a Robot Using Qt and Python
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-06-25 21:04:43
推薦閱讀
- 圖書館學是什么
- 單讀. 十周年特輯(時間的移民+在世界的門外)共2冊
- 公共圖書館動漫服務研究
- 國外圖書館動漫資源建設與服務
- 中國古代圖書館學研究
- 民國文獻辨?zhèn)螌W研究
- 高校圖書館門戶網(wǎng)站建設(谷臻小簡·AI導讀版)
- 現(xiàn)代圖書館全面質(zhì)量管理與創(chuàng)新服務研究
- 混搭文綴
- 海源閣史
- 四川文理學院校史(1976—2016)
- 文書與檔案管理實務
- 檔案與少數(shù)民族記憶
- 公共圖書館知識產(chǎn)權(quán)信息服務體系建設
- 圖書館保障弱勢群體公共信息獲取權(quán)益的對策研究
- 二十世紀圖書館與文化名人
- 謎案北京③:解讀千年古跡檔案
- 檔案學的性格
- 縮微膠片檔案數(shù)字化
- 高校圖書館學科資源建設理論與實踐
- 圖書情報學發(fā)展導覽(2008~2009)
- 元代文獻與文化研究(第一輯)
- 《古逸叢書》研究
- 從埃及到高加索:探索未知的古文獻世界
- 中華武術(shù)
- 現(xiàn)代書目控制理論與實踐
- 珞珈蘭臺文集
- 中國古代圖書史:以圖書為中心的中國古代文化史
- 北大手賬
- 商務活動創(chuàng)意