Commit Graph

850 Commits

Author SHA1 Message Date
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
Andrew Tridgell 1e62b5d5c7 AP_Motors: many to one mapping of motors
this allows multiple outputs for one motor number
2017-10-22 15:52:50 +11: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
Andrew Tridgell c8b6be6736 AP_Motors: fixed scaling of servo outputs
thanks to bnsgeyer for noicing this in issue #6977

this will break existing dual-heli setups, but there are so few people
flying them so far that I think it is a worthwhile change
2017-10-10 11:02:34 +11:00
ChristopherOlson 7e086e8c4d AP_Motors: Fix DDFP so tail motor doesn't start without Channel 8 high 2017-10-05 13:41:34 +11:00
Leonard Hall d28182435e AP_Motors: allow for negative thrust expo
This allows for motors with a thrust curve that decreases with demand.
2017-10-05 13:40:36 +11:00
Andrew Tridgell e1f8e7bc58 AP_Motors: cope with H vs X frame in HeliQuad 2017-10-03 10:16:41 +11:00
Andrew Tridgell 09c3eeaf0c AP_Motors: improved heli-quad yaw control 2017-10-03 10:16:41 +11:00
Andrew Tridgell a7713da703 AP_Motors: reserve collective range for attitude control 2017-10-03 10:16:41 +11:00
Andrew Tridgell f07aac396c AP_Motors: support inverted flight for helicopters 2017-10-03 10:16:41 +11:00
Andrew Tridgell 55d5fe843e AP_Motors: added Heli_Quad backend
supporting collective pitch quadcopters
2017-10-03 10:16:41 +11:00
Peter Barker 35d8f11e46 AP_Motors: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Jacob Walser 20889ff8a9 APMotors6DOF: Add motor reverse parameters for motors 9-12
Fix overruns found in coverity 145496-99
2017-07-11 09:34:40 +09:00
Andrew Tridgell abd0831239 AP_Motors: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00