I've just released ArduPlane 2.60
The main new features in this release are:
- wind estimation
- long term dead reckoning support
- wheeled takeoff and landing support
- optional new roll/pitch/yaw controllers from Jon Challinger
For a description of the first 3 new features have a look at my previous post. All of these features have been test flown on my PulseXT 40 and have performed very well.
The new roll/pitch/yaw controllers from Jon can be enabled by building with
#define APM_CONTROL ENABLED
in your APM_Config.h. If you enable the new controllers then I strongly suggest you read Jons blog post about the new controllers and how to tune them. These controllers are still experimental, but if we get good feedback on them from users we will quite likely adopt them as the standard controllers in a future release.
Other changes in 2.60 include:
- a new RECEIVER_RSSI_PIN compile time option, to allow you to display receiver RSSI via MAVLink. This should be useful for FPV flying.
- an important fix from Jason Short for an erase bug in the dataflash. If you use dataflash logs then please erase them after loading this release to ensure the pages are properly initialised.
- support for the new features in the new MTK GPS firmware
- updates to the configuration parameters for the Mount code. If you use the mount code, then please check your parameters carefully, as some things have changed.
- a fix to the JUMP command in missions, which solved a problem where the wrong command could sometimes be run
- a fix to the initial yaw from AHRS when using a compass
- new FENCE_ACTION_REPORT value for FENCE_ACTION
- new "OBC" failsafe code as a compile time option
- new RST_MISSION_CH option
- new STICK_MIXING option
- support for dual stabilisation mounts (eg. one camera and one antenna)
- removed old CLI switch and dip switch support
- fixed a derivative filter bug that could have a small affect on AHRS attitude
- fixed LOITER_TIME to match MAVLink spec (time is in seconds)
- added FBWB_ELEV_REV option
Happy flying!
Replies
Nice work John! Glad to have a PID controller that works well. How long before this gets set as the default control scheme?
I'm also a little confused by your terminology. I'm not exactly seeing how it is different from the PID terms. If you're using a PI controller that works on the rate then isn't that the same as the derivative?
Are you also working on making this an adaptive control scheme? Eliminating tuning entirely sure would be nice, especially for moving the controller from airframe to airframe.
Thank you Tridge, great work
test it next weekend ...
Great work Andrew!
About OBC new features, it is possible to set the number of attempts for GPS Loss as well for COMMS Hold if GPS signal returned as well GCS Heart Beats regained?
If time out on GPS Loss it will trigger that Pin you created in the past for Geofence crossed?
Kind regards
Great work!
Iam using an APM2 on an Easyglider with a Futaba 7C 2.4.
Please could someone explain how i would go about using the RST_MISSION_CH?
Iam not really sure where to start.
Thank you
Quick guide to tuning my controllers. Looks complex, but each step is individually easy:
Gain names:
Instructions:
Also note that my blog post is inaccurate regarding stabilize mode. Stabilize mode works now, and there is an additional "STAB_GAIN" on the controllers, which controls how strongly they stabilize when you switch to stabilize mode. It has no other function.
A small errata ... the wheeled takeoff code doesn't work in 2.60 if you enable Jons controllers with APM_CONTROL=ENABLED. I've fixed that in master for the next release.