Commit Graph

1045 Commits

Author SHA1 Message Date
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
Andy Piper 30252c1b3f AP_Motors: remove tri yaw servo from motor mask 2021-08-03 11:16:50 +09:00
Andrew Tridgell 4b9311d87d AP_Motors: added new MOT_PWM_TYPE=8 for PWM range
this allows multirotors to set individual PWM ranges per motor. This
is needed for heliquads flying as multirotors
2021-07-28 17:40:40 +10:00
Iampete1 e75d3b68e6 AP_Motors: move AP_MotorsUGV to new AR_Motors directory 2021-07-20 10:48:01 +09:00
Iampete1 6848cbc241 AP_Motors: add scripting dynamic mixer, allowing varable geometry vehicles 2021-07-20 09:19:28 +10:00
Andrew Tridgell 83158ceadb AP_Motors: fixup build for ftype conflict 2021-07-10 07:20:41 +10:00
Peter Barker 183cee3f2c AP_Motors: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker c28a03728d AP_Motors: tidy frame description strings
Before: AP: Frame: TRI/
After: AP: Frame: TRI
2021-06-21 16:30:37 +10:00
Leonard Hall ac41bb50ee AP_Motors: correct expo parameter description and internal limits 2021-06-21 08:41:31 +09:00
Andy Piper 96d0e8cf3f AP_Motors: add comments to AP_MotorsUGV 2021-06-07 20:16:26 +09:00
Andy Piper 7c213a8bbf AP_Motors: move AP_MotorsUGV here
add singleton and motor_mask to AP_MotorsUGV
2021-06-07 20:16:26 +09:00
Hwurzburg 57ee6ffdfe AP_Motors: correct H_SV_MAN metadata warning 2021-05-25 10:22:21 +10:00
Peter Hall 42538c7083 AP_Motors: add throttle factor to Matrix 2021-05-25 09:01:06 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 2393097417 AP_Motors: Use the same limits described in the wiki
According to Leonard Hall's tuning instructions at:
https://ardupilot.org/copter/docs/tuning-process-instructions.html
Fix a typo
2021-05-18 09:54:23 +10:00
Andy Piper d70b8425f7 AP_Motors: trigger digital throttle range with digital outputs 2021-05-12 21:02:42 +10:00
Peter Hall ed7db5b2b6 AP_Motors: tailsitter: slew outputs and output throttle directly 2021-04-27 09:37:32 +10:00
Andrew Tridgell ea3657e941 AP_Motors: added accessors for ff output to motors
needed for tailsitters
2021-04-13 10:28:47 +10:00
Sergey Bokhantsev ef95bf088c AP_Motors: Constrain get_throttle_hover value with allowed range 2021-04-01 13:06:02 +09:00
murata 8e8f2b93a7 AP_Motors: Add DECA frame class and type string 2021-03-09 19:59:10 +09:00
murata 9228925bea AP_Motors: Battery voltage compensation maximum voltage 2021-03-05 08:48:20 +09:00
Randy Mackay 0c9559db6d AP_Motors: fixup octaquad CW_X motor directions 2021-02-22 11:00:44 +09:00
Iampete1 9ace8ed216 AP_Motors: Matrix 6DoF scripting add get_frame_string 2021-02-09 12:43:54 +09:00
Peter Hall cc26a520bc AP_MotorsMatrix: init to virtual and remove duplicate set initalised 2021-02-09 12:43:54 +09:00
Iampete1 5c3725d899 AP_Motors: add 6DoF scripting matrix mixer 2021-02-09 12:43:54 +09:00
Gone4Dirt 6dc100728f AP_Motors: Fix spelling of autorotation flag 2021-02-08 22:09:49 -05:00
Mark Whitehorn 9bc8a8c912 AP_Motors: make frame*string getters more const 2021-02-09 12:43:53 +11:00
Mark Whitehorn 6b2184a53a AP_Motors: add frame_class and frame_type strings
move frame_class/type string assignments down into subclasses
2021-02-09 12:43:53 +11:00
Patrick José Pereira bdc14c60fb AP_Motors: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Iampete1 fca6f7027b AP_Motors: allow Matrix config from scripting 2021-01-26 11:07:36 +09:00
Peter Hall d0e1e85b9e AP_Motors: add get_frame_mav_type 2021-01-26 11:07:36 +09:00
Peter Barker 8f8283e0f0 AP_Motors: rc_map_mask -> motor_mask_to_srv_channel_mask
the naming of this function precedes our rc/srv-channel split
2021-01-05 10:19:32 +11:00
bnsgeyer 09b9ad83dc AP_Motors: tradheli - add support to determine below mid collective 2020-12-21 23:33:48 -05:00
bnsgeyer 6c8a85ee04 AP_Motors: updates to new integrator and make selectable 2020-12-21 23:33:48 -05:00
bnsgeyer 84fb3afbcb AP_Motors: Tradheli support for integrator management and hover collective learning 2020-12-21 23:33:48 -05:00
Iampete1 69bec46fa8 AP_Motors: Tailsitter: don't apply roll and pitch compsation gain 2020-12-22 11:00:59 +11:00
bnsgeyer 62758ffd99 AP_Motors: Dual-heli-keep intermeshing from using DCP to yaw mixer 2020-12-16 19:52:23 -05:00
PittRBM 3f405590c7 AP_Motors: Dual Heli-add support for intermeshing rotor 2020-12-16 19:52:23 -05:00
bnsgeyer ebd83b756b AP_Motors: add DCP trim feature for Dual Heli 2020-12-17 09:01:02 +11:00
Andrew Tridgell c504e2db04 AP_Motors: added disable_yaw_torque() method
this is used for tilt-vectored quadplanes to use only vectoring for
yaw control. This avoids some nasty transition issues
2020-12-16 08:45:11 +11:00
murata 159a6c7ed6 AP_Motors: Support for decacopters 2020-12-08 11:59:10 +11:00
Iampete1 681f45c4e0 AP_MotorsMulticopter: make thrust to actuator public 2020-11-18 19:33:21 +11:00
Iampete1 0c2037438b AP_Motors: output mask: do not apply copter sin params and epxo 2020-11-10 11:09:56 +11:00
Peter Barker 41ab59dcdb AP_Motors: eliminate flags structure
Saves about 44 bytes
2020-09-22 20:26:24 +10:00
Iampete1 152e2366f0 AP_Motors: Tri: dont check yaw servo on plane 2020-09-22 09:12:14 +10:00
Mark Whitehorn d3c1838fbe AP_Motors: remove AP_MotorsMatrixTS 2020-09-08 10:50:31 +10:00
Randy Mackay 8629923783 AP_Motors: minor whitespace fix 2020-08-10 09:33:43 +09:00
Josh Welsh e77bc1ce9d AP_Motors: Tradheli servo_test fix 2020-08-10 09:16:44 +09:00
Randy Mackay 2d8c5a7bc4 AP_Motors: remove names from cpp files 2020-07-14 13:27:07 +10:00
Patrick José Pereira 8bb74a12d0 AP_Motors: Remove double underscore header guard
The code now uses `#pragma once` and double underscore as a prefix
can result in undefined behaviour.
Ref: https://eel.is/c++draft/lex.name#3.1

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-07-03 14:53:33 +10:00
Gone4Dirt 1b7672a84f AP_Motors: Correctly adjust heli run up timer in bailout 2020-05-28 18:50:08 -04:00
Gone4Dirt b2d2bf61da AP_Motors: Support autorotation windows on external governors 2020-05-20 21:56:09 -04:00
murata 509d376c29 AP_Motors: Change the tab code to whitespace 2020-04-27 09:29:32 +09:00
Peter Hall 2f036c65f3 AP_Motors: MotorsMulticopter fix floating boost output 2020-03-02 18:22:30 +09:00
Rishabh aec65ed6ff AP_Motors: Added cwx motor setup for hexa, octa and octaquad 2020-02-19 11:28:25 +09:00
bnsgeyer d4e5e1bd3d AP_Motors: tradheli - fix quad heli collective structure 2020-02-14 09:29:50 +09:00
Peter Barker c4ed6d0e96 AP_Motors: ensure _pwm_min and _pwm_max are not equal
AP_Motors: adjust check_mot_pwm_params for clarity
2020-01-30 14:49:16 +09:00
Randy Mackay bff978570f AP_MotorsMulticopter: fixup check_mot_pwm_params
fix _pwm_max is positive check
returns true if params are valid
constify method
2020-01-30 10:01:54 +09:00
Randy Mackay f00bf77af7 AP_MotorsMulticopter: minor formatting fix 2020-01-30 08:33:00 +09:00
ashvath d97fdcac31 Copter: function for mot_pwm checks 2020-01-30 08:29:56 +09:00
Rishabh 38533b2f09 AP_Motors: Added DJI_X motor setup for hexacopter and octacopter 2020-01-29 16:57:23 +09:00
Peter Hall d08b395224 AP_Motors: only ouput throttle to mask if armed 2020-01-21 10:11:16 +11:00
Andrew Tridgell 134d8b941b AP_Motors: added betaflight-x-reversed frame type 2020-01-16 19:13:13 +11:00
Peter Hall af08379d1b AP_Motors: MatrixTS remove output_to_motors 2020-01-07 10:40:22 +11:00
Peter Hall 615695c1bc AP_Motors: MatrixTS: defualt to normal Matrix setup 2020-01-07 10:40:22 +11:00
Peter Hall 4aa0dfa2aa AP_Motors: output_motor_mask update 2020-01-07 10:40:22 +11:00
Mark Whitehorn 68dcab3edb AP_Motors: add copter tailsitter differential torque frames 2019-12-18 08:33:29 +11:00
bnsgeyer 2a8e2d19fa AP_Motors: Tradheli-incorporate DDFP for counter clockwise rotating rotors 2019-12-16 10:48:09 +09:00
bnsgeyer e193c45946 AP_Motors: tradheli-update parameter display names 2019-12-10 12:21:56 +09:00
Gone4Dirt 98a4335af4 AP_Motors: Added support for autorotation 2019-11-29 08:06:10 +08:00
Peter Barker ef6a34a9f0 AP_Motors: use enum-class for SRV_CHANNEL_LIMIT_TRIM and friends 2019-11-26 10:17:17 +11:00
bnsgeyer 05a30c756a AP_Motors: tradheli- fix metadata 2019-11-20 12:17:36 +08:00
bnsgeyer 417570df70 AP_Motors: tradheli - TAIL_SPEED metadata correction 2019-11-18 08:21:40 +08:00
Leonard Hall 5979c750f9 AP_Motors: yaw headroom fix 2019-10-31 16:12:11 +09:00
Leonard Hall a8913d0df5 AP_Motors: Add full yaw range calculation back 2019-10-31 11:04:40 +08:00
Leonard Hall f840f96276 AP_Motors: Freeze motor lost index on enabling thrust boost 2019-10-31 10:49:45 +08:00
Andrew Tridgell ecd9e45568 AP_Motors: switched tricopter to use rc_write_angle()
simplies tricopter handling
2019-10-30 16:01:15 +08:00
Andrew Tridgell 37566d079f AP_Motors: support direct rate outputs for multicopters 2019-10-25 17:11:56 +11:00
Bill Geyer 63d9b47530 AP_Motors: make init_targets_on_arming global 2019-10-16 08:17:09 +09:00
Michael du Breuil a80ff80061 AP_Motors: Fix safe disarm 2019-10-16 08:46:49 +11:00
Leonard Hall 6e8413f122 AP_Motors: Use safety timer to enable pwm before spool up 2019-10-16 08:46:49 +11:00
Leonard Hall d4b922336b Copter: add voltage compensation to _throttle_thrust_max 2019-10-15 10:45:36 +09:00
Leonard Hall 4a1a5e81ea AP_Motors: Add variable to record the final thrust value
Add Throttle_Out for other frames
2019-10-10 20:26:02 +09:00
murata 371f11b7f4 AP_Motors: Change to description(NFC) 2019-10-08 08:26:17 +09:00
Andrew Tridgell 39182e70e4 AP_Motors: enable docs for hover thr learning in plane 2019-10-04 14:01:08 +10:00
IamPete1 3b9a35da27 AP_Motors: add reversed tricopter option 2019-10-01 09:39:08 +10:00
Willian Galvani dd97eedde3 APMotors_6DOF: Implement motor_is_enabled(), get_motor_angular_factors() and set_reversed(); 2019-09-26 09:39:50 -07:00
Willian Galvani d56c490b18 AP_Motors_6DOF: Add missing 'break' 2019-09-25 20:17:41 -07:00
bnsgeyer d4fec221c3 AP_Motor: tradheli align swash params btwn frames and fix metadata 2019-09-25 14:59:02 +09:00
Willian Galvani 5a9e5e937a APMotors6DOF: add roll factor for motors 4 and 5 for SIMPLEROV_4 and SIMPLEROV_5 2019-09-23 10:41:57 -07:00
Willian Galvani 948a5bf9c3 APMotors6DOF: add case for SIMPLEROV_3 2019-09-23 10:41:57 -07:00
bnsgeyer e91402aeb6 AP_Motors: tradheli-make all RSC params part of library
AP_Motors: Tradheli-fix RSC mode change while armed

AP_Motors: tradheli - improve RSC param metadata

AP_Motors: tradheli-put all throttle param settings in percent
2019-09-13 08:53:54 +09:00
Bill Geyer fbf2b62300 AP_Motors: Tradheli - Make H3-120 swashplate the default 2019-08-06 08:24:59 +09:00
Bill Geyer 7ecc368d4f AP_Motors: tradheli - remove white space in param values 2019-08-06 08:24:59 +09:00
Leonard Hall 036b47ec56 AP_Motors: Add seperate roll and pitch limits 2019-08-03 12:06:32 +09:00
Andrew Tridgell 2b3ced752b AP_Motors: fixed typo in MotorsMatrixTS update for FF 2019-07-25 17:38:15 +09:00
Leonard Hall 0bb9db5139 AP_Motors: add feedforward input to mixers 2019-07-25 17:38:15 +09:00
Randy Mackay 10da6d553c Copter: improve OctaV roll factors 2019-07-18 11:19:28 +09:00
Michael du Breuil e3f1ef0c5e AP_Motors: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Leonard Hall 77f8ec9f43 AP_Motors: formatting fixes 2019-07-12 09:29:40 +09:00
Andrew Tridgell 8a49c84d57 AP_Motors: fixed col max and min for dual heli
fixes H_SV_MAN behaviour
2019-07-06 08:57:18 +10:00
Michael du Breuil f6b8bf49a1 AP_Motors: Simplify the example includes 2019-06-18 10:02:05 +10:00
1iggy2 7323a5da9d AP_Motors: Added Octo I frame 2019-06-04 09:49:44 +09:00
ChristopherOlson fc84995fb9 AP_Motors:Heli - remove H_LAND_COL_MIN and replace with H_COL_MID 2019-06-04 09:48:03 +09:00
ChristopherOlson b6bfc8947f AP_Motors:Heli Governor - change rotor_rpm argument to a float 2019-06-03 07:53:01 +09:00
bnsgeyer f1a32d7872 AP_Motors: Tradheli- modified thrcrv and gov parameter group names 2019-06-03 07:53:01 +09:00
ChristopherOlson b1046c7b80 AP_Motors:Heli_RSC Governor - add method of droop compensation
- improve handling of outliers from speed sensor
 - change governor_tc variable to governor_thrcurve
 - remove equals zero from variable declarations
2019-06-03 07:53:01 +09:00
bnsgeyer 4120e29614 AP_Motors: Tradheli-complete conversion of throttle curve params to percent
add conversion for throttle curve params for upgrade
2019-06-03 07:53:01 +09:00
bnsgeyer 3629541a20 AP_Motors: Tradheli - implement enable params for throttle curve and governor 2019-06-03 07:53:01 +09:00
bnsgeyer 51d4029f03 AP_Motors: Tradheli - maintain consistent variable types as used in calcs
add override to declaration of new functions
2019-06-03 07:53:01 +09:00
ChristopherOlson cca58e393a AP_Motors:Heli_RSC - add support for rotor speed governor with droop speed control 2019-06-03 07:53:01 +09:00
Peter Barker 1e606cdc5b AP_Motors: make desired spool state and spool state enum-classes
This will help avoid getting the enumerations mixed up
2019-04-14 12:18:03 +09:00
Randy Mackay 54fe1dad82 AP_Motors: add missing break to Hexa-H 2019-04-13 10:36:36 +09:00
murata df85409a4c AP_Motors: Integrate processing result setting true 2019-04-13 10:29:49 +09:00
Randy Mackay a2373ebca2 AP_Motors: add support for Hexa-H frame
same as X frame except that middle motors are closer to center
2019-04-12 09:32:12 +09:00
Randy Mackay 928d7c7e71 AP_MotorsHeli: add range checking to ext_gyro_gain 2019-04-08 15:24:00 +09:00
bnsgeyer 01bd99907b AP_Motors:Tradheli-swash library parameter scope improvement 2019-03-20 10:40:20 +10:00