Commit Graph

115 Commits

Author SHA1 Message Date
Bob Long 7e8f9c72fb AP_MotorsTri: reverse-frame cleanup and fixes
- fix motor test order for reverse frame
- add frame type string for reverse frame
- fix initialization of _pitch_reversed flag
2024-05-21 15:20:27 +10:00
Bob Long dc3f2c9724 AP_Motors_test: add tri frames to json output 2024-05-21 15:20:27 +10:00
Andrew Tridgell 171da3dd08 AP_Motors: smoother ramp down in output_motor_mask
stop changing motors outside the given mask in output_motor_mask,
which gives smoother ramp down in tilt quadplanes when we are
transitioning to forward flight

thanks to Pete for the suggestion
2024-03-06 08:01:52 +11:00
Andrew Tridgell 2b784e01f9 AP_Motors: allow output_motor_mask() to work properly with slew limits
this fixes tilt quadplanes with slew limits when we set motors state
to SHUT_DOWN
2024-03-06 08:01:52 +11:00
Iampete1 744df1ceba AP_Motors: Tricopter: fix actuator indexing 2024-02-27 01:03:28 +00:00
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
Peter Barker ad57141a85 AP_Motors: tidy includes of SRV_Channel.h 2023-01-25 22:30:55 +11:00
Iampete1 d5082e25e8 AP_Motors: output_motor_mask mask to uint16_t 2022-11-29 10:53:59 +11:00
Iampete1 c1a9f75034 AP_Motors: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1 43832649ec AP_Motors: convert to 32 bit motor mask 2022-05-22 12:07:37 +10:00
Peter Barker 5d35d8a02c AP_Motors: include cleanups 2022-03-01 11:21:33 +11:00
Iampete1 5181003228 AP_Motors: always check armed and interlocked in motor test 2022-02-10 07:43:40 +09:00
Andy Piper 30252c1b3f AP_Motors: remove tri yaw servo from motor mask 2021-08-03 11:16:50 +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
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
Randy Mackay 2d8c5a7bc4 AP_Motors: remove names from cpp files 2020-07-14 13:27:07 +10:00
Andrew Tridgell ecd9e45568 AP_Motors: switched tricopter to use rc_write_angle()
simplies tricopter handling
2019-10-30 16:01:15 +08: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
IamPete1 3b9a35da27 AP_Motors: add reversed tricopter option 2019-10-01 09:39:08 +10:00
Leonard Hall 036b47ec56 AP_Motors: Add seperate roll and pitch limits 2019-08-03 12:06:32 +09:00
Leonard Hall 0bb9db5139 AP_Motors: add feedforward input to mixers 2019-07-25 17:38:15 +09:00
Leonard Hall 77f8ec9f43 AP_Motors: formatting fixes 2019-07-12 09:29:40 +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 1fa335a77b AP_Motors: actuator_spin_up renamed to include _to_ground_idle 2019-01-21 20:55:07 +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
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
Randy Mackay a5c59ce36e AP_Motors: include boost_throttle in get_motor_mask 2018-08-27 10:35:02 +09:00
Jacob Walser abcb845af5 AP_Motors: refactor output_test -> output_test_seq 2018-07-02 11:31:58 -04:00
night-ghost 3165d72647 AP_Motors: reduce unnecessary multiple call of get_compensation_gain() 2018-01-24 19:26:15 +09:00
Leonard Hall 0a10deb3f7 AP_Motors: Fix gain scaling on Throttle Average Max and reduce additional gain on low throttle for Single and Coax. 2018-01-16 11:50:30 +09:00
Andrew Tridgell 03e1f6967f AP_Motors: removed enable() API
all output channels are already enabled by SRC_Channels::enable_aux_servos()
2017-10-22 15:52:50 +11:00
Peter Barker 35d8f11e46 AP_Motors: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Andrew Tridgell 46d9a1dcb5 AP_Motors: fixed tricopter tail servo in fwd flight
in quadplane forward flight the with tilt-tricopter tail servo needs to
be at its trim position. Thanks to Marco for noticing this.
2017-05-09 08:59:00 +09:00
Andrew Tridgell 2c4975ba31 AP_Motors: removed cork/push from AP_Motors
should be done by vehicle code if needed, so that AUX servos are sent
at the same time
2017-05-01 14:32:18 +10:00
Andrew Tridgell a6ecb94d24 AP_Motors: MotorsTri does not need its own var_info now 2017-01-20 12:05:09 +11:00
Andrew Tridgell 8e3bf71aa9 AP_Motors: allow single, tri and coax to be part of multicopter class 2017-01-12 17:39:37 +11:00
Andrew Tridgell 8799094278 AP_Motors: use SRV_Channel for tri tail servo 2017-01-12 17:39:37 +11:00
Randy Mackay 7be0f437a9 AP_Motors: consolidate matrix multicopters
AP_MOTORS_x_FRAME definitions moved to motor_frame_type enum
init function and now accepts frame-class and type to perform initial motor setup
set_frame_class_and_type allows real-time changing of motor setup
initialised_ok flag and accessor records whether setup was successful
2016-12-31 10:55:23 +09: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
Randy Mackay a1b573ed0a AP_Motors: rename throttle_ave_max to throttle_avg_max 2016-06-18 11:55:49 +09:00
Randy Mackay ef106e4b0f AP_Motors: spool_mode moved out of flags struction
No functional change
2016-06-18 11:55:49 +09:00
Leonard Hall 488f90b39d AP_Motors: add calc_spin_up_to_pwm to reduce repeated code 2016-06-18 11:55:49 +09:00
Leonard Hall 5a8fc6283e AP_Motors: replace throttle_rpy_mix with throttle_avg
AC_AttitudeControl now calculates throttle vs attitude control
prioritisation and simply provides overall maximum throttle (aka
throttle_avg) to the motors library
2016-06-18 11:55:49 +09:00
Randy Mackay 8d1f50e78f AP_Motors: rename get_pwm_min to get_pwm_output_min 2016-05-24 10:00:25 +09:00
Randy Mackay 49b14b3cb6 AP_Motors: add PWM_MIN, MAX
These parameters allow the motor PWM output range to be different from receiver's throttle input range
Also renamed throttle_pass_through to set_throttle_passthrough_for_esc_calibration and change the method's input to the 0 to 1 range instead of direct PWM value
2016-05-24 10:00:25 +09:00
Andrew Tridgell 60b3625950 AP_Motors: added hook for vehicle based thrust compensation
allow vehicle code to compensate for thrust effectiveness changes due
to properties outside the scope of AP_Motors. This allows for
compensation in tiltrotors and tiltwings.
2016-05-11 05:55:23 +10:00