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
Peter Barker
937d8dac97
AP_Motors: remove unneeded initialisations
2018-07-23 16:30:40 +09:00
Michael du Breuil
a5b8279ea4
AP_Motors: Remove unused ADC include
2018-07-17 09:29:50 +10:00
bnsgeyer
0f75866042
AP_Motors: Tradheli-corrected get_motor_mask method
2018-07-16 12:41:16 +10:00
bnsgeyer
dec8c5de77
AP_Motors: convert heli code to use SRV_Channels
...
this converts the heli code to use the SRV_Channels output
functions. It does not change behaviour, but removes the last vehicle
type that did its own servo output calculations. This change also
fixed servo initialization conflicts.
Note that this also allows helis to be setup with more than one
channel for a particular output (eg. two separate channels for tail
servo if they are wanted). This isn't likely to be used much, but does
make heli consistent with other vehicle types
2018-07-16 12:41:16 +10:00
Jacob Walser
24e21b57ca
AP_Motors: add output_test_num api for motor testing
2018-07-02 11:31:58 -04:00
Jacob Walser
abcb845af5
AP_Motors: refactor output_test -> output_test_seq
2018-07-02 11:31:58 -04:00
Jacob Walser
9ce9f95692
AP_Motors: make output_test signatures consistent and ensure override
...
specifier on derived classes
2018-07-02 11:31:58 -04:00
ChristopherOlson
1709c258bf
AP_Motors:TradHeli - fix metadata for H_COL_CTRL_DIR
2018-06-28 09:02:48 +09:00
Andrew Tridgell
4e414c02f5
AP_Motors: use scaled actuators for single and coax frames
...
this allows for multiple servos with the same motor function
2018-05-21 13:04:13 +10:00
Andrew Tridgell
216bab4de4
AP_Motors: fixed default motor functions for single and coax copter
...
should be enabling motors 5 and 6 to match docs and SITL
2018-05-21 13:04:13 +10:00
bnsgeyer
b20ebc6540
AP_Motors: Tradheli- removes unnecessary code from swash servo trim bug fix
2018-05-16 09:22:44 +10:00
Jacob Walser
e5bd6e289e
AP_Motors: Add current limiting to 6DOF motors for Sub
2018-04-29 17:16:34 -04:00
bnsgeyer
c8488e3333
AP_Motors: Tradheli - swashplate servo trim fix for heli single and dual frames
2018-04-24 10:30:26 +10:00
ChristopherOlson
9aa685a6d8
AP_Motors:TradHeli - single rotor only - add support for H3-140 swashplates.
...
Also changes the old definition to H3 for swashplates with fixed control radius and adjustable servo position.
2018-04-18 14:24:59 +09:00
ChristopherOlson
f073c58f68
AP_Motors:TradHeli - add support for reverse collective swashplates
2018-04-18 14:24:59 +09:00
Andrew Tridgell
819de4acd5
AP_Motors: don't scale oneshot125 in AP_Motors
...
handle it in the HAL backends, to allow for correct resolution
2018-04-07 09:10:29 +10:00
Andrew Tridgell
80a1688361
AP_Motors: make a singleton
...
this is used by AP_ESCSerial
2018-04-07 09:10:29 +10:00
Andrew Tridgell
bd9df6d0ec
AP_Motors: added DShot to parameter docs
2018-04-07 09:10:29 +10:00
Andrew Tridgell
e55d3a0834
AP_Motors: fix mask passed to rc_set_freq
...
the full motor mask must be supplied to work correctly for oneshot and
dshot
2018-04-07 09:10:29 +10:00
Andrew Tridgell
2c84d77306
AP_Motors: setup for DShot output modes
2018-04-07 09:10:29 +10:00
Michael du Breuil
050b8ebb32
AP_Motors: Allow specifying which battery is used for compensation
2018-03-27 22:12:21 +01:00
Michael du Breuil
98e327640d
AP_Motors: Use battery singleton
2018-03-27 22:12:21 +01:00
bnsgeyer
690e8fd3f4
AP_Motors: TradHeli - Changed RSC mode 3 to a spline fit throttle curve
2018-03-27 09:07:03 +11:00
ChristopherOlson
96793a3ae7
AP_Motors:TradHeli - DDVP Ramp/Runup
...
Change to ramp and runup DDVP tail rotor to prevent torque pitching the frame and provide runup in sync with main
rotor like a mechanically driven tail.
Fix some comments and remove indents found in whitespace in AP_MotorsHeli.cpp and AP_MotorsHeli.h
2018-03-14 09:18:07 +09:00
night-ghost
3165d72647
AP_Motors: reduce unnecessary multiple call of get_compensation_gain()
2018-01-24 19:26:15 +09:00
bnsgeyer
7a9e424977
AP_Motors: added comments to indicate parameter indices previously used by RSC_PWM_MIN, RSC_PWM_MAX, and RSC_PWM_REV
2018-01-23 14:12:27 +09:00
Andrew Tridgell
2c73b374f5
AP_Motors: protect against writes to NULL servo_aux
...
if user changes parameter while setting up it could crash
2018-01-21 21:12:13 +11:00
Andrew Tridgell
bdb9f062ae
AP_Motors: removed unused pwm parameters for heli
2018-01-21 21:12:13 +11:00
bnsgeyer
ac2e933358
AP_Motors: Tradheli - Fixed Directdrive Variable Pitch Feature
2018-01-21 21:12:13 +11: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
Leonard Hall
eb6ab53f6c
AP_Motors: fix optimum thrust calcs
2018-01-13 10:06:11 +09:00
Hiroshi Takey (hiro2233)
aa6f66f29b
AP_Motors: Updated Motor example.
2018-01-09 08:12:01 +09:00
bnsgeyer
63bafa2c7f
AP_Motors: Tradheli- fixes servo_test function for Dual Heli frame
2017-11-08 11:07:08 +09:00
Andrew Tridgell
6358081b18
AP_Motors: apply tailsitter min spin to both motors
2017-11-04 11:41:40 +11:00
Andrew Tridgell
878d2e2563
AP_Motors: fixed tailsitter use of SPIN_MIN
2017-11-04 09:29:08 +11:00
bnsgeyer
37ea64513d
AP_Motors: TradHeli - fixed servo test function
2017-11-01 14:01:48 +09:00
Andrew Tridgell
e340fac2e0
AP_Motors: avoid float exception for small expo
...
very small values of the thrust expo cause a floating point
exception. As zero is a documented value meaning linear we need to
handle this.
2017-10-25 21:15:58 +11:00
Andrew Tridgell
45d6f3bf75
AP_Motors: fixed motor channel handling
2017-10-25 11:39:11 +11:00
Andrew Tridgell
fc237ee9a0
AP_Motors: merge fixed from rebase
2017-10-22 15:52:50 +11:00
Andrew Tridgell
efea83e424
AP_Motors: fixed MotorsMatrix set_update_rate()
2017-10-22 15:52:50 +11:00