Raouf
ea62c24cef
Rover: Move set_reverse method to Mode class
7 years ago
Ebin
6dcab4e87b
Rover: support balance bot in AUTO mdoe
7 years ago
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
7 years ago
jeff567
200a644cfe
Rover: fixes bug in rovers with pivot turning
7 years ago
Ebin
2780d1715c
Rover: balance bot pitch control added in all modes
7 years ago
Randy Mackay
8464e82812
Rover: set_desired_speed range checks speed
7 years ago
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
7 years ago
Ammarf
26c25daa36
Rover: add support for lateral control input
7 years ago
Randy Mackay
fc35e74821
Rover: pass dt to attitude controller
7 years ago
Randy Mackay
444e64a3d0
Rover: slow before pivot turns
7 years ago
Ammarf
d7821635c0
Rover: seperate acceleration/deceleration limits
7 years ago
Ammarf
2d64a47f90
Rover: add pivot_turn_rate to g2
7 years ago
Randy Mackay
0a29e4eac5
Rover: fix calc-steering-to-waypoint go use real heading without reverse
7 years ago
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
7 years ago
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
7 years ago
Randy Mackay
6b6c0f04b6
Rover: get_pilot_desired_steering_and_throttle returns steering assuming positive is always clockwise
7 years ago
Randy Mackay
8119c537c7
Rover: integrate vectored thrust support
7 years ago
Randy Mackay
29e8866ea9
Rover: move avoidance into calc_throttle
...
also enable avoidance for steering and guided modes
7 years ago
Randy Mackay
f7a168478d
Rover: integrate attitude control's get_steering_out_heading
7 years ago
Randy Mackay
e8070a5cb3
Rover: pass waypoint radius to L1 as min dist along track
7 years ago
Randy Mackay
41bd79a387
Rover: pivot-turn uses heading controller
7 years ago
Randy Mackay
00353c7a06
Rover: avoid divide by zero in desired speed at waypoint calcs
7 years ago
Randy Mackay
343d119726
Rover: wp nav uses stopping point or prev wp for origin
7 years ago
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
7 years ago
Randy Mackay
4e8399ca3f
Rover: acro and steering steer even with target speed of zero
7 years ago
Randy Mackay
a5d7b8bb19
Rover: remove unused definition
7 years ago
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
7 years ago
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!
7 years ago
Randy Mackay
e2824be250
Rover: add const and comments to calc_speed_max
7 years ago
Randy Mackay
916fe80000
Rover: remove mode class's desired-lat-accel
...
This was a duplicate of the value held in the attitude controller
7 years ago
Randy Mackay
49493fe6a2
Rover: add calc_steering_to_heading
...
removes some duplicate code in Guided and Auto
7 years ago
Peter Barker
1d3e7d454a
Rover: correct gps-is-healthy mode change check
7 years ago
Randy Mackay
b778546eda
Rover: rename mode lateral acceleration and make private
7 years ago
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)
7 years ago
Randy Mackay
9f94875228
Rover: mode class gets set_desired_location_NED
7 years ago
Peter Barker
5612292802
Rover: allow vehicle to be armed in manual with no GPS
7 years ago
Peter Barker
68800a52f5
Rover: move RC failsafe check up
...
Both steering and acro modes can benefit from this check
7 years ago
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
7 years ago
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
7 years ago
Randy Mackay
23028a659b
Rover: slew throttle in all modes
7 years ago
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
7 years ago
khancyr
2b0645d6a1
Rover: get_throttle_out calls do not require skid-steering arg
7 years ago
Daniel Widmann
bc7cf97b4e
Rover: don't use GPS speed to detect reversing
...
instead pass reverse to attitude controller based on desired speed
7 years ago
Randy Mackay
ea70755f00
Rover: fix speed nudge
...
fix bug when target speed was exactly zero which caused nudge to be a large negative value
7 years ago
khancyr
2ceb29e9da
Rover: use abs for int within calc_speed_nudge
...
same issue resoled for log-write-nav-tuning
8 years ago
khancyr
58b643c458
Rover: replace divide with multiply in calc_throttle
...
non functional change
8 years ago
Randy Mackay
c9927e6af6
Rover: bug fix to steering mode top speed
...
Also non-functional change to calc_throttle to make call to calc_speed_nudge consistent
8 years ago
Randy Mackay
167a856cdb
Rover: remove THR_MIN, THR_MAX parameters from vehicle
...
enforcing these limits is now handled by AP_MotorsUGV class
8 years ago
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
8 years ago
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.
8 years ago