Commit Graph

167 Commits

Author SHA1 Message Date
Randy Mackay b15d4379d8 AC_WPNav: use atan2f, make methods const 2014-03-30 23:09:51 +09:00
Randy Mackay 24eb195aa3 WPNav: add yaw control for straight line wp nav 2014-03-28 09:23:13 +09:00
Randy Mackay b42b12f7be AC_WPNav: add get_spline_yaw 2014-03-28 09:23:07 +09:00
Randy Mackay e5e71ce371 WPNav: add spline support 2014-03-28 09:22:53 +09:00
Randy Mackay e86a21a254 AC_WPNav: remove AC_PID include
This is no longer required with introduction of PosControl lib
2014-02-15 06:09:08 +11:00
Randy Mackay 9e31f0b985 AC_WPNav: use PosControl accessor
Saves 2bytes of RAM
2014-02-15 05:27:50 +11:00
Randy Mackay 64cfcb2308 AC_WPNav: use trig values from ahrs 2014-02-15 05:27:48 +11:00
Randy Mackay d4e4620159 AC_WPNav: remove unused PID references 2014-02-15 05:27:39 +11:00
Randy Mackay 1596d83d02 AC_WPNav: move leashes to AC_PosControl 2014-02-15 05:27:37 +11:00
Randy Mackay 0d4ba04e75 AC_WPNav: make advance_wp_target private 2014-02-15 05:27:37 +11:00
Randy Mackay 0c8cbba644 AC_WPNav: remove xy pos controller 2014-02-15 05:27:36 +11:00
Randy Mackay 2984e492df AC_WPNav: add reference to AC_PosControl
Also remove requirement to pass in inertial nav position and velocity to
init_loiter method
2014-02-15 05:27:35 +11:00
Randy Mackay c9415a08f1 AC_WPNav: use ahrs trig values 2014-02-08 18:16:47 +09:00
Randy Mackay 0a3559813a AC_WPNav: accessor for loiter speed 2014-01-15 15:22:30 +09:00
Andrew Tridgell 30fffa5854 AC_WPNav: fixed some build warnings 2013-12-11 10:21:41 +11:00
Tobias c3309d909c AC_WPNav: make more member pointers const 2013-10-27 13:41:29 +09:00
Tobias bb5cf4a311 AC_WPNav: make member pointer to AP_InertialNav object const since it's
never modified
2013-10-27 13:41:23 +09:00
Randy Mackay 45aeb1a921 Copter: split up loiter into 4 steps
Reduces disruption to the main loop but also introduces a delay of 30ms
to navigation output
2013-08-28 11:33:10 +09:00
Randy Mackay 6969ab573d Copter: configurable max lean angle
ANGLE_MAX parameter allows limiting the roll and pitch angles during
manual and auto flight modes to anywhere from 10 to 80 degrees
2013-08-11 12:53:22 +09:00
Randy Mackay 345924ddec WPNav: replace LOITER_ACCEL_MAX with parameter
Also removed unused _lean_angle_max variable
2013-07-10 20:00:32 +09:00
Randy Mackay 5d23d5aaa7 WPNav: reduce loiter speed used to correct pos error
Contributed by Leonard Hall
This should reduce the aggressiveness of the response when we experience
a GPS glitch
2013-07-10 15:52:18 +09:00
Randy Mackay 649cbf6b68 WPNav: reduce default WP_ACCEL and LOITER_SPEED 2013-07-07 16:00:13 -10:00
Randy Mackay dde19c9585 WPNav: add acceleration parameter
WP_ACCEL added to allow user control of acceleration during missions.
Loiter acceleration made to be half of loiter max speed
2013-06-16 11:40:51 +09:00
Randy Mackay 272f0e5032 Copter: reduce twitch when entering CIRCLE mode
Set loiter target and prev iterations velocity when circle mode is
started
Start circling from projected stopping point
2013-06-15 18:18:30 +09:00
Randy Mackay 7a2afb7443 Copter Nav: add accessor for waypoint speed 2013-06-01 18:21:29 +09:00
Randy Mackay 8c4a7ec094 Copter WPNav: Leonard's improved speed fix
Also pass in althold gain from main code
2013-05-31 21:03:27 +09:00
Randy Mackay d203f0295b Copter: bug fix for vertical speed during missions 2013-05-30 11:52:04 +09:00
Randy Mackay dbd6524f9f Copter: WPNav consolidate acceleration #defines 2013-05-27 10:36:24 +09:00
Randy Mackay e3dffb920b Copter: initialise target vel in loiter 2013-05-25 14:07:04 +09:00
Randy Mackay 916f241fff Copter: Leonard's improved Loiter 2013-05-24 23:45:03 +09:00
Randy Mackay cb795ea536 WPNav: divide by zero checks 2013-05-15 11:51:26 +09:00
Randy Mackay 61288fcb90 WPNav: make get_stopping_point method public 2013-05-11 16:05:42 +09:00
Randy Mackay ed5ddfd9db WPNav: initialise desired roll, pitch
bug-fix to resolve 1/10th second twitch when loiter or waypoint
controller are first engaged
2013-05-09 18:32:02 +09:00
Randy Mackay 9f735c8d03 WPNav: add fast waypoints flag
Waypoint is considered "reached" when the intermediate point reaches the
destination
2013-05-09 00:18:02 +09:00
Randy Mackay 4704b729c2 WPNav: reduce max acceleration to 2.5m/s
Also includes bug fix to ramp up of speed of intermediate point
2013-05-08 23:20:29 +09:00
Randy Mackay 328d900647 WPNav: flexible loiter speed
Also includes bug fix to allow speeds > 10m/s during missions
2013-05-07 17:11:24 +09:00
Randy Mackay ad01aeee44 Copter: increase max loiter overshoot to 8.12m 2013-04-30 18:07:48 +09:00
Randy Mackay c139134192 Copter: increase max loiter speed to 7.5m/s 2013-04-30 12:49:19 +09:00
Randy Mackay 6c081c3def AC_WPNav: slow acceleration of intermediate point 2013-04-30 10:20:23 +09:00
Andrew Tridgell ad40ba57be AC_WPNav: optimise to reduce memory copies
save a few cycles

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2013-04-22 12:21:58 +10:00
Randy Mackay 2fc25da4c3 Copter: Leonard's fix for get_loiter_accel_to_lean_angle 2013-04-21 16:27:50 +09:00
Randy Mackay 1c046fa49f AC_WPNav: increase max descent speed to 1.5m/s 2013-04-18 22:32:00 +09:00
Randy Mackay 764853bd56 AC_WPNav: add climb and descent params, dynamic leash length 2013-04-18 14:51:01 +09:00
Randy Mackay effd5b0da7 AC_WPNav: improved comments
Made SPEEDZ a parameter although it's not yet used
2013-04-18 11:17:41 +09:00
Randy Mackay 8046fe2cf3 AC_WPNav: increase max accel to 8m/s/s 2013-04-15 21:57:56 +09:00
Randy Mackay 8fe3e689f4 Copter: add WPNAV log message 2013-04-15 21:54:29 +09:00
Randy Mackay 0eab3e87b2 AC_WPNav: use prev wp as origin for next wp 2013-04-14 18:27:39 +09:00
Randy Mackay 0351c2ae33 AC_WPNav: allow setting of horizontal velocity
Also added accessor function for waypoint radius parameter
2013-04-14 13:24:14 +09:00
Randy Mackay 0ac3762bdd AC_WPNav: fix compiler warning 2013-04-14 10:39:26 +09:00
Randy Mackay 9d7d174995 AC_WPNAV: check distance to waypoint within library
bug fix for loiter using lat/lon position instead of NED position when
calculating desired velocity towards target
2013-04-14 10:39:21 +09:00
Randy Mackay 35001619f0 AC_WPNav: stop track_desired from moving backwards 2013-04-14 10:39:19 +09:00
Randy Mackay c6b68c7843 AC_WPNav: Leonard's 3d leash calculator 2013-04-14 10:39:08 +09:00
Randy Mackay 74e1c2e660 AC_WPNav: advance track fixes 2013-04-14 10:39:05 +09:00
Randy Mackay bc87118062 AC_WPNav: add get_target_alt method 2013-04-14 10:39:00 +09:00
Randy Mackay 6dbcbdcb43 AC_WPNav: limit max loiter position error
move interpretation of pilot input to wpnav lib
2013-04-14 10:38:58 +09:00
Randy Mackay 31838b2865 AC_WPNAV: change loiter controllers to use floats
in particular get_loiter_pos_lat_lon and get_loiter_accel_lat_lon
2013-04-14 10:38:56 +09:00
Randy Mackay 0ccdce1b22 AC_WPNav: Leonard's ff loiter and 3d wp nav 2013-04-14 10:38:43 +09:00
Randy Mackay 926c404994 AC_WPNav: Leonard's loiter target smoothing 2013-04-14 10:38:39 +09:00
Randy Mackay f82ce449d7 AC_WPNav: add angle limits and set from AC's throttle controller 2013-04-14 10:38:34 +09:00
Randy Mackay afd2f82768 AC_WPNav: bug fix for track covered being 2D
Replaced abs and fabs with fabsf
Added get_destination method
2013-04-14 10:38:32 +09:00
Randy Mackay 8ec7fd1c9c AC_WPNav: add set_loiter_target to use velocity
Target can be set in front of the copter to reduce the bounce back to
the position where loiter was engaged.
2013-04-14 10:38:25 +09:00
Randy Mackay 3bfcc3b8d0 AC_WPNav: replace get_target_alt with get_destination_alt 2013-04-14 10:38:13 +09:00
Randy Mackay c40080e76a AC_WPNav: added set_target_alt 2013-04-14 10:38:04 +09:00
Randy Mackay 60060d8184 AC_WPNav: add get_target_alt
Required because waypoint controller will be modified to control
altitude
2013-04-14 10:37:58 +09:00
Randy Mackay 0d70ba1030 AC_WPNav: bug fix to dt calculation 2013-04-14 10:37:51 +09:00
Randy Mackay 39bc3800c9 AC_WPNav: add distance and bearing to target methods 2013-04-14 10:34:50 +09:00
Randy Mackay b92c4097d2 AC_WPNav: first implementation 2013-04-14 10:34:47 +09:00