Commit Graph

197 Commits

Author SHA1 Message Date
Andrew Tridgell
6fe07e5702 APM_Control: raised default PID gains for roll/pitch 2018-08-17 17:01:56 +10:00
Ebin
30b3d63e8a APM_Control: New default PID values for balance bots 2018-07-06 19:41:09 +10:00
Ebin
ce182fd307 APM_Control: fixed test condition in AR_AttutudeControl.cpp 2018-07-06 19:41:09 +10:00
Ebin
97a260a980 APM_Control: get_throttle_out_from_pitch() accepts dt as argument 2018-06-28 21:55:20 +09:00
Ebin
657ff06380 APM_Control: added balancing function for BalanceBot 2018-06-28 21:55:20 +09:00
Randy Mackay
5e7b37f0b2 AR_AttitudeControl: remove constraint on steering output 2018-06-12 17:44:10 +09:00
Ammarf
b614ca9b75 AR_AttitudeControl: disable limits when _ACCEL_MAX is zero 2018-06-11 08:54:59 +09:00
Randy Mackay
67475a9eaa AR_AttitudeControl: reset turn-rate I term if not run for 0.2sec 2018-06-01 15:06:13 +09:00
disgruntled-patzer
2c41db9e4d AP_RollController.cpp: Updated description of ArduPlane Roll Controller for accuracy
AP_RollController's get_servo_out function does not return an elevator deflection as was previously described in the function comments.
Instead, it should return an aileron deflection. Thus, the function description should be updated to reflect this more accurately
2018-05-30 09:46:08 +09:00
Randy Mackay
e691b680ca AR_AttitudeControl: add speed-control-active method
allows caller check if speed controller if active
also consolidated other methods to use this check to reduce a little bit of duplicate code
2018-05-29 16:37:31 +09:00
Randy Mackay
3b71d0360a AR_AttitudeControl: const get_decel_max and get_stopping_distance 2018-05-29 16:37:31 +09:00
Michael du Breuil
84b1a6a58b APM_Control: Supress some compilier warnings about strncpy 2018-05-29 00:10:40 +01:00
Randy Mackay
a7fbfe7767 AR_AttitudeControl: caller provides dt instead of calculated internally
This allows the vehicle's main loop rate to be used instead of an internally calculated dt which suffers from jitter
2018-05-24 11:06:20 +09:00
Randy Mackay
c032095c80 AR_AttitudeControl: reduce default accel max to 2m/s/s 2018-05-24 11:06:20 +09:00
Randy Mackay
856d592b1d AR_AttitudeControl: accel limit stops 2018-05-24 11:06:20 +09:00
Ammarf
832778e471 AR_AttitudeControl: add separate decel limit 2018-05-23 17:17:29 +09:00
Randy Mackay
f6c06496e2 AR_AttitudeControl: fix accel limiting 2018-05-21 10:28:56 +09:00
Ammarf
a9ee949c32 AR_AttitudeControl: limit desired steering rate 2018-05-21 09:48:43 +09:00
Randy Mackay
56672c1c28 AR_AttitudeControl: fix get_steering_out_rate use of max turn rate and acceleration 2018-05-10 20:37:28 +09:00
Randy Mackay
9feaf9cfdd AR_AttitudeControl: const some internal variables
non-functional change
2018-05-10 20:37:28 +09:00
Randy Mackay
fa76a7c904 AR_AttitudeControl: get-steering-out-lat-accel uses negative speeds 2018-05-10 08:02:13 +09:00
Randy Mackay
5563691bd1 AR_AttitudeControl: assume positive steering output rotates vehicle clockwise
also remove steering scaling by speed which has been moved to AR_MotorsUGV
2018-05-10 08:02:13 +09:00
Randy Mackay
ce44326ba8 AR_AttitudeControl: fix get_steering_out_heading while reversing 2018-05-06 16:58:00 +09:00
Randy Mackay
0f9b679e98 AR_AttitudeControl: increase angle err P and reduce steering accel max defaults 2018-04-26 14:16:22 +09:00
Randy Mackay
3f1f68b130 AR_AttitudeControl: support vectored thrust
steering output is not scaled for speed
steering integrator does not build up at low speed
2018-04-24 19:57:19 +09:00
Randy Mackay
9c2da896b9 AR_AttitudeControl: get_throttle_out_stop only stops once desired speed reaches zero
this reduces the final jerk to a when transitioning from forward to reverse and in cases where ATC_ACCEL_MAX is small
2018-04-24 12:24:53 +09:00
Randy Mackay
365e1030db AR_AttitudeControl: separate speed limiting to new method
This allows the desired speed limiting (by acceleration) to be done before the speed-to-throttle PID controller is run.
This is required so the avoidance calls (which work on the desired speed) can be run after limiting but before the PID controllers
2018-04-24 12:24:53 +09:00
Randy Mackay
23ed735304 AR_AttitudeControl: reduce default steering I gain to 0.2
Also reduce default filter from 50hz to 10hz
2018-04-19 16:29:12 +09:00
Daniel Widmann
27234f78c6 AR_AttitudeControl: Allow using steer rate control for skid steer rovers without GPS 2018-04-13 09:12:03 +09:00
Randy Mackay
a8857726d1 AR_AttitudeControl: replace get_steering_out_angle_error with heading
internally uses AHRS's heading to determine angle error so overally a non-functional change
2018-04-05 12:14:59 +09:00
Randy Mackay
e6f8021519 AR_AttitudeControl: add angular accel and rate limits
This limits the change in desired turn rate to reduce impossible requests which should help avoid overshoot
Also add rotation rate limit to turn-rate controller
2018-04-05 12:14:59 +09:00
Randy Mackay
57f2eb6853 AR_AttitudeControl: minor comment fix 2018-03-31 14:47:30 +09:00
Peter Barker
e2de9d62cd APM_Control: use ins singleton 2018-03-16 00:37:35 -07:00
Randy Mackay
89725a7aa5 AR_AttitudeControl: minor comment fix
non-functional change
2018-03-15 09:58:27 +09:00
Randy Mackay
d139f0e28e AR_AttitudeControl: add get_stopping_distance 2018-03-14 12:40:04 +09:00
Randy Mackay
54d8a4852f AR_AttitudeControl: reduce steer rate P default to 0.2 2018-03-09 13:17:38 +09:00
Randy Mackay
2aeda48512 AR_AttitudeControl: minor arg name fix
non-functional change
2018-02-09 17:36:21 +09:00
Randy Mackay
5e90cdbf59 AR_AttitudeControl: parameter desc range increase
new steering controller can use higher FF and zero P
2018-01-12 08:15:34 +09:00
Randy Mackay
1bb18bc941 AR_AttitudeControl: get_throttle_out_speed uses timeout definition 2018-01-05 13:33:21 +09:00
Randy Mackay
4ac5ef3a13 AR_AttitudeControl: allow filter to be zero
Also increase default filter to 50hz
2018-01-05 13:33:21 +09:00
Randy Mackay
16d3e5c00d AR_AttitudeControl: add feed foward for speed and steering rate control 2018-01-05 13:33:21 +09:00
Randy Mackay
40bb2b0ad9 AR_AttitudeControl: set throttle speed pid dt 2018-01-05 13:33:21 +09:00
Randy Mackay
9930550cfc AR_AttitudeControl: lengthen timeout to 200ms
This is required because occasionally the turn rate controller can be disabled for just over 100ms as new navigation commands are loaded
2018-01-05 13:33:21 +09:00
Randy Mackay
a2b1807ca0 AR_AttitudeControl: fix turn-rate controller timeout 2018-01-05 13:33:21 +09:00
Peter Barker
e0c586876b APM_Control: use GPS singleton 2017-12-27 00:58:02 +00:00
Andrew Tridgell
1dac512567 APM_Control: removed create() method for objects
See discussion here:

  https://github.com/ArduPilot/ardupilot/issues/7331

we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach

Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Randy Mackay
cabced82f1 AR_AttitudeControl: fix parameter descriptions 2017-12-11 17:01:18 +09:00
Michael Oborne
78f732c380 AR_AttitudeControl: fix parameter docs 2017-12-11 08:35:33 +09:00
Randy Mackay
744f4baf22 AR_AttitudeControl: add parameter description increment 2017-12-09 16:23:25 +09:00
Randy Mackay
f00f4ce79b AR_AttitudeControl: fix get_desired_speed timeout 2017-12-09 16:23:22 +09:00