Commit Graph

208 Commits

Author SHA1 Message Date
Peter Barker e55e9428e5 AP_TECS: ensure good TECS state before running update_pitch_throttle
update_pitch_throttle can be called when update_50hz hasn't run in a very long time, or ever.  This requires a main loop rate >50Hz, and for the mode change to occur in the same loop that update_50Hz doesn't run but update_pitch_throttle does.
2024-01-07 10:59:27 +11:00
Andrew Tridgell 5f69bda431 AP_TECS: fixed descent or lack of climb bug
this fixes a state where we either cannot climb or descend in an
uncontrolled manner in a TECS controlled mode

the conditions under which this happened were:

- _use_synthetic_airspeed_once was true due to quadplane takeoff
- we left _thr_clip_status as MAX from previous use of synthetic airspeed
- then run without airspeed

note that this can also impact users with an airspeed sensor if they
disable it or it fails in flight, particularly during a climb
2024-01-07 10:59:27 +11:00
Iampete1 6d552a32d7 AP_TECS: protect against low airspeed in reset 2023-02-19 10:20:03 -08:00
Ryan Beall 1d70180809 AP_Landing: Add Landing Max Throttle Option 2023-01-24 10:19:56 +11:00
Ryan Beall 4355d852b1 AP_TECS: Update documentation to alert user of maximum allowed 2023-01-24 10:19:56 +11:00
Andrew Tridgell abb3cdd6b8 AP_TECS: added max throttle time for takeoff with no airspeed sensor 2023-01-15 12:17:27 +11:00
Paul Riseborough 403d51b39f AP_TECS: Remove unused TECS_LAND_PTRIM parameter 2022-12-06 10:23:59 +11:00
Paul Riseborough 93ae6f1739 AP_TECS: Remove duplicate setting of flare pitch upper limit 2022-12-01 15:19:27 +11:00
Paul Riseborough dab61bf3ef AP_TECS: Fix flare initialisation bug 2022-12-01 15:19:27 +11:00
Paul Riseborough 9234e5168f AP_TECS: Fix TECS_OPTIONS documentation 2022-11-18 05:43:59 +11:00
Paul Riseborough d449ed885a AP_TECS: Protect against too small values of TECS_HDEM_TCONST 2022-11-18 05:43:59 +11:00
Paul Riseborough ec9445757e AP_TECS: Fix TECS_LAND_PTRIM documentation typos 2022-11-18 05:43:59 +11:00
Paul Riseborough 0840bf5a21 AP_TECS: Implement improved control loops 2022-11-18 05:43:59 +11:00
Peter Barker d438cd9ed2 AP_TECS: change namespace of MultiCopter and FixedWing params
this stops the libraries knowing anything about AP_Vehicle
2022-11-09 19:04:37 +11:00
Iampete1 3e8e846d1d AP_TECS: reset vdot filter if not been called 2022-10-11 10:41:25 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
Paul Riseborough 3f7071772e AP_TECS: Assume flight at cruise speed if speed measurement not available 2022-09-26 14:17:53 +10:00
Joshua Henderson e338e4cdb6 AP_TECS: use TECS log bitmask in constructor 2022-08-09 09:44:50 +10:00
Ryan Beall 033266f94b TECS.cpp: Remove redundant throttle saturation 2022-07-23 18:23:27 -07:00
murata 531e92db8f AP_TECS: Unify coding style for if statements 2022-07-01 11:54:46 -07:00
Ryan Beall 77f922a1ae AP_TECS.cpp: remove line copy error
This was a copy paste error that is duplicated in the correct spot (in line 530)
2022-06-30 20:06:33 +10:00
Ruffalo-sunghwan 286e0f261e AP_TECS : correct comment spelling 2022-05-24 20:27:45 +09:00
Peter Barker e1dd53eb17 AP_TECS: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Hall 98c5704b92 AP_TECS: add reset throttle I function 2021-12-22 18:46:14 +11:00
Ryan Beall beecca8da9 AP_TECS: Connsider throttle saturation in height demand limiting 2021-11-25 15:02:09 +11:00
Samuel Tabor 27078bccda AP_TECS: Log input height demands. 2021-11-23 11:15:50 +11:00
Iampete1 e0f03a3e09 AP_TECS: no longer child of SpdHgtController 2021-11-13 08:05:39 +11:00
Iampete1 d69d493ea6 AP_TECS: use float for get_throttle_demand 2021-10-20 18:29:58 +11:00
Andrew Tridgell 61d5910d0a AP_TECS: mark logger Write() calls as streaming where appropriate 2021-08-18 10:20:03 +10:00
Andrew Tridgell a789bb372b AP_TECS: added get_max_sinkrate() API 2021-06-05 13:05:30 +10:00
Samuel Tabor 5865e010b0 AP_TECS: Ensure no throttle output if is_gliding flag is true when flying without airspeed. 2021-05-19 17:53:43 +10:00
TunaLobster 444c413803 AP_TECS: add missing letter in meta data 2021-05-18 11:12:49 +10:00
Samuel Tabor fb8ec292cd AP_TECS: Clarify TECS_THR_DAMP and TECS_LAND_TDAMP descriptions. 2021-03-03 18:05:22 +11:00
Peter Barker d26b2a6f9a AP_TECS: replace '@User: User' with '@User: Standard' 2020-09-22 14:56:04 +10:00
Tom Pittenger 8ae34a1977 AP_TECS: Don't fetch the land slewrate if it's not needed
Co-authored-by: WickedShell <Wicked.Shell.Scripts@gmail.com>
2020-07-31 10:30:17 -07:00
Samuel Tabor bbe01adc7e AP_TECS: Use LAND_THR_SLEW if appropriate. 2020-07-31 10:30:17 -07:00
Samuel Tabor 88d4aa34db AP_TECS: Move the throttle rate limit code to ensure rate limit is respected when exiting takeoff stage. 2020-07-15 09:34:40 -07:00
Samuel Tabor 3228cc3309 AP_TECS: Update descriptions of pitch feed-forward parameters. 2020-04-08 09:11:54 +10:00
Samuel Tabor d04c6cb02e TECS: Don't override the speedweight to 0 if synthetic airspeed is in use. 2020-04-08 09:11:54 +10:00
Samuel Tabor 684ee11fc3 AP_TECS: Add flags to indicate gliding flight, and use these with AP_Soaring. 2020-04-08 09:11:54 +10:00
Samuel Tabor dc8c062fbe AP_TECS: Correct an error in the SEBdot FF term. 2020-04-08 09:11:54 +10:00
Samuel Tabor 247738518e AP_TECS: Add a feed-forward term from adjusted demanded airspeed to nav pitch. 2020-04-08 09:11:54 +10:00
Samuel Tabor a27c99fab9 AP_TECS: Return the adjusted demanded airspeed. The aspd_error mavlink message now shows the rate-limited airspeed. 2020-04-08 09:11:54 +10:00
Rishabh eeb55f8b16 TECS: Logger documentation TimeUS fix 2020-04-07 18:57:01 +10:00
Peter Barker 2b5f15fe78 AP_TECS: add missing field documentation in TECS and TEC2 2020-03-22 18:35:14 +11:00
Henry Wurzburg 8155f5dcbf AP_TECS: fix typos in logger message meta-data 2020-03-22 10:04:53 +11:00
Peter Barker 6c56f24e30 AP_TECS: add documentation for TECS and TEC2 2020-03-20 13:05:46 +11:00
Andrew Tridgell 176d3c0b2f AP_TECS: added reset() method
used at end of VTOL takeoff
2020-02-16 17:04:07 +11:00
Peter Hall 0afa144f80 AP_TECS: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Andrew Tridgell a415423975 AP_TECS: removed TECS_LAND_PMIN
thanks to TunaLobster for pointing out that it is redundent
2019-11-19 07:50:40 +11:00