[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
Comments
Hello, I am using V1.4 APM but can't seem to get the Arduino to upload to the board. I see it as com 8 but when I choose to upload it compiles then fails after a long time out. I am lost, I feel lie I am missing some instructions but do not know where to go next. I have been trying this for a week now and seem that I am no closer than I was the first day. Please help.... Thanks.
@Thomas,
My parts are still dribbling in. One of the problems with Ebay. That, and they like to gouge you for each little part's shipping. They don't seem to be able to combine orders very well.
So you're going to work from the PWM signals from the APM1? Capture them with the UNO? That should work, although I'd consider sending values via an I2C or serial link as well. No PWM to run in the background. Arduino PWM seems to run at about 450 Hz, which I would have thought was not high enough (like, 10-20 KHz), but I can drive both my Hummer and my big IG42 gear motors, so I guess it's OK. As I'm going to use a RoboClaw, it won't matter anyway. Probably not as important anyway, they are just throttle and steering, not incremental steps for a stepper.
So you'll have to both avoid obstacles and then track (home in) on a cone with the same sensor routines. Doesn't the APM already do avoidance? Is there a good paper on what it does?
Well I don't get to retire for quite a while, but I've got full time use of my shop, and a little time at my company's shop as well. You should see the stack of TRAXXAS parts I've got! I was at first just going to build a 4WD, but one of the guys at HBRobotics is building a 6WD already (six drive motors, no suspension), so I started to buy parts for 6WD. But having to buy most of the stuff in 4X quantities, I might as well flush out a full 8X set of parts, even if I'm only building for a 6WD. Spare parts, anyway. I might even think about an 8WD, with the front pair and the rear pair of wheels articulated. That would be a lot more work getting the drive belts and hinging the chassis. Would also probably be too heavy for Robomagellan.
What are you doing to "see" the orange cone? Just object detection? Is the area around the "target" waypoint clear enough to allow sonar targeting of the cone? Guess I've got a LOT of field work ahead of me!
Being able to do preliminary platform tests with an R/C link will be useful, I just plug the receiver into the RoboClaw. Later, it will only be used for E-Stop, or I could alternately allow it's use for "drive home" I suppose.
Best regards.,
Alan
@Alan,
My Parallax PropScope has been delayed four more days and will not ship until 6/15/2012. Fortunately the PINGs that were to ship with PropScope are not needed since I received the three PINGs with the MINDS-i order. I had planned to use the PropScope to view the steering and ESC PWM from the UNO since I do not have my Traxxas E-Maxx here with me in Texas. I guess that I could pickup a cheap servo locally and watch how it moves in relation to having obstacles block the PINGs from the front and the side to simulate my rover in the field. Once I am sure that the UNO obstacle avoid program works as expected, I plan to provide simulated steering and speed input to the modified UNO program from my RC receiver to mimic the APM waypoint steering and speed commands. I will have to wait until I retire to Florida in August to be able to actually test the UNO/APM1 combination on my rover, but at least I will have the obstacle avoidance/waypoint input portion of the code working and debugged.
Regards,
TCIII
@Thomas,
Wow! That is a find! How often do you get more then you asked for/ordered.
Best Regards,
Alan
Wow, that had to have been a mistake! That's quite the deal you got there. I wonder if I could snag one as well...
@Alan,
I think that I just lucked into one of the best electronic deals I have encountered in a long time. When I purchased the MINDS-i Arduino UNO add on kit I thought that it just included the UNO, the Sensor Shield, and the mounting base/cover. Boy was I wrong! For $80 I received not only the UNO, the Sensor Shield, and the mounting base/cover, but I also received three Parallax PINGs, two IR sensors and all of the necessary mounting hardware and cables. The PINGs alone are worth $90! How are these guys doing it for only $80??? The equipment all looks of very good quality. Right up there will the big guys like DIY Drones!!!
Regards,
TCIII
@Thomas,
So you're saying a bare 2560 (PCB?) could be used without the Oilpan? I'll check on the board being offered.
Putting multiple sensors on their own uP is a good idea. I have a little PIC board with six SRF08 sonars on it I plan to use. I think I'll also interface the bump switches through it.
Best Regards,
Alan
Woo Okay as of the time of this posting I have it compiled and I'm currently uploading ArduRoverV2 to my APM2 board through Arduino 1.0.1.
@Nishid
Thanks to Nishid for the step by step instructions, that's what I did originally but your post confirmed I was doing it correctly.
@Thomas J Coyle III
Thanks for the libraries suggestion, I did everything that Nishid instructed to the letter and when it didn't work I used the libraries from the ArduPlane-2.33 instead of the libraries from ArduPlane-2.34 like I had been using. Immediately, the code compiled no problem and it uploaded without a hitch.
THANKS AGAIN!
@TFrancis
TRY THIS:
plug the APM2 BOARD to you computer and go to control panel --> system --> Devise Manger and there you will see a icon with a magnifing glass click on it. when you do so it will scan the computer to detect if you have pluged any hardware to the computer which in your case would be the APM2 BOARD. the computer will detect the hardware and will prompt you to install the necessary drivers. once it has install the drivers the computer will assign a port (port number) for the APM2 BOARD and that you can check in Device Manager by expanding the ports(COM & LPT). And also make sure that you select Arduino Mega 2560 and the correct port.
This instruction is for compiling the code using Arduino-1.0.1
(1) unzip the folder that you download from this page.
(2) copy and paste APMROVERV 1.0 or APMROVER V2 and its LIBRARIES folder on to the
location where you have your ARDUINO folder in your computer this is how mine looks like C:\Documents and Settings\N15H1D\My Documents\Arduino.
(3) open ARDUINO IDE click on file ---> sketch --> and you will see one of this sketch APMROVERV 1.0 or APMROVER V2 which ever code you have saved in the ARDUINO folder
(4) and click compile DONE.
@TFrancis,
Do you have the correct mpu selected in the IDE? Should be Arduino Mega 2560. Also, make sure that you have the correct libraries. From previous discussions in this thread, there appears to be an old "libraries" and a new one that works with IDE 1.0 and up.
Just a thought.
Regards,
TCIII