Commit Graph

132 Commits

Author SHA1 Message Date
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
Jason Short 27fc6eea10 Z dampener
Integrated Aurelio R. Ramos' Z dampening code.
2011-11-01 21:18:47 -07:00
Jason Short dd23883097 Motor arming delays
Speeding up delays for motor arming commands - Level and Inflight leveling.
2011-10-27 11:54:46 -07:00
Jason Short 43b3015963 lowered DCM RP gains
made Instant_PWM optional
upped PWM output to 400hz
2011-10-11 22:20:23 -07:00
Andrew Tridgell d89ae696ef merged the GCS updates from ArduPlane to ArduCopter
this removes all the non-MAVLink GCS options, and simplifies the HIL
and GCS code a lot. It also adds async sending of low priority GCS
text messages.
2011-10-11 20:53:43 +11:00
Jason Short ba7abd62d8 Adjusted DCM Gains to normal levels. Added a check to stop navigating when landing and to land faster. 2011-09-23 13:52:10 -07:00
Jason Short 73fd0084be Added Piezo Support, code from Oliver. 2011-09-18 17:12:28 -07:00
Amilcar Lucas 227ce0a92d Merge some small misc improvements from APM_Camera branch 2011-09-17 20:25:31 +02:00
Jason Short e6b7c57d26 Circle Mode now working
250Hz loop implemented
2011-09-11 11:22:01 -07:00
Andrew Tridgell 1456a2a912 renamed top level directories
ArduCopterMega -> ArduCopter
added archives directory for old code
2011-09-09 11:27:41 +10:00