I have the latest ArduPilot board /EM406 GPS in a RC car, v1.0 software, RTL set to 1, code uploaded successfully, 'OUT2' to steering servo, 'IN2' from Rx Steering channel, GPS lock on, MUX LED illuminates to indicate the autopilot is switching correctly, etcI control the car to some distance (200ft or so) from me ('home') and flick the switch and then the car turns to the left and keeps on doing so in a never-ending circle? With RTL set to 0 it does the same seemingly ignoring the waypoints?Anything I'm overlooking or suggestions as to what might be wrong? Is there an easier way to quickly test that the navigation function is working?BTW, should the altitude be set to 0 on a ground vehicle or should it be ignored?
You need to be a member of diydrones to add comments!
Ok it works,... sort of, it's not very precise of course but I did get the car to change direction and attempt to RTL. Will try tomorrow in a plane but it does seem to be functioning correctly
Using the dummy servo seemed to be the answer as well as letting the car sit in one place for about 1 min even after the AP indicated a GPS lock.
Chris, how soon after that indication can one go, does the GPS have to find the maximum number of satellites for max effectiveness?
The basic code worked fine for me in a RC truck. It is a crawler so it only goes a few mph.
I did not run the throttle through AP but I did plug a servo into Out 1 so that AP would see a load on that pin. This kept me from having to mod the code that looks for status on that pin or the altitude hold. This servo did not do anything except function as a dummy load. In 1 was not connected to anything.
For WP mode I decreased the WP window from 30m to 10m so that I could use a smaller distance between points. Be aware that in WP mode it will cycle through your points then go to the RTL point (WP0) then start over. So you need to boot the AP in a location that the car can run through as part of the route of your WPs if you want to let it cycle multiple times.
In RTL mode it would always return and it would eventually establish a circle around the point. Sometimes it would over correct and cross through the circle. This usually resulted in the circle switching directions. (CW vs CCW) With some PID tuning it would probably be possible to always remain in a circle.
times.in - This website is for sale! - Times Resources and Information.
This website is for sale! times.in is your first and best source for all of the information you’re looking for. From general topics to more of what y…
Yes, I think Dimitris is right. We've never used it on a car. Try setting the PID Max/Min gains to a very small number (5, say) and see if that makes a difference.
I think that a RC car has a very tight turning radius, essentially turning around in a small diameter's circle, and thus GPS cannot pick up the speed vector effectively enough.
Replies
Using the dummy servo seemed to be the answer as well as letting the car sit in one place for about 1 min even after the AP indicated a GPS lock.
Chris, how soon after that indication can one go, does the GPS have to find the maximum number of satellites for max effectiveness?
I did not run the throttle through AP but I did plug a servo into Out 1 so that AP would see a load on that pin. This kept me from having to mod the code that looks for status on that pin or the altitude hold. This servo did not do anything except function as a dummy load. In 1 was not connected to anything.
For WP mode I decreased the WP window from 30m to 10m so that I could use a smaller distance between points. Be aware that in WP mode it will cycle through your points then go to the RTL point (WP0) then start over. So you need to boot the AP in a location that the car can run through as part of the route of your WPs if you want to let it cycle multiple times.
In RTL mode it would always return and it would eventually establish a circle around the point. Sometimes it would over correct and cross through the circle. This usually resulted in the circle switching directions. (CW vs CCW) With some PID tuning it would probably be possible to always remain in a circle.
I'll go try it
Dimitris