Commit Graph

5 Commits

Author SHA1 Message Date
Randy Mackay a8bea0af03 Copter: allow switching to throw without position estimate
The vehicle arming check will still stop the user from arming in throw mode without a good position estimate.
2016-03-22 16:21:58 +09:00
Randy Mackay dca89e7fe7 Copter: throw static variables moved to global scope 2016-03-03 12:18:27 +09:00
Randy Mackay 24cfbeebd0 Copter: add throw_exit 2016-03-03 12:18:25 +09:00
Randy Mackay 959c0eccfd Copter: reject changing to throw mode while armed 2016-03-03 12:18:23 +09:00
Paul Riseborough a7b69366a1 Copter: Add flight mode for throw launch
The is commit adds a new flight mode called 'Throw' to Copter that enables the copter to be thrown into the air to start motors. This mode can only be netered when the copters EKF has a valid position estimate and goes through the following states

Throw_Disarmed - The copter is disarmed and motors are off.
Throw_Detecting - The copter is armed, but motors will not spin unless THROW_MOT_START has been set to 1. The copter is waiting to detect the throw. A throw with an upwards velocity of at least 50cm/s is required to trigger the detector.
Throw_Uprighting - The throw has been detected and the copter is being uprighted with 50% throttle to maximise control authority. This state transitions when the copter is within 30 degrees of level.
Throw_HgtStabilise - The copter is kept level and height is stabilised about the target height which is 3m above the height at which the throw release was detected. This state transitions when the height is no more than 0.5m below the demanded height.
Throw_PosHold - The horizontal motion is arrested and the copter is kept at a constant position and height.
2016-03-03 12:18:13 +09:00