Course Outline
Introduction to ROS and Python in Robotics
- Overview of ROS features and architectural design
- Advantages of utilizing ROS for mobile robotics
Comprehending ROS
- Core concepts and structural components
- ROS file systems, directory layouts, and communication models
Configuring the Development Environment
- Installing ROS and Python
- Setting up the ROS environment and workspace
- Linking a mobile robot platform with ROS
Building and Executing ROS Nodes with Python
- Creating ROS nodes using Python
- Running nodes and leveraging command-line tools
- Authoring and utilizing ROS node launch files
- Managing ROS parameters and logging
Developing and Utilizing ROS Topics with Python
- Creating ROS topics via Python
- Publishing to and subscribing from ROS topics
- Employing ROS message types and custom messages
- Monitoring and recording ROS topics with ROS tools
Creating and Implementing ROS Services with Python
- Building ROS services using Python
- Requesting and providing ROS services
- Utilizing ROS service types and custom services
- Inspecting and invoking ROS services via ROS tools
Building and Managing ROS Actions with Python
- Creating ROS actions using Python
- Sending and receiving ROS action goals
- Applying ROS action types and custom actions
- Managing and cancelling ROS actions with ROS tools
Employing ROS Packages and Libraries for Mobile Robots
- Utilizing the ROS navigation stack for mobile robots
- Implementing ROS SLAM packages for mobile robots
- Applying 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
- Integrating ROS with additional frameworks and tools
Resolving Issues and Debugging ROS Applications
- Addressing common errors and issues in ROS applications
- Applying robust debugging techniques and tools
- Tips and best practices for enhancing ROS performance
Summary and Future Steps
Requirements
- A solid grasp of fundamental robotics concepts and terminology
- Proficiency in Python programming and data analysis
- Knowledge of the Linux operating system and command-line utilities
Target Audience
- Robotics developers
- Robotics enthusiasts
Testimonials (3)
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
Simon the 2nd - Cboost
Course - ROS: Programming for Robotics
The trainer was very available to answer all te kind of question I did