Course Outline
Introduction to ROS and Python for Robotics
- Overview of ROS features and architecture
- Benefits of using ROS for mobile robotics
Understanding ROS
- Core concepts and components
- ROS file system, directory structure, and communication model
Setting up the Development Environment
- Installation of ROS and Python
- Configuration of ROS environment and workspace
- Connecting a mobile robot platform with ROS
Creating and Running ROS Nodes with Python
- Creating ROS nodes using Python
- Running nodes and using command line tools
- Writing and using ROS node launch files
- Utilizing ROS parameters and logging
Creating and Using ROS Topics with Python
- Creating ROS topics with Python
- Publishing and subscribing to ROS topics
- Utilizing ROS message types and custom messages
- Monitoring and recording ROS topics using ROS tools
Creating and Using ROS Services with Python
- Creating ROS services with Python
- Requesting and providing ROS services
- Utilizing ROS service types and custom services
- Inspecting and calling ROS services using ROS tools
Creating and Using ROS Actions with Python
- Creating ROS actions with Python
- Sending and receiving ROS action goals
- Utilizing ROS action types and custom actions
- Managing and canceling ROS actions using ROS tools
Using ROS Packages and Libraries for Mobile Robots
- Using ROS navigation stack for mobile robots
- Implementing ROS SLAM packages for mobile robots
- Employing ROS perception packages for mobile robots
Integrating ROS with Other Frameworks and Tools
- Using ROS with OpenCV for computer vision
- Using ROS with TensorFlow for machine learning
- Using ROS with Gazebo for simulation
- Using ROS with other frameworks and tools
Troubleshooting and Debugging ROS Applications
- Addressing common issues and errors in ROS applications
- Applying effective debugging techniques and tools
- Tips and best practices for improving ROS performance
Summary and Next Steps
Requirements
- An understanding of basic robotics concepts and terminology
- Experience with Python programming and data analysis
- Familiarity with Linux operating system and command line tools
Audience
- Robotics developers
- Robotics enthusiasts
Testimonials (2)
Hands-on exercises related to content really helps to understand more about each topic. Also, style of start class with lecture and continue with hands-on exercise is good and helpful to relate with the lecture that presented earlier.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Course - Introduction to Data Science and AI using Python
Individual support