This presentation provides an example of the mixed-critical ROS2 stack implementation based on VxWorks RTOS, embedded Linux, and hypervisor from Wind River. Turtlebot3 was selected as a robotic demo platform controlled by the SBC (single board computer) that runs a Hypervisor with several guest OS instances. We demonstrate a hardware-agnostic approach by utilizing two different SBC HW platforms: Xilinx-based ARM board and Intel UP2 board. The hypervisor provides a separation of safety from non-safety and real-time from best-effort applications and allows us to build a mixed-critical system using multicore SBCs. One of the guest OSes is VxWorks - very few solutions available on the market which is already fulfilling safety and real-time requirements. ROS2 dashing release and turtlebot3 ROS2 middleware were ported to the VxWorks. On top, we run a collision-avoidance ROS2 application. Embedded Linux partition serves as a communication gateway to the external world and provides an example of a non-critical software stack. We demonstrate that if the non-critical guest OS fails and gets rebooted the safety-critical part still runs and performs its control functions.
The source code of this demo is available on lab.windriver.com.
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
Turtlebot3: VxWorks running ROS2 as a real-time guest OS on Hypervisor
1. Turtlebot3: VxWorks running ROS2
as a real-time guest OS on Hypervisor
Andrei Kholodnyi, Principal Technologist, Wind River,
Patrick Deiber, Senior Engineering Specialist, Wind River
7. 32/64 bits on Arm/Intel/MIPS/PowerPC
Proprietary real-time OS, POSIX PSE52
Kernel/user space separation, user space optional
C/C++11/14, possible to develop kernel C++ modules and user apps
Safety certifiable: DO-178, ISO 26262, IEC 61508
Toolchain LLVM 8, Dinkumware C/C++ libs
Proprietary build system
Kernel shell
Eclipse-based IDE, Windows/Linux hosts
WHAT IS VXWORKS RTOS?
15. VM
VxWorks Control
VxWorks
ROS2
Sensing Control Actuation
Edge VxWorks Control
VxWorks
ROS2
Sensing Actuation
VxWorks
ROS2
Control
TSN
Case 1: Decoupling control from sensing and actuation
VM
WRLinux
ROS2
ML App
Hypervisor
For over 35 years we’ve served customers in markets with highest standards for safety, security, and performance.
Collectively these markets, across these 16 subsectors, comprise what is referred to as Critical Infrastructure, those elements of a society or nation that are critical to its day to day operations.
We believe that some thing are so important that they simply cannot fail. That is why we exist.
USB Devices cannot be set on partition basis? => then one partition for LiDaR and OpenCR
Integration steps:
Native WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad) => reference platform for next steps (with RPI4B for example) / sanity check.
HVP + WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad)
HVP + VxWorks + WRLinux as described in the picture above.
USB Devices cannot be set on partition basis? => then one partition for LiDaR and OpenCR
Integration steps:
Native WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad) => reference platform for next steps (with RPI4B for example) / sanity check.
HVP + WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad)
HVP + VxWorks + WRLinux as described in the picture above.
USB Devices cannot be set on partition basis? => then one partition for LiDaR and OpenCR
Integration steps:
Native WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad) => reference platform for next steps (with RPI4B for example) / sanity check.
HVP + WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad)
HVP + VxWorks + WRLinux as described in the picture above.
USB Devices cannot be set on partition basis? => then one partition for LiDaR and OpenCR
Integration steps:
Native WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad) => reference platform for next steps (with RPI4B for example) / sanity check.
HVP + WRLinux with ROS2 + LiDaR + OpenCR + Remote Control (GamePad)
HVP + VxWorks + WRLinux as described in the picture above.