Commit Graph

135 Commits

Author SHA1 Message Date
uncrustify f8b7fdf7bb uncrustify ArduCopter/Attitude.pde 2012-08-21 19:19:50 -07:00
Jason Short 5684934989 ACM | Attitude.pde - removed next_wp.alt reset. 2012-08-18 12:25:48 -07:00
Jason Short 5bbde052ba ACM: Added a more sane limit to Angle boost 2012-08-18 09:04:21 -07:00
rmackay9 310ce05dc2 ArduCopter: commented out get_acro_yaw2 function to reduce compiler warnings 2012-08-18 16:03:49 +09:00
rmackay9 2d0bea7f9c 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 bd17c23e7e ACM : Upped Yaw Limit to 2200 2012-08-16 15:38:46 -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
rmackay9 5f2c662fc9 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 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 fb7e5724c7 ACM : attitude.pde - removed unused function 2012-08-09 17:04:12 -07:00
Jason Short c3f01bebfc 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 4829e937ea ACM: Toy mode fix - Pitch flipped the sign on roll/Yaw coupling. 2012-07-30 15:43:05 -07:00
Jason Short 6067170f48 Arducopter: Force nav_yaw to match auto_yaw when starting a mission 2012-07-19 22:59:03 -07:00
Jason Short 219fed1441 Arducopter: deprecated the get_nav_yaw_offset function.
Small Toy mode updates
2012-07-19 17:41:52 -07:00
Jason Short 5f7c5ff387 Arducopter: Altitude change nav
Split altitude hold into two controls to parallel navigation.
2012-07-18 22:57:10 -07:00
Jason Short eafdfb2fea Arducopter: Removed Yaw Limit for Quads 2012-07-14 14:06:34 -07:00
Jason Short f36aa618cf Arducopter: Temp reversion to old Yaw controller. 2012-07-14 12:26:13 -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 b6715b2e53 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 23f8d20271 Arducopter: Toy mode refinements 2012-07-10 21:53:38 -07:00
Jason Short ab603c7fcf Toy Mode Yaw Rate fix 2012-07-09 13:13:32 -07:00
Jason Short b2d932136a Toy Mode: Yaw performance update. 2012-07-03 17:14:54 -07:00
Jason Short 88428743b2 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 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 bcf6c03157 Attitude.pde: Toy mode logic 2012-06-29 21:20:27 -07:00
Jason Short 57e4fabb57 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 91cde15c27 Attitude.pde - Added small boost to alt hold for takeoff. 2012-06-25 23:12:19 -07:00
Robert Lefebvre 7eae382a22 Open up constraint on Rate Yaw Output for all copters. 2012-06-22 10:06:01 -04:00
Jason Short 0ccf5724aa 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 6dc1e02f76 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 3618ac62e0 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 3e6f37d540 Opening up the Yaw Rate constraint for Trad Heli. 2012-06-07 22:40:25 -04:00
Robert Lefebvre 1b789b7928 Yaw Fix
Modified Nav_Yaw controller to better track intended heading changes.
2012-06-07 17:15:33 -04:00
Jason Short 71111a5816 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 5ce93faf51 Moved PID logging counter into define 2012-06-03 11:13:50 -07:00
Jason Short 2ae5d50261 Renamed some variables to clarify functionality. 2012-05-29 12:42:37 -07:00
Jason Short 6c999b5d54 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 bd8534ef14 ArduCopter - Attitude.pde - added logging of optical flow pid controller 2012-04-21 20:17:12 +09:00
rmackay9 c7edd7857c ArduCopter - added dataflash logging of roll and pitch rate controllers 2012-04-08 10:19:20 +09:00
rmackay9 23c3f25654 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 409c147ce3 ACM: fixed heli build 2012-03-27 15:37:25 +11:00
Andrew Tridgell 5d7c571fb1 ACM: fixed the build on the 1280 2012-03-27 15:37:24 +11:00
rmackay9 441413f1c6 ArduCopter - added PID log type. Implemented for Yaw stabilize and rate controllers. 2012-03-25 16:09:08 +09:00
Andrew Tridgell 690ad58a64 AHRS: adapt ArduCopter for new AHRS framework 2012-03-19 17:29:02 +11:00
Jason Short 722a4d01e8 ACM: Attitude.pde - consolidated wind I term resets 2012-03-18 22:31:21 -07:00
Jason Short bb56cea1ac ACM: increased the available rate error constrain, it was too low 2012-03-10 12:39:16 -08:00
Jason Short 285f2dd791 ACM: removed the experiment for rate error. 2012-03-10 12:38:29 -08:00
Jason Short 43b3e1ccd1 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 27f6afd178 added stab_d gain scheduling 2012-02-28 20:16:40 -08:00
rmackay9 8da8ce5b58 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