filmov
tv
Robot coordination: Distributed (sub-microsecond) synchronization of 5 robotic arms through ROS 2.

Показать описание
The H-ROS robot bus, provides real-time and synchronization over ROS 2. Thanks to H-ROS, this robot controller can work with 5 or more robotic arms.
What is time synchronization?
When working in a network with various computers, each has a clock that provides them time. In most cases, being connected to the same network requires that all have the same time reference in order to coordinate their tasks. Here is where time/clock synchronization plays an important role. We can define time synchronization as the different processes or tasks to be carried out in order to coordinate base times in all different clocks all over the network.
To accomplish synchronization between these distributed systems we need to set a very accurate reference. Despite selecting a good base time, hardware clocks use to count time at different rates. Furthermore, the quality of the oscillator is also a factor that has to be taken into account in order to avoid what is known as drift clock. To avoid or mitigate this, there are various options we can choose, for example using GPS (Global Positioning System) that provides an accuracy of tens of nanoseconds, NTP (Network Time Protocol) widely employed nowadays to set the clocks of our PCs and PTP (Precision Time Protocol) which offers great accuracy through local networks. PTP is the one chosen for our demo.
When do we need time synchronization?
In most robotic applications several robot sensors and actuators are used. This means that there should be a coordination between sensor data and actuators. For example, if we think on an Advanced Driver Assistant System (ADAS), the wide variety of sensors available and the need of a coordinated and fast response forces to have a very accurate clock synchronization.
Another good example where time synchronization plays a critical role is in a Simultaneous Localization and Mapping application. Let’s suppose that we have a laser scanner with its motor and a camera; the lack of coordination/synchronization between them would result in a poor quality point cloud.
Finally, if we are interested in logging data from our modules or robots, it is needed to achieve a right clock synchronization so that we can plot that data in graphs and the information is coherent.
SUBSCRIBE to watch more cool videos with the latest innovations in robotics and ROS 2:
Follow us on:
What is time synchronization?
When working in a network with various computers, each has a clock that provides them time. In most cases, being connected to the same network requires that all have the same time reference in order to coordinate their tasks. Here is where time/clock synchronization plays an important role. We can define time synchronization as the different processes or tasks to be carried out in order to coordinate base times in all different clocks all over the network.
To accomplish synchronization between these distributed systems we need to set a very accurate reference. Despite selecting a good base time, hardware clocks use to count time at different rates. Furthermore, the quality of the oscillator is also a factor that has to be taken into account in order to avoid what is known as drift clock. To avoid or mitigate this, there are various options we can choose, for example using GPS (Global Positioning System) that provides an accuracy of tens of nanoseconds, NTP (Network Time Protocol) widely employed nowadays to set the clocks of our PCs and PTP (Precision Time Protocol) which offers great accuracy through local networks. PTP is the one chosen for our demo.
When do we need time synchronization?
In most robotic applications several robot sensors and actuators are used. This means that there should be a coordination between sensor data and actuators. For example, if we think on an Advanced Driver Assistant System (ADAS), the wide variety of sensors available and the need of a coordinated and fast response forces to have a very accurate clock synchronization.
Another good example where time synchronization plays a critical role is in a Simultaneous Localization and Mapping application. Let’s suppose that we have a laser scanner with its motor and a camera; the lack of coordination/synchronization between them would result in a poor quality point cloud.
Finally, if we are interested in logging data from our modules or robots, it is needed to achieve a right clock synchronization so that we can plot that data in graphs and the information is coherent.
SUBSCRIBE to watch more cool videos with the latest innovations in robotics and ROS 2:
Follow us on:
Комментарии