- Michael Jenz
- January 2025
output.online-video-cutter.com.1.mp4
This package is an implementation of l-systems in ros2 kilted using rclcpp. This project served as a way for me to get comfortable with the cpp api but also resulted in some interesting service client interaction.
The implementation shown above has the turtlesim robot drawing a fractal tree using two rules. It is pretty amazing how with such simple rules you can create a life-like structure.
Rules:
- X --> F+[[X]-X]-F[-FX]+X
- F -->> FF
Each of the above symbols defines an action for the turtlesim bot.
Actions:
- "X" means stay in that position
- "F" means move forward
- "-" means turn right
- "+" means turn left
- "[" saves the current position and angle
- "]" restores the saved position and angle
Implementing the iteration of these rules to build a set of directions for the robot, and then executing these actions was a great learning experience for me in cpp. Looking forward to getting more expereince with ros2 kilted and rclcpp!
Build the project, source the workspace, and run the command ros2 launch turtle_control waypoint.launch.xml.