Commit Graph

1003 Commits

Author SHA1 Message Date
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
bnsgeyer 79b069afc3 AP_Motors:tradheli-swash library general clean up 2019-03-20 10:40:20 +10:00
bnsgeyer 8c46fe1c61 AP_Motors: tradheli-fix parameters for generic swashplate and other minor fixes 2019-03-20 10:40:20 +10:00
bnsgeyer 9f547cc328 AP_Motors: Tradheli - support for linear servo output for swashplates 2019-03-20 10:40:20 +10:00
ChristopherOlson b8d53b7a57 AP_Motors:TradHeli - add new swashplate descriptions to params for Heli Single and Heli Dual 2019-03-20 10:40:20 +10:00
bnsgeyer d7e6298366 AP_Motors: Tradheli - add swashplate library 2019-03-20 10:40:20 +10:00
Mark Whitehorn 5cdfccad14 AP_Motors: specialize MotorsMatrixTS motor controls 2019-03-19 10:13:59 +11:00
IamPete1 d075965fce AP_Motors: tailsiter remove push of plane ouputs 2019-03-06 14:46:39 +11:00
Mark Whitehorn 58a128f430 AP_Motors: add support for copter tailsitters
add MotorsMatrixTS tailsitter class
add X quadcopter tailsitter frame
add support for trimotor tailsitter
2019-03-06 07:53:46 +09:00
Tom Pittenger 3bbd80a5de AP_Mount: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Andrew Tridgell cf8b059531 AP_Motors: added 3 more motor orders for X quads
- betaflight X
 - DJI X
 - clockwise X
2019-02-06 11:17:35 +11:00
Mark Whitehorn 35928a8d05 AP_Motors: fix regression for tiltrotors 2019-01-29 08:10:27 +09:00
Randy Mackay 1fa335a77b AP_Motors: actuator_spin_up renamed to include _to_ground_idle 2019-01-21 20:55:07 +09:00
Randy Mackay e2bd502b83 AP_Motors: minor format fixes 2019-01-21 20:13:43 +09:00
Matt 3d3f06cacb AP_Motors: Add actuator output slew time to multicopters
Adds slew time limiting for throttling up and throttling down to multicopters.  New parameters MOT_SLEW_UP_TIME and MOT_SLEW_DN_TIME added.  0 = disabled, no slew limiting.  Valid values are 0 to 0.5 seconds.  Also reworked functions related to linearization and PWM conversion to make more flexible throughout the code.
2019-01-21 20:07:58 +09:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
bnsgeyer 10572c2f9b AP_Motors: remove unused defines from multicopter 2019-01-15 11:41:44 +09:00
bnsgeyer 28f4c68f2f AP_MotorsHeli: add spool logic support
Also moved heli init_target_on_arming flag in from vehicle code
2019-01-15 11:41:44 +09:00
bnsgeyer ac87b3e1e5 AP_Motors: spool state moved from multi to parent
Also rename SPIN_WHEN_ARMED to GROUND_IDLE
2019-01-15 11:41:44 +09:00
IamPete1 28884f60d5 AP_Motors: tricopter apply diffential thrust in forward flight 2019-01-15 10:19:19 +11:00
IamPete1 c26948ef59 AP_Motors: multicopter apply diffential thrust in forward flight 2019-01-15 10:19:19 +11:00
IamPete1 c82f158b56 AP_Motors: add get roll factor 2019-01-15 10:19:19 +11:00
expntly 790f609373 AP_Motors: document Hover_learn as copter only 2019-01-03 09:50:22 +09:00
Randy Mackay a5699c7d5a AP_Motors: boost-scale param desc update 2018-12-27 10:08:14 +09:00
Randy Mackay db9ce0064b AP_Motors: esc calibration outputs to throttleRight and throttleLeft 2018-12-21 11:19:18 +09:00
Randy Mackay d4f838495d AP_Motors: minor format fix to tailsitter 2018-12-21 11:19:18 +09:00
Randy Mackay f89c18740d AP_Motors: fix tailsitter tilt servo outputs 2018-12-21 11:19:18 +09:00
Randy Mackay 0d8e02d113 AP_Motors: Tailsitter output using SRV_Channels instead of rc_write 2018-12-21 11:19:18 +09:00
Randy Mackay 11c29b6af9 AP_Motors: Tailsitter minor typo and format fixes 2018-12-21 11:19:18 +09:00
Randy Mackay 84bcfce96b AP_Motors: remove virtual from Tailsitter output_test_seq 2018-12-21 11:19:18 +09:00
IamPete1 4a7b2e8f8f AP_MotorsTailsitter: add mixer and update to use standard AP_motors functions 2018-12-21 11:19:18 +09:00
bnsgeyer 1b90ef34cc AP_Motors: Dualheli- fix bug for scaling second swashplate 2018-12-18 09:10:22 +09:00
Andrew Tridgell d907c5757d AP_Motors: added PlusRev motors type
this is a plus frame with reversed motor direction, needed for quad in
Morse simulator
2018-12-04 09:44:50 +11:00
Andrew Tridgell f71013928a AP_Motors: force PWM range for DShot to 1000 to 2000 2018-11-16 08:33:35 +11:00
Peter Barker f2070da335 AP_Motors: add override keyword where required 2018-11-08 11:30:12 +11:00
Leonard Hall 2f87d8808f AP_Motors: handle boost in spool up and down the same way 2018-10-16 00:44:50 +09:00
Randy Mackay 853a56dc9b AP_MotorsMatrix: formatting fixes 2018-10-16 00:44:50 +09:00
Leonard Hall 4774cb8daf AP_Motors: improved motor loss redundancy
This detects a failed motor on copters with at least 6 motors
and recalculates the mixer to compensate
2018-10-16 00:44:50 +09:00
bnsgeyer 833bc4e77d AP_Motors: Tradheli - fixes slew speed of swashplate during collective servo test 2018-09-24 19:55:11 +01:00
Peter Barker 71c9c91c2d AP_Motors: fix example 2018-09-19 22:40:20 -07:00
Randy Mackay a5c59ce36e AP_Motors: include boost_throttle in get_motor_mask 2018-08-27 10:35:02 +09:00
Randy Mackay f85e84cc89 AP_Motors: add override keyword to get_motor_mask 2018-08-27 10:35:02 +09:00
Randy Mackay f536c53fa6 AP_MotorsMatrix: minor format fix 2018-08-21 13:34:07 +09:00