APMRover 2, a fun UGV project for full autonomous recon missions...

[UPDATE: This project is now being ported to a proper Google Code repository and manual. For instructions, start there. You can also join the ArduRover User Group here.]

Hello to ALL, the new firmware for APMRover v2 has been tested successfully on my rover on may 1st, 2012 on full autonomous reco mission following a navigation plan. This new release of the APMRover v2 works on the APM v1.4 with the OilPan shield (magnetometer + MT3329 GPS) and also of course on the APM v2. The previous version of the APMRover v1.0 was a light size version specially designed for the APM1280 CPU (only) board and the MT3329 GPS.

For the frame, I have used a Traxxas Monster Jam Grinder with a brushed and high power motor Titan 12T and its XL-5 ESC.

The APMrover UGV is able to run itself following a list of recorded waypoints. The waypoints list (FPL) can be preloaded with the APM Mission Planner OR better in live, recorded by the pilot himself (with the SW7) during a manual run and then replayed in a full autonomous mission.

The firmware APMrover2 for APM v1 + OilPan or APM v2 successfully tested can be downloaded HERE

The APMrover v2 is also online on the official ArduPilot-Mega GIT repository HERE

Below the PID setup for the APMrover v1 and v2:

The light firmware APMrover1 for APM v1 (CPU 1280 or 2560) that I have tested can be downloaded HERE 

Here's how to connect your cables:

More infos at: http://diydrones.com/profile/JeanLouisNaudin

Have Fun and Enjoy with the APMrover...

Regards, Jean-Louis

Views: 79781

Comment by Daniel Chapelat on April 26, 2012 at 2:18am

Hello Jean Louis

I worried a little more do you see on the forum! Did not count on yourfertile mind, who can beat the vagaries of our weather in France!
Congratulations for this small engine I'm building this for me inspéréa joke to a friend.
Regards Daniel

Comment by Jean-Louis Naudin on April 26, 2012 at 2:40am

Thanks Daniel for your comments.

I have just updated my MTK16 GPS library (AP_GPS) to a 10 Hz rate, (previously set at 4 Hz by default) so as to get more accuracy at low speed with the APMrover... I shall keep you informed about the soon tests results...

Regards, Jean-Louis

Comment by Anish on April 26, 2012 at 5:17am

Jean, this is cool.

Comment by Rob_Lefebvre on April 26, 2012 at 6:24am

JL, how does it handle "loiter"?  Does it stop?  Or does it drive circles around it like an airplane?  How does it handle a "missed" waypoint?  I assume there is some radius defined which is "good enough"?  If it misses a waypoint, does it circle around and try again, or do a 3 point turn?

I think it's a good idea to have all the driving controls on a single stick.  Then that allows the operator to use the other stick for camera gimbal control which would be excellent!

Comment by Rob_Lefebvre on April 26, 2012 at 7:39am

JL, I asked Chris, and he thinks it's a good idea to upload your code into trunk, you have write access.  I suggest making a ArduRover2 file folder, and put it in there.

Did you make any changes to libraries?  That might be one problem.  Your code will need to agree with the standard ArduPlane libraries to do it this way.  I assume that is not a problem as you started with AP code.

If you put the code in trunk, then other people can work on it to.

Comment by healthyfatboy on April 26, 2012 at 8:54am

How necessary is it to connect channels 1-4 of the receiver to the APM? I'm wondering if I can use a 4 channel surface transmitter (steering, throttle, 2-pos switch, 3-pos switch) to do the same thing. That would make it a lot easier since I have a Traxxas TQ-4 2.4GHz radio I could use instead.

Comment by Anish on April 26, 2012 at 8:58am

well i have to admit mine is spektrum 3 channel :(

Comment by Jean-Louis Naudin on April 26, 2012 at 10:43pm

Hello Robert,

At this moment, the "loiter" is the same that the ArduPlane version, its turn around the wp. There is an option parameters which allows an automatic calculation of the Wp radius Vs the ground speed so as the rover stay on the track without overshooting the wp. This is the ROV_AWPR_NAV parameter. If it is set to 1 the rover turn before the wp at the trigger calculated wp_radius and if the parameter is set to 0 the rover pass through the wp and then go to the track.

FIY: I use the offcial GIT library with any change, at this moment I am only experimenting a 10Hz rate with the MTK GPS Vs the 4Hz rate for a better accurate navigation. This is the only change that I have done on the APM_GPS library.

I have updated my GIT repo with the latest version APMrover v1.0c, see the Revision:e8e1db903574

Regards, Jean-Louis


Comment by Jean-Louis Naudin on April 26, 2012 at 10:45pm

Hello Anish,

If you have only a 3 channels receiver, you may use:

ch1 = roll (to wheel servo)

ch2 =  pitch (to ESC for throttle)

ch3 = to APM ch8 (for mode change)

for those have 4 channels, the ch4 can be connected the APM ch7 (for options trigger)

Regards, Jean-Louis

Comment by Jean-Louis Naudin on April 26, 2012 at 11:36pm

Hello, I have just updated the APMrover now this is the v1.0d that you may download HERE

some changes done in the 1.0d:

- Only one PID to steer the wheels with nav_roll,

- GPS can be used at 10 Hz,

- fixed the correct use of the variables (ground_course and ground_speed) updated only in Update_GPS() at dTnav,

- cosmetic update and lighter coder to save code memory for the APM1280,

- you need only to tune the NAV lateral PID to drive the wheel and the Energy Alt PID for the throttle... Thats all...

I have updated my GIT repo at : Revision:4126b302ae18

Have fun with the APMrover...

Regards, Jean-Louis


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2018   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service