Yes, I’m happy to join any meeting you think I could help with, please ping me directly for each meeting you’d like me to attend. If you need me on a regular basis I can do that too, though selfishly I’m trying to stay out of the way as much as possible.
Discourse won’t let me upload the presentation as a powerpoint and the presentation in pdf format is not really usable (the transition of images on a single slide is how I show the working of the executors). Instead I will share some links here, while I look for a way to share the powerpoint.
rclcpp Dashing this link contains a README where the executors are explained with flowcharts. The flowcharts + explanations get the ideas across of each executor.
rclcpp Master fork This is the fork we use for the pull request that is up to date with master (slightly behind by now probably).
Hopefully this gets everyone what they are looking for. If you want more information or help with the code or understanding the STE or static executor, don’t hesitate to send me a message.
I do not have a lot of experience making flowcharts, nor do I know the exact rules to making them. I hope that despite the inaccuracies they are still readable. Sorry for the possible inconvenience.
I added the powerpoint that I used during the meeting for my presentation to rclcpp Dashing in the presentation folder. Please let me know if it works by downloading it and looking at it in presentation view (to cycle through the images).
Sidenote: The dashing version now uses the nodes’ guard_conditions as event trigger to rebuild the executable list and the wait-set. Making the use of the static executor less restrictive (semi-dynamic, rebuild only when necessary). We will continue work on a master (eloquent) version and look into a multi-threaded version.
thanks, your ppt works fine by me and looks good enough!
I am also curious about the Improvement for Priority and RT Safe from Bosch, i remember i did see some documents somewhere. could you point me these documents as well? seems like they are making approach for Real-Time aspect with technology not engineering. i am really interested in that too.
I believe @Ingo_Lutkebohle is working on this. I am not really sure about the current state of the work. We aligned with Ingo, Tobias, Jan and Ralph to determine who would focus on what part of the executor (to prevent doing double work). Maybe Ingo can point you to a repository, or maybe he can give you an update when they have something ready. One thing you could check out is the real-time executor , which has a repository here rcl_executor github. This is an RCL implementation of an executor that Jan worked on for Micro-ROS.
The mentioned demo it’s a rework of the inverted pendulum demo in ros2/demos (demo, tutorial). The idea is to create a more complete project like the demo shown in the last Roscon (confbot_robot) but focused on control and real-time analysis.
To add some details these are some of the new features that were added or we would like to add:
The implementation of the controller and simulation use some abstractions so it’s possible to implement new kind of controllers or to use the code in a real pendulum by creating some drivers.
We collects some statistics: topic missed deadlines, timer jitter, memory page faults,…
We would like to upload the project on github before Roscon so everbody can contribute.