Commit Graph

85 Commits

Author SHA1 Message Date
Randy Mackay e081b9d1c7 Copter: home is set becomes three state 2015-02-12 15:00:50 +09:00
Randy Mackay 58ac9de94b Copter: update home position when disarmed
This resolves the issue in which the vehicle's position jumped back to
it's home location when disarmed and using the EKF.  This also makes
copter consistent with plane.
2015-01-22 14:39:50 +09:00
Andrew Tridgell c3d839456b Copter: support logging while disarmed 2014-10-17 16:29:59 +09:00
Randy Mackay 8c48b65175 Copter: bug fix to remove home variable
pair programmed with Craig Elder
2014-06-11 12:01:48 +09:00
Randy Mackay 5c305989b9 Copter: set home alt to absolute alt 2014-06-11 11:04:52 +09:00
Andrew Tridgell 640b64f5e4 Copter: convert to new GPS API 2014-04-01 06:38:24 +11:00
Jonathan Challinger 2601ac9959 Copter: Remove 80m altitude limit on RTL 2014-03-31 20:34:19 +09:00
Randy Mackay 2f8daf2fa9 Copter: integrate dataflash Log_Write_MavCmd 2014-03-19 12:12:46 +09:00
Randy Mackay f3813593b7 Copter: use Dataflash lib's Log_Write_Cmd 2014-03-19 12:12:11 +09:00
Randy Mackay cc7b1c4e9c Copter: init_home checks cmd read success before logging 2014-03-19 12:11:39 +09:00
Randy Mackay 6e0e672fb2 Copter: log using mission commands 2014-03-19 12:10:09 +09:00
Randy Mackay 9f03e21f81 Copter: remove low-level handling of mission cmds
Now handled by AP_Mission
2014-03-19 12:10:04 +09:00
Andrew Tridgell 686d1b9124 Copter: changes set_home_position() to setup_home_position() for Inav 2014-02-15 05:48:15 +11:00
Andrew Tridgell c6e25483b4 Copter: use a common home with AHRS 2014-02-15 05:48:15 +11:00
Randy Mackay 284aa2217f Copter: remove old comments 2013-09-24 21:45:43 +09:00
Randy Mackay 262fcb301a InertialNav: rename set_current_position to set_home_position 2013-09-24 21:41:19 +09:00
Andrew Tridgell c4f11e6c74 Copter: fix longitude_scale() call for new API
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
2013-08-05 10:24:21 +10:00
Andrew Tridgell 105bd32a2e Copter: fixed some uses of constrain_float() to be right type 2013-05-02 10:29:57 +10:00
Andrew Tridgell 25c576cad7 Copter: replaced constrain() with constrain_float() 2013-05-02 10:26:49 +10:00
Andrew Tridgell 5ad9deecfb Copter: cleanup some bit if tests to be clearer
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2013-04-23 23:03:34 +10:00
Randy Mackay 58ed8cd544 Copter: replace set_next_WP with direct call to wp_nav 2013-04-14 10:37:55 +09:00
tobias 217b8d7a59 cleanup: use const for struct Location pointers and references
this allows the compiler to generate more efficient code
2013-04-09 12:10:32 +10:00
Randy Mackay cbde042ec5 Copter: remove non-inav loiter and wp controllers
lon_speed, lat_speed changed to float
do_takeoff, do_land now set roll-pitch, yaw and nav modes specifically
removed fast_corners functionality (may need to be reimplemented with
new inertial nav controllers)
2013-02-24 14:41:52 +09:00
Randy Mackay 1410063a14 Copter: new ROLL_PITCH_WP_INAV roll-pitch mode
small corrections to allow waypoints to work with new inertial nav wp
controller
2013-02-24 14:41:40 +09:00
Randy Mackay 37d3e1d7e4 Copter: add zero slope checks to wpinav
also added RTL fix to set wpinav target explicitly
2013-02-24 14:41:25 +09:00
Randy Mackay fcf102b2cf Copter: inertial nav waypoint controller
#define added to allow compile time selection of traditional or inav
based loiter and wp controllers
2013-02-24 14:41:09 +09:00
Randy Mackay 70371be4a1 Copter: use AP_Math's longitude_scale
bug fix to base scaling on home location instead of next_WP which may
not have been initialised
2013-01-27 23:35:12 +09:00
James Bielman 5631f865b2 Update floating point calculations to use floats instead of doubles.
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Randy Mackay 2dab40abeb Copter: bug fix to altitude check of verify takeoff
set_next_WP function was not setting the alt_change_flag properly
2013-01-15 12:17:45 +09:00
rmackay9 0decd870dc ArduCopter: inertial nav - only initialise horizontal position when home is initialised 2013-01-02 09:55:37 +11:00
rmackay9 396024e802 ArduCopter: move scaleLongUp and scaleLongDown initialisation to init_home 2013-01-02 09:19:17 +11:00
Pat Hickey 7af03127f6 ArduCopter: more work 2012-12-20 14:52:28 +11:00
rmackay9 9dd978576b ArduCopter: auto yaw changes to allow pilot override of yaw during missions
Added set_yaw_mode to better control of yaw controller changes and variable initialisation.
Replaced AUTO_YAW mode with separate yaw controllers YAW_LOOK_AT_NEXT_WP, YAW_LOOK_AT_LOCATION, YAW_LOOK_AT_HEADING.
Pilot manual override of yaw causes yaw to change to YAW_HOLD (i.e. manual yaw) until next waypoint is reached.
Added get_yaw_slew function to control how quickly autopilot turns copter
Changed YAW_LOOK_AHEAD to use GPS heading and moved to new get_look_ahead_yaw function in Attitude.pde
Renamed variables: target_bearing->wp_bearing, original_target_bearing->original_wp_bearing.
Removed auto_yaw_tracking and auto_yaw variables and update_auto_yaw function as they are no longer needed.
Simplified MAV_CMD_CONDITION_YAW handling (do_yaw).  We lose ability to control direction of turn and ability to do long panorama shots but it now works between waypoints and save 20bytes.
2012-12-08 14:23:32 +09:00
rmackay9 a5bb54e36e ArduCopter: RTL clean-up and slightly improved landing sensor
Consolidated RTL state to be captured by rtl_state variable.
Combined update_RTL_Nav and verify_RTL functions which performed the same function but one was for missions, the other for the RTL flight mode.
Renamed some RTL parameters and global variables to have RTL at the front.
Landing detector now checks accel-throttle's I term and/or a very low throttle value
2012-12-06 10:31:52 +09:00
rmackay9 072ffec493 ArduCopter: allow INERTIAL_NAV to be enabled separately for horizontal and vertical position 2012-12-06 10:31:41 +09:00
Andrew Tridgell bcae83c4f6 ACM: make it possible to run CLI on radio port in ArduCopter 2012-11-21 21:41:34 +11:00
Andrew Tridgell a3c3c59b82 ACM: fixed some memory cast warnings 2012-11-19 08:42:36 +11:00
Jason Short d2a5928c06 Ap state updates 2012-11-09 22:15:15 -08:00
Jason Short 4d7b9137fe ACM: Added max RTL altitude 2012-11-09 22:15:15 -08:00
rmackay9 1f801714e8 ArduCopter: incorporate new version of inertial navigation
Moved several navigation functions from ArduCopter.pde to navigation.pde
2012-11-07 19:21:31 +09:00
Jason Short a0752dc7dc ACM Acceleration management
removed unused waypoint_radius var
removed slow_wp
updated speed management system to maintain a constant acceleration or deceleration of 1m/s
changed version to 2.8.1a
2012-10-21 14:32:39 -07:00
rmackay9 889d1bb36c ArduCopter: alt hold bug fix - removed reset next_WP in init_home 2012-09-23 01:00:06 +09:00
uncrustify 2d398aa663 uncrustify ArduCopter/commands.pde 2012-08-21 18:55:43 -07:00
Jason Short cdd2093a4c ACM: Switched to filtered_loc for distance calcs 2012-08-14 14:11:52 -07:00
Jason Short 98b8866215 ACM: Added fast corner support 2012-08-09 16:59:43 -07:00
Andrew Tridgell fb26160d3b ACM: change to use get_bearing_cd() instead of get_bearing() 2012-08-08 12:12:30 +10:00
Jason Short d34ca0e6ea Arducopter - commands: Add home logging 2012-07-13 11:51:40 -07:00
Andrew Tridgell be763a6ead ACM: use get_distance_cm() not get_distance()
this fixes a bug introduced in 28f2eb6b9
2012-07-11 07:50:07 +10:00
Jason Short cf6d73ec88 commands.pde RTL Alt
fix to maintain current altitude of we are above our RTL alt for safety.
2012-07-09 13:13:32 -07:00
Jason Short 2450c25544 Arducopter: enabled RTL_altitude, renamed function to be more accurate 2012-07-01 13:40:11 -07:00