FinUniversity Electronic Library

     

Details

LENTIN JOSEP, H. LEARNING ROBOTICS USING PYTHON;DESIGN, SIMULATE, PROGRAM, AND PROTOTYPE AN AUTONOMOUS MOBILE ROBOT USING ROS, OPENCV, PCL, AND PYTHON, 2ND EDITION [[electronic resource].]. — [S.l.]: PACKT PUBLISHING. — 1 online resource. — <URL:http://elib.fa.ru/ebsco/1840539.pdf>.

Record create date: 7/9/2018

Subject: Robotics.; Automation.; Python (Computer program language); Programming languages (Electronic computers); Automation.; Programming languages (Electronic computers); Python (Computer program language); Robotics.; TECHNOLOGY & ENGINEERING / Engineering (General)

Collections: EBSCO

Allowed Actions:

Action 'Read' will be available if you login or access site from another network Action 'Download' will be available if you login or access site from another network

Group: Anonymous

Network: Internet

Document access rights

Network User group Action
Finuniversity Local Network All Read Print Download
Internet Readers Read Print
-> Internet Anonymous

Table of Contents

  • Cover
  • Title Page
  • Copyright and Credits
  • Dedication
  • Packt Upsell
  • Contributors
  • Table of Contents
  • Preface
  • Chapter 1: 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
  • Chapter 2: 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
  • Chapter 3 : 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
  • Chapter 4: 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
  • Chapter 5: 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
  • Chapter 6: 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
  • Chapter 7: 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
  • Chapter 8: 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
  • Chapter 9: 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
  • Other Books You May Enjoy
  • Index

Usage statistics

stat Access count: 0
Last 30 days: 0
Detailed usage statistics