Commit Graph

132 Commits

Author SHA1 Message Date
rmackay9 87d5b5944d ArduCopter: commented out get_acro_yaw2 function to reduce compiler warnings 2012-08-18 16:03:49 +09:00
rmackay9 92688a793a ArduCopter: fixed compiler warning related to shadowing of control_roll and control_pitch in get_of_roll and get_of_pitch. 2012-08-18 11:48:12 +09:00
Jason Short 9cee1b2fa0 ACM : Upped Yaw Limit to 2200 2012-08-16 15:38:46 -07: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
rmackay9 a72bf6ef57 ArduCopter: replaced abs with labs as required in a few places.
Also fixed a small bug in the get_stabilize_pitch function in which it was using the roll (instead of pitch) to decide whether it should let the i term build-up or not.
2012-08-16 17:51:09 +09:00
Jason Short 3ad08b7ffc 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 132ac7d412 ACM : attitude.pde - removed unused function 2012-08-09 17:04:12 -07:00
Jason Short 5d756decd2 ACM : Attitude.pde
yaw limit, moved toy code out of att to it's own pre
2012-08-09 16:59:43 -07:00
Jason Short 8c47b0c087 ACM: Toy mode fix - Pitch flipped the sign on roll/Yaw coupling. 2012-07-30 15:43:05 -07:00
Jason Short 613849a8df Arducopter: Force nav_yaw to match auto_yaw when starting a mission 2012-07-19 22:59:03 -07:00
Jason Short 610d1d1795 Arducopter: deprecated the get_nav_yaw_offset function.
Small Toy mode updates
2012-07-19 17:41:52 -07:00
Jason Short aa645afe2b Arducopter: Altitude change nav
Split altitude hold into two controls to parallel navigation.
2012-07-18 22:57:10 -07:00
Jason Short 584e7dcda4 Arducopter: Removed Yaw Limit for Quads 2012-07-14 14:06:34 -07:00
Jason Short 44b16b7b61 Arducopter: Temp reversion to old Yaw controller. 2012-07-14 12:26:13 -07:00
Robert Lefebvre 59e133235f Implementing Yaw Fix. Tried to blend with Jason's changes. 2012-07-14 00:24:22 -04:00
Jason Short 6f9e2bf3a8 Arducopter: Toy mode update
Removed debugging printfs,
lowered roll response - was too high in test flights
made roll limit 2500 for testing
2012-07-11 17:46:06 -07:00
Jason Short 1feaaa4655 Arducopter: Toy mode refinements 2012-07-10 21:53:38 -07:00
Jason Short 226bba48a6 Toy Mode Yaw Rate fix 2012-07-09 13:13:32 -07:00
Jason Short c62706ad06 Toy Mode: Yaw performance update. 2012-07-03 17:14:54 -07:00
Jason Short 16b25a26c2 Toy Mode: removed virtual WP, copter now just goes into auto_loiter when not holding the sticks. 2012-07-02 17:52:38 -07:00
Jason Short e0b3309500 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 3ce867508b Attitude.pde: Toy mode logic 2012-06-29 21:20:27 -07:00
Jason Short eeab4c5363 Attitude.pde: Turned off boost_p for nav_throttle based on Testing feedback from Marco. 2012-06-26 10:39:42 -07:00
Jason Short 812bf7d874 Attitude.pde - Added small boost to alt hold for takeoff. 2012-06-25 23:12:19 -07:00
Robert Lefebvre 1064dcbd34 Open up constraint on Rate Yaw Output for all copters. 2012-06-22 10:06:01 -04:00
Jason Short 27e0aee03f Small fix to angle boost - increases by about 20% to deal with inefficiencies of non-downward thrust 2012-06-20 08:47:47 -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
rmackay9 65050775e1 ArduCopter: made Robert's new yaw method optional (off by default).
Add this line to APM_Config.h to enable Robert's yaw
#define ALTERNATIVE_YAW_MODE ENABLED
2012-06-13 21:50:16 +09:00
Robert Lefebvre c5916a8b4d Opening up the Yaw Rate constraint for Trad Heli. 2012-06-07 22:40:25 -04:00
Robert Lefebvre e2496181ff Yaw Fix
Modified Nav_Yaw controller to better track intended heading changes.
2012-06-07 17:15:33 -04:00
Jason Short a9610a0761 Stabilization patches
removed Angle error limit for stabilization
constricted Iterm to +- 5° error and limited the implementation to when the quad is +- 5° from center
doubled the output limit for Rate controller.
increased default Rate_P gain to .18 with matching Rate_D of .004
Tested in the SIM and in backyard. dramatically increases performance and quad no longer overshoots and flips when pushed hard.
2012-06-05 16:41:44 -07:00
Jason Short 9ab06c5542 Moved PID logging counter into define 2012-06-03 11:13:50 -07:00
Jason Short 2311d52d37 Renamed some variables to clarify functionality. 2012-05-29 12:42:37 -07:00
Jason Short 1a5e2f4e37 Attitude.pde - Removed rate limit based on SIM flights. These should never have been in place and seriously detriment Acro flight. 2012-05-21 09:58:23 -07:00
rmackay9 533772339e ArduCopter - Attitude.pde - added logging of optical flow pid controller 2012-04-21 20:17:12 +09:00
rmackay9 df85051574 ArduCopter - added dataflash logging of roll and pitch rate controllers 2012-04-08 10:19:20 +09:00
rmackay9 aa4085183c ArduCopter - Attitude.pde - moved heli_get_angle_boost from heli.pde (which will be removed) to Attitude.pde. In fact we should combine heli_get_angle_boost and the regular get_angle_boost. 2012-04-04 22:51:39 +09:00
Andrew Tridgell e0c9ab5a29 ACM: fixed heli build 2012-03-27 15:37:25 +11:00
Andrew Tridgell 47f9dfd125 ACM: fixed the build on the 1280 2012-03-27 15:37:24 +11:00
rmackay9 1f4cfb9333 ArduCopter - added PID log type. Implemented for Yaw stabilize and rate controllers. 2012-03-25 16:09:08 +09:00
Andrew Tridgell 547b4ed55b AHRS: adapt ArduCopter for new AHRS framework 2012-03-19 17:29:02 +11:00
Jason Short a0717f082e ACM: Attitude.pde - consolidated wind I term resets 2012-03-18 22:31:21 -07:00
Jason Short fc32da0d2e ACM: increased the available rate error constrain, it was too low 2012-03-10 12:39:16 -08:00
Jason Short bd4835a1b2 ACM: removed the experiment for rate error. 2012-03-10 12:38:29 -08:00
Jason Short 730476fdfd ACM -
Implemented automatic ranging of Alt Hold gains. Works well in simulator and testing.
- alt hold estimation moved to 50 hz
- simple fixed observer calc for smooth and accurate climb rates useful for derivative calcs
- auto-reset of the I term by moving I value into throttle value. This recalcs the gain every 20seconds for battery drainage compensation in long flights.
- remove filtering for Nav_throttle
- added a way to lower the gain on nav_throttle for descents by / climb_rate error by 2 - seems to work OK and keeps copter from dropping like a rock when the Baro drifts quickly lower.
- removed old throttle hold set point code
- made throttle override for alt hold +- 200 vs 250
2012-03-06 22:22:14 -08:00
Jason Short a387956814 added stab_d gain scheduling 2012-02-28 20:16:40 -08:00
rmackay9 744e5b8c60 ArduCopter - made rate controller filters globals to fix compiler error on Arduino 022 (Arduino 1.0 was fine) 2012-02-28 22:56:26 +09:00
rmackay9 4a0989f95d ArduCopter - Attitude.pde - updated get_rate_roll and get_rate_pitch to use new average filter.
modified all int to int16_t in Attitude.pde
2012-02-28 21:26:37 +09:00
Jason Short 1ce267f904 increased the rate error for more responsive alt hold 2012-02-25 13:31:21 -08:00
rmackay9 57e5eee8c8 TradHeli - increase max yaw input to 45 degrees 2012-02-24 20:18:40 +09:00