Commit Graph

1895 Commits

Author SHA1 Message Date
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
Peter Barker 7fd859da65 Plane: move home state into AP_AHRS 2018-03-19 10:32:37 +09:00
Peter Barker 9d0da4a71f Rover: move home state into AP_AHRS 2018-03-19 10:32:37 +09:00
Peter Barker ceb64fb7d9 Rover: use ins singleton 2018-03-16 00:37:35 -07:00
Randy Mackay 30ba463f42 Rover: minor comment fix to acro
non-functional change
2018-03-15 09:58:24 +09:00
Randy Mackay 00353c7a06 Rover: avoid divide by zero in desired speed at waypoint calcs 2018-03-14 12:40:04 +09:00
Randy Mackay 86c39c0314 Rover: run update_mission at 50hz 2018-03-14 12:40:04 +09:00
Randy Mackay 343d119726 Rover: wp nav uses stopping point or prev wp for origin 2018-03-14 12:40:04 +09:00
Randy Mackay 073d9519ca Rover: version to ArduRover V3.3.0-dev 2018-03-12 16:11:37 +09:00
Randy Mackay e3f70119fe Rover: fix two-paddle input decoding
steering output was twice what it should be.  full steering (i.e. 4500 or -4500) should occur when one paddle is up and the other is completely down
2018-03-12 14:39:13 +09:00
Peter Barker 81ba037582 Rover: use baro singleton 2018-03-08 21:20:05 -08:00
Peter Barker 1f772c05f4 Rover: delete correct assignment operator 2018-03-08 21:20:05 -08:00
Randy Mackay dcfe104163 Rover: reduce CRUISE_SPEED default to 2m/s
based on user logs most rovers max speed is less than 4m/s so this default is closer to the average
2018-03-09 13:19:21 +09:00
Randy Mackay 1baa6eb049 Rover: 3.2.2-rc1 release notes 2018-03-08 16:24:03 +09:00
Randy Mackay 4e8399ca3f Rover: acro and steering steer even with target speed of zero 2018-03-08 14:45:43 +09:00
Peter Barker 78ecf55fec Rover: use AP::ahrs() for GCS_MAVLink 2018-03-07 12:34:39 +00:00
night-ghost bab54ea647 Rover: allow AP_Stats to be optional 2018-03-02 07:23:35 +11:00
Andrew Tridgell f190ca0867 Rover: use scheduler.get_last_loop_time_s() 2018-02-13 17:15:05 +11:00
Peter Barker 90d26a5100 Rover: eliminate perf_update scheduler table shim 2018-02-13 17:15:05 +11:00
Andrew Tridgell 80c45a7431 Rover: use filtered loop time 2018-02-13 17:15:05 +11:00
Peter Barker 7b6bc4adf1 Rover: pass log-performance-bit at init time rather than update time 2018-02-13 17:15:05 +11:00
Peter Barker 55c27dfc56 Rover: move logging of PM messages to AP_Scheduler 2018-02-13 17:15:05 +11:00
Peter Barker b2e2b91d7e Rover: move PERF: statustext sending into AP_Scheduler 2018-02-13 17:15:05 +11:00
Peter Barker d9bb546048 Rover: use AP_Scheduler's loop() function 2018-02-13 17:15:05 +11:00
Peter Barker 211e7416a9 Rover: use scheduler ticks in place of mainloop_count 2018-02-13 17:15:05 +11:00
Peter Barker 9511e72113 Rover: use PerfInfo for performance monitoring 2018-02-13 17:15:05 +11:00
Randy Mackay 24b8ed48b6 Rover: global-pos-int uses vel from EKF instead of GPS 2018-02-13 08:52:48 +09:00
Randy Mackay f47e65822f Rover: fix global-pos-int velocity direction to NED 2018-02-13 08:52:48 +09:00
Peter Barker df304c5e6b Rover: remove shims used in scheduler table 2018-02-12 15:39:26 +09:00
Peter Barker 89c830e949 Rover: make SmartRTL mode decide whether to save position or not
This changes things to work like the Copter equivalent
2018-02-12 15:39:26 +09:00
Andrew Tridgell 65308f9411 Rover: removed compass learn_offsets() 2018-02-08 17:36:33 +11:00
Randy Mackay 0da8ff6b2e Rover: boats always navigate when outside waypoint radius 2018-02-07 07:33:11 +09:00
Michael du Breuil 2e9e91b3a3 Rover: Move battery logging to AP_BattMonitor 2018-02-06 00:11:32 +00:00
murata e94bfc7ee0 Rover: delete \n from the log using gcs().send_text 2018-02-02 09:38:36 +09:00
Randy Mackay 0626d105ed Rover: version 3.2.1-dev fix 2018-01-29 19:37:46 +09:00
Randy Mackay b459e7fa7f Rover: 3.2.1 release notes 2018-01-29 19:35:46 +09:00
Randy Mackay a6ff2cacdd Rover: 3.2.1-rc1 release notes 2018-01-24 12:09:54 +09:00
Randy Mackay a5d7b8bb19 Rover: remove unused definition 2018-01-23 15:52:39 +09:00
Randy Mackay 2748d4d0fe Rover: arming checks for GPS use requires_position and velocity 2018-01-23 11:27:56 +09:00
Randy Mackay 9cba1e2907 Rover: gps check replaced by requires-position, requires-velocity
requires_gps is replaced by requires_position and requires_velocity
enter_gps_checks method is removed and enter method directly checks ekf flags and ekf origin
2018-01-23 11:27:56 +09:00
Randy Mackay 509c7e2a8f Rover: add object avoidance to steering and acro modes 2018-01-22 17:18:41 +09:00
Randy Mackay 2320bfb637 Rover: add AC_AttitudeControl to build
This is required only because the static function sqrt_controller is within this library.
2018-01-22 17:18:41 +09:00
Randy Mackay 489c42bdff Rover: add avoidance library 2018-01-22 17:18:41 +09:00
khancyr 5503a0069d Rover: add proximity library 2018-01-22 17:18:41 +09:00
khancyr c3fb985ec5 Rover: add fence support 2018-01-22 17:18:41 +09:00
Dylan Herman c14af79975 Rover: now sends SCALED_PRESSURE msg 2018-01-22 10:04:57 +09:00
Dylan Herman 9d7eb188d1 Rover: enter Hold on failure to enter RTL fs action 2018-01-19 09:26:45 +09:00
Dylan Herman f3b794f698 Rover: Add SmartRTL failsafe action
Add failsafe actions SmartRTL or RTL and SmartRTL or Hold
2018-01-19 09:26:45 +09:00
Randy Mackay 6ce9b47807 Rover: calc_speed_nudge honours max speed even in reverse
calc_speed_nudge allows the pilot to increase the speed of the vehicle including cases when the vehicle is in reverse.  This fixes the nudging code so the pilot-nudged throttle does not surpass the vehicle's maximum speed even in reverse.
Thanks to  pavloblindnology for finding this!
2018-01-19 09:23:33 +09:00
Dylan Herman 3edaff0309 Rover: sets SmartRTL home after ahrs home is set
Now uses AP_SmartRTL::set_home. It is called when arming and when GCS
requests home to be set to the current location
2018-01-17 11:03:56 +09:00
Randy Mackay ed452c6a27 Rover: version to 3.2.1-dev
this helps us easily determine if developer versions are from before or after the 3.2 release
2018-01-13 17:53:18 +09:00
Randy Mackay a3b667ea24 Rover: 3.2.0 release notes 2018-01-13 15:28:58 +09:00
Randy Mackay e2824be250 Rover: add const and comments to calc_speed_max 2018-01-12 08:15:34 +09:00
Randy Mackay 5cd500847b Rover: rename auto_throttle to allows_arming_from_transmitter
This method is only used to determine whether we can arm from the transmitter so better to make its purpose more clear
Also minor comment fix to is_autopilot_mode method
2018-01-12 08:15:34 +09:00
Randy Mackay 5167ec7708 Rover: send PID to GCS regardless of mode
Also add some comments
2018-01-12 08:15:34 +09:00
Randy Mackay 5a5be9175d Rover: 3.2.0-rc4 release notes 2018-01-05 14:02:01 +09:00
Randy Mackay 072b5187a3 Rover: steering mode reversing fix 2018-01-05 10:23:20 +09:00
Randy Mackay 916fe80000 Rover: remove mode class's desired-lat-accel
This was a duplicate of the value held in the attitude controller
2018-01-05 09:27:53 +09:00
Randy Mackay 49493fe6a2 Rover: add calc_steering_to_heading
removes some duplicate code in Guided and Auto
2018-01-05 09:27:53 +09:00
Randy Mackay dc283e9c26 Rover: re-order calc_steering declarations to match .cpp file 2018-01-04 14:07:55 +09:00
Peter Barker 1d3e7d454a Rover: correct gps-is-healthy mode change check 2017-12-28 15:35:19 +00:00
Peter Barker 7cf2712bf1 Rover: AP_AHRS no longer requires GPS in constructor 2017-12-27 00:58:02 +00:00
Randy Mackay 457c39bf1b Rover: FS_ param values changed to camel case
Also minor comment change in crash-check failsafe
2017-12-23 13:53:34 +09:00
Randy Mackay 241456f55f Rover: remove auto trim at startup
Also add additional checks to auto trim
2017-12-15 20:26:40 +09:00
Randy Mackay 6459a4de9d Rover: gyro health check uses initialised flag
We should not be relying on the notify flags as a way to pass info around the system.  Rover's initialised flag is equivalent and more appropriate.
2017-12-15 20:26:40 +09:00
Randy Mackay a8da459baf Rover: GPS reported healthy to GCS even without lock
a GPS is unhealthy when it cannot be contacted.  Not having a 3D lock should not make the GPS unhealthy.
2017-12-15 20:26:40 +09:00
Peter Barker bce9a40ab5 Rover: remove unimplemented methods 2017-12-15 13:27:14 +09:00
Andrew Tridgell 482ae876fb Rover: removed create() method for objects
See discussion here:

  https://github.com/ArduPilot/ardupilot/issues/7331

we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach

Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Randy Mackay f6f40afcda Rover: rename control_mode_from_num to mode_from_mode_num 2017-12-12 10:39:26 +09:00
Randy Mackay c17549c7ff AP_Arming: integrate pre arm check if regular and skid steering configured 2017-12-11 11:56:12 +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 5d7e3d31c9 Rover: PM log message more consistent with Plane 2017-12-09 16:23:16 +09:00
Randy Mackay 4958298a75 Rover: fix auto mode distance_to_destination 2017-12-09 12:52:35 +09:00
Randy Mackay de196f818d Rover: log STER dataflash message regardless of mode
It is useful to at least have the pilot's steering in request even in manual modes
2017-12-09 12:18:49 +09:00
Randy Mackay 5f62cde550 Rover: remove throttle from NTUN logging
Throttle is more extensively logged in the THR message
2017-12-09 12:18:49 +09:00
Randy Mackay 9710b16cac Rover: THR dataflash logging replaces CTUN 2017-12-09 12:18:49 +09:00
Randy Mackay efae648461 Rover: STR dataflash logging gets turn rate
also get turn rate and lat accel from attitude controller
2017-12-09 12:18:49 +09:00
Randy Mackay 8e80490098 Rover: reporting gets lat accel from attitude control 2017-12-09 12:18:49 +09:00
Randy Mackay b778546eda Rover: rename mode lateral acceleration and make private 2017-12-09 12:18:49 +09:00
Randy Mackay df81f666df Rover: fix LOG_BITMASK parameter description 2017-12-09 12:18:49 +09:00
Randy Mackay 34c2fba9a7 Rover: boats stay active at destination in guided, rtl, smartrtl 2017-12-08 08:48:05 +09:00
Randy Mackay 8eb991b610 Rover: boats say active at destination in auto
previously the user would use the LOITER_UNLIMITED or LOITER_TIME mission commands to specify that the vehicle should remain active at the destination.  This was cumbersome and not the best way to specify this behaviour because these two commands are valid for regular rovers that should not try to remain active at the destination.
2017-12-08 08:48:05 +09:00
Randy Mackay aa38239629 Rover: add FRAME_CLASS to differentiate boats from rovers 2017-12-08 08:48:05 +09:00
Randy Mackay 57067fb8bc Rover: add WP_SPEED and RTL_SPEED
This separates the default/maximum speed used in Auto, Guided, RTL and SmartRTL from the CRUISE_SPEED which is used as the base for the speed-to-throttle controller (along with CRUISE_THROTTLE)
2017-12-07 07:29:10 +09:00
Randy Mackay 22ef276484 Rover: add const to mode::speed_error 2017-12-07 07:29:10 +09:00
Randy Mackay 8f08f5189a Rover: constify some temporary variables 2017-12-07 07:29:10 +09:00
Randy Mackay 5dabb37834 Rover: 3.2.0-rc3 release notes 2017-12-05 20:57:27 +09:00
Randy Mackay bccdb4e195 Rover: hold mode does not require GPS
If armed without GPS, the user was unable to enter hold mode
2017-12-05 20:26:38 +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 988e4290dd Rover: formatting and comments for set-position-target handling 2017-12-05 12:15:33 +09:00
Randy Mackay 1d92ec5724 Rover: set-position-target message processing only checks xy fields 2017-12-05 12:15:31 +09:00
khancyr 9299943347 Rover: adjust setpoint_velocity handling 2017-12-05 12:14:46 +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 865fb91676 Rover: add rpm to WENC dataflash logging 2017-12-04 09:53:06 +09:00
Peter Barker 1d2ec9054b Rover: tighten return types of mavlink functions and variables 2017-12-01 17:01:10 +00:00
Randy Mackay 0c6afac5c6 Rover: allow mode to be set from ch7 switch 2017-12-01 21:59:55 +09:00
Randy Mackay ed558dd9a0 Rover: play sad tune when arming fails 2017-12-01 21:59:55 +09:00
Randy Mackay b4a779aec3 Rover: add arm/disarm to ch7 switch 2017-12-01 21:59:55 +09:00
Randy Mackay 8eb58b266a Rover: remove unused failsafe_throttle_suppress method 2017-12-01 21:59:55 +09:00
Randy Mackay 8043c0f638 Rover: reduce arming delay to 2 sec 2017-12-01 21:59:55 +09:00
Peter Barker e38cefea8a Rover: add SmartRTL mode
called at 3hz from scheduler
2017-12-01 09:28:56 +09:00
Randy Mackay 86ce3f2b32 Rover: add SmartRTL library to build 2017-12-01 09:28:56 +09:00
Randy Mackay 9f94875228 Rover: mode class gets set_desired_location_NED 2017-12-01 09:28:56 +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
Peter Barker 5612292802 Rover: allow vehicle to be armed in manual with no GPS 2017-11-30 15:41:50 +09:00
Peter Barker 1a59b38204 Rover: use throttle rather than steering to determine target speed 2017-11-30 15:37:40 +09:00
Peter Barker 68800a52f5 Rover: move RC failsafe check up
Both steering and acro modes can benefit from this check
2017-11-29 17:35:44 +09:00
Randy Mackay 69dc68d621 Rover: re-order acro mode to add early return
non-functional change
2017-11-29 14:03:43 +09:00
Randy Mackay 060f1d36dd Rover: allow aux switch to record waypoints when not in auto-mode
this reduces the changes required when adding new modes
2017-11-29 14:03:43 +09:00
Peter Barker 45d76bdf25 Rover: add name4() to Mode and use it for AP_Notify calls 2017-11-29 14:03:43 +09:00
Randy Mackay 04e9228fa0 Rover: add Acro mode
ACRO_TURN_RATE allows user control of maximum turn rate
2017-11-29 14:03:43 +09:00
Randy Mackay 5b7cd31221 Rover: send steering PID tuning to GCS in most modes
Using manual_steering and auto_throttle is not perfectly correct because we will send steering rate PID info in HOLD mode but will not send throttle PID info in Steering mode
2017-11-29 09:38:53 +09:00
Randy Mackay 26f50f6055 Rover: PILOT_STEER_TYPE replaces SKID_STEER_IN
new options allow controlling vehicle's heading while reversing
skid-steering vehicles rotate in opposite direction when backing up
2017-11-29 09:38:53 +09:00
Randy Mackay c6689fd2e1 Rover: rename calc_nav_steer to calc_steering_from_lateral_acceleration
rename calc_lateral_acceleration to calc_steering_to_waypoint
calc_steering_to_waypoint internally calls calc_steering_from_lateral_acceleration
non-functional change
2017-11-28 11:46:21 +09:00
Randy Mackay fa7c56a110 Rover: minor comment fix 2017-11-28 10:38:19 +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
Andrew Tridgell 01c4e51d08 Rover: don't disable compass on one bad reading
the compass can go back for a short time and recover

found by Michael
2017-11-28 09:02:24 +11:00
Randy Mackay a7fd353f14 Rover: add comment to unused param enum entries 2017-11-27 20:40:35 +09:00
Randy Mackay 6d805b64b6 AP_MotorsUGV: remove access to enable/disable throttle slewing 2017-11-27 14:31:20 +09:00
Randy Mackay 23028a659b Rover: slew throttle in all modes 2017-11-27 14:31:20 +09:00
Randy Mackay 822c4b6dca Rover: remove set of slew for motor test
The motor library test function does not attempt to implement slewing so setting this is not necessary
2017-11-27 14:31:20 +09:00
Randy Mackay cab972a429 Rover: reduce TURN_MAX_G default to 1.0
This is probably still slightly too high but closer than the previous 2.0
2017-11-27 12:25:28 +09:00
Peter Barker 9272c10043 Rover: use short descriptions for mission item types 2017-11-27 10:28:24 +09:00
Randy Mackay b60cb536ab Rover: RTL within auto mode 2017-11-23 10:20:19 +09:00
Randy Mackay 14d9e932ab Rover: allow disarming from transmitter on skid-steering vehicles 2017-11-23 09:07:04 +09:00
Peter Barker bf6b3a72bc Rover: support for units on fields 2017-11-23 10:40:30 +11:00
khancyr 279a57dc10 APMrover2: fix servo_out to GCS message 2017-11-21 20:23:55 +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
Peter Barker c00a4f3bb2 Rover: AP_Camera uses GPS singleton 2017-11-16 15:28:37 +00:00
Peter Barker baf82cec22 Rover: use gps singleton for GCS functions 2017-11-15 13:43:03 +00:00
khancyr c08203de17 Rover: allow pivot turn in STEERING mode 2017-11-15 13:46:58 +09:00
André Kjellstrup aab22d7dad Rover: Option to trig by distance only when in AUTO mode 2017-11-14 00:10:22 +00:00
Randy Mackay 7e2214c2be Rover: simplify logic for lateral-accel override during use-pivot-steering
It was theoretically possible that the lateral-acceleration would not be overwritten if the yaw-error-cd was exactly zero
2017-11-08 17:15:59 +09:00
khancyr 2b0645d6a1 Rover: get_throttle_out calls do not require skid-steering arg 2017-11-08 15:45:43 +09:00
Daniel Widmann bc7cf97b4e Rover: don't use GPS speed to detect reversing
instead pass reverse to attitude controller based on desired speed
2017-11-08 14:37:59 +09:00
Daniel Widmann ac7e76cc43 Rover: enable pivot turns in auto mode 2017-11-08 14:35:00 +09:00
Pierre Kancir 4d38eb85a1 APMRover2: Add support of MANUAL_CONTROL msg 2017-10-31 09:31:05 +09:00
Randy Mackay 7fb4f17ad9 Rover: 3.2.0-rc2 release notes 2017-10-28 15:16:11 +09:00
Peter Barker 2d0a23fcc8 Rover: call ins's periodic function 2017-10-27 16:33:45 +11:00
khancyr 74d5767e25 Rover: Fix slew rate range 2017-10-26 19:44:43 +09:00
Randy Mackay 2ef1e8e4c2 Rover: fix PID desired and achieved reporting 2017-10-26 19:44:18 +09:00
Randy Mackay ea70755f00 Rover: fix speed nudge
fix bug when target speed was exactly zero which caused nudge to be a large negative value
2017-10-26 19:44:07 +09:00
Randy Mackay fb9f695d2f Rover: fix use-pivot-steering
absolute yaw error should be used
2017-10-26 19:43:55 +09:00
Randy Mackay fb944322c7 Rover: minor fix to disarm logic
check should use logical and instead of bitwise and
2017-10-26 19:43:48 +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
Tom Pittenger f7d07fc146 Rover: always log MODE and include reason when logging is enabled 2017-10-25 21:18:29 +11:00
Andrew Tridgell f25e8631ef Rover: support simple accelcal 2017-10-10 10:57:38 +11:00
Michael du Breuil 4f83d39b5e Rover: Report GPS health 2017-09-27 19:29:32 +01:00
Lucas De Marchi e98ccb9ae6 ArduRover: use static method to construct controllers 2017-09-26 03:01:21 +01:00
Lucas De Marchi bfd13dfe87 global: use static method to construct AP_AHRS_DCM 2017-09-26 03:01:21 +01:00
Lucas De Marchi beabae6a98 global: use static method to construct AP_AHRS_NavEKF 2017-09-26 03:01:21 +01:00
Lucas De Marchi c9fbf7b722 global: use static method to construct AP_NavEKF3 2017-09-26 03:01:21 +01:00
Lucas De Marchi e2fe36357a global: use static method to construct AP_NavEKF2 2017-09-26 03:01:21 +01:00
Lucas De Marchi eadd650d78 global: use static method to construct AP_RSSI 2017-09-26 03:01:21 +01:00
Lucas De Marchi 18aa88b329 global: use static method to construct AP_Mount 2017-09-26 03:01:21 +01:00
Lucas De Marchi c3647f0185 global: use static method to construct AP_Camera 2017-09-26 03:01:21 +01:00
Lucas De Marchi cc53e7bc4b global: use static method to construct AP_ServoRelayEvents 2017-09-26 03:01:21 +01:00
Lucas De Marchi 13d7f58036 global: use static method to construct AP_Relay 2017-09-26 03:01:21 +01:00
Lucas De Marchi 9ce6019138 global: use static method to construct AP_Frsky_Telem 2017-09-26 03:01:21 +01:00
Lucas De Marchi b022c02029 global: use static method to construct AP_BattMonitor 2017-09-26 03:01:21 +01:00
Lucas De Marchi 69b6d95cb2 global: use static method to construct AP_Board_Config{,_CAN} 2017-09-26 03:01:21 +01:00
Lucas De Marchi a74e700006 global: use static method to construct RCMapper 2017-09-26 03:01:21 +01:00
Lucas De Marchi 72fd2d6f05 global: use static method to construct AP_SerialManager 2017-09-26 03:01:21 +01:00
Lucas De Marchi fbe0d9761c global: use static method to construct AP_OpticalFlow 2017-09-26 03:01:21 +01:00
Lucas De Marchi 5ec1430726 APMrover2: use static method to construct AP_Arming_Rover 2017-09-26 03:01:21 +01:00
Lucas De Marchi b36a5919f5 global: use static method to construct AP_Mission
This also move the initialization to be in the header for those that
weren't already to maintain consistency.
2017-09-26 03:01:21 +01:00
Lucas De Marchi 40fd1b346c global: remove rangefinder from AP_AHRS_NavEKF
AP_AHRS_NavEKF doesn't use the rangefinder, it just delegates the
calls to the right estimator.

For libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp the initialization
order has also been modified to match the order on vehicles. It's more
correct since it passes a reference when EKF2/EKF3 are already
constructed, while thos constructors use a pointer.  Ideally these
should be moved to an init() method though, or use a get_instance().
2017-09-26 03:01:21 +01:00
Lucas De Marchi 9027a55696 global: use static method to construct RangeFinder 2017-09-26 03:01:21 +01:00
Lucas De Marchi f5c2ffffb9 global: remove DataFlash from AP_Mount::init() 2017-09-26 03:01:21 +01:00
Lucas De Marchi 53c82b4aaf global: use static method to construct DataFlash_Class 2017-09-26 03:01:21 +01:00
Lucas De Marchi 62ac0ab8aa global: use static method to construct AP_Notify 2017-09-26 03:01:21 +01:00
Lucas De Marchi de680dac5b global: use static method to construct AP_Scheduler 2017-09-26 03:01:21 +01:00
Lucas De Marchi 8094482f21 global: use static method to construct AP_GPS 2017-09-26 03:01:21 +01:00
Lucas De Marchi 87b30b4552 global: use static method to construct AP_InertialSensor 2017-09-26 03:01:21 +01:00
Lucas De Marchi c1a957fbf3 global: use static method to construct Compass 2017-09-26 03:01:21 +01:00
Lucas De Marchi 91feec0e14 global: use static method to construct AP_Baro 2017-09-26 03:01:21 +01:00
Lucas De Marchi ad05e0a643 APMrover2: protect version.h from inclusion and use ap_version.h 2017-09-23 21:37:45 -07:00
Lucas De Marchi 27be369be7 APMrover2: do not include version.h/ap_version.h
The interface provided by each vehicle should be used to get the
version.
2017-09-23 21:37:45 -07:00
Lucas De Marchi 0c49b7a973 APMrover2: move version to a static member
We should never include version.h or ap_version.h headers directly
on a header since this will trigger a complete rebuild of the
codebase when we commit to the repository. The ap_version.h header
is auto-generated containing information from the current commit.

If we include it in a header, every other file that ends up including
that header (directly or indirectly) will need to be rebuilt. No
ccache's cache beats having to do nothing when the header is just
not included.

version.h contains information that is kept on a struct inside
each vehicle. Rather than using the macros from each vehicle,
the getter should be preferred, which returns an AP_FWVersion
referente.
2017-09-23 21:37:45 -07:00
Randy Mackay 3af5893f9e Rover: command-long DO_SET_HOME check first param is zero 2017-09-20 12:14:38 +09:00
Randy Mackay f7cb006d40 Rover: accept DO_SET_HOME within COMMAND_INT 2017-09-20 12:14:38 +09:00
Randy Mackay b1684b5377 Rover: accept more mav-frame types
accept mav frames whether or not they have _INT appended
2017-09-20 12:14:38 +09:00
Peter Barker b84e40a804 Rover: move handling of SET_GPS_GLOBAL_ORIGIN up 2017-09-19 15:44:23 +09:00
Randy Mackay 4899401679 Rover: minor comment fix 2017-09-19 10:30:15 +09:00
Randy Mackay de406da254 Rover: set home using EKF position
previously the home position could be set from DCM
This makes the setting of home slower but more accurate
2017-09-19 10:30:15 +09:00
Randy Mackay 894bf2a23f Rover: support SET_GPS_GLOBAL_ORIGIN message 2017-09-19 10:30:15 +09:00
Peter Barker add5eb6907 Rover: remove old DO_SET_MODE support
We no longer support setting modes except via custom-modes
2017-09-19 01:24:11 +01:00
Peter Barker 25a32c93f2 Rover: move gcs_out_of_time into GCS object 2017-09-12 18:28:07 +01:00
Peter Barker b5d234aa64 Rover: handle param_request_list in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker 640b2b7a13 Rover: handle param_set in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker 85ac69f701 Rover: move send_autopilot_request calls up to GCS base class 2017-08-30 15:54:46 +01:00
Peter Barker d98c427514 Rover: add constant structure holding firmware version 2017-08-30 15:54:46 +01:00
khancyr 2be28ddb1e Rover: fixup cpu failsafe
remove copying of rc input to servo output
disarm after 2 seconds
2017-08-26 13:13:18 +09:00
Randy Mackay d525c0bffb Rover: 3.2.0-rc1 release notes 2017-08-25 14:50:48 +09:00
Randy Mackay 78a5e4500f Rover: send GCS warning when cruise learning fails to start
Also const-ified some variables, added some brackets and comments
2017-08-25 14:05:23 +09:00
Randy Mackay 1600823b12 Rover: aux switch to learn cruise throttle and speed 2017-08-25 14:05:23 +09:00
Randy Mackay 14c74a5967 Rover: remove learning mode
saving waypoints can be done in manual or steering mode
2017-08-25 14:05:23 +09:00