Commit Graph

1895 Commits

Author SHA1 Message Date
Peter Barker
1ee8cfad6f Rover: split SIMSTATE, AHRS2 and AHRS3 onto their own ap_message ids 2018-12-19 13:19:23 +11:00
Peter Barker
f8f5faa6b9 Rover: split DISTANCE_SENSOR onto its own ap_message id 2018-12-19 07:24:37 +11:00
Peter Barker
88dfb3220b Rover: try_send_message caller checks telemetry_delayed 2018-12-18 14:25:56 +11:00
Peter Barker
90d13548a1 Rover: split SYS_STATUS and POWER_STATUS onto separate ap_messages 2018-12-18 14:05:20 +11:00
Randy Mackay
8e96eb969f Rover: support DShot ESCs 2018-12-18 11:21:24 +09:00
Peter Barker
588829161b Rover: move accept_packet to GCS_MAVLink base class 2018-12-14 12:44:31 +11:00
Randy Mackay
17af4c8933 Rover: enable avoidance in auto, RTL, smartRTL 2018-12-14 09:18:23 +09:00
Randy Mackay
66a2c10203 Rover: proximity logging uses LOG_BITMASK for rangefinder 2018-12-14 09:18:23 +09:00
Peter Barker
a98e9f498f Rover: DataFlash uses AP_Mission singleton 2018-12-13 14:45:30 +09:00
Peter Barker
29782c3d2e Rover: move AP_Mission object into ModeAuto class
This mirrors what we did for Copter
2018-12-13 13:44:46 +09:00
Peter Barker
0fa9f43815 Rover: GCS_MAVLink now uses Mission singleton 2018-12-13 10:52:52 +09:00
Randy Mackay
452382ff76 Rover: loiter provides bearing to target 2018-12-13 09:30:19 +09:00
Randy Mackay
6b5ff939f2 Rover: follow provides distance and bearing to target 2018-12-13 09:30:19 +09:00
Randy Mackay
b405286262 Rover: nav-controller-output message sourced from flight mode
future change will allow overriding these values so each mode can provide the best value
2018-12-13 09:30:19 +09:00
Randy Mackay
2b97e496ff Rover: nav-controller-output msg sends roll as zero and pitch for balance bot 2018-12-13 09:30:19 +09:00
Peter Barker
d1eb9c5c71 Rover: split MSG_SCALED_PRESSURE into three separate messages 2018-12-12 21:36:01 +11:00
Peter Barker
2e03061625 Rover: GCS_MAVLink uses dataflash singleton 2018-12-11 08:43:47 +09:00
Peter Barker
f2dc8f9282 Rover: call GCS update functions at much higher rate to support lower intervals 2018-12-10 12:52:41 +09:00
Peter Barker
434a263ef4 Rover: split MSG_RAW_IMU1 into per-IMU ap_messages 2018-12-10 12:52:41 +09:00
Peter Barker
a5b5688960 Rover: send both SYS_STATUS or POWER_STATUS or neither 2018-12-10 12:52:41 +09:00
Peter Barker
b67876316a Rover: rename send_extended_status1 to send_sys_status 2018-12-10 12:52:41 +09:00
Peter Barker
9665d8d2e9 Rover: adjust for new update entry points into GCS 2018-12-10 12:52:41 +09:00
Peter Barker
0d8e3bdfd8 Rover: add parameter stream to list-of-all-streams 2018-12-10 12:52:41 +09:00
Peter Barker
dc4e58de13 Rover: rename MSG_EXTENDED_STATUS2 to MSG_MEMINFO 2018-12-04 18:01:38 +11:00
Peter Barker
54d4030ed1 Rover: rename MSG_RAW_IMU2 and MSG_RAW_IMU3 to reflect what they send 2018-12-04 17:45:32 +11:00
Randy Mackay
b1a5636d4d Rover: fix auto enter check 2018-12-04 11:21:13 +09:00
Andrew Tridgell
eb851cf1a6 Rover: log SITL state 2018-12-04 09:44:50 +11:00
TsuyoshiKawamura
ba0926e101 Rover: MIS_DONE_BEHAVE parameter to choose mode after mission done 2018-11-23 15:27:58 +09:00
Peter Barker
86994ba195 Rover: remove pointless wrappers around RC_Channels functions 2018-11-23 10:56:17 +11:00
Peter Barker
5dcf4dfffc Rover: remove pointless wrappers around gcs functions 2018-11-23 10:56:17 +11:00
DOMINATOR\Eugene
cdbffb4ecc APMrover2: move airspeed update to library 2018-11-17 07:52:42 +11:00
Randy Mackay
002223204b Rover: add comments to failsafe structure 2018-11-14 20:32:53 +09:00
Tatsuya Yamaguchi
c9299db3b9 Rover: ignore pilot's input during RC failsafe 2018-11-14 20:32:44 +09:00
Tatsuya Yamaguchi
32ba248c73 Rover: add continue-in-auto option to failsafe 2018-11-14 20:24:01 +09:00
Tatsuya Yamaguchi
44360a769d Rover: fix to use defined value of failsafe action 2018-11-14 11:18:43 +09:00
Peter Barker
78313dab4a Rover: stop passing ahrs to OpticalFlow constructor 2018-11-13 10:40:23 +11:00
Randy Mackay
1069ab0860 Rover: GCS invoked RTL returns failed when set-mode fails 2018-11-12 15:58:21 +09:00
Randy Mackay
4c3651c2be Rover: 3.5.0-rc1 release notes 2018-11-12 13:44:50 +09:00
Peter Barker
67e5b18268 Rover: factor out do_aux_function_change_mode 2018-11-08 10:01:16 +09:00
Peter Barker
86168cd180 Rover: add override keyword where required, fix bad method override 2018-11-08 11:30:12 +11:00
Michael du Breuil
65af2bc56b Rover: Fix sail motor test not being reachable
CID: 325623
2018-11-06 16:23:59 +09:00
Michael du Breuil
a40295c3b6 Rover: Make capability init consistent 2018-11-05 14:04:36 +11:00
Randy Mackay
380884e175 Rover: shorten radio/throttle failsafe to 0.2 sec min 2018-11-02 10:31:37 +09:00
Randy Mackay
2408538bdf Rover: failsafe clears rc-overrides 2018-11-02 10:31:37 +09:00
Randy Mackay
6167e6ac0b Rover: gcs fs not triggered if rc-overrides arrive
also not triggered if manual-control messages arrive
also minor restructure of gcs_failsafe_check (non-functional)
also remove unnecessary failsafe_trigger call when heartbeats arrive
2018-11-02 10:31:37 +09:00
Randy Mackay
047f704236 Rover: last_heartbeat_ms moved to failsafe structure 2018-11-02 10:31:37 +09:00
Randy Mackay
ed8feda5b9 Rover: shorten failsafe timeouts
radio failsafes may trigger within 1sec (previously was 2 seconds)
default failsafe set to 1.5sec (was 5sec)
also minor improvement to FS_TIMEOUT parameter description
2018-11-02 10:31:37 +09:00
Randy Mackay
fa5de31cb9 Rover: rename control_failsafe to radio_failsafe_check
although this makes the name inconsistent with plane it is more precise because control can also come from rc-overrides which are covered by the GCS failsafe
2018-11-02 10:31:37 +09:00
Randy Mackay
69e5a4b262 Rover: sailboat tack triggered by any switch movement 2018-11-01 18:04:19 +09:00
Randy Mackay
2db6b7c7cb Rover: move sailboat vars into struct
also fix airspeed library's parameter description
also log NaN when we do not have wind direction or speed estimates
also send timeout message to GCS when taking takes too long
2018-11-01 18:04:19 +09:00
Randy Mackay
4dbff6af7e Rover: use AP_WindVane's send_wind 2018-11-01 18:04:19 +09:00
IamPete1
0dddc2eafe Rover: add sailboat tacking 2018-11-01 18:04:19 +09:00
Peter Barker
9a263780d0 Rover: move handling of gimbal messages up
Rover: move handling of mav_cmd_do_mount_control up

Rover: move handling of deprecated mount messages up

Rover: move handling of command_do_set_roi up

Rover: move handling of command_do_set_roi up

Rover: mount no longer takes ahrs in constructor
2018-10-30 17:19:14 +11:00
Peter Barker
42b196a9a6 Rover: let AP_Mission handle common camera commands 2018-10-30 15:37:18 +11:00
Peter Barker
0eff11eebe Rover: move servorelayevents mission handling into AP_Mission 2018-10-30 15:37:18 +11:00
Peter Barker
6cbcfb5d61 Rover: AC_Avoid is built on all vehicles 2018-10-30 12:10:42 +11:00
Randy Mackay
b64bdcdfda Rover: remove proximity check from arming checks
it is OK for rovers to be armed very close to objects especially when they are beside the rover
2018-10-26 14:38:04 +09:00
Andrew Tridgell
7ae90237e3 Rover: use set_flying to allow for compass learning to run 2018-10-24 07:25:42 +10:00
Peter Barker
50cb391dea Rover: leave AHRS to log and notify home changes 2018-10-16 10:55:13 +11:00
Randy Mackay
3e7cd5a721 Rover: fix typo on call to AP_WindVane 2018-10-07 15:46:57 +09:00
Raouf
fc5ce7b273 Rover: send obstacle_distance messages to proximity lib 2018-10-02 10:37:13 +09:00
Randy Mackay
925d4035a4 Rover: fix loiter comment 2018-09-28 10:40:12 +09:00
Randy Mackay
c3f3ee03d0 Rover: windvane calibration can be started with preflight-calibration msg
send COMMAND_LONG with MAV_CMD_PREFLIGHT_CALIBRATION command and set param6 field to 3
2018-09-28 10:40:12 +09:00
Randy Mackay
4a5b56c929 Rover: windvane update called from scheduler at 20hz 2018-09-28 10:40:12 +09:00
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
IamPete1
4366bae96d Rover: add sailboat support 2018-09-28 10:40:12 +09:00
IamPete1
100c494127 Rover: add loiter radius parameter 2018-09-28 10:40:12 +09:00
IamPete1
e3d5db8db5 Rover: add AP_WindVane to build 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
Randy Mackay
0665ac5229 Rover: rename rudder_arming to get_rudder_arming_type 2018-09-11 19:34:39 +10:00
Randy Mackay
b1a4cd55fd Rover: support disabling rudder arming 2018-09-11 19:34:39 +10:00
Randy Mackay
9c13324b87 Rover: update simple call to calc_steering_to_heading 2018-09-11 16:43:17 +09:00
Randy Mackay
14fc117cd4 Rover: simple mode calcs clarified and const added 2018-09-11 16:43:17 +09:00
Randy Mackay
efdd3946fc Rover: simple mode fixes 2018-09-11 16:43:17 +09:00
Ammarf
6ba5942ece Rover: add simple mode 2018-09-11 16:43:17 +09:00
Randy Mackay
743de16c07 Rover: fix calls to calc_steering_to_heading
reversed flag was being passed into the wrong argument
2018-09-11 14:39:50 +09:00
Randy Mackay
cd64ce45ac Rover: fix calc_steering_to_heading rate_max handling
units mix up led to deg/s parameter value being applies as rad/s
2018-09-11 14:39:50 +09:00
Peter Barker
7c60c85a12 Rover: use camera singleton to get camera rather than callback 2018-08-31 15:48:56 +10:00
Peter Barker
a5691500ad Rover: GCS_MAVLink uses compass singleton, stop implementing get_compass 2018-08-31 15:48:56 +10:00
Ammarf
0f10d2316a Rover: fix OmniX motor order 2018-08-31 08:38:17 +09:00
Randy Mackay
03e0437c19 Rover: fix RTL when AP_RALLY disabled 2018-08-30 10:33:37 +09:00
Randy Mackay
dd3163b065 Rover: rename AC_RALLY to AP_RALLY 2018-08-30 10:00:56 +09:00
Randy Mackay
587addbdfa Rover: remove unused TURN_GAIN definition 2018-08-30 09:55:07 +09:00
Randy Mackay
f0ad8760e2 Rover: move rally to g2 2018-08-30 09:55:05 +09:00
Raouf
90fd64cf3a Rover: add support for rally points 2018-08-30 09:54:51 +09:00
Thorsten Panitz
ee8d5d77d0 Rover: Activation of OSD
Rover: Activation of OSD
2018-08-30 08:19:02 +10:00
Randy Mackay
88a230e897 Rover: DPTH message only written if range finder last read time changed 2018-08-28 09:23:38 +09:00
Randy Mackay
19d943106b Rover: pass vehicle speed to attitude control pitch control 2018-08-27 16:44:33 +09:00
Randy Mackay
5aa1286344 Rover: report left and right wheel control PID 2018-08-27 16:44:33 +09:00
Randy Mackay
e0fa829665 Rover: pitch PID_TUNING sends degrees
also send FF although it is rarely used
2018-08-27 16:44:33 +09:00
Randy Mackay
db611e074c Rover: include wheel-rate-control 2018-08-27 16:44:33 +09:00
Randy Mackay
85ac24d96e Rover: update wheel encoders at 50hz 2018-08-27 16:44:33 +09:00
Randy Mackay
69541fc89c AP_MotorsUGV: use wheel-rate-control for skid steering vehicles 2018-08-27 16:44:33 +09:00
Randy Mackay
a5e28f0729 Rover: balancebot_pitch_control method removes unused armed arg
Also remove constraint on throttle output (this is handle in the AP_MotorsUGV library
Also move balance bot declarations to alphabetical order within Rover.h
2018-08-27 16:44:33 +09:00
Randy Mackay
961aab7425 Rover: balance bot passes motor limits to pitch control 2018-08-27 16:44:33 +09:00
Randy Mackay
9ae9f84498 Rover: fix G_Dt when SCHED_LOOP_RATE increased
This fixes a bug in the G_Dt calculation which is used in the motors library and PID controllers.  The issue occurred in cases where the ahrs_update was not being run which could happen because it's estimated time was too long.
This also properly runs the critical functions (update ahrs, run flight mode code, send outputs to motors) at up to 400hz
2018-08-25 17:50:15 +10:00
Randy Mackay
473e8d18a1 Rover: reduce scheduler estimated time for gcs tasks 2018-08-24 15:30:50 +09:00
Pierre Kancir
3ef910ff11 Rover: fix initial target when setting Guided 2018-08-22 21:02:40 +09:00
Randy Mackay
8b9b1fdb66 Rover: set reverse to false on entering a mode 2018-08-22 14:25:30 +09:00
Randy Mackay
289fe6c391 Rover: minor fixes for reversed handling 2018-08-22 14:25:22 +09:00
Raouf
df3b6202f5 Rover: support DO_SET_REVERSE commands in guided, RTL, SmartRTL 2018-08-22 13:36:44 +09:00
Raouf
80753430e8 Rover: Accept DO_SET_REVERSE command 2018-08-22 13:36:41 +09:00
Raouf
ea62c24cef Rover: Move set_reverse method to Mode class 2018-08-22 13:36:38 +09:00
Michael du Breuil
84baaea46d Rover: Remove unneeded ServoRelayEvent mask set 2018-08-20 21:31:06 -07:00
Peter Barker
ca7842afac Rover: add support for Sprayer 2018-08-17 15:33:35 +09:00
Randy Mackay
011776bff2 Rover: restore param description for CH7_OPTION 2018-08-12 14:00:48 +09:00
Randy Mackay
b5f045dc5f Rover: mode description in lower case
Follow was in upper case
INITIAL_MODE was missing SmartRTL
2018-08-12 13:41:45 +09:00
Randy Mackay
c028aa8dad Rover: fix compiler warning in RC_Channel 2018-08-11 11:23:35 +09:00
Ammarf
d665abccde Rover: add output tests for omni frames 2018-08-08 17:07:50 +09:00
Raouf
f0185cb79b Rover: Add loiter behaviour parameter 2018-08-08 07:17:13 +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
Peter Barker
2365cdf90a Rover: remove min-max-configured pre-arm checks 2018-08-07 09:45:09 +10:00
Randy Mackay
86634c2cca Rover: log desired pitch in ATT message 2018-08-06 11:30:22 +09:00
Randy Mackay
0722c6a265 Rover: minor format fix to GCS_MAVLink.cpp 2018-08-06 11:30:22 +09:00
Randy Mackay
e71dc9307e Rover: add Pitch to GCS_PID_MASK param description 2018-08-06 11:30:22 +09:00
Randy Mackay
e867ef74cc Rover: balance bots log pitch PID 2018-08-06 11:30:22 +09:00
Randy Mackay
936dca7531 Rover: remove compass accumulate 2018-08-06 11:05:34 +10:00
Andrew Tridgell
73ccf90087 Rover: fixed RC_Channels parameter docs 2018-08-04 12:28:38 +10:00
Lucas De Marchi
00f03360bc APMrover2: kill AP_FEATURE_SAFETY_BUTTON
This is redundant and can be just HAL_HAVE_SAFETY_SWITCH.
2018-08-02 13:15:02 -07:00
Peter Barker
5d923aed85 Rover: remove dead gcs failsafe code
Also use rc().has_valid_input() before using radio for trim
2018-08-02 15:21:03 +09:00
Peter Barker
e501ba203f Rover: rename control_modes.cpp to RC_Channel.cpp 2018-08-02 09:52:29 +09:00
Randy Mackay
fada9f1990 Rover: version to 3.5.0-dev 2018-08-01 20:23:24 +09:00
Peter Barker
1f0908bba2 Rover: move handling of RC Switches into RC_Channel
Rover: use base-class auxsw handling

Rover: factor out do_aux_function_change_mode

Rover: move mode number enumeration to be in Mode:: namespace

Rover: move mode switch handling to RC_Channel

Rover: rename control_modes.cpp to RC_Channel.cpp

Rover: move motor_active() to be a method on the motors class
2018-08-01 12:11:30 +09:00
Michael du Breuil
f4d2014b56 Rover: Update notify initilization 2018-08-01 09:22:09 +10:00
Randy Mackay
315a33ed10 Rover: 3.4.2 release notes 2018-07-30 14:37:55 +09:00
murata
c705d3d816 Rover: Modify indentation (NFC) 2018-07-30 08:17:53 +09:00
Ebin
6dcab4e87b Rover: support balance bot in AUTO mdoe 2018-07-28 08:44:18 +10:00
Randy Mackay
f7f4b43683 Rover: 3.4.2-rc1 release notes 2018-07-23 17:15:33 +09:00
Peter Barker
24ef1a61b3 Rover: remove old AP_Menu include 2018-07-23 14:20:22 +09:00
Randy Mackay
82aba6fe56 Rover: guided heading-and-speed control slows using yaw error 2018-07-18 15:11:09 +09:00
Randy Mackay
5dc4b8e66d Rover: guided mode slows to stopping point on init 2018-07-18 15:11:09 +09:00
Randy Mackay
77598f72d1 Rover: remove redundant set_steering calls from Guided
steering is centered within the stop_vehicle method
2018-07-18 15:11:09 +09:00
Randy Mackay
3b7e84ce7a Rover: calc_steering_to_heading updates yaw error
this allow the vehicle's speed to be reduced based on the heading error
2018-07-18 15:11:09 +09:00
Randy Mackay
84bda4e893 Rover: follow mode fixes and improvements
fix follow endless loop on enter
pass mavlink messages to AP_Follow
separate follow from guided
follow slows based on yaw error
check follow is enabled before entering follow mode
fix order in switch statement when converting from mode number to mode object
remove unused last_log_ms from follow mode
2018-07-18 15:11:09 +09:00
Ammarf
c0082271e6 Rover: implement Follow mode 2018-07-18 15:11:09 +09:00
Michael du Breuil
84f891c5b1 Rover: Remove unused ADC include 2018-07-17 09:29:50 +10:00
Andrew Tridgell
08da22c682 Rover: improved setup of output modes 2018-07-13 16:11:12 +09:00
Michael du Breuil
2b5aa9bc53 Rover: Remove usage of analogPinToDigitalPin 2018-07-11 23:09:52 -07:00
jeff567
200a644cfe Rover: fixes bug in rovers with pivot turning 2018-07-11 11:35:43 +09:00
Peter Barker
b62639e07c Rover: handle MAV_CMD_ACCELCAL_VEHICLE_POS in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker
0785e48718 Rover: handle command_int in base class 2018-07-06 09:43:09 +10:00
Peter Barker
1da3e8f182 Rover: handle command_long in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker
efdc13d143 Rover: remove pointless rangefinder_init shim function 2018-07-04 21:08:47 +01:00
Peter Barker
ca264b1932 Rover: use compass singleton for logging 2018-07-04 20:11:27 +01:00
Andrew Tridgell
8f94302348 Rover: removed unused macros 2018-07-04 20:05:10 +01:00
Ebin
07fc5c8349 Rover: removed min speed crash check for balance bot 2018-07-04 16:34:52 +09:00
Randy Mackay
eb58399d8b Rover: 3.4.1 release notes 2018-07-04 11:37:52 +09:00
Peter Barker
b38b9dc07c Rover: use ArmingMethod enumeration 2018-07-03 15:16:38 +10:00
Peter Barker
ea12f6caec Rover: use singletons in AP_Arming 2018-07-03 13:44:11 +10:00
Peter Barker
e1408696dc Rover: move mavlink reboot code up to base class 2018-07-03 12:12:25 +10:00
Randy Mackay
b9d8f53af2 Rover: correct object avoidance parameter descriptions 2018-06-29 14:56:33 +09:00
Ebin
96d4335765 Rover: Crash check based on angle for all rover frames 2018-06-28 21:55:20 +09:00
Ebin
04604ced33 Rover: BalanceBot.cpp renamed to balance_bot.cpp 2018-06-28 21:55:20 +09:00
Ebin
73e6ce18a0 Rover: Crash checks for Balance Bot 2018-06-28 21:55:20 +09:00
Ebin
2780d1715c Rover: balance bot pitch control added in all modes 2018-06-28 21:55:20 +09:00
Ebin
c65405541e Rover: balancing function call moved to manual mode update() 2018-06-28 21:55:20 +09:00
Ebin
6c2f18cc2f Rover: manual mode support for balancebot 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
Michael du Breuil
b5bc9e5147 Rover: Remove unneeded battery failsafe flag clearing 2018-06-27 11:39:35 +10:00
Raouf
9d51e87762 Rover: Save compass offsets when disarmed and learning is on 2018-06-26 08:51:16 +09:00
Peter Barker
3f0a56a818 Rover: use arming check_failed function 2018-06-23 15:33:19 +10:00
Andrew Tridgell
667ad98057 Rover: added ESC_TELEMETRY to mavlink streams 2018-06-21 10:48:02 +10:00
Peter Barker
87a3fcdd02 Rover: remove usb-mux checking
Nobody ever uses the result from this
2018-06-20 02:12:56 +01:00
Peter Barker
ab6cf171da Rover: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Randy Mackay
03babfdc3c Rover: fix RNGFND_TURN_ANGL param description again 2018-06-18 17:51:46 +09:00
Randy Mackay
9efa7ad635 Rover: fix RNGFND_TURN_ANGL range 2018-06-18 16:06:45 +09:00
Randy Mackay
acfbce95a6 Rover: update NTUN logging
reorder to allow easier comparing of adjacent fields
remove absolutes
rename fields
2018-06-18 10:25:56 +09:00
Peter Barker
9b269b1b56 Rover: use AP_RTC
Rover: AP_GPS now sets the system time directly
2018-06-15 08:01:22 +10:00
Randy Mackay
3ca520021b Rover: version to 3.4.2-dev 2018-06-12 20:57:25 +09:00
Randy Mackay
a566ad48e9 Rover: 3.4.1-rc1 release notes 2018-06-12 20:56:50 +09:00
Randy Mackay
c650c52577 Rover: 3.4.0 release notes 2018-06-12 18:20:11 +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
Michael du Breuil
c85f8c7bf5 Rover: Simplify radio trimming, improve MAVLink report 2018-06-11 16:29:36 -07:00
Randy Mackay
b69155793f Rover: add Log_Write_Depth 2018-06-12 08:29:08 +09:00
Randy Mackay
d34c87a457 Rover: alphabetise Log_Write methods 2018-06-12 08:29:08 +09:00
Randy Mackay
c51b38cd1c Rover: rename Log_Arm_Disarm to Log_Write_Arm_Disarm 2018-06-12 08:29:08 +09:00
Randy Mackay
10d89f1315 Rover: remove unimplemented Log_Write_Performance declaration 2018-06-12 08:29:08 +09:00
Randy Mackay
631d8f5423 Rover: accept do-change-speed commands with high speeds 2018-06-11 09:10:35 +09:00
Randy Mackay
a08a955cbc Rover: accept DO_CHANGE_SPEED commands 2018-06-11 09:10:35 +09:00
Randy Mackay
8464e82812 Rover: set_desired_speed range checks speed 2018-06-11 09:10:35 +09:00
Randy Mackay
c8f4227313 Rover: remove SPEED_TURN_GAIN
Loiter was the only mode using this, replaced with hardcoded gain.  The desired speed in Loiter also uses a hardcoded gain so this should work
2018-06-08 09:19:25 +09:00
Randy Mackay
645edf1f57 Rover: wp_overshoot used to limit speed in Auto
Limits desired speed to max possible given max lateral
acceleration and distance to line between waypoints
Replaces the use of SPEED_TURN_GAIN which scaled down speed
Also used in Guided, RTL, SmartRTL
2018-06-08 09:19:25 +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
Peter Barker
65b7ca3fbb Rover: factor out a do_aux_function_change_mode
Less code is good
2018-06-08 08:50:08 +09:00
Peter Barker
36705af8ff Rover: create an enumeration to hold vehicle mode constants
This gives us type-safety on the mode numbers.  This is advantageous as
some of these symbols exist with different values elsewhere in the code.
2018-06-08 08:41:16 +09:00
Michael du Breuil
cc772710ec Rover: Rework to support override changes 2018-06-05 09:51:09 +10:00
Michael du Breuil
0ad2750f55 Rover: Remove software type param 2018-06-05 09:14:12 +10:00
Peter Barker
424d243c7f Rover: move try_send_message handling of EKF_STATUS_REPORT up 2018-06-01 16:12:45 +01:00
Randy Mackay
c83ff0e156 Rover: 3.4.0-rc1 release notes 2018-06-01 16:40:54 +09:00
Randy Mackay
1e058045f7 Rover: guided mode more forgiving of set-position-targets type_mask field
accept position targets regardless of any other bit settings in type mask field.  This makes rover more forgiving of errors in the type_mask field.
2018-06-01 15:05:48 +09:00
Ammarf
26c25daa36 Rover: add support for lateral control input 2018-05-31 13:48:17 +09:00
Randy Mackay
73bdc3be09 Rover: set ahrs flyforward if thr over 15% for 2 seconds
or if throttle is positive and desired speed over 0.5m/s
2018-05-29 16:37:31 +09:00
Peter Barker
12853f8912 Rover: correct compilation for transitive include fail 2018-05-29 14:42:02 +10:00
Peter Barker
c99cc465e6 Rover: split home-set and home-locked state 2018-05-29 14:38:45 +10:00
Peter Barker
829d18874e Rover: create persist_streamrates() callback to indicate persistence 2018-05-29 13:08:29 +10:00
Peter Barker
9d83ee8cc7 Rover: move sending of vfr_hud up 2018-05-29 13:00:40 +10:00
Randy Mackay
70cef2f61e Rover: report set-attitude-target capability
rover accepts the set-attitude-target mavlink messages
2018-05-25 10:40:49 +09:00
Ammarf
b95ac72d35 Rover: add LOITER to ch7 options 2018-05-24 17:59:45 +09:00
Randy Mackay
e1d80e547d Rover: proximity sensor sets laser unhealthy when no data
previously it would set laser to unhealthy if proximity sensor wasn't present which interfered with a single downward facing range finder
2018-05-24 12:46:38 +09:00
Randy Mackay
60b9f6f9c0 Rover: report laser as healthy even if not used for avoidance
this allows downward facing lidar to be used on boats
2018-05-24 12:46:38 +09:00
Randy Mackay
51a0cbc1da Rover: loiter slows using attitude control get_desired_speed_accel_limit 2018-05-24 11:06:20 +09:00
Randy Mackay
fc35e74821 Rover: pass dt to attitude controller 2018-05-24 11:06:20 +09:00
Randy Mackay
444e64a3d0 Rover: slow before pivot turns 2018-05-24 11:06:20 +09:00
Peter Barker
8101f2b573 Rover: move sending of simstate up 2018-05-23 18:36:50 +10:00
Randy Mackay
24dd9a1c2c Rover: update GPS at 50hz 2018-05-23 17:17:29 +09:00
Randy Mackay
cc53b9c39d Rover: update current_loc in update_ahrs
this ensures the current_loc is updated before any of the flight mode code runs
2018-05-23 17:17:29 +09:00
Ammarf
d7821635c0 Rover: seperate acceleration/deceleration limits 2018-05-23 17:17:29 +09:00
Peter Barker
e377debf25 Rover: add type-correctness for stream messages 2018-05-22 11:21:25 +10:00
Peter Barker
3f4783fa5d Rover: move try_send_message of servo-output-raw up 2018-05-21 19:08:08 +01:00
Peter Barker
90124c20cb Rover: shorten time remaining in try_send_message
The scheduler table entry for retrying defered messages doesn't allow
enough time for try_send_messages to run.

This change makes the time-remaining requirement the same as Plane.
2018-05-21 18:16:56 +09:00
Ammarf
2d64a47f90 Rover: add pivot_turn_rate to g2 2018-05-21 09:48:43 +09:00
Peter Barker
1ecd371cd0 Rover: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK 2018-05-17 15:48:06 +01:00
Peter Barker
0e8f01021d Rover: remove arguments to send_home and send_ekf_origin 2018-05-17 20:42:36 +10:00
Peter Barker
3799a13bc3 Rover: move send_attitude up to GCS_MAVLINK 2018-05-17 18:28:43 +10:00
Peter Barker
c9d47c4ed5 Rover: move try_send_message sending of scaled_pressure up 2018-05-17 15:37:14 +10:00
Peter Barker
ace48d72b0 Rover: move try_send_message sending of sensor offsets up 2018-05-17 15:37:14 +10:00
Peter Barker
a37c8eae1f Rover: move try_send_message of RAW_IMU up to GCS_MAVLINK 2018-05-17 15:37:14 +10:00
Peter Barker
0d3051e46a Rover: handle setting of ekf origin in GCS_MAVLink 2018-05-17 10:13:42 +10:00
Peter Barker
a52f3d8f70 Rover: move Log_Write_Home_And_Origin into AP_AHRS 2018-05-17 10:13:42 +10:00
Michael du Breuil
dcb0a37643 Rover: AP_Proximity is now a common library 2018-05-16 23:21:41 +01:00
Michael du Breuil
dc5fae9ea6 Rover: Support rangefinder MAVLink changes 2018-05-16 23:21:41 +01:00
Randy Mackay
fb4dcc2458 Rover: 3.3.1-rc2 release notes 2018-05-12 17:57:09 +09:00
Peter Barker
3afe591368 Rover: correct compilation when logging is disabled 2018-05-10 17:55:13 +09:00
Randy Mackay
3d1c078a44 Rover: steering mode uses turn rate control when stopped 2018-05-10 08:02:13 +09:00
Randy Mackay
0a29e4eac5 Rover: fix calc-steering-to-waypoint go use real heading without reverse 2018-05-10 08:02:13 +09:00
Randy Mackay
3645e18243 Rover: acro and steering use get_pilot_desired_steering_and_speed 2018-05-10 08:02:13 +09:00
Randy Mackay
957458ca56 Rover: add get_pilot_desired_steering_and_speed
Also fix reversed steering response where throttle or acceleration limiting leads to throttle output being in the opposite direction from pilot's throttle input
2018-05-10 08:02:13 +09:00
Randy Mackay
ef2223a712 Rover: integrate attitude control change to steering output and scaling
steering output is always positive for clockwise
steering is scaled in motors library meaning we do not need to tell attitude controller about skid-steering or vectored-thrust
2018-05-10 08:02:13 +09:00
Randy Mackay
0830e057e0 Rover: manual mode outputs unscaled steering 2018-05-10 08:02:13 +09:00
Randy Mackay
6b6c0f04b6 Rover: get_pilot_desired_steering_and_throttle returns steering assuming positive is always clockwise 2018-05-10 08:02:13 +09:00
Randy Mackay
a061203eaf Rover: pass ground speed to motors lib for scaling of steering 2018-05-10 08:02:13 +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
Peter Barker
b38d23d542 Rover: move sending of battery data up 2018-05-09 11:40:31 -07:00
Peter Barker
a692acad81 Rover: move data stream send up 2018-05-09 16:15:38 +10:00
Peter Barker
a78fe0896f Rover: make scheduler track whether it has called the delay callback 2018-05-09 16:15:38 +10:00
Randy Mackay
468fc26e31 Rover: version to 3.4.0-dev 2018-05-09 13:32:50 +09:00
Randy Mackay
ef23672a76 Rover: 3.3.1-rc1 release notes fix
the pivot turn change was removed just prior to release
2018-05-09 13:11:29 +09:00
Randy Mackay
3860141da8 Rover: 3.3.1-rc1 release notes 2018-05-09 12:55:08 +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
40a8e0de09 Rover: default BRD_SAFETYOPTION to to allow disarming with safety switch 2018-05-09 08:02:21 +10:00
Peter Barker
121cfc5b4c Rover: AP_RSSI is included for all vehicles 2018-05-08 12:33:32 +01:00
Peter Barker
9e1811027d APMrover2: move try_send_message handling of RC_CHANNELS_RAW up 2018-05-08 12:33:32 +01:00
Peter Barker
1bc208584f Rover: move try_send_message of heartbeats up to GCS_MAVLINK 2018-05-07 11:30:13 -06:00
Peter Barker
25c2efb3ae Rover: move try_send_message handling of VIBRATION up 2018-05-07 11:23:28 -06:00
Randy Mackay
8108931ee0 Rover: 3.3.0 release notes 2018-05-07 17:35:50 +09:00
Andrew Tridgell
a575608110 Rover: fixed build warnings 2018-05-07 11:43:23 +10:00
Randy Mackay
c6638f66de Rover: Loiter mode for boats 2018-05-06 16:58:00 +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
c4804e4576 Rover: remove redundant avoidance call from steering 2018-05-06 16:58:00 +09:00
Peter Barker
0b1091231c Rover: remove rcmap member from AP_AdvancedFailsafe
Also correct constructor for barometer

Also make it compile again
2018-05-05 18:06:31 +09:00
Randy Mackay
feb9cfc390 Rover: reduce TURN_MAX_G default to 0.6 2018-04-26 14:17:04 +09:00
Andrew Tridgell
c941d72ad1 Rover: remove old pde file
this was here for upgrading very old MissionPlanner versions. We can
remove it now
2018-04-26 14:25:01 +10:00
Michael du Breuil
da9053655b Rover: Support new RC_Channels::read_input() 2018-04-26 08:00:09 +10:00
Randy Mackay
8119c537c7 Rover: integrate vectored thrust support 2018-04-24 19:57:19 +09:00
Randy Mackay
38b79cf0bc AP_MotorsUGV: support vectored thrust
steering scaled down as throttle increases
2018-04-24 19:57:19 +09:00
Randy Mackay
29e8866ea9 Rover: move avoidance into calc_throttle
also enable avoidance for steering and guided modes
2018-04-24 12:24:53 +09:00
night-ghost
2aee8d1018 APMrover2: devo telemetry support (RX705/707) 2018-04-24 10:44:28 +10:00
Randy Mackay
8fa1700d02 Rover: 3.3.0-rc1 release notes 2018-04-19 17:20:38 +09:00
Randy Mackay
87eef9051f Rover: increase default pivot turn angle to 60deg
pivoting at only 30degrees of error could lead to endless twitching back and forth for poorly tuned rovers
2018-04-19 16:32:48 +09:00
Peter Barker
d66cb1dda0 Rover: use AP_ServoRelayEvents singleton 2018-04-18 20:31:55 +09:00
Peter Barker
e73a02343a Rover: GPS now logs its own data 2018-04-18 13:50:55 +09:00
Daniel Widmann
572d9ba43b Rover: Allow switching to ACRO mode for skid steer rovers without GPS 2018-04-13 09:12:03 +09:00
Daniel Widmann
e782ce2b51 Rover: Allow ACRO mode for skid steer rovers without GPS 2018-04-13 09:12:03 +09:00
Peter Barker
63e8fffbe4 Rover: Baro does its own dataflash logging now 2018-04-12 19:12:12 +01:00
Michael du Breuil
05173f24c6 Rover: Use RC_Channels instead of hal.rcin 2018-04-11 21:47:07 +01:00
Michael du Breuil
3bad3b2e68 Rover: Check MANUAL_CONTROL target 2018-04-10 16:54:34 +01:00
Randy Mackay
da619e8aa6 Rover: 3.2.3 release notes 2018-04-09 09:04:30 +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
f7a168478d Rover: integrate attitude control's get_steering_out_heading 2018-04-05 12:14:59 +09:00
Randy Mackay
e8070a5cb3 Rover: pass waypoint radius to L1 as min dist along track 2018-04-05 12:14:59 +09:00
Randy Mackay
41bd79a387 Rover: pivot-turn uses heading controller 2018-04-05 12:14:59 +09:00
Peter Barker
e74d07ff15 Rover: remove wrapper for Log_Write_Beacon 2018-04-04 16:20:33 +09:00
Francisco Ferreira
b2af1f1e05
Rover: fix method shadowing 2018-04-03 16:29:33 +01:00
Peter Barker
a45e3cba15 Rover: factor vehicle's mavlink send_heartbeat 2018-04-03 13:05:19 +01: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
b9e32d1f44 Rover: reduce expected times in scheduler table 2018-04-03 08:40:31 +09:00
Peter Barker
c10f404b12 Rover: tidy handling of barometer calibrations 2018-04-02 23:25:05 +01:00
Peter Barker
b407a4eed8 Rover: move common calibration functions up 2018-04-02 23:25:05 +01:00
Peter Barker
762b31b147 Rover: create a preflight calibration function
Some functionality has moved up.
2018-04-02 23:25:05 +01:00
Peter Barker
db7ce9aba2 Rover: use ahrs singleton for SmartRTL 2018-04-02 17:16:02 +01:00
Randy Mackay
39bade1f4a Rover: 3.2.3-rc2 release notes 2018-04-02 12:01:45 +09:00
Randy Mackay
c923158cc9 Rover: 3.2.3-rc1 release notes 2018-04-02 11:11:13 +09:00
nicknunno
8888adbfd4 Rover: TURN_MAX_G param desc update for range and increment 2018-04-02 09:13:25 +09:00
Michael du Breuil
b761a57da3 Rover: Support new battery interface 2018-03-27 22:12:21 +01:00
Peter Barker
57ed822db0 Rover: allow DataFlash to handle log sending 2018-03-26 09:22:47 +09:00
Peter Barker
3c58eca0ab Rover: move handling of visual odometry messages up 2018-03-23 09:28:07 +09:00
Randy Mackay
96ae9cef14 Rover: send correct mav-type for boats 2018-03-22 09:11:52 +09:00
Randy Mackay
489551c9a4 Rover: 3.2.2 release notes 2018-03-19 19:11:53 +09:00
Peter Barker
bb7bed0614 Rover: move handling of get_home_position up 2018-03-19 10:32:37 +09:00