top of page

Blog #6 — Python in ROS

  • asmartiba4
  • Mar 22, 2024
  • 1 min read

To advance my research, I need to learn ROS (Robotic Operating System). I'm working with Python and CMake to understand basic ROS concepts. The company provided access to relevant courses. My goal is to follow ROS for Web Interfaces, but it requires three prerequisite courses, which I've been taking for the past weeks.

Concepts I've recently learned in ROS & Python courses:

  • ROS Deconstruction: Understanding ROS architecture and components for robot communication and control.

  • ROS Topics: Topics enable communication between different parts of a robotic system.

  • ROS Publishers: Publishers send messages to a topic, providing data about the robot state and sensor readings.

  • ROS Subscribers & Messages: Subscribers receive messages from topics published by other nodes.

  • ROS Service (client/server): Services offer a synchronous way for nodes to send requests and get responses.

  • Python OOP: OOP in Python involves organizing code into classes and objects, promoting modularity and reusability.

  • ROS Actions (client/server): Actions provide a flexible, asynchronous way to execute long-running tasks.


Conclusions:

Integrating robotics on the web requires a connection, and Python is essential for ROS. Libraries like Ros, Ros2, Ros3D, and Roslib can be combined with ThreeJS for remote control, visualization, data analysis, and user interactions.

Challenges:

Working with remote servers using Linux poses challenges. The course includes a mini-course on best practices for using Powershell on Linux for robotics. Additionally, implementing this knowledge requires using a virtual machine running Linux.

Copyright © 2025 - Asmar Tiba

  • GitHub
  • Facebook
  • LinkedIn
  • Instagram
bottom of page