Commit Graph

144 Commits

Author SHA1 Message Date
Andrew Tridgell f50a6b59cc AP_TECS: fixed a bug in changes from rate-limited to non-limited airspeed
The calculation of the non-limited airspeed rate demand used the last
non-limited airspeed, whereas it should have used the last adjusted
value. This led to a single frame spike in airspeed demand, which fed
through to a sudden change in pitch integrator.
2019-04-01 09:29:25 +11:00
Andrew Tridgell b1a8055f20 AP_TECS: prevent airspeed demand spikes causing large pitch changes
a short term spike in the derivative of speed demand could cause the
constraint on the pitch integrator to push the pitch integrator to
very low values, causing a sharp nose down which takes a long time to
recover from
2019-04-01 09:29:25 +11:00
Andrew Tridgell 1087da3d64 AP_TECS: set default pitch max to 15 2018-08-17 17:02:16 +10:00
Peter Barker f0daf392a5 AP_TECS: use ins singleton 2018-03-16 00:37:35 -07:00
Peter Barker ffcb9ce945 AP_TECS: use baro singleton 2018-03-08 21:20:05 -08:00
Andrew Tridgell b6ecce8329 AP_TECS: 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
Peter Barker 22f1b5ed6f TECS: support for units on fields 2017-11-23 10:40:30 +11:00
Andrew Tridgell 5bd92b4b7e AP_TECS: improved support for VTOL transitions 2017-10-21 18:50:01 +11:00
Lucas De Marchi 61a629d766 AP_TECS: add static create method 2017-09-26 03:01:21 +01:00
JU Han eebef857f1 AP_TECS: gain scaler K_STE2Thr multiplies by (THRmax - THRmin)
Makes both feed forward and feed-back consistent
2017-08-15 14:27:43 +01:00
Andrey Kolobov 5fdebe23cc AP_TECS: disable bad descent for soaring 2017-03-14 08:53:11 +11:00
akolobov a3f3097941 AP_TECS: added function to reset integrator 2017-03-14 08:20:48 +11:00
Michael du Breuil 666c63da9f AP_TECS: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Tom Pittenger 61bc0a6206 Plane: check stage==LAND instead of landing.in_progress 2017-01-26 13:11:44 -08:00
Tom Pittenger bf835c7aee AP_TECS: abstract out the landing stage checks 2017-01-26 13:11:43 -08:00
Tom Pittenger d1434602a5 AP_TECS: bug fix - use takeoff integrator during land abort 2017-01-26 13:11:43 -08:00
Tom Pittenger 063f517424 Plane, TECS, AP_Landing: rename stage LAND_ABORT to ABORT_LAND
this will reduce confusion when searching for FLIGHT_LAND_* and you get a bunch of takeoff related hits. It will also make more sense when the landing library fully manages the FLIGHT_LAND stage entirely because it will not mange FLIGHT_LAND_ABORT
2016-12-30 23:50:03 -08:00
Tom Pittenger 84e11fd899 Plane, AP_TECS: do not pass auto_land flag to TECS, it already knows it 2016-12-30 23:50:03 -08:00
Tom Pittenger 8019cedf5b AP_Vehicle,AP_SpdHgtControl,AP_TECS: move enum FlightStages to AP_Vehicle::FixedWing 2016-12-30 23:50:02 -08:00
Tom Pittenger b614b41d6d AP_TECS: fixed compiler warning
- AP_Landing _landing was declared out-of-order
2016-12-05 16:46:55 -08:00
Tom Pittenger c7bbb6998a TECS: set landing params as private and use accessors 2016-11-25 19:07:30 -08:00
Tom Pittenger 9035dcbbc5 AP_TECS: migrate aparm "LAND_" params from plane to AP_Landing 2016-11-25 19:07:30 -08:00
Peter Barker daf9a45efd AP_TECS: correct parameter metadata
Correct incomplete Description of LAND_PDAMP

Add DisplayName for LAND_PDAMP
2016-10-27 09:15:03 -07:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell 1171b33419 AP_TECS: added TECS_SYNAIRSPEED parameter
this allows for the synthetic airspeed estimate to be used in TECS
2016-10-20 13:22:39 +11:00
Andrew Tridgell 7ee42d3a7e AP_TECS: fixed missing doc comment 2016-10-20 13:22:22 +11:00
Andrew Tridgell 2fab15dcd5 AP_TECS: added use_synthetic_airspeed() API
used by quadplane during transitions
2016-10-05 11:52:34 +11:00
Tom Pittenger e5bd23e34a Revert "AP_TECS: Convert references to AP_Airspeed."
This reverts commit 09d53eaeca.
2016-08-07 17:54:24 -07:00
Tom Pittenger 8dad05d12e Revert "Airspeed: store reference in libraries and populate it"
This reverts commit c090ba2257.
2016-08-07 17:54:24 -07:00
Tom Pittenger c090ba2257 Airspeed: store reference in libraries and populate it
- also had to move the initial definition in plane.h so it happened before the others.
2016-08-04 11:06:44 -07:00
AndersonRayner 09d53eaeca AP_TECS: Convert references to AP_Airspeed. 2016-08-04 10:09:04 -07:00
Murilo Belluzzo d8b58690ad AP_TECS: Remove useless 'if' statement
This should fix CID 91386.

Before removing the 'if', I checked the log to confirm that both branch
didn't end-up being equal by mistake in some commit. But it looks like
the file was added in the project this way.
2016-07-25 18:51:56 -03:00
Tom Pittenger 7be15be185 AP_TECS: slew the hgt_lag_filter when starting a land 2016-07-19 17:19:10 -07:00
Andrew Tridgell 2527859b59 AP_TECS: update comment on underspeed clearing 2016-07-20 08:21:08 +10:00
Andrew Tridgell d3d2ce3e0d AP_TECS: use full throttle in initial takeoff
during the first part of a takeoff when we have not yet reached the
target airspeed this forces the throttle to maximum. This fixes a case
where the throttle may drop too low during the first part of takeoff
and lead to a stall.
2016-07-16 08:14:29 +10:00
Tom Pittenger 773372d2f3 Revert "AP_TECS: coverity scan - variables not initialized in constructor"
This reverts commit 753c0d47f0.
2016-07-11 22:01:26 -07:00
Tom Pittenger c38c3ae7fe Revert "AP_TECS: coverity scan: init variable struct"
This reverts commit 19713200e5.
2016-07-11 22:01:02 -07:00
Tom Pittenger 19713200e5 AP_TECS: coverity scan: init variable struct 2016-07-05 14:09:40 -07:00
Tom Pittenger 6d0cf22358 AP_TECS: spelling 2016-07-05 14:09:39 -07:00
Tom Pittenger 753c0d47f0 AP_TECS: coverity scan - variables not initialized in constructor 2016-07-05 13:53:26 -07:00
Tom Pittenger 3c6323dd82 AP_TECS: Log TEC2.LF as Aerodynamic Load Factor 2016-05-17 20:17:27 -07:00
Tom Pittenger f9335e9d8c AP_TECS: fixed float->double print warning 2016-05-17 15:58:03 -07:00
Andrew Tridgell 98a86bd205 AP_TECS: create TEC2 log message for detailed energy internals 2016-05-14 08:26:10 +10:00
Andrew Tridgell ff97f52555 AP_TECS: removed log_tuning structure 2016-05-14 08:26:10 +10:00
Andrew Tridgell bc911d15d1 AP_TECS: convert to using Log_Write
preparation for a TEC2 message
2016-05-14 08:26:10 +10:00
Andrew Tridgell 9a6ac77c64 AP_TECS: prevent large glitches in the specific energy integrator
this tries to prevent problems like in issue#4066, or at least
reducing the impact when it happens
2016-05-14 08:26:10 +10:00
Andrew Tridgell c52451b01b AP_TECS: rename some variables to make them clearer 2016-05-14 08:26:09 +10:00
Andrew Tridgell e698d1f47e AP_TECS: use 64 bit micros
prevent possible wrap if TECS is not run for a long time
2016-05-14 08:26:09 +10:00
Tom Pittenger 431b3c7160 AP-TECS: constrain proportion to 0-1 for spdweight scale so it doesn't grow backup after land point 2016-04-21 21:31:02 -07:00
Tom Pittenger 595badce3e AP_TECS: rely on single flag for all land stage differences
recent fixes in Plane have made the stage more accurate so exceptions/hacks are no longer needed to differentiate between knowing if executing NAV_LAND vs being in stage_approach.
2016-04-21 21:30:52 -07:00