Commit Graph

1060 Commits

Author SHA1 Message Date
Iampete1 ab4777de14 AP_Motors: move thrust linerization to its own class 2023-04-18 09:32:22 +10:00
Iampete1 9077f60e87 AP_Motors: Tricopter: rework and move yaw servo to arming check, allow no yaw on plane 2023-04-11 09:13:26 +10:00
Iampete1 9e71c9953d AP_Motors: example: add thrust boost 2023-04-04 09:25:15 +10:00
Iampete1 1a754904e9 AP_Motors: Matrix: mixer simplification 2023-04-04 09:25:15 +10:00
Iampete1 e9da278164 AP_Motors: example: add script to run motor example at a range of head rooms and throttle average max values 2023-04-04 09:25:15 +10:00
Iampete1 7c92340b42 AP_Motors: add getters for example 2023-04-04 09:25:15 +10:00
Iampete1 f7a8668c30 AP_Motors: Example: rework and update take optional arguments 2023-04-04 09:25:15 +10:00
Peter Hall bbb9e66196 AP_Motors: add method for scripting to set external limit flags 2023-03-07 10:12:30 +11:00
Iampete1 e2e239dd08 AP_Motors: add logging of output throttle 2023-02-28 11:06:32 +11:00
Bill Geyer 78720e9816 AP_MotorsHeli: patch for manual autorotation 2023-02-18 10:19:50 -05:00
Bill Geyer eba850d9ef AP_MotorsHeli: better governor power recovery from autorotation 2023-02-05 17:54:33 -05:00
Bill Geyer 40d18f46cf AP_MotorsHeli: Change AROT_PCT to AROT_IDLE 2023-02-05 17:54:33 -05:00
Bill Geyer 08165e204e AP_MotorsHeli: add comments to code 2023-02-05 17:54:33 -05:00
Bill Geyer a209bd15eb AP_Motors: style formatting MotorsHeli_RSC.cpp 2023-02-05 17:54:33 -05:00
Bill Geyer a27ccb8294 AP_MotorsHeli: add support for manual autorotation
AP_MotorsHeli: fix runup from idle bug

AP_MotorsHeli: don't let rotor_runup_output go below critical speed in autorotation

AP_MotorsHeli: set autorototate flag false after landing
2023-02-05 17:54:33 -05:00
Ferruccio1984 e935913f95 AP_Motors: Support for Autorotation implementation
-enables faster re-spool(user settable timer) after power engagement
-flare&touchdown controllers;
-rangefinder for distance from ground evaluation;
-higher refresh rate for rangefinder;
-attitude targets implementation for "guided" autorotation;
-retrieve zero lift collective position
2023-02-05 17:54:33 -05:00
UbhayAnand1 bb05f40560 AP_Motor: removed redundant statements 2023-01-30 08:18:08 +09:00
UbhayAnand1 5da7ad025b AP_Motors: Corrected the parameters. 2023-01-30 08:18:08 +09:00
Peter Barker ad57141a85 AP_Motors: tidy includes of SRV_Channel.h 2023-01-25 22:30:55 +11:00
Andy Piper c620ba58df AP_Motors: use _dt instead of loop rate for throttle slew calculation 2023-01-11 18:59:52 +11:00
Andy Piper ad94c5cab1 AP_Motors: calculate throttle slew rate
use derivative filter and apply filtering to slew detector
2023-01-11 18:59:52 +11:00
Bill Geyer 93b0519ad2 AP_MotorsHeli: improve collective to yaw compensation 2022-12-22 07:07:34 -05:00
Leonard Hall 67205f8114 AP_Motors: Support changing update period 2022-12-13 17:10:06 +11:00
Iampete1 d5082e25e8 AP_Motors: output_motor_mask mask to uint16_t 2022-11-29 10:53:59 +11:00
Peter Barker 1b4f200cfd AP_Motors: remove GCS.h from library header files 2022-11-16 18:29:07 +11:00
bnsgeyer 70c2775949 AP_MotorsHeli: update H_DUAL_MODE description to include coaxial 2022-11-16 14:17:54 +09:00
Peter Barker 3eecf7b71d AP_Motors: 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 7cafcf7b90 AP_Motors: Multicopter: add motor pwm param range check 2022-09-19 20:57:51 -04:00
Peter Barker d21aa2a1ed AP_Motors: add and use AP_RPM_ENABLED
... and backend-specific equivalents
2022-09-20 09:28:27 +10:00
Andrew Tridgell 3d63a968cf AP_Motors: added a SPIN_MIN check
and check SPIN_ARM <= SPIN_MIN
2022-09-14 21:45:20 +01:00
Iampete1 f3dc805978 AP_Motors: Block Spoolup: stop advance from ground idle 2022-09-07 17:03:03 +01:00
Randy Mackay ff91bbd762 AP_Motors: add spoolup block 2022-09-07 17:03:03 +01:00
Iampete1 e72e5a2751 AP_Motors: add pre-arm check 2022-09-07 17:54:16 +10:00
Henry Wurzburg 8b02f11c23 AP_Motors: refactor to allow frame type symbols to be created for ELF 2022-08-09 10:06:18 +10:00
Iampete1 c1a9f75034 AP_Motors: params always use set method 2022-08-03 13:43:48 +01:00
Andy Piper f666c71676 AP_Motors: add BF/X cinelifter octaquad configuration 2022-08-03 17:06:38 +10:00
Iampete1 ad8b9f58df AP_Motors: use set and defualt 2022-07-20 17:59:59 +10:00
Peter Barker c00d712adc AP_Motors: remove transitive include dependencies 2022-07-20 17:32:24 +10:00
chobitsfan a723abf986 AP_Motors: reuse spool_step for code refactoring 2022-07-11 08:39:34 +09:00
murata 0b357faf7e AP_Motors: Resolve Issue 20894 2022-06-07 10:02:11 +10:00
Andrew Tridgell b2e43d1dee AP_Motors: fixed override of MOT_PWM_MIN/MAX in defaults.parm
need to check configured() not configured_in_storage()
2022-06-06 13:11:50 +10:00
Andy Piper 3d9639181e AP_Motors: make sure ESC type is initialized early 2022-05-25 17:06:08 +10:00
Andrew Tridgell f00a227b33 AP_Motors: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Iampete1 43832649ec AP_Motors: convert to 32 bit motor mask 2022-05-22 12:07:37 +10:00
Peter Barker 434f49e6b6 AP_Motors: correct initialised_ok state for HeliDual+Quad
initialised_ok was being set to false when frame/class was set as the
method was not overridden and thus Heli's set_frame_and_class was
setting initialised_ok to false.  When the init_output method was called
it would be unconditionally reset to true.
2022-05-18 12:25:26 +09:00
Tatsuya Yamaguchi dbae31fb15 AP_Motors: Add Tricopter only to the description of YAW_SV_ANGLE 2022-05-10 09:35:11 +10:00
Peter Barker 8930b5f6f5 AP_Motors: tidy includes 2022-05-03 09:14:58 +10:00
murata 6d4a923cce AP_Motors: Change from division to multiplication 2022-03-16 18:41:52 +11:00
Iampete1 bb1dc2e9a1 AP_Motors: update no motor found warning message 2022-03-09 08:46:55 +09:00
Peter Barker 5d35d8a02c AP_Motors: include cleanups 2022-03-01 11:21:33 +11:00
Bill Geyer f7b420f131 AP_Motors: move turbine start to update_turbine_start and style cleanup 2022-02-23 14:22:47 +09:00
Ferruccio1984 3a67b17142 AP_Motors: tradheli support for turbine start 2022-02-23 14:22:47 +09:00
Iampete1 8af5f5b2d7 AP_MotorsMulticopter: check interlock state in output_motor_mask 2022-02-10 07:43:40 +09:00
Iampete1 5181003228 AP_Motors: always check armed and interlocked in motor test 2022-02-10 07:43:40 +09:00
Peter Barker 06c61070dc AP_Motors: add and use AP_MOTORS_FRAME_DEFAULT_ENABLED 2022-02-08 11:06:24 +11:00
Bill Geyer 87fd0480bb AP_Motors: Tradheli-update coll_land_min default 2022-02-07 06:23:37 -05:00
Peter Barker bd4aed80dc AP_Motors: tweak logging structure construction
const and avoid assignment rather just do initialisation

allows for static checking of narrowing conversions
2022-01-21 21:34:57 +11:00
Iampete1 86578d5cec AP_Motors: add local loging of MOTB 2022-01-18 10:18:10 +11:00
Iampete1 8b54665a48 AP_Motors: example: remove SRV_Channels calls 2022-01-13 23:33:34 +11:00
Peter Hall 1fde5b3ef1 AP_Motors: tailsitter: add external min throttle limit 2022-01-11 10:37:38 +11:00
Iampete1 70897b5e38 AP_Motors: allow custom frame string from scripting 2022-01-05 19:51:19 +11:00
Andrew Tridgell c44b8cf73a AP_Motors: fixed PWM_TYPE range for quadplanes
when motors don't start at SERVO1 we were applying the range to the
wrong output.

This allows users to control the PWM of individual motors precisely
for quadplanes where calibration of motors is difficult
2021-12-29 18:40:41 +11:00
Bill Geyer afaff18bd0 AP_Motors: modifications based on suggested changes 2021-12-14 22:50:05 -05:00
Bill Geyer a8d74c6414 AP_Motors: Tradheli- add governor engaged message over GCS 2021-12-14 22:50:05 -05:00
Bill Geyer 2ac157b188 AP_Motors: Tradheli- fix governor spool up bug 2021-12-14 22:50:05 -05:00
MidwestAire 22c2329063 AP_Motors:Heli_RSC - throttle curve _control_output does not need a constrain_float
- change lower limit of governor enaged output to 150% of idle speed
- add governor_reset() function
- remove governor defaults from header
- rearrange governor metadata in alphabetical order, assign new eeprom slot for rpm
2021-12-14 22:50:05 -05:00
MidwestAire 77f0fdf112 AP_Motors:clean up whitespace in heli motors class 2021-12-14 22:50:05 -05:00
Bill Geyer ea90217e09 AP_Motors: fix heli RSC parameter indices 2021-12-14 22:50:05 -05:00
Bill Geyer 05e8285f93 AP_Motors: use RPM singleton to get rpm in RSC 2021-12-14 22:50:05 -05:00
MidwestAire 301238fb8a AP_Motors:Heli_RSC - update governor to new torque integrating design with autothrottle 2021-12-14 22:50:05 -05:00
MidwestAire 42a131522b AP_Motors:Heli - new rotor speed control modes for autothrottle governor 2021-12-14 22:50:05 -05:00
Bill Geyer 3b40df133e AP_Motors: add spool down complete flag 2021-12-05 22:12:13 -05:00
Shiv Tyagi 4483b9d6fe AP_Motors: add matrix for deca-cwx frame
This adds a missing matrix for deca-cwx frame
2021-11-23 15:52:25 +09:00
Hwurzburg 2f4bcfb21c AP_Motors: change H_COLL_HOVER to H_COL_HOVER for consistency 2021-11-18 14:37:05 -05:00
Peter Barker 55cdbd208d AP_Motors: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED 2021-11-15 20:27:40 +11:00
Peter Barker 9e8126d07c AP_Motors: ensure ENABLE_SCRIPTING is always defined 2021-11-15 20:27:40 +11:00
Bill Geyer d2c37daa66 AP_Motors: change internal variable names and methods for mid collective to be more accurate 2021-11-10 16:45:17 -05:00
Bill Geyer 183b5e9e6d AP_Motors: update H_SV_MAN parameter to reflect zero thrust collective 2021-11-10 16:45:17 -05:00
Bill Geyer d02097bf1c AP_Motors: add protection for new tradheli parameters 2021-11-10 16:45:17 -05:00
Bill Geyer 1a50dce206 AP_Motors: coll setup uses actual blade pitch angle 2021-11-10 16:45:17 -05:00
Iampete1 6c29eb73d2 AP_Motors: Coax: correct array indexnig offset 2021-11-10 11:52:19 +09:00
Iampete1 291ab5b5f2 AP_Motors: Coax: remvoe servo outs from motor mask 2021-11-10 11:52:19 +09:00
Hwurzburg 47028f136e AP_Motors: change build option name to new standard 2021-11-08 19:13:00 +09:00
Hwurzburg 0b5123b194 AP_Motors: add Y4 Frame type to Quadcopters 2021-11-05 07:39:27 +11:00
Mirko Denecke 8b46ab66bd AP_Motors: remove throttle roll adjust for single motor tailsitter 2021-11-03 12:32:31 +11:00
Hwurzburg 9349abfe48 AP_Motors: add build options for each frame class 2021-10-27 07:59:52 +09:00
Iampete1 b595beab10 AP_Motors: set ouput scaled with float 2021-10-20 18:29:58 +11:00
Iampete1 d16be50e57 AP_Motors: add PWM min and max param conversion function 2021-10-11 22:19:17 -04:00
Iampete1 14dfac42e7 AP_Motors: remove use of external PWM min and max 2021-10-11 22:19:17 -04:00
Iampete1 bc29735cb2 AP_Motors: make pwm_type protected and add helpers 2021-10-06 18:59:57 +11:00
Iampete1 1371499022 AP_Motors: add note about test to new inverse functions 2021-10-01 22:04:51 +01:00
Iampete1 484a0b989f AP_Motors: add expo inverse test example 2021-10-01 22:04:51 +01:00
Iampete1 0c1fe0b373 AP_MotorsMulticopter: add inverse thrust_to_actuator and thrust curve functions 2021-10-01 22:04:51 +01:00
Iampete1 1a2ea893b6 AP_MotorsMatrix: correct octo I testing order 2021-09-13 13:39:03 +09:00
Peter Barker 380d962648 AP_Motors: do not use int version to define motors 2021-09-08 18:20:44 +10:00
Peter Barker dbb43a5746 AP_Motors: remove motor_num from motor definition structures
Every structure simply used the defines in sequence, meaning 0, 1, 2, 3
etc.  Handily we have a loop counter where we use these structures...
2021-09-08 18:20:44 +10:00
Peter Barker a152ad70a9 AP_Motors: use structures to save flash when initialising motors (raw motors) 2021-09-08 18:20:44 +10:00
Peter Barker 26385009ca AP_Motors: use structures to save flash when initialising motors 2021-09-08 18:20:44 +10:00
Peter Barker 5f980929d9 AP_Motors: use add_motors to save flash 2021-08-31 20:23:58 +10:00
Andy Piper 513aa592e4 AP_Motors: add accessors for turtle mode 2021-08-12 19:00:51 +09:00