Slide 1

Slide 1 text

micro-ROS Demo on STM32 nucleo-f767zi 2020.05.01 ROS Japan UG #36 LT@Google Meet 前原 圭祐( MAEHARA Keisuke ) Slack ROS Japan UG : MAEHARA Keisuke Qiita : @MAEHARA_Keisuke

Slide 2

Slide 2 text

2/6 © 2020 MAEHARA Keisuke Background ● My interest – “ROS2 Framework” not only in “Computer World” but also in “Control System” ● In my previous presentation(@ROS Japan UG #34 LT) – Not enough accuracy of control period in situation below ● amd64, Ubuntu 18.04.3(low-latency-kernel) ● Wake up “I/O handler node” by millisecond order timer ● Wake up “Control Law node” by subscription callback ● How do we invite micro-controller to ROS2 World ?

Slide 3

Slide 3 text

3/6 © 2020 MAEHARA Keisuke What is micro-ROS ?

Slide 4

Slide 4 text

4/6 © 2020 MAEHARA Keisuke What I did ● Porting micro-ROS to STM32 nucleo-f767zi board – Adding Micro-ROS to a NuttX board configuration – Micro-ROS configuration for NuttX ● Modifying configuration to use UDP communication instead of serial communication shown in tutorial above – Modifying code to register button device(/dev/buttons) for demonstration ● Modifying “publisher example” with “buttons example” – Verifying data flow from Real World to ROS2 World via micro- controller Just followed turorials on official website Needed a bit hack

Slide 5

Slide 5 text

5/6 © 2020 MAEHARA Keisuke Demo System Configuration ● Button press and release demo ” “ Button source : https://www.st.com/ja/ evaluation-tools/ nucleo-f767zi.html “ source : https://www.asus.com/media/ global/products/ tkC82KRIK7stRrFD/ WHftJnuxFb6WlETV_setting_fff_ 1_90_end_500.png ” Micro XRCE DDS Agent Topic Subscriber Serial Console via On board USB-Serial Ethernet Router Ethernet (DHCP) Ethernet (static IP) Button Event Publisher ROS2 World ( DDS Network ) RTPS DDS-XRCE over UDP Environment - amd64 - Ubuntu 18.04.4 - ROS2 Dashing Diademata note : Just as Ethernet Hub and DHCP Server. Not for Routing.

Slide 6

Slide 6 text

6/6 © 2020 MAEHARA Keisuke My tutorial and patches are published! ● My github repository – https://github.com/maehara-keisuke/micro- ROS_Demo_on_STM32_nucleo-f767zi ● Tutorial is in README.md