Commit Graph

1114 Commits

Author SHA1 Message Date
Randy Mackay
492fe40f93 Rover: re-organise private member declarations
declarations are grouped by file (which are in turn organised alphabetically) and in the order they appear within each file
non-functional change
2017-08-15 20:47:19 +09:00
Randy Mackay
6c7db05207 Rover: re-organise includes
non-functional change
2017-08-15 20:47:19 +09:00
Randy Mackay
06a7e46447 Rover: remove PID from build 2017-08-15 20:47:19 +09:00
Randy Mackay
95c5ada3e9 Rover: modes use stop_vehicle to stop gently
modes slow to a stop instead of immediately setting motors to zero
vehicle centers steering when stopping
2017-08-15 20:47:19 +09:00
Randy Mackay
0b917cfd36 Rover: mode auto guided and rtl slow before destination
new mode class member _desired_speed_final holds target speed at destination

main vehicle code passes heading to next waypoint into auto mode.
we do not provide heading when delaying at waypoint which signals we wish

auto-mode calculates final speed at destination which allows vehicle to
make turn within value of WP_OVERSHOOT parameter assuming vehicle turns at
maximum lateral acceleration.
2017-08-15 20:47:19 +09:00
Randy Mackay
d99108f3bc Rover: use AR_AttitudeControl for throttle control
also direct throttle nudge replaced with speed nudge
calc_speed_max estimates vehicle's top speed based on cruise-speed and
cruise-throttle
steering mode now provides total target speed instead of using speed plug
throttle nudge
motor limits provided to attitude control to stop i-term buildup
uses negative desired speed instead of reversed flag
reporting to GCS uses new throttle controller
braking is simply enabled and allows a reverse motor output regardless of vehicle
speed
2017-08-15 20:47:19 +09:00
Randy Mackay
61d1ced7aa Rover: add turn radius param for steering mode
removes reliance on old steerController
2017-08-15 20:47:19 +09:00
Randy Mackay
9097269d6d Rover: use AR_AttitudeControl for steering control 2017-08-15 20:47:19 +09:00
Randy Mackay
c56d8cb6b1 Rover: add AC_PID and AR_AttitudeControl to build 2017-08-15 20:47:19 +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
Peter Barker
fa2b500e93 Rover: remove CLI 2017-08-14 10:23:50 +09:00
Randy Mackay
59a1f260d1 Rover: remove unused compat.h 2017-08-12 14:46:46 +09:00
Randy Mackay
b895da64e1 Rover: minor comment fix to parameters list 2017-08-12 14:46:19 +09:00
Randy Mackay
e79e92a789 Rover: remove unused SPEED_TURN_DIST parameter 2017-08-12 13:58:35 +09:00
Randy Mackay
28d74722bd AP_MotorsUGV: minor formatting fix 2017-08-12 13:34:27 +09:00
Randy Mackay
bff74115bc Rover: remove unused distance_past_wp 2017-08-12 13:05:01 +09:00
Randy Mackay
a00c7e0acb Rover: mode calc_reduced_speed_for_turn gets some const for local variables 2017-08-12 12:29:13 +09:00
Randy Mackay
66bb3e8ee0 Rover: minor formatting fix to parameters.cpp 2017-08-12 12:14:54 +09:00
Peter Barker
edab526b01 Rover: send gps messages as separate queued messages 2017-08-09 16:18:22 +01:00
Peter Barker
f7fd663f45 Rover: move sending of gps_raw up 2017-08-09 16:18:22 +01:00
Peter Barker
89a5272ab5 Rover: move sending of system_time up 2017-08-09 16:18:22 +01:00
Peter Barker
341a9ae032 Rover: move sending of camera_feedback up 2017-08-09 16:18:22 +01:00
Peter Barker
ece800ba90 Rover: move sending of meminfo up 2017-08-09 16:18:22 +01:00
Peter Barker
c642dc616a Rover: use new retry_deferred method 2017-08-05 23:14:18 +01:00
khancyr
6b429bd372 Rover: remove redundant GPS check before camera update
this same check is included within AP_Camera
2017-08-05 17:05:19 +09:00
khancyr
7c3374668e Rover: formatting fixes and const local variables 2017-08-05 17:05:00 +09:00
khancyr
848df551ac Rover: formatting and comment fixes to mode class 2017-08-05 17:02:52 +09:00
Randy Mackay
efc790a84a Rover: add comment to mode 2017-08-05 11:20:58 +09:00
Randy Mackay
30852d4713 Rover: auto-reversed moved to mode 2017-08-05 11:20:58 +09:00
Randy Mackay
4f5e82f406 Rover: mode fixes for reversing 2017-08-05 11:20:58 +09:00
Randy Mackay
66f1437e4f Rover: remove unused throttle variable 2017-08-05 11:20:58 +09:00
Randy Mackay
1e8e3609c6 Rover: remove duplicate setting of ground_speed
update_ahrs already does this using a slightly different method, having both likely leads to small twitches in ground speed at 10hz
2017-08-05 11:20:58 +09:00
Randy Mackay
e88b1572b6 Rover: remove navigate 2017-08-05 11:20:58 +09:00
Randy Mackay
fe6465b748 Rover: remove next_WP, wp_distance, navigate
Also remove prev_WP, wp_totalDistance which are all handled within mode class
2017-08-05 11:20:58 +09:00
Randy Mackay
b4af441eb9 Rover: remove unused update_navigation 2017-08-05 11:20:58 +09:00
Randy Mackay
2640ec9ed9 Rover: rename update_commands to update_mission 2017-08-05 11:20:58 +09:00
Randy Mackay
56b0621994 Rover: verify_RTL calls rtl mode
also remove unused rtl_complete
2017-08-05 11:20:58 +09:00
Randy Mackay
1b19ee865d Rover: remove active-loiter and set-auto-wp
these are now handled by auto mode
2017-08-05 11:20:58 +09:00
Randy Mackay
974453607e Rover: replace do-yaw with nav-set-yaw-speed 2017-08-05 11:20:58 +09:00
Randy Mackay
27e833ebd1 Rover: verify_within_distance gets distance directly from auto mode 2017-08-05 11:20:58 +09:00
Randy Mackay
3863542194 Rover: adjust set-position-target-local-ned handling
add support for just yaw or yaw-rate
remove support for simultaneous position and velocity
2017-08-05 11:20:58 +09:00
Randy Mackay
46faece76b Rover: set-attitude-target accepts quaternions for target heading 2017-08-05 11:20:58 +09:00
Randy Mackay
d56d222971 Rover: set-attitude-target consumes thrust in -1 to +1 range
This makes the processing consistent with the mavlink spec
2017-08-05 11:20:58 +09:00
Randy Mackay
b9db9229d9 Rover: replace vehicle code guided methods with calls to guided mode class
set_guided_WP replaced by mode_guided.set_desired_location
nav_set_yaw_speed replaced with mode_guided.set_desired_heading_and_speed
set_guided_velocity replaced with mode_guided.set_desired_turn_rate_and_speed
guided_control structure replaced with mode_guided members
use_pivot_steering accepts yaw-error argument instead of calculating it itself internally
2017-08-05 11:20:58 +09:00
Randy Mackay
783f8243df Rover: use mode class's get_distance_to_destination and speed_error
used for reporting to GCS and logging
2017-08-05 11:20:58 +09:00
Randy Mackay
f71db5ae05 Rover: rtl mode refactoring
slow down for turns
2017-08-05 11:20:58 +09:00
Randy Mackay
946a0a8e54 Rover: guided mode refactoring
add set-desired methods
add get_distance_to_destination
fix to one interation with no update to motors
slow down for turns
2017-08-05 11:20:58 +09:00
Randy Mackay
279491ed20 Rover: auto mode refactoring
updating mission is handled by the vehicle code
slows down for turns
add active at destination
remove setting of loiter start time
removes unused calc_nav_steer
2017-08-05 11:20:58 +09:00
Randy Mackay
2accb5831d Rover: mode refactoring
add ahrs reference
add set-desired-location method
move _reached_destination member in from child
calc_lateral_acceleration args renamed and added comemnts
calc_lateral_acceleration updates _yaw_error_cd
remove calc_lateral_acceleration method with no arguments
calc_throttle updates _speed_error and becomes protected
remove unused variables from calc_throttle
calc_reduced_speed_for_turn_or_distance reworked
do not use rover throttle or rtl_complete
calc_nav_steer comment updates
remove unused update_navigation
2017-08-05 11:20:58 +09:00
Peter Barker
137d513fdc Rover: move try_send_message queued_param_send up 2017-08-03 14:34:33 +01:00