-
Notifications
You must be signed in to change notification settings - Fork 357
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add a controller for afour wheel independent steering / drive mobile base, aka a swerve drive #1425
Comments
Hi @pvandervelde! |
@christophfroehlich That does sound like a good place to start. For the implementation process I was aiming to follow the process suggested in this comment by bmagyar. I'll reference this issue in all PRs. I might have some questions about some parts of the library. Would those best be asked in the ROS discourse or just in this issue? |
Either on robotics stack exchange or here. |
Hello! I would also like to work on this. What's the status on this @pvandervelde? I have a fork that I just started on, but wanted to check in here first. Thought I might start to port your work in |
Oh yeah, I also have this. Been working on this for my masters research thesis: |
@Forsyth-Creations you are very welcome to submit a PR if @pvandervelde does not respond any more within the next days. |
To be honest I have been hit with life and work and have been snowed under. I should have some spare time coming up in the next few weeks but if you have something that works then you should put it in. |
I have two big questions as I work on this:
|
I made a Gazebo simulation to test mine and then tested it in real life with a custom robot. Also, have a look at Mock Components
Have a look at the gz_ros2_control documentation. |
|
Sweet, thank you! Built this last night as a test of the kinematics: |
I would like to add a controller for a 4 wheel independent steering and independent drive (aka swerve drive) mobile base. In this kind of mobile base each wheel has two degrees of freedom, one for moving the wheel around its axle and one for the steering motion of the wheel. Each wheel is independently controllable from the other wheels.
There have been several attempts at creating ROS controllers for such a system, e.g. ros-controls/ros_controllers#441, https://github.com/MarkNaeem/ros_controllers/tree/noetic-devel/swerve_steering_controller and #1148.
I have created a proof of concept for one such drive in python. Additionally I have created a simple simulation tool to test different control algorithms.
If there is interest I would like to implement a swerve controller for ROS2 control.
The text was updated successfully, but these errors were encountered: