Slide 1

Slide 1 text

How accurate is the ROS2 timer on RaspberryPi ? 2021.05.05 ROS Japan UG #42 LT@Zoom 前原 圭祐 (MAEHARA Keisuke)

Slide 2

Slide 2 text

2/4 © 2021 MAEHARA Keisuke Overview ● My Interest – To use `ROS2 Framework` in `Control System` ● Objective – To understand ROS2 timer accuracy limitation ● Progress from my past presentation ( in ROS Japan UG #34 LT ) – `Dashing`-> `Foxy` – `amd64` -> `RaspberryPi 4B (arm64)` – Disable console log message

Slide 3

Slide 3 text

3/4 © 2021 MAEHARA Keisuke System Configuration kernel layer libgpiod ROS2 layer Single Threaded Executor CtrlLaw IoHandler Component1 Component2 plant input plant output note : two nodes in single process, but not using Zero Copy note : `plant input` is electrically connected to `plant output` source : https://www.st.com/ja/evaluation -tools/nucleo-f446re.html

Slide 4

Slide 4 text

4/4 © 2021 MAEHARA Keisuke Result(histogram of control period) ● ROS2 timer(= control period) is set to wake up every 1[ms] ● Standard Deviation is about 10[μs]