Hi, we use a Ackermann-driven based UGV for search and rescue scenarios. It is based on a Kyosho Twinforce RC chassis (image for example here: http://www.gkmm.tu-darmstadt.de/rescue/?q=node/8 ). We also use the sbpl_lattice_planner for generating motion plans, but found the navigation stack to be suboptimal for our application, as the vehicle dynamics plus harsh terrain of the NIST standard arenas used for RoboCup Rescue violates some of the assumptions made in the navigation stack. For a 100kg+ platform moving on flat ground, the assumption that odometry provides a stable short term reference frame for example is very reasonable. For a <10kg vehicle going over pitch/roll ramps OTOH there basically is no trustable odometry (see for example 1:05 in this video: http://www.youtube.com/watch?v=nI1DWboC73w ,shows only reactive driving as our planner back then did not work correctly) So our current approach is to use SBPL based plans and not use a local planner as provided by the navigation stack. The whole plan (generated from SBPL or another planner) is sent to the vehicle controller, which then closely follows it. The low level control system of the UGV incorporates a EKF-based INS that fuses data from inertial/magnetic (IMU) sensors, SLAM pose estimates and wheel encoders and thus can follow the plan nicely. I'll try to make a video of it in simulation in the next few days. The code is not available in our open source repository, but that might change if interest is there. regards, Stefan 2012/1/27 Austin Hendrix : > My personal robot is a ackermann-styke rover based on a traxxas slash. I have most of thenavigation stack up and running; in particular, my base subscribes to cmd_vel in the same way as a traditional base, and publishes the standard odometry messages and frames for the navigation stack. I'm using the sbpl_lattice_planner as the global navigation planner, and a custom local planner that deals with the constraints of an ackermann base. > > The stack with my local planner is at https://github.com/trainman419/Senior-Project/tree/interrupts/ros/ackermann_local_planner . It's a start, but it has a bug in that it doesn't deal with points on the path where the robot reverses direction; rather than target the reverse point, it targets some point past the reverse. > > My robot and navigation stack configuration is in this package: https://github.com/trainman419/Senior-Project/tree/interrupts/ros/dagny . Note that I have the navigation stack parameters tuned well below normal, becuase I am running a very slow processor (500MHz AMD Geode). > > -Austin > > Piyush wrote: > >>Hi ROS users, >> >>I was wondering whether there was some interest in the community to >>develop a common interface for Ackermann steering based robots. We >>have an autonomous car using ROS (utexas-art-ros-pkg) for which we use >>a proprietary message format to control the driver. We are now trying >>to port over the code-base for a number of smaller robots based on the >>traxxas platform to ROS. We were hoping to discuss the driver >>interface along with an interface for some basic GPS based navigation >>for the traxxas robots. >> >>In case there are existing examples for this this type of work >>already, I would appreciate it if someone could point them to me. >> >>Thanks, >>Piyush >>_______________________________________________ >>ros-users mailing list >>ros-users@code.ros.org >>https://code.ros.org/mailman/listinfo/ros-users > _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > https://code.ros.org/mailman/listinfo/ros-users