Randy Mackay
574756908d
Copter: set wpinav controller targets in nav calls
...
All navigation commands now properly set wpinav controller targets
except CIRCLE related commands.
2013-02-24 14:41:36 +09:00
Randy Mackay
00bc28adcc
Copter: take-off code cleanup
...
remove redundant setting of loiter target.
explicitely set throttle mode to THROTTLE_AUTO
2013-02-24 14:41:32 +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
9d34ead486
Copter: fix up some casting issues for wp_distance
2013-02-01 22:42:50 +09:00
Randy Mackay
6f5050a8b9
Copter: minor casting fixup for wp_distance
2013-01-27 11:27:43 +09:00
Randy Mackay
d2767b911c
AP_Math: switch get_distance_cm to return uint32_t
...
Includes changes required on ArduCopter and ArduPlane side as well
2013-01-26 17:04:12 +09:00
Randy Mackay
fd02cfe706
Copter: added set_nav_mode to control initialisation of nav controllers
...
Renamed run_navigation_controllers() to run_autopilot()
Renamed update_nav_wp() to update_nav_mode()
Renamed wp_control to nav_mode to be more consistent with roll-pitch,
yaw and throttle controllers
2013-01-25 15:16:29 +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
ccaa7a52ef
Copter: RTL bug fix to initial step is always a climb and not a descent
...
Also bug fix to hold yaw on take-off
2013-01-15 12:17:52 +09:00
Randy Mackay
76f032160c
Copter: relax altitude check in verify_takeoff
...
Previously we checked if the alt > target_alt but because there is
little to no overshoot with the new accel based alt controller this
check was failing for some users.
2013-01-14 13:34:06 +09:00
Randy Mackay
c447b4b79b
ArduCopter: move setting of land's yaw mode to the do_land function
2013-01-13 20:01:06 +11:00
rmackay9
68b62abd38
ArduCopter with the new Camera and Relay classes for APM1 and APM2.
...
All changes by Sandro Benigno
2013-01-02 09:55:37 +11:00
rmackay9
e77b54c7dc
ArduCopter: bug fix to GUIDED mode. Now checks that desired altitude was reached before deciding the waypoint is complete.
2013-01-02 09:24:31 +11:00
rmackay9
d3cbf733ba
ArduCopter: ensure RTL performs a land if a failsafe has been triggered
2013-01-02 09:19:39 +11:00
rmackay9
1b5ff6aac6
ArduCopter: restore initial climb to RTL
2013-01-02 09:19:17 +11:00
rmackay9
d8e3d5c10c
ArduCopter: allow RTL's yaw mode to be overridden with a #define in APM_Config.h
2013-01-02 09:12:40 +11:00
rmackay9
ddc578fd18
ArduCopter: restore YAW to default AUTO_YAW mode instead of YAW_LOOK_AT_NEXT_WP mode
2013-01-02 09:12:17 +11:00
Pat Hickey
7af03127f6
ArduCopter: more work
2012-12-20 14:52:28 +11:00
rmackay9
d31efebd44
ArduCopter: rename throttle failsafe parameters.
...
Switch to LAND flight mode if throttle failsafe triggers and we do not have a GPS.
THR_FAILSAFE renamed to FS_THR_ENABLE.
THR_FS_VALUE renamed to FS_THR_VALUE.
THR_FS_ACTION removed (action is now controlled by setting FS_THR parameter).
2012-12-10 23:38:43 +09:00
rmackay9
f522ef078e
ArduCopter: remove unused functions do_target_yaw, do_loiter_at_location, get_altitude_error and clear_new_altitude
2012-12-10 17:30:50 +09:00
rmackay9
56ceb230cb
ArduCopter: add YAW_OVR_BEHAVE to allow control of when autopilot takes back control of yaw after pilot overrides it during a mission
2012-12-09 18:04:31 +09:00
rmackay9
9a05d3bd36
ArduCopter: add comments at the top of many navigation functions
2012-12-09 15:50:50 +09: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
cca9f9dbce
ArduCopter: do_set_servo fix to resolve -1 being assigned to uint8_t
2012-12-07 12:58:44 +09:00
rmackay9
3a90fc77f9
ArduCopter: add dataflash logging of camera events
2012-12-07 00:57:08 +09:00
rmackay9
d74cf54b5d
ArduCopter: allow triggering of camera from a mission
2012-12-06 23:48:30 +09:00
rmackay9
d3de77f74c
ArduCopter: fix do_set_servo so that it works again
2012-12-06 20:18:33 +09:00
rmackay9
75401756f2
ArduCopter: maintain loiter control even below 1m while landing
2012-12-06 12:40:53 +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
a94826f182
ArduCopter: add set_throttle_mode to better control initialisation of variables
2012-12-06 10:31:04 +09:00
rmackay9
3cbef57c64
ArduCopter: first merge of leonard's accel based altitude controller plus other changes from Randy
...
Changes include:
New low-level get_throttle_accel function takes target acceleration and compares vs earth-frame Z accelerometer values to produce output to motors.
Higher level throttle controllers modified to call new get_throttle_accel controller
Throttle_rate_stabilized controller added which maintains a desired climb/descent rate
Throttle_land controller added - descends using normal auto throttle controller to 10m then descends at 50cm/s
Multiple throttle modes added including landing mode
Land flight mode no longer needs GPS
Throttle cruise maintenance moved to update_throttle_cruise function
2012-12-06 10:30:49 +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
Jason Short
d2a5928c06
Ap state updates
2012-11-09 22:15:15 -08:00
Andrew Tridgell
406a5dc328
ACM: save another 20 bytes
2012-10-22 18:59:51 +11: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
3c9ba94f42
ArduCopter: bug fix to ROI when no camera mount is specific
2012-10-08 12:31:10 +09:00
rmackay9
5d3ddf1fc9
ArduCopter: bug fix for ROI not working if user did not have a camera mount
...
Changed verify_nav_roi command to attempt to point at the target if our camera mount type is not pan_tilt nor pan_tilt_roll
2012-09-10 02:03:32 +09:00
uncrustify
6791da4ee7
uncrustify ArduCopter/commands_logic.pde
2012-08-21 19:19:50 -07:00
rmackay9
7a6732fb4b
ArduCopter: removed unused icount variable from commands_logic.pde to reduce compiler warnings.
2012-08-18 16:04:23 +09:00
rmackay9
a72bf6ef57
ArduCopter: replaced abs with labs as required in a few places.
...
Also fixed a small bug in the get_stabilize_pitch function in which it was using the roll (instead of pitch) to decide whether it should let the i term build-up or not.
2012-08-16 17:51:09 +09:00
Jason Short
3ad08b7ffc
ACM : Added larger WP radius for fast waypoints so we don't loose speed angling in on the WP at the last second.
2012-08-10 10:02:32 -07:00
Jason Short
d796814dfc
ACM : Commands Logic
...
Altitude cleanup
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
rmackay9
f79b90725e
ArduCopter: Dan Gray's fix for Condition_Yaw
...
command_yaw_dir is an unsigned byte but was being set to a -ve number leading to very incorrect yaw target heading for counter clockwise turns.
command_yaw_end (i.e. turn's end target) was not being set if turn was of type "relative"
2012-08-07 06:43:10 -07:00
rmackay9
8e5312a759
ArduCopter: add support for MAVLink's MAV_CMD_NAV_ROI command
...
do_nav_roi and verify_nav_roi functions added to turn the copter and/or mount in response to a MAV_CMD_NAV_ROI way point
2012-07-25 11:02:54 +09:00
Jason Short
3a62608355
Arducopter: Added Slow_WP setting to regular wp navigation
2012-07-19 09:48:54 -07:00
Jason Short
71248fe114
Arducopter
...
increased landing authority
2012-07-18 22:57:10 -07:00
Jason Short
a88d69e40e
Arducopter:
...
Loiter unlimited can now travel to a WP and then loiter.
set_altitude for landing now set to 0
2012-07-18 22:57:10 -07:00
Jason Short
d8ff5dcfab
Arducopter: Fix circle_WP
2012-07-12 09:22:20 -07:00
Jason Short
a28070e0e0
Arducopter: Loiter unlimited fix
2012-07-12 08:52:49 -07:00
Jason Short
3048d2f9b4
Arducopter: WP_radius
...
Switching to stored WP_radius in meters, just like Arduplane
2012-07-10 21:53:38 -07:00
Jason Short
19d8c405fd
Arducopter : Force home alt to 0
2012-07-10 21:53:37 -07:00
Amilcar Lucas
dfe0983e1e
Merge the changes from APM_Camera branch into ArduCopter
...
Conflicts:
ArduCopter/Camera.pde
ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Jason Short
b076b571eb
commands_logic: Removed some old unused code
2012-07-03 17:19:19 -07:00
Jason Short
d58ceb2b09
RTL: Commands.pde
...
Removed do_approach function - now redundant
2012-07-01 13:40:11 -07:00
Jason Short
2450c25544
Arducopter: enabled RTL_altitude, renamed function to be more accurate
2012-07-01 13:40:11 -07:00
Jason Short
bc578172a5
moved detector to run until the throttle is low, then stop running.
2012-05-30 09:44:59 -07:00
Jason Short
f0456dc947
Missed a Semicolon
2012-05-30 09:36:16 -07:00
Jason Short
302c632205
Altered the ground detector logic to no continuously run when landed
2012-05-30 09:34:31 -07:00
Robert Lefebvre
4e4ff84cf1
Updates to CopterLEDS
...
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Adam M Rivera
07e53fad18
commands_logic.pde: Added write to constrained value to EEPROM.
2012-04-16 14:03:33 -05:00
Adam M Rivera
3d024ba2dd
commands_logic: Allowed for an approach alt as low as 1m. Added a check to make sure we are currently above our target approach alt.
2012-04-16 10:11:50 -05:00
Adam M Rivera
77d6f22864
ArduCopter, commands_logic: Updated logic to allow as low as 5m.
2012-04-15 19:50:05 -05:00
Adam M Rivera
cddcdb8be3
commands_logic: Added check to make sure the do_approach method is not being used to land.
2012-04-15 16:57:49 -05:00
Adam M Rivera
cfe3b58248
commands_logic: Added do_approach() to set the new target alt based on the user defined value.
2012-04-15 16:53:25 -05:00
Jason Short
33d4d52a6b
set Slow WP option for RTL in Auto mode
2012-02-19 13:12:23 -08:00
Jason Short
969ac70000
reset All for Auto takeoff
2012-02-10 22:54:29 -08:00
Jason Short
6848dc17e5
Added safety to prevent shutdown of motors during Auto-land
2012-02-09 22:22:00 -08:00
Randy Mackay
70f91e3cc3
Arducopter - reduced rate of decent when landing using sonar
2012-02-08 22:46:32 +09:00
Jason Short
67cd412105
Landing update for better baro landing
2012-01-28 22:35:57 -08:00
Jason Short
7833cea9d4
2.2B6 - Please verify Heli still functions properly.
...
Added AC_PID lib
Updated landing code
bug fixes
2012-01-28 22:00:05 -08:00
Jason Short
59d1f225d5
convert command into CM from M
...
Making Landing boost be one at minimum to trigger better navthrottle output
2012-01-21 22:06:35 -08:00
Jason Short
fb72ecd4e4
formatting
2012-01-20 22:52:31 -08:00
Jason Short
43365fe802
Verify land updates from JLN
...
Effectively a throttle control for landing that mimics a person lowering the throttle.
2012-01-20 22:52:29 -08:00
Jason Short
72faa6525e
Tweak to make circle mode scripting more accurate
2012-01-14 11:21:50 -08:00
Jason Short
c327a9f000
made landing shoot for below home by 2 meters to avoid bounce up.
2012-01-13 12:46:40 -08:00
Jason Short
6b85adb460
Added Landing throttle control to force down the copter
2012-01-12 22:28:58 -08:00
Jason Short
5e9db462f5
attempting to force down without using Manual boost.
2012-01-11 22:41:51 -08:00
Jason Short
3a5ffc252d
updated climb rate control
...
Land detector
2012-01-10 23:42:27 -08:00
Jason Short
351be7c305
Made timer unsigned
2012-01-10 23:42:26 -08:00
Jason Short
78255b722e
Slowed Auto Descent
...
Don't return true in Landing code to prevent flyways in Stabilize
2012-01-08 23:01:22 -08:00
Jason Short
6678edf243
Auto-land updates - removed sonar option - not needed
...
updates from JLN
2012-01-07 22:27:26 -08:00
Andrew Tridgell
c1c3115b42
ACM: fixed a alt hold bug
...
== instead of =
2012-01-05 10:14:30 +11:00
Jason Short
467ef66a77
Added home offset for altitude
2012-01-04 09:28:38 -08:00
Jason Short
40c649a27b
Made landing disarm the motors
2012-01-04 09:28:38 -08:00
Jason Short
580ad2c5ce
Added JLN's landing patch, moved some variables local such as Jump counter
2012-01-04 09:28:36 -08:00
Jason Short
51e6170ecb
Missing ;
2011-12-29 23:02:01 -08:00
Jason Short
4353f60f60
removed takeoff complete flag from missions, not used and would be useful elsewhere.
2011-12-29 23:02:01 -08:00
Jason Short
0ba8a9f30b
Allows user to specify just an altitude for Circle Mode
2011-12-15 20:51:40 -08:00
Jason Short
4d90058c90
dupe of landing logic for scripting
2011-12-14 22:08:41 -08:00
Jason Short
069bcbf5e6
Made landing slower
2011-12-10 19:33:19 -08:00
Jason Short
6dfdd754ea
Stability patch updates,
...
Cleanup
2011-12-06 21:03:56 -08:00
Jason Short
4a6feb3acb
better comments out of some old unused functions to avoid compiler errors
2011-11-28 10:33:06 -08:00
Jason Short
b883ff937c
renamed the options_mask
2011-11-20 00:22:52 -08:00
Jason Short
a168691eba
Working implementation of Jump Command
2011-11-16 21:28:56 -08:00
Jason Short
ddd89e1849
Mission Scripting updates
2011-11-16 00:22:23 -08:00
Jason Short
163345dadd
Mission Scripting re-write
2011-11-16 00:22:22 -08:00
Jason Short
3732b7db71
Added code notes
2011-11-09 12:07:15 -08:00
Jason Short
69fec433e6
Update to RTL logic.
2011-11-07 21:30:12 -08:00
Jason Short
4afc3e9f17
Fix for bad RTL tracking in Autopilot
2011-11-07 21:09:29 -08:00
Jason Short
c8304114a3
renamed some command variables to align with Arduplane
...
reworked the arming code and moved the DCM gains out.
updated climb_rate to include sonar data.
2011-11-04 21:41:51 -07:00
Jason Short
9500171a46
tweak to the Loiter N turns
2011-10-12 20:59:12 -07:00
Andrew Tridgell
d11303ef78
removed an unused variable
2011-10-11 20:53:43 +11:00
Andrew Tridgell
eed26ae91a
fixed a '=' vs '==' bug in do_loiter_turns()
2011-10-11 20:53:43 +11:00
Andrew Tridgell
d89ae696ef
merged the GCS updates from ArduPlane to ArduCopter
...
this removes all the non-MAVLink GCS options, and simplifies the HIL
and GCS code a lot. It also adds async sending of low priority GCS
text messages.
2011-10-11 20:53:43 +11:00
Jason Short
1ff372a41d
Implementing a limiter for the ramp up of speed to WPs.
2011-10-03 10:37:56 -07:00
Jason Short
eb1117b136
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-02 11:36:31 -07:00
Jason Short
b0bd9d1c44
Added second PI loop for alt hold.
...
Upped gains for default JDrones Frame
added gains for second PI loop for alt
removed some tests for 1280 space constraints
2011-10-02 11:36:23 -07:00
Amilcar Lucas
3d1902abac
Use the new AP_Relay library
2011-10-02 14:22:27 +02:00
Jason Short
236f665378
Added Loiter Turns - It orbits the Current location
...
Added WP to Loiter_time so you can spec a specific location in the planner
added new Navigation alg. Should perform better (doesn't rely on 45° flow fields like last one)
Added "Jump" counter so missions don't get overwritten in flight.
removed I term by default for Rate pitch and roll
2011-09-24 17:40:29 -07:00
Jason Short
e961d3f3d4
Removed default Rate_I for pitch and roll
...
added change speed control for missions
2011-09-24 09:49:11 -07:00
Jason Short
ba7abd62d8
Adjusted DCM Gains to normal levels. Added a check to stop navigating when landing and to land faster.
2011-09-23 13:52:10 -07:00
Jason Short
5ca50f1f01
Altered CIRCLE mode to allow Loiter_N_Turns to work in AP mode.
2011-09-21 13:19:36 -07:00
Jason Short
00fe8e0450
Fixed do_flip,
2011-09-20 23:20:33 -07:00
Jason Short
94313ea88f
Fixed Yaw for Auto mode.
2011-09-20 22:59:23 -07:00
Jason Short
151cae6074
Jump command was reported to have issues, updated to match APM branch.
2011-09-18 16:27:43 -07:00
Jason Short
d29cfbcee3
Integration of optical flow
...
bug fixes for new Simple mode
increased Baro filter by 2 fields
2011-09-15 23:33:00 -07:00
Jason Short
1ce2308d11
Removed Simple Mode
...
Added Simple option to mode switch positions
removed unused OptFlow code
added reset lat and lon error
removed unused init_auto
Fixed log formatting
Added simple mode bitmask
removed pitchmax
added CLI setup for enabling Simple mode to any switch position
2011-09-14 13:58:18 -07:00
Jason Short
ecd14f4425
Cleaned up guided mode
...
Reduced ADC filter to 3 from 6 to increase speed of filter.
2011-09-12 12:57:36 -07:00
Andrew Tridgell
1456a2a912
renamed top level directories
...
ArduCopterMega -> ArduCopter
added archives directory for old code
2011-09-09 11:27:41 +10:00