Commit Graph

466 Commits

Author SHA1 Message Date
rmackay9 a4a2fad798 ArduCopter: more out-of-date commented out code removed 2012-10-17 19:25:14 +09:00
rmackay9 7228236db6 ArduCopter: updated firmware version to 2.7.4-Delta 2012-10-17 10:20:41 +09:00
rmackay9 025cc05cab ArduCopter: update version information ahead of testing 2012-10-15 18:15:38 +09:00
LeonardTHall 4203655646 New Yaw controller using rate feed forward and stabilize.
Signed-off-by: LeonardTHall <LeonardTHall@gmail.com>
2012-10-15 11:37:49 +09:00
rmackay9 254fff6acd ArduCopter: fixed acro mode
Changes included:
Removing earth frame roll_rate_trim, pitch_rate_trim and yaw_rate_trim.
Switch ACRO mode to use YAW_ACRO instead of YAW_HOLD.
Changed YAW_ACRO to use stabilize yaw when axis_enabled.
Reset ACRO roll, pitch and yaw targets to current attitude when first entering ACRO.
2012-10-14 17:47:46 +09:00
rmackay9 9052b4152b ArduCopter: remove unnecessary (probably slightly harmful) extra barometer read
The barometer reads including reading temperature was all moved to a timer but this extra read (originally to read the temperature) was probably forgotten.
2012-10-11 18:31:10 +09:00
rmackay9 b5c1e23549 ArduCopter: changed sin_pitch and sin_roll to faster equivalents 2012-10-11 17:54:42 +09:00
Andrew Tridgell 2af5ff896d ACM-HIL: fixed optflow declaration 2012-10-11 11:51:25 +11:00
Pat Hickey 74d5b1b841 ArduCopter: Provide AP_Semaphore instance for SPI3 bus on APM2. 2012-10-09 11:39:39 -07:00
rmackay9 0050232ae2 ArduCopter: failsafe added to shutdown motors if mainloop fails 2012-10-09 12:30:17 +09:00
rmackay9 ae05bc62f6 ArduCopter: added AP_Semaphore to list of includes 2012-10-06 12:41:58 +09:00
rmackay9 a35543bf96 ArduCopter: prioritise rate controllers, rate controller targets converted to body frame 2012-10-03 14:10:31 +09:00
rmackay9 fc4f4d76c9 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
rmackay9 4bca609b9f AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
rmackay9 ebbf8dc6be ArduCopter: updated version to 2.7.4-Beta 2012-09-25 23:39:15 +09:00
rmackay9 090a672636 ArduCopter: optical flow initialisation changes now that optical flow library automatically works on APM1, APM2 and APM2.5 2012-09-24 18:39:33 +09:00
rmackay9 aaab3c08aa ArduCopter: added throttle curve (although disabled by default) for all multicopters 2012-09-18 23:05:08 +09:00
Andrew Tridgell 14d19ac33d ACM: updates for new GPS detection
a GPS can now be attached after startup
2012-09-17 14:45:47 +10:00
rmackay9 9965dd8b1a HIL: changes to fix HIL for ArduCopter after recent timing changes.
Changes include using AP_PeriodicProcess and calling imu.init even in HIL mode
2012-09-15 18:42:56 +09:00
rmackay9 54d07f6d04 ArduCopter: removed INSTANT_PWM from ArduCopter and AP_Motors library 2012-09-13 21:31:13 +09:00
Jason Short b56dc44e61 ACM : Fix enduf 2012-09-10 21:25:53 -07:00
Jason Short 24f80c632c ACM : forced setup_show to dump params during log dump for better analysis. 2012-09-10 20:52:30 -07:00
Jason Short 65dc4ccc6d ACM : Added centralized Iterm logging at a lower rate. Logs all iterms. 2012-09-10 20:26:48 -07:00
Andrew Tridgell ea78121f1b ACM: use spare CPU cycles to read the magnetometer 2012-09-10 11:38:18 +09:00
rmackay9 7a0189fb2c ArduCopter: modified mainloop timing to be in sync with the arrival of new data from the IMU.
This reduces the maximum delay between when new sensor data arrives and when it is actually used by about 5ms.
2012-09-10 11:37:53 +09:00
Andrew Tridgell 1fecd135ef ACM: use compass.accumulate() in ArduCopter
this gives us a much less noisy magnetometer
2012-09-08 10:06:04 +10:00
rmackay9 af2502c739 ArduCopter: upgraded firmware version to 2.7.3 2012-09-02 12:58:16 +09:00
rmackay9 3e6966c33d ArduCopter: fixes to allow AP_Mount to work on APM1 with original default channels and fix to reenable support for 3-axis gimbals on APM2.
Channels 5 to 11 changed to RC_Channel_aux.
Removed channel 9 because APM_RC doesn't support it in any case.
Updated EEPROM format version to 119 because of the change to RC_Channel_aux and because k_param_rc_11 moved to be after k_param_rc_10.
2012-09-02 12:51:23 +09:00
Craig Elder c83d1402fb Arducopter: Release 2.7.2 2012-08-31 19:18:10 -07:00
Jason Short 91bc3705c1 ACM : revert back to the 2.6 climb rate calc
The current filter is outputting wild oscillations.
2012-08-28 21:22:07 -07:00
Craig Elder 94957b3529 Arducopter: Preparing for 2.7.2 Release 2012-08-28 18:30:41 -07:00
Jason Short 52def45ba0 ACM: Altitude Adjust 2012-08-28 15:40:08 -07:00
Jason Short 24486c75b5 ACM : Log Timing 2012-08-28 15:40:08 -07:00
uncrustify e4932136d9 uncrustify ArduCopter/ArduCopter.pde 2012-08-21 19:19:50 -07:00
Andrew Tridgell bd6581c523 AHRS: removed Quaternion build support from APM/ACM/rover 2012-08-22 10:42:21 +10:00
Andrew Tridgell 85e8ba7993 ACM: fixed TradHeli build 2012-08-22 09:55:31 +10:00
Robert Lefebvre e1d6103045 TradHeli: Creating Flybar Acro mode. 2012-08-21 16:54:01 -04:00
rmackay9 1dd8606b17 ArduCopter: changed reset_throttle_counter to uint8_t to get rid of overflow bug that was preventing target altitude from being locked in after pilot input down throttle. 2012-08-19 11:50:35 +09:00
Jason Short 123545f679 ACM : Alt hold adjustment - made angle boost work during alt hold changes.
increased length of delay when reverting to automatic hold to deal with latency of baro sensor
2012-08-18 09:30:46 -07:00
rmackay9 7a31e4e660 ArduCopter: modified altitude hold so that 1 second slow down period is executed after pilot moves throttle back into deadzone 2012-08-18 21:45:49 +09:00
Jason Short cbf4870b00 ACM : Made control_roll and pitch global for logging; made yaw towards waypoint use initial angle and not a recalculated angle to deal with wiggles as we approach WP 2012-08-16 15:39:50 -07:00
rmackay9 48b7d26c5d 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 cbd4661b96 ACM: Added a filtered version of Location for GPS lag.
I did this because when you are close to a WP the Yaw angle can go a bit wacky as the location jumps around. The filtered loc is only used in the wp_distance calculation now.
2012-08-14 14:11:51 -07:00
Jason Short ba6ec9ae45 ACM: Revved the version 2012-08-14 14:11:51 -07:00
Jason Short 455cfa4caa ACM: Toy mode updates - added second toy mode 2012-08-11 22:37:27 -07:00
Andrew Tridgell d0709443b4 AHRS: fixed build
AP_Airspeed.h is now needed to build AHRS
2012-08-11 12:22:55 +10:00
Jason Short 0688eee9bc ACM : Added larger WP radius for fast waypoints so we don't loose speed angling in on the WP at the last second. 2012-08-10 10:02:32 -07:00
Jason Short 7615c835ee ACM : Arducopter.pde
command_nav_index upped to in16t for negative number
renamed trim flag > CH7_flag
Added fast_corner var
removed unused alt vars
Alt hold I term update
2012-08-09 16:59:43 -07:00
Amilcar Lucas 1683f18bff Allow fully independent operation of two AP_Mount instances 2012-08-08 23:11:23 +02:00
Amilcar Lucas f321f5d9c5 Add a second mount instance 2012-08-08 23:07:25 +02:00
Andrew Tridgell 295a9ce39c ACM: change to use get_bearing_cd() instead of get_bearing() 2012-08-08 12:12:30 +10:00
Andrew Tridgell d8106cf20f AP_Param: update ArduCopter core for new AP_Param interface 2012-08-08 12:11:57 +10:00
Amilcar Lucas ff32fed176 ArduCopter: Use generic channel names for AP_Mount servos.
This simplifies mission planner, the same code can be used for plane and copter now.
2012-08-06 23:33:51 +02:00
Amilcar Lucas 03b902d4b7 Add me :) 2012-08-06 00:40:12 +02:00
Amilcar Lucas 36bcd827b4 AP_Mount: Allow using any RC channel to control any of the mount axes.
This has the added benefit of saving 60 bytes and simplifying Mission Planner gui.
Moved some code from RC_Channel_aux to AP_Mount class
The servos get written by the update_mount_position() function, this simplifies main()
PS: The beauty of using libraries: I did not have to touch a single line of ArduPlane's code!
2012-08-05 23:48:57 +02:00
Amilcar Lucas fe4713b46e RC_Channel: Allow each channel to know who they are, this simplifies the enabling and output function calls. 2012-08-05 23:08:31 +02:00
Amilcar Lucas 9b31938519 The mount type must be updated periodically 2012-08-04 18:44:08 +02:00
rmackay9 64f027bf42 ArduCopter: bug fix to reset yaw target when zero and when in stabilize or acro mode. 2012-08-01 12:15:02 +09:00
Andreas M. Antonopoulos 005b3d7f62 AC2.7.1: Updated version and tag 2012-07-31 13:11:17 -07:00
rmackay9 38ff381620 ArduCopter: reset target yaw when throttle is zero (except if failsafe has been triggered) 2012-07-28 23:05:05 +09:00
rmackay9 07a8d0cc99 ArduCopter: fixed HIL build by removing ability to change _kp and _kp_yaw gains (used for accel and gyro sensor mixing) 2012-07-28 16:22:35 +09:00
rmackay9 83ab9be0eb ArduCopter: added DMP_ENABLE #define and CH6 tuning value for AHRS_KP 2012-07-28 14:21:07 +09:00
Michael Oborne 78b94f39ae AC fix sitl attitude hil build 2012-07-24 21:18:36 +08:00
Andreas M. Antonopoulos f8a9cdd8cd AC: ArduCopter 2.7 release candidate - updated THISFIRMWARE constant. 2012-07-21 17:52:06 -07:00
Jason Short 9cf36c553c ACM: Fixed Baro rate patch to work with Sonar and added simple filter 2012-07-21 16:45:00 -07:00
Jason Short e585eaa253 Ardcucopter: RTL distance check update, reset I terms fixed. 2012-07-20 13:27:35 -07:00
Jason Short c1186abf65 Arducopter: cleanup, skip out of throttle control when flipping. 2012-07-19 22:35:21 -07:00
Jason Short 8f7eba4fd1 Arducopter.pde: Increased the throttle Hold altitude control
simplified Yaw reset
2012-07-19 17:38:25 -07:00
Jason Short bc843b0684 Arducopter: Adjust landing speed
removed commented out calc_loiter_pitch_roll calls
Changed updateRTL to use 1m be default instead of wp_radius to avoid poor loiter entry speed.
2012-07-19 09:48:31 -07:00
Jason Short 1595a662c0 Arducopter
removed old Var
2012-07-18 22:57:10 -07:00
Jason Short f40d8f04af Arducopter: New Alt control code
Uses a new method to manage altitude changes. Alt hold controller was split into a hold and a rate controller just like navigation. Changing alt is done by specifying a climb rate.
Interactive alt hold is now simplified and is an 80cm climb or descent.
2012-07-18 22:57:10 -07:00
Jason Short 095a9c5c96 Arducopter: Flip mode
Flip mode graduates to pre-compiled option
2012-07-18 22:57:10 -07:00
rmackay9 6ca8fda76d ArduCopter.pde: added call to set_manual_rc_channel to allow pilot's channel 6 to control pitch.
This initialisation code should be moved to init_ardupilot and/or into the AP_Mount library.
2012-07-18 23:49:09 +09:00
Andreas M. Antonopoulos b03e424fda AP_Limits: Configuration defaults moved to config.h. Fixed AP_LIMITS==DISABLED handling. 2012-07-16 11:46:43 -07:00
rmackay9 9276c68f80 ArduCopter: added enable_out_ch and output_ch calls for rc_camera_roll, pitch and yaw servos so they actually move 2012-07-15 16:38:28 +09:00
Andreas M. Antonopoulos 31fd74d94c AP_Limits library, provides modular "limits" such as altitude and geo-fencing. 2012-07-14 19:26:17 -07:00
Jason Short 3ce48cb42c Arducopter: Yaw stop fix 2012-07-14 12:23:10 -07:00
Robert Lefebvre ef9cd54035 Implementing Yaw Fix. Tried to blend with Jason's changes. 2012-07-14 00:24:22 -04:00
Jason Short 9eb638dac8 Circle_WP: Fix for Yaw toward center, fix for transit to Circle WP from a distance 2012-07-13 19:29:36 -07:00
Jason Short ce0de98144 Arducopter: Wrong define used, caused Copter to Yaw to home when flying missions 2012-07-13 12:51:38 -07:00
Jason Short bfce0ad9c5 Arducopter: Fix circle_WP 2012-07-12 09:22:20 -07:00
Jason Short 1bd1975e2e Arducopter:Arducopter.pde
switched over to barometer.get_climb_rate() * 100
removed +home.alt calcs since home is always 0 altitude
2012-07-10 21:53:38 -07:00
Jason Short 9de2c00d93 Arducopter: WP_radius
Switching to stored WP_radius in meters, just like Arduplane
2012-07-10 21:53:38 -07:00
Amilcar Lucas 8e14ebbc10 Merge the changes from APM_Camera branch into ArduCopter
Conflicts:

	ArduCopter/Camera.pde
	ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Jason Short 86cab799ed arducopter.pde
Timer was set =0 at initialization.
2012-07-09 13:13:32 -07:00
Jason Short 207497a840 Arducopter.pde:
Added note about -1 to disable feature
Set RTL_Atl by default after reaching home in case we're at the wrong alt.
increased speed of Yaw rotation for WPs
2012-07-03 17:21:46 -07:00
Jason Short 0aabd4efe2 Yaw mode:
Improved hybrid Yaw mode:
- uses rate controller rather than as fast as possible
- waits 1.5 seconds before entering hold
- bounce free
2012-07-01 13:40:12 -07:00
Jason Short e5fbcb629d Arducopter.pde_RTL:
added a new RTL function that goes into Loiter, first, checks if we have reached RTL_Altitude, then enters WP mode to come home.
Removes Approach mode. Uses Auto_Approach value to decide if we should land or descend to a certain altitude
2012-07-01 13:40:11 -07:00
Jason Short b199fb22a2 Added code for self centering throttle - disabled by default. 2012-07-01 13:40:11 -07:00
Jason Short 60cdbe771c Circle_WP distance check fix 2012-06-29 21:20:28 -07:00
Jason Short 146a4b021f Arducopter.pde: Added Toy mode refinements 2012-06-29 21:20:27 -07:00
Jason Short c830ab6ded Aeducopter.pde: Toy mode updates 2012-06-29 21:20:27 -07:00
Andrew Tridgell 1cb96e14a9 SITL: enable the SIM_* parameters in ArduCopter and ArduPlane 2012-06-29 15:10:52 +10:00
Adam M Rivera 44ce8fc4bc ArduCopter: Loiter Timer should have been set when the approach altitude was set. Previously, land had to be enabled before auto approach would work. 2012-06-28 20:34:53 -05:00
Andrew Tridgell 7883c4a545 ACM: ArduCopter updates for new compass interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell 7eb150a2f0 ACM: adapt the ArduCopter code for new barometer interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell d71e82191f ACM: enable GPS in AHRS for ArduCopter
this is an experiment in centripetal correction for multicopters
2012-06-27 16:01:49 +10:00
Jason Short 3fcd3100cc Added user editable define for Super simple radius 2012-06-26 10:38:46 -07:00
Jason Short 4872880134 Arducopter.pde : Added Approach mode, added "Toy" mode fun code I'm playing with.
Added landing code to make landing happen closer to home loc
Added check for distance to Loiter WP before overriding a new Loiter position.
Moved calc_loiter_pitch_roll() to 50 hz.
removed the nav_bearing var - not used with new crosstrack.
2012-06-25 23:08:25 -07:00
Jason Short 8ef60f2d75 Added throttle_min as a user definable param 2012-06-20 14:58:34 -07:00