Commit Graph

159 Commits

Author SHA1 Message Date
Randy Mackay
efc02161c4 Copter: add safe switch arming check 2013-10-05 22:23:53 +09:00
Randy Mackay
ba92c4891a Copter: make AutoTune a compile-time option 2013-10-04 15:50:50 +09:00
Randy Mackay
31cea0140d Copter: Leonard's AutoTuning for Roll and Pitch 2013-10-04 15:50:47 +09:00
Randy Mackay
a53d28e018 Copter: remove support for dmp ahrs 2013-09-27 10:42:49 +09:00
Andrew Tridgell
d9fe0552f0 Copter: allow Vcc checks on Pixhawk 2013-09-12 13:43:06 +10:00
Randy Mackay
a68966e077 Copter: integrate sprayer pump test 2013-09-11 17:05:25 +09:00
Randy Mackay
1d55fa6818 Copter: add arm check of GPS hdop when in Loiter 2013-09-09 14:03:40 +09:00
Randy Mackay
52ef77393c Copter: integrate Toshiba_LED_PX4 2013-08-30 13:01:35 +10:00
Randy Mackay
e985253f1a Copter: integrate notify 2013-08-30 13:01:35 +10:00
Randy Mackay
fe56ac3839 Copter: only allow auto_trim in STABILIZE 2013-08-15 21:11:23 +09:00
Randy Mackay
34e874282e Copter: only check hdop when circular fence enabled 2013-08-15 16:03:57 +09:00
Randy Mackay
d000967a76 Copter: pre-arm check for gps hdop < 2 2013-08-15 13:06:36 +09:00
Randy Mackay
6969ab573d Copter: configurable max lean angle
ANGLE_MAX parameter allows limiting the roll and pitch angles during
manual and auto flight modes to anywhere from 10 to 80 degrees
2013-08-11 12:53:22 +09:00
Randy Mackay
39ab4f62ef Copter: add SPORT mode 2013-08-05 21:04:41 +09:00
Olivier-ADLER
87d062905e Copter: 3 positions switch support for CH7 and CH8 - new 3 positions SIMPLE / SUPERSIMPLE mode
3 positions modes must use mode number >= 100
pre-arm check correction for CH7 - CH8 check
2013-07-29 15:12:10 +09:00
Randy Mackay
c173f0c7d9 Copter: change CH7/CH8 pre-arm check string 2013-07-29 14:32:27 +09:00
Randy Mackay
dbc18ee900 Copter: allow arming in AltHold and Loiter if landed 2013-07-28 18:18:47 +09:00
Olivier-ADLER
bf6120d8b7 Copter: Move CH7 - CH8 check from read_aux_switches() to pre_arm_checks.
Moving this to pre-arm checks save some processing time and is safer.
2013-07-26 09:30:24 +09:00
Randy Mackay
e6412b6996 Copter: do not spin motors during arming process 2013-07-16 12:47:57 +09:00
Jonathan Challinger
9f51a4a4f7 Copter: Cancel arming if throttle input above cruise_throttle. 2013-07-16 12:47:55 +09:00
Jonathan Challinger
2725f219cb Copter: Warn user with motors while copter is arming 2013-07-16 12:47:51 +09:00
Randy Mackay
2b5f6e2668 Copter: pre-arm checks for rc ch 1~4 min and max 2013-07-13 21:38:22 +09:00
Randy Mackay
213472102c Copter: pre-arm check of throttle failsafe value
Check throttle min is above throttle failsafe trigger and that trigger
is above ppm encoder's loss-of-signal value of 900
2013-07-13 20:25:34 +09:00
Randy Mackay
ed3bf2c1e7 Copter: relax pre-arm checks for mag field
previously it was 50% ~ 150% of expected mag field but now expanded to
35% ~ 165%.
2013-07-07 18:00:36 -10:00
Randy Mackay
79d2fe6271 Copter: double flash arming light when pre-arm checks fail
Hardly my finest work but it's temporary because we're going to replace
all the led, buzzer etc with a library called AP_Notify in the near
future.
2013-07-04 16:26:22 -10:00
Dr Gareth Owen
4c6d6ea96e changed yaw reset to when armed to not use initial_simple_bearing 2013-06-02 11:29:30 +09:00
Randy Mackay
e3cd494709 Copter: remove debug message 2013-06-01 18:21:30 +09:00
Randy Mackay
7b50ecc73c Copter: pre-arm check for mag field length 2013-05-31 12:23:19 +09:00
Randy Mackay
a1821c89e7 Copter: pre-arm check for board voltage < 5.8V 2013-05-31 11:31:27 +09:00
Randy Mackay
c6e383be0f Copter: disable board voltage pre-arm check for PX4 2013-05-31 11:27:54 +09:00
Randy Mackay
c3d21a457f Copter: add pre-arm board voltage check
Copter will not arm unless board voltage is over 4.5V
2013-05-28 21:50:31 +09:00
Randy Mackay
6ecd2d74a3 Copter: beep twice during arming 2013-05-27 13:55:34 +09:00
Randy Mackay
ec7ee47099 Copter: scaling stability patch 2013-05-27 11:21:31 +09:00
Randy Mackay
4fa101292a Copter: add baro health to pre-arm checks 2013-05-25 12:24:47 +09:00
Randy Mackay
bd44c2f73d Copter: all pre-arm checks to be disabled
set ARMING_CHECK parameter to zero to disable
2013-05-20 14:48:04 +09:00
Randy Mackay
43c377ca67 Copter: add compass calibration to pre-arm check 2013-05-20 14:19:47 +09:00
Randy Mackay
6efdabb104 Copter: move auto disarm into a separate function 2013-05-20 14:05:50 +09:00
Randy Mackay
1dbe98b566 Copter: display reason for pre-arm-check failures in GCS 2013-05-20 13:03:18 +09:00
Randy Mackay
f4846b417a Copter: compiler fix for disabled logs 2013-05-19 22:55:40 +09:00
Randy Mackay
9d0f40b432 Copter: add pre_arm_rc_check
Motors are not be enabled unless we have passed rc checks which include
checking the radio in calibration has been performed.
2013-05-16 16:32:00 +09:00
Randy Mackay
bd6edecdec Copter: restore logging of arm/disarm event 2013-05-13 18:07:28 +09:00
Randy Mackay
324200b52c Copter: disable centrifugal correction when disarmed 2013-05-06 15:32:08 +09:00
Randy Mackay
372ebb602c Copter: disable centrifugal force correction when disarmed 2013-05-05 16:55:06 +09:00
Randy Mackay
cca05ee8ae Copter: start dataflash logging when arming
Stop nearly empty logs from being produced.
Removed redundant armed bit from ap state.
2013-05-03 14:49:55 +09:00
Randy Mackay
90af3262c5 Copter: pre-arm check for compass 2013-04-27 23:50:40 +09:00
Randy Mackay
58d1da2d80 Copter: integrate AC_Fence in place of limits
Lesser functionality than limits but saves more than 150 bytes and it
works
2013-04-27 11:14:07 +09:00
Randy Mackay
63a48f76e2 Copter: add pre-arm check of radio and accel
Only checks throttle channel and accelerometer scaling
2013-04-23 00:01:20 +09:00
Randy Mackay
d2bd818b2d Copter: bug fix for auto_armed logic
Zero throttle when switching into an auto flight mode would cause the
motors to stop.
2013-04-17 21:28:42 +09:00
Randy Mackay
7cf2255822 Copter LEDs: replace bitRead with bitmask
Consolidate all checks of led_mode to leds.pde
Add #defines for bitmasks comparisons
Some formatting changes
2013-04-01 13:10:12 +09:00
Randy Mackay
38e81adae0 InertialNav: remove unnecessary "virtual" from function definitions
This saves about 30bytes of RAM
2013-03-19 17:51:16 +09:00
Randy Mackay
67c69a19ee Copter: remove baro-only alt hold
Saves 8 bytes of memory and more importantly simplifies the alt hold
calculations
2013-02-24 14:41:29 +09:00
rmackay9
bd0e018ca0 ArduCopter: restore auto-trim method but now use AHRS.add_trim 2013-01-02 09:20:08 +11:00
rmackay9
52802cb29e ArduCopter: limit output throttle to 800 only for TRI which does not have the new stability patch 2013-01-02 09:19:17 +11:00
rmackay9
881dae1e27 ArduCopter: remove throttle limit of 800 for quads, hexas and octacopters
Note: Y6 and OctaQuads still have the 800 limit because they do not have the latest stability patch
2013-01-02 09:13:42 +11:00
rmackay9
6da68c53a5 ArduCopter: bug fix so AP_Limits does not use up memory if it is disabled 2013-01-02 09:13:42 +11:00
Andrew Tridgell
9e986801c9 Copter: fixed SITL for ArduCopter 2012-12-20 14:52:34 +11:00
Pat Hickey
7af03127f6 ArduCopter: more work 2012-12-20 14:52:28 +11:00
rmackay9
072ffec493 ArduCopter: allow INERTIAL_NAV to be enabled separately for horizontal and vertical position 2012-12-06 10:31:41 +09:00
Robert Lefebvre
b32d7c8b63 ACM: TradHeli
Prevent helis from arming while RSC control is switched on.
2012-11-26 19:03:28 -05:00
Robert Lefebvre
637c9a1a72 ACM: TradHeli
Removing this "throttle" output restriction for TradHelis.
2012-11-26 18:44:03 -05:00
Andrew Tridgell
bcae83c4f6 ACM: make it possible to run CLI on radio port in ArduCopter 2012-11-21 21:41:34 +11:00
rmackay9
bcb9519fd7 ArduCopter: renamed system bitmap to ap_system to resolve desktop compile issues 2012-11-11 22:42:10 +09:00
Jason Short
883bb7cfc0 ACM formatting 2012-11-09 22:15:16 -08:00
Jason Short
d2a5928c06 Ap state updates 2012-11-09 22:15:15 -08:00
rmackay9
1f801714e8 ArduCopter: incorporate new version of inertial navigation
Moved several navigation functions from ArduCopter.pde to navigation.pde
2012-11-07 19:21:31 +09:00
rmackay9
a1b4ec6d0e ArduCopter: move to use new INS library instead of IMU library 2012-11-07 19:21:09 +09:00
rmackay9
c0ad98be31 ArduCopter: failsafe added to shutdown motors if mainloop fails 2012-10-09 12:30:17 +09:00
rmackay9
95763e610b ArduCopter: allow DMP to run in parallel with DCM
Parallel DMP can be enabled by #define SECONDARY_DMP_ENABLED in APM_Config.h
New DMP dataflash log type added to allow easy comparison with DCM
2012-09-30 00:25:40 +09:00
uncrustify
7f89e6c677 uncrustify ArduCopter/motors.pde 2012-08-21 19:19:50 -07:00
Andrew Tridgell
1b0f5ac84f ACM: use ahrs.set_fast_gains() on arm/disarm 2012-08-21 15:38:31 +10:00
Jason Short
c81064279a ACM : removed 2-level DCM gain change - .1 will still be the default. 2012-08-18 15:43:34 -07:00
Jason Short
575a9c4fd1 ACM : Fix for reloading the user DCM gains upon arming 2012-08-18 13:17:43 -07:00
Jason Short
522fa58ea5 ACM : temp fix for throttle output limit
I had a bad crash when I lost authority. The logs showed the throttle pegged at 1000 which killed my control. We went round and round on this and somehow settled on no limit. That wasn't a good idea. This should really be hard coded into the Motors Library, but for now I'm just sticking it here.
2012-08-18 09:04:22 -07:00
rmackay9
07c7c3945d ArduCopter: fixed small bug re arming_counter for TOY mode 2012-08-18 13:21:41 +09:00
rmackay9
36f947acb9 ArduCopter: changed all "int" to "int16_t" and a few "long"s to "int32_t".
Also moved "simple_counter" variable from global scope to the "update_simple_mode" function which is the only place that it's actually used.
2012-08-16 20:04:46 +09:00
Jason Short
b27c1ce396 ACM : Added check for second Toy mode 2012-08-11 22:37:26 -07:00
Andrew Tridgell
c2dc920d02 ACM: allow users to set the AHRS_YAW_P and AHRS_RP_P
the forced set left users with parameters they couldn't use
2012-08-11 08:35:10 +10:00
Jason Short
6037fabb5c ACM Motors.pde
Added Toy mode options,
Added DCM kp set to .1(armed) and .8 (disarmed)
2012-08-09 16:59:44 -07:00
Jason Short
8188058404 ACM: Failsafe Fix for Mission planner initiated AUTO mode
Keeps the failsafe from exiting Auto mode when returning from failsafe. Added arming ability for Toy mode.
2012-07-23 19:34:25 -07:00
Jason Short
fbe898a6db Arducopter: motors.pde formatting 2012-07-19 22:35:21 -07:00
Jason Short
98725be0ec Arducopter: INS
removed calibrate accels for now
2012-07-18 22:57:10 -07:00
Andreas M. Antonopoulos
c73f7ef3ab AP_Limits library, provides modular "limits" such as altitude and geo-fencing. 2012-07-14 19:26:17 -07:00
Jason Short
c42f9ece43 Inertial Control
I added inertial navigation based on the simulator data. This is an option only available if you compile with Arduino and set
#define INERTIAL_NAV ENABLED
in the APM_Config.h file.

This has been tested for one real flight and did not crash my quad, but consider it very alpha. The quad may be unpredictable at first until the error correction fixes poorly calibrated accels. Be Careful.

Most of the real work is in the inertia file, but the error correction, new variable defines and calibration calls are sprinkled throughout.

The Log should record RAW messages with special debugging values.
2012-06-13 22:34:45 -07:00
Robert Lefebvre
4e4ff84cf1 Updates to CopterLEDS
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Robert Lefebvre
c8fb9a6635 More CopterLEDS changes.
Merged CopterLEDS and Piezo functions to eliminate pin conflict on APM2.  Created new Parameter bit to turn piezo function on and off from MP. Moved GPS and Aux pin assignments to allow commonality between APM1 and 2.  Set LED_Mode parameter default to 9 in order to make CopterLEDS completely backwards compatible with old Motor LEDS and Piezo code.  Legacy users should see no difference.
2012-05-15 12:00:21 -04:00
rmackay9
905a445391 ArduCopter - motors.pde - changed references to "motor_armed" to "motors.armed()" because we've moved to using the AP_Motors class.
Simplified set_servos_4 function which was responsible for calling "output_motors_armed" or "output_motors_disarmed" as this determination as to whether the motors are armed or not is handled within the AP_Motors class.
2012-04-04 22:58:42 +09:00
Andrew Tridgell
7634f541b9 ACM: use set_blocking_writes(false) when we arm motors 2012-03-30 17:46:20 +11:00
Jason Short
d1fcebb5ca Cosmetic changes
GPS LED lock waits for home_is_set to be true
2012-01-28 21:19:46 -08:00
Jason Short
f5fd3a0597 reset all I terms at Arming 2012-01-20 22:52:30 -08:00
Jason Short
3ebed0b278 This allows users to test the Auto_throttle hold or cruise value 2012-01-14 11:43:52 -08:00
Pat Hickey
b907c1fd5c ArduCopter: add ch_of_mot lookup to motors.pde 2012-01-09 21:57:02 -08:00
Jason Short
e7b750074b Added takeoff state and ground state variable 2012-01-04 09:28:36 -08:00
Andrew Tridgell
4fe527aefa ACM: use LED_OFF/LED_ON instead of LOW/HIGH 2011-12-26 19:32:53 +11:00
Jason Short
58ad9faf6d initing z dampener at arming 2011-12-23 14:46:08 -08:00
Andrew Tridgell
483bef35e5 IMU: update ACM and APM for flash_leds change in IMU init 2011-12-13 18:19:41 +11:00
Jason Short
307723960d Increased slightly the Auto_trim time 2011-12-10 10:19:20 -08:00
Jason Short
b3bd4bd3c9 Cosmetic cleanup, commented functions for compiler warnings 2011-11-27 22:23:02 -08:00
Andrew Tridgell
a99bcec762 desktop: report motors armed in desktop build too
this helps in autotest
2011-11-25 20:00:19 -08:00
Jason Short
6bf0c32173 Removed some old debug prints from motors.pde
added ability to not increment I term for traversals.
2011-11-07 14:32:39 -08:00
Jason Short
c8304114a3 renamed some command variables to align with Arduplane
reworked the arming code and moved the DCM gains out.
updated climb_rate to include sonar data.
2011-11-04 21:41:51 -07:00