How should I develop an Ackermann vehicle?
Last summer (2015) I used a simple ROS configuration to remotely control a small vehicle (Tractobot00) with Ackermann steering. I only used ROS for the joystick driver and message passing between nodes I wrote. https://www.youtube.com/watch?v=URQXU... I extended the control to navigating using a single RTK GPS with very limited success.
I see that there are cars with ROS interfaces now but I don't see any major development in ROS support for Ackermann vehicles. Is there a simple path to using ROS to control an Ackermann vehicle in a standard way? My initial goal is to be able to drive a large vehicle in a straight line using dual RTK GPS and an IMU. It looks like I could do this easily with APM Rover but I would much rather have the ROS infrastructure available.
[2016.05.29 update]
What did I do? Well...I got really frustrated - both with ROS and APM. Out of desperation, I decided to write my own monolithic Python script. It is amazingly dumb. It does not know about kinematics, vehicle geometry, or even correlation of steering value and steer angle. It does not even use the IMU. It just uses the GPS data for pose, and feeds a steering PID with the difference between the current and desired heading based on cross-track distance. It works surprisingly well for Tractobot01. https://youtu.be/HclgNBaS-Dg
Tractobot01 has been in the shop with transmission problems because it sat unused for decades. I brought it home yesterday and added a solenoid valve for implement control. I hope to have that working next week so that it can drill some soybeans without my assistance.
As my needs become more complex, I often have the urge to return to a ROS-based system. I could certainly port my existing work to ROS but I'd like to start fresh when I return to ROS and do better. I contacted Earle Robotics about continuing to port APM to ROS but it's apparently a bigger undertaking than I expected.
I would gladly pay for someone to port more pieces of APM to ROS and/or help me use existing ROS code to do what I need.
[2016.07.17 update]
It seems that there is interest in this, so here are a few more details on Tractobot01. Also, I'm returning to ROS for Tractobot02 so I'm very interested in porting my work.
Tractobot01 came out of the shop with a repaired transmission, went to the field, and blew a steering cylinder seal. Although I was very late, it did eventually drill about 45 acres of soybeans.
I will describe the guidance in more detail. For reference, here are videos of Tractobot01 in various phases. resuming operation: https://www.youtube.com/watch?v=LhKV-... midfield: https://www.youtube.com/watch?v=fNX1M... headland: https://www.youtube.com/watch?v=XWopH...
Tractobot01 had one capability: follow a line. That meant that it tried to minimize the ...
please tell me what u did
I was hoping for a ROS solution. how about you use Arduino to control motors and send odometry back to ROS?