Commit Graph

201 Commits

Author SHA1 Message Date
Paul Riseborough eac6dfed3c mc_att_control: Sync attitude loops to gyro data
Sync the attitude controller to the raw gyro data to remove the latency in the rate loops caused by the sensor and estimator modules.
Attitude data latency will increase as it will be from the previous EKF update, however attitude loops are less latency sensitive.
Thermal compensation and bias data will be from the previous frame.
2017-01-19 19:24:52 +01:00
Anton Matosov 3a17c07b1e Implement RC and DL failsafe action handling for multirotors
Move RC and DL failsafe actions handling from navigator to commander (credits to @AndreasAntener)
Separate manual kill switch handling via manual_lockdown to prevent override and release of software lockdown by RC switch

Other changes:
Add failsafe tune
Fix LED blinking for Pixracer
Return back support for rc inputs in simulator but now it is configurable via cmake
2016-12-27 00:38:13 +01:00
Lorenz Meier b2d48f65bf MC att ctrl: Properly initialize members 2016-12-13 16:14:15 +01:00
Lorenz Meier 27d5ecaaa9 Fix multirotor code style 2016-12-13 16:14:15 +01:00
Paul Riseborough eb67686b11 mc_att_control: Improve integrator wind-up protection
Use reporting from the motor mixer to only restrict integrator growth when it will result in increased saturation of the control axis concerned.
Enable absolute integrator limits to be set by parameter
2016-12-13 16:14:15 +01:00
Anton Matosov a2c0391bcc Rework TPA to have per-component setup and use more stable and intuitive function
This also adds a ZMR250 config.
2016-12-10 12:42:47 +01:00
Dennis Shtatnov 2799c0fae2 Change MC_BAT_SCALE_EN to boolean 2016-11-19 14:55:52 +01:00
Dennis Shtatnov a634c14582 Scale throttle outputs by battery level. Fixes #4751 2016-11-19 14:55:52 +01:00
Julian Oes 2fff2ab9ac Add switch for landing gear, pass it to actuators 2016-10-20 23:17:05 +02:00
Lorenz Meier a12780c88f Remove attitude setpoint matrix from attitude setpoint topic 2016-10-19 10:17:41 +02:00
Julian Oes 8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Bart Slinger 7f04e3c759 Helicopter aiframe and basic PID control (#5339)
* Helicopter aiframe and basic PID control

* codestyle

* Blade 130x gains working but not optimal

* Changed behaviour of feedforward for all multicopter
2016-08-19 22:20:59 +02:00
Mark Whitehorn f1a1c9d7da add breakpoint and slope params for TPA 2016-08-17 23:15:36 +02:00
Mark Whitehorn 5c78af0f36 simple linear throttle PID attenuation test 2016-08-17 23:15:29 +02:00
Daniel Agar d4196f7f0c mc_att_control fix and enforce code style 2016-08-07 10:40:17 +02:00
Lorenz Meier 11f1a11934 Lock yaw integral if we hit a yaw limit 2016-07-31 14:14:55 +02:00
Andreas Antener 25e749de77 use MC auto rates always in AUTO
removed duplicate weathervaning limit
2016-07-01 11:31:57 +02:00
Lorenz Meier 8032787faa MC att control: Be more efficient 2016-05-29 16:27:01 +02:00
Daniel Agar 76387b1693 uorb autogeneration 2016-05-14 11:27:07 +02:00
Benoit Landry 95faba391a accel control in pos controller 2016-04-22 10:31:52 +02:00
Benoit Landry ce810542e2 simple NED acceleration control interface 2016-04-22 10:31:52 +02:00
Roman cf7145c8d9 calculate large error rotation correclty in attitude controller 2016-04-18 18:44:14 +02:00
James Goppert 967e4dd127 Modified cmake to use STACK_MAX and STACK_MAIN 2016-04-14 13:36:36 -04:00
Julian Oes 1ad0ee0fae mc_att_control: don't use main state for RATTITUDE
Instead of the state use the boolean flags.
2016-04-11 18:01:48 +02:00
Daniel Agar 7a9427bc34 param remove empty @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 55b33e97b3 mc_att_control param @unit 2016-03-14 09:10:29 +01:00
Lorenz Meier 6b89ce0b7f Fix decimal places in att control params 2016-03-10 09:15:49 +01:00
Lorenz Meier e3853ed4e5 MC att control: Support increment meta data 2016-02-28 19:42:34 +01:00
Lorenz Meier 44e885f3c3 Att control: Allow higher yaw rate by default 2016-02-27 11:23:24 +01:00
jwilson 4adfea7fa9 Resolved shared memory parameter problems and removed additional debug code. 2016-02-19 16:59:49 +01:00
jwilson d84639f8c4 This code is flyable, but a few problems exist which cause values in the .config files to be overwritten by the defaults in the .XML file. 2016-02-19 16:59:49 +01:00
Roman 1d5cf70e83 implemented vtol weathervane yaw control for landing and loiter mission item 2016-02-15 09:49:24 +01:00
sander dc7077b125 Move constraint after feed forward 2016-02-15 09:48:37 +01:00
Roman 80f8fcbdf6 implemented vtol weathervane yaw control for landing and loiter mission item 2016-02-15 09:48:37 +01:00
Lorenz Meier 9cb82e93be MC att control: Param meta data 2016-02-14 18:43:58 +01:00
Lorenz Meier 9f2498af94 Attitude controller: Include process name in poll error message 2016-02-05 00:54:40 +01:00
Lorenz Meier c78fd7014d MC: Only use auto yaw limits if manual control is off 2016-01-31 20:18:12 +01:00
Lorenz Meier 7455a833d0 MC: Split yaw speed limiting between manual and velocity control modes 2016-01-31 20:18:12 +01:00
Roman c9b1fb154d hotfix:
multirotors shouldn't use tailsitter recovery code.
2016-01-26 13:29:53 +01:00
Lorenz Meier 17c3aa3bac MC att control: Slightly increase max yaw rate 2016-01-26 12:32:26 +01:00
Lorenz Meier bf03b8cb18 Yaw rate limit: use a lower limit for less twitching 2016-01-24 11:13:47 +01:00
Mark Charlebois f22c574b87 Integrated cmake_hexagon for qurt build
Still a WIP since the IDL file needs to be replace with the
muorb IDL file.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-01-10 20:54:26 +01:00
Lorenz Meier 4d41f1d6ce MC att control: Add time constant to simplify user-tuning of basic vehicle operation 2015-12-26 16:10:21 +01:00
Lorenz Meier 623aeac18d Fix code style in MC params 2015-12-24 13:13:10 +01:00
Roman 7c3a67e374 use optimal recovery strategy for tailsitters 2015-12-24 10:17:53 +01:00
Roman ac4e95df05 use optimal recovery strategy for tailsitters 2015-12-24 10:17:31 +01:00
Youssef Demitri 170f0032fd updated to master (solve merge conflicts) 2015-11-06 12:18:31 +01:00
Lorenz Meier 3f6fd8b94d MC att ctrl: Do not build unused param file 2015-10-29 10:36:38 +01:00
Eddy Scott 4e5e8d1c95 Modified how mc_att_control handles rattitude mode 2015-10-28 08:37:12 -04:00
Eddy d4a19163bb Added switching from attitude control generated rate setpoints to manual rate setpoints when in rattitude mode 2015-10-28 08:37:12 -04:00