-
Notifications
You must be signed in to change notification settings - Fork 2
Failsafe
There are three completely different failsafe modes:
1.- Receiver Failsafe: This failsafe mode works only on the RC receiver (not all R/C Tx/Rx systems have this feature) side. It's not related at all to the PPM encoder of !ArduPilot Mega (APM). In this case the user must pre-configure the servo "failsafe" position outputs. The configuration must give the "!ArdupilotMega multiplexer" control to the autopilot (multiplexer routed to the Atmega1280) and also set the user defined "channel mode" to "return to home" (I will explain this later), so in case the RC link is lost the aircraft will safely return to home. Note that some 72Mhz don't have built-in "Receiver Fail Safe". If this is your case you will have to rely on the "PPM Throttle Fail Safe feature", which follows...
UPDATE 5/29/2011: The latest code now has two failsafe behaviors: a short failsafe (loss of signal for more than 1.5 seconds) and a long failsafe (loss of signal for more than 20 seconds).
For Auto and Loiter modes you have a choice (through the configuration) of if they will be affected by the failsafe or not. If so then the mode is switched to RTL. For the lower modes (Manual through FBW-B) the mode is switched to Circle for short failsafe and then switched to RTL for long failsafe. For short failsafe the mode is returned to the original mode if signal is restored, but for long failsafe the mode will remain RTL until you change it.
2.- PPM Throttle Failsafe: The throttle failsafe is an optional feature of the built-in "PPM encoder" of the APM. The header file of the PPM encoder source code allows you to define which input channel the PPM encoder will monitor and the threshold values. If the defined channel reaches the defined threshold value then the "failsafe" will be triggered. (This usually happens when your 72Mhz is out of range or turned off.) When the failsafe is triggered the PPM will set the output servo signals to the user-defined positions. These "pre-define servo positions" are located in the same header file of the PPM encoder source code (I will explain this later). This allows you to set the autopilot to the correct mode to safely return to home (Multiplexer routed to autopilot and autopilot mode set to "Return to Home").... But for this you will need basic programming skills, to install WINAVR/AVR STUDIO and have an AVR programmer... I'm working on a simple solution... In the meantime, the easiest way is to switch to 2.4Ghz RC systems. Buy one now. ;-)
3.- PPM Multiplexer Failsafe: This feature allows you to "hard" route the four main input channels (Ch1, 2, 3 and 4) to the outputs (Ch1,2,3 and 4), by using any defined input channel (In the same PPM encoder source code header)... This is useful in development stages when the Autopilot may freeze or crash (It will work even if the microcontroller is dead). This in not useful for helicopters and quadcopters, because the special mixing needed to fly those things will be done inside the Autopilot, so be careful. Anyway the header file allows you to disable this feature, this will also free another input channel that can be used for something else....
http://ardupilot-mega.googlecode.com/svn/ArduPilotMegaImages/Drawing1.png