Commit Graph

61 Commits

Author SHA1 Message Date
Randy Mackay 7163839117 AP_MotorsUGV: remove arg from output_mainsail
no need to pass in argument which is always a local variable
2018-09-28 10:40:12 +09:00
Randy Mackay a59b83af9a AP_MotorsUGV: add mainsail to servo test 2018-09-28 10:40:12 +09:00
IamPete1 fa0fc5eade AP_MotorsUGV: add mailsail support for sailboats 2018-09-28 10:40:12 +09:00
Ammarf 0f10d2316a Rover: fix OmniX motor order 2018-08-31 08:38:17 +09:00
Randy Mackay 69541fc89c AP_MotorsUGV: use wheel-rate-control for skid steering vehicles 2018-08-27 16:44:33 +09:00
Ammarf d665abccde Rover: add output tests for omni frames 2018-08-08 17:07:50 +09:00
Ammarf 8308646c5e Rover: change omniplus motor order 2018-08-08 07:15:37 +09:00
Ammarf 430ed9bd3d Rover: add custom config support 2018-08-07 10:01:32 +09:00
Andrew Tridgell 08da22c682 Rover: improved setup of output modes 2018-07-13 16:11:12 +09:00
Ebin c65405541e Rover: balancing function call moved to manual mode update() 2018-06-28 21:55:20 +09:00
Ebin 936ebbe1f3 Rover: Added BalanceBot as a rover frame 2018-06-28 21:55:20 +09:00
Randy Mackay f0780c7bb1 AP_MotorsUGV: minor comment fix 2018-06-12 17:44:10 +09:00
Randy Mackay 1c0d9c7512 AP_MotorsUGV: MOT_SPD_SCA_BASE param for min speed scaling
This replaces the hardcoded 1m/s start point for speed scaling with a configurable value
2018-06-12 17:44:10 +09:00
Randy Mackay 5faff519c3 AP_MotorsUGV: steering limits and constraint done by each output handler
each motor output handler (regular, skid, omni) becomes responsible for constraining the steering input (if required) and setting the limits flags
it is possible to reduce duplicate code but I think it might be more important to keep it clear which level is responsible for the limiting and constraining of steering
2018-06-12 17:44:10 +09:00
Peter Barker cf1f2f9aeb Rover: move motors_active to be motors.active
This will help when we come to subclass the Motors library.
2018-06-08 08:51:18 +09:00
Ammarf 26c25daa36 Rover: add support for lateral control input 2018-05-31 13:48:17 +09:00
Randy Mackay d018a9334e AP_MotorsUGV: add get_slew_limited_throttle
required by vehicle code to properly handle steering direction in cases where the driver's input throttle has the opposite sign from output throttle because throttle is being slew limited
2018-05-10 08:02:13 +09:00
Randy Mackay 3db2cc700e AP_MotorsUGV: positive steering always rotates vehicle right
also scale steering down with increased speed for regular rovers
add support for disabling scaling of steering
2018-05-10 08:02:13 +09:00
Randy Mackay 8137001a86 AP_MotorsUGV: minor comment fix 2018-05-10 08:02:13 +09:00
Ammarf de4e74b910 Rover: added comments to output_omni 2018-05-09 12:50:45 +09:00
Ammarf aca2c596b4 Rover: Use output_throttle for omni rover motor output 2018-05-09 12:50:45 +09:00
Ammarf d7e01d83d6 Rover: added is_omni_rover function 2018-05-09 12:50:45 +09:00
Randy Mackay 341d75e0c9 AP_MotorsUGV: force throttle to zero when disarmed 2018-05-06 16:58:00 +09:00
Randy Mackay c69f7bb1d0 AP_MotorsUGV: consolidate parameter sanity checks 2018-05-06 16:58:00 +09:00
Randy Mackay 38b79cf0bc AP_MotorsUGV: support vectored thrust
steering scaled down as throttle increases
2018-04-24 19:57:19 +09:00
Andrew Tridgell 4f6240ee8a Rover: handle oneshot125 separately 2018-04-07 09:10:29 +10:00
Andrew Tridgell 4350cee7cf Rover: added mask to set_output_mode() 2018-04-07 09:10:29 +10:00
Randy Mackay c05d239069 Rover: remove throttle scaling dependency on throttle range 2018-04-03 10:42:39 +09:00
Randy Mackay fa20fd695f Rover: use throttle_min param as output deadzone 2018-04-03 10:42:39 +09:00
Randy Mackay ebe3ec88a7 AP_MotorsUGV: pre arm check if regular and skid steering configured 2017-12-11 11:56:12 +09:00
Randy Mackay 97e87e2150 AP_MotorsUGV: skid steering always uses full range
Allows skid friction to be removed
2017-12-05 20:26:35 +09:00
Randy Mackay 87658e6a07 AP_MotorsUGV: add MOT_THST_EXPO to scale output to motors 2017-12-04 09:53:06 +09:00
Randy Mackay bee8741b60 AP_MotorsUGV: order methods in cpp file to match h
non-functional change
2017-12-04 09:53:06 +09:00
Randy Mackay 6d472376bb AP_MotorsUGV: do not limit just because of saturation
steering and throttle limit flags should only be set when there is no point in the caller passing in higher values because it will not result in an increased response.  In the case of saturation, higher inputs will still result in a higher response.
2017-11-30 20:13:11 +09:00
Daniel Widmann 8f1857759f AP_MotorsUGV: allow larger MOT_SLEWRATE values 2017-11-28 09:12:18 +09:00
Randy Mackay 78275ec4a1 AP_MotorsUGV: throttle slew updates motor limit flags
this ensure I-term build-up doesn't happen when the slew
causes the throttle to react slowly
2017-11-28 09:12:18 +09:00
Randy Mackay 6d805b64b6 AP_MotorsUGV: remove access to enable/disable throttle slewing 2017-11-27 14:31:20 +09:00
khancyr 005002736b AP_MotorsUGV: fix MOT_SLEWRATE parameter description 2017-11-21 20:02:20 +09:00
Andrew Tridgell d57f307032 Rover: use cork/push wrapper 2017-11-21 14:10:54 +11:00
khancyr 74d5767e25 Rover: Fix slew rate range 2017-10-26 19:44:43 +09:00
Randy Mackay 2c568f8046 Rover: minor parameter description change
non-functional change
2017-10-26 19:43:42 +09:00
Randy Mackay 9f67d2a88d Rover: add MOT_SKID_FRIC to up skid-steer motor out while stopped 2017-10-26 19:43:36 +09:00
khancyr 2f1cc5ddfc Rover: support brushed motor on normal rover 2017-08-24 20:09:47 +09:00
khancyr 25b1307400 Rover: solve servo reverse in brushed configuration 2017-08-24 20:05:27 +09:00
Randy Mackay 3f1271214e Rover: rename MotorsUGV pwm type to brush-with-relay 2017-08-22 10:09:13 +09:00
khancyr 46e6057493 Rover: solve servo reverse in brushed configuration 2017-08-22 10:09:10 +09:00
khancyr a035950a22 Rover: minor format fix 2017-08-17 09:45:49 +09:00
Randy Mackay c8eceeabb6 AP_MotorsUGV: add THR_MIN, THR_MAX parameters 2017-08-17 09:39:40 +09:00
Randy Mackay c61f965828 AP_MotorsUGV: re-order implementation to match declaration
non-functional change
2017-08-17 09:39:40 +09:00
Randy Mackay a5783939ef AP_MotorsUGV: add limit flags
These flags become true when the steering servo or motors hit their
limits.  used to stop I-term build-up in higher level controllers.
2017-08-15 20:47:19 +09:00