Pat Hickey
524e52f449
ArduCopter: changed makefile to inherit environments properly
2012-12-20 14:52:29 +11:00
Pat Hickey
d93d932831
ArduCopter: defines fixes
...
Conflicts:
libraries/AP_Common/Arduino.mk
2012-12-20 14:52:28 +11:00
Pat Hickey
2aa4657315
ArduCopter: changes to use CONFIG_HIL_BOARD
2012-12-20 14:52:28 +11:00
Pat Hickey
ade7099d75
ArduCopter: add AP_HAL_MAIN
2012-12-20 14:52:28 +11:00
Pat Hickey
5bd7046a95
ArduCopter: sketch cpp builds!
2012-12-20 14:52:28 +11:00
Pat Hickey
8b49208771
ArduCopter: some fixes
2012-12-20 14:52:28 +11:00
Pat Hickey
13c044ab3e
ArduCopter: fixes to radio.pde
2012-12-20 14:52:28 +11:00
Pat Hickey
7af03127f6
ArduCopter: more work
2012-12-20 14:52:28 +11:00
Pat Hickey
b90889dd11
ArduCopter: add ArduPlane's compat.h & compat.pde
2012-12-20 14:52:28 +11:00
Pat Hickey
70f4739522
ArduCopter: more fixes
2012-12-20 14:52:28 +11:00
Pat Hickey
4b84e99f85
remove dumb user hooks comments
2012-12-20 14:52:28 +11:00
Pat Hickey
901c692ee3
arducopter: type fix
2012-12-20 14:52:28 +11:00
Pat Hickey
f281d9265e
ArduCopter: reworked sonar analog source creation
2012-12-20 14:52:28 +11:00
Pat Hickey
d9e0bbbbab
ArduCopter: first pass at AP_HAL porting
...
* changed all the byte types to uint8_t
* fixed up much of the serial stuff
2012-12-20 14:52:27 +11:00
Pat Hickey
b7a7eceef8
ArduCopter: add nocore.inoflag and Arduino.h
2012-12-20 14:51:40 +11:00
Pat Hickey
ada10f6eb2
ArduCopter: change comment references to AP_Var to AP_Param
...
* jsut to clean up the grep for "AP_Var"
2012-12-20 14:51:31 +11:00
Pat Hickey
a4f1f6a5db
AP_Progmem: fix dependencies for all sketches touched by AP_HAL_AVR
2012-12-20 14:51:28 +11:00
Pat Hickey
3f1d9d7f69
AP_Param: #include <AP_Param.h> fixups for libraries & sketches
...
* I mostly went through with grep and added an #include <AP_Param.h> below
every #include <AP_Common.h>. Not all of these example sketches might
strictly need AP_Param.
2012-12-20 14:51:19 +11:00
Jason Short
0419dc8dfd
ACM: Simplified control mode code
2012-12-14 13:30:48 -08:00
Jason Short
19ae5c30eb
ACM : Formatting
2012-12-13 20:12:39 -08:00
rmackay9
52177c63f7
ArduCopter: only attempt to change settings of optical flow sensor if it has been successfully initialised
2012-12-11 00:14:29 +09:00
rmackay9
af77425636
ArduCopter: fix Failed to Init Optflow message at startup
2012-12-11 00:09:45 +09:00
rmackay9
2f748f8382
ArduCopter: renamed BATT_FAILSAFE to FS_BATT_ENABLE
2012-12-10 23:47:14 +09: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
2f1b2b70e6
ArduCopter: added ACRO_TRAINER parameter to allow enabling/disabling the acro training function which will bring the roll back to within +- 45 degrees
2012-12-10 22:27:46 +09:00
rmackay9
dadad8677e
ArduCopter: added descriptions for most parameters that did not have them
...
Renamed loiter_radius to circle_radius to better reflect it's purpose.
Removed some unused parameters including WP_MODE, WP_MUST_INDEX, LOG_LASTFILE, AXIS_P
2012-12-10 21:45:57 +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
047f848cc7
ArduCopter: remove ThirdOrderCompFilter from list of includes
2012-12-10 09:14:44 +09:00
rmackay9
154e3c33f7
ArduCopter, AP_InertialNav: consolidated ThirdOrderComplementaryFilter into AP_InertialNav to save about 200bytes of RAM
2012-12-10 00:43:11 +09:00
rmackay9
cfe2507c0b
ArduCopter: reduce Rate Roll/Pitch P to 0.150 (was 0.175) and increase I to 0.1 (was 0.01)
2012-12-09 18:08:45 +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
0f7bb79d89
ArduCopter: add comments to tuning parameters.
...
Use RC_CHANNEL types as defined by RC_Channel library.
Remove unused definitions.
2012-12-09 16:44:42 +09:00
rmackay9
9a05d3bd36
ArduCopter: add comments at the top of many navigation functions
2012-12-09 15:50:50 +09:00
rmackay9
8c2423f618
ArduCopter: code clean-up. Changed update_nav_wp to use a switch statement and relocated to navigation.pde
2012-12-09 15:24:19 +09:00
rmackay9
b36eb406d4
ArduCopter: allow alt hold to be engaged with alt < 1m because sometimes we get baro drift.
...
Also initialisation of target altitude is done in set_throttle_mode function.
2012-12-09 14:48:01 +09:00
rmackay9
b4e5176e2a
ArduCopter, AP_InertialSensor: restore mpu6k sample rate to 200hz but keep default filtering at 42hz.
2012-12-09 14:27:33 +09:00
Robert Lefebvre
aa4d4f8c24
ACM: Adding Pre-Compiler Define for Stabilize Throttle Mode.
2012-12-08 20:41:05 -05:00
Robert Lefebvre
0eb57bf93d
ACM: TradHeli
...
Fix to make update_throttle_cruise work with stab_throttle scaling.
2012-12-08 15:12:39 -05:00
Robert Lefebvre
1b97a92098
ACM: Code Cleanup
2012-12-08 14:49:38 -05:00
rmackay9
f98a807d36
ArduCopter: remove debug related to yaw mode used for alt hold
2012-12-08 14:24: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
85c8bdce15
ArduCopter: removed unused and out-of-date #defines from APM_Config.h
2012-12-08 13:38:39 +09:00
rmackay9
68ca123224
ArduCopter: remove some unused #defines
2012-12-07 15:17:35 +09:00
rmackay9
99b32a39c4
ArduCopter: InertialNav time constant CH6 tuning changed to only update enabled axis
2012-12-07 13:01:40 +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
653535b9a1
ArduCopter: added CH7 option to trigger camera
...
Restructured reading of channel 7 into a switch statement.
2012-12-06 17:47:01 +09:00
rmackay9
4ca27defb3
ArduCopter: update comments related to CH7 switch options
2012-12-06 17:40:36 +09:00
rmackay9
75401756f2
ArduCopter: maintain loiter control even below 1m while landing
2012-12-06 12:40:53 +09:00
rmackay9
2dd4694eef
ArduCopter: adjusted pid_throttle_accel dt to 0.01 (100hz)
2012-12-06 10:32:12 +09:00
rmackay9
269e02ee93
ArduCopter: bug fix - initialise inertial nav
2012-12-06 10:32:07 +09:00
rmackay9
8d682b9812
ArduCopter: disable INERTIAL_NAV_XY by default
2012-12-06 10:32:02 +09:00
rmackay9
39d524212f
ArduCopter: allow accel based throttle controller to be enabled/disabled with the new THR_ACC_ENABLE parameter.
...
When disabled the original velocity based throttle controller is used.
2012-12-06 10:31:57 +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
6da07ef1d2
ArduCopter: increase CONTROL_SWITCH_COUNTER so that flight mode switch must be changed for at least 1/10th of a second
2012-12-06 10:31:46 +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
rmackay9
aa5e7e63a0
ArduCopter: switch on INS in APM_Config.h (i.e. on by default for users uploading through Arduino IDE)
2012-12-06 10:31:36 +09:00
rmackay9
bdb47c449a
ArduCopter: pass linear altitude error to throttle rate controllers.
...
Previously the requested rate used the square root of the altitude error.
Scale pilot's desired vertical rate and acceleration based on ACCELERATION_MAX_Z and VELOCITY_MAX_Z #defines
2012-12-06 10:31:31 +09:00
rmackay9
d7f76ebd87
ArduCopter: add tuning of throttle rate controller's I term (THROTTLE_KI)
2012-12-06 10:31:25 +09:00
rmackay9
7b4ed2d227
ArduCopter: restored landing detector to landing throttle mode.
...
Added LAND_SPEED parameter to control the rate of descent for the last 10m of a landing.
Added CH6 tuning for accel based throttle controller.
2012-12-06 10:31:20 +09:00
rmackay9
560bb1d738
ArduCopter: removed unused AUTO_THROTTLE_HOLD #define
2012-12-06 10:31:15 +09:00
rmackay9
7035529953
ArduCopter: remove unused get_desired_climb_rate function
2012-12-06 10:31:09 +09:00
rmackay9
a94826f182
ArduCopter: add set_throttle_mode to better control initialisation of variables
2012-12-06 10:31:04 +09:00
rmackay9
1036b35128
ArduCopter: added back in angle boost and recombined for heli and multicopter
2012-12-06 10:30:55 +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
Robert Lefebvre
8c18a60766
ACM: Small fix to Yaw Look Ahead
2012-12-04 14:50:14 -05:00
Robert Lefebvre
1d589c0b7d
ACM: TradHeli
...
Fixes for Attitude rate controllers.
2012-12-04 14:42:04 -05:00
Robert Lefebvre
5723021be1
ACM: TradHeli
...
Creating Rate Feed-Forward Parameters
2012-12-04 13:47:38 -05:00
Robert Lefebvre
3e65dd3ded
ACM: TradHeli APM_Config.h changes
2012-12-04 13:32:40 -05:00
Robert Lefebvre
315a7e8000
ACM: Yaw Look Ahead Changes
2012-12-04 13:26:41 -05:00
Robert Lefebvre
9130045298
ACM: Code Cleanup
2012-11-30 17:05:12 -05:00
rmackay9
8141f0b600
ArduCopter: bug fix - increase mpu6k sample rate to 100hz
2012-11-30 23:49:18 +09:00
Andrew Tridgell
6fbf5ec8f2
Copter: update ArduCopter for new ins interface
2012-11-30 07:15:18 +11:00
Michael Oborne
68aa5e4682
AC add ability to start new accel_scale via mavlink
2012-11-28 21:38:58 +08:00
Andrew Tridgell
2949d58b71
Copter: re-enable sending of GLOBAL_POSITION_INT message
...
this gives important raw GPS velocity information, plus relative and
absolute height
2012-11-28 11:26:19 +11:00
Robert Lefebvre
07d7d90882
ACM: TradHeli
...
Bringing in Low Pass Filter for Rate Controllers
2012-11-26 21:51:23 -05:00
Robert Lefebvre
6b8c39dd10
ACM: Creating Yaw_Look_Ahead yaw mode.
...
This function is not fully tested yet.
2012-11-26 21:37:13 -05:00
Robert Lefebvre
3f0e8dd358
ACM: TradHeli
...
Bringing in Low Pas Filter
Commented out because it does not build.
Needs updates to Low Pass Filter Lib
2012-11-26 21:21:12 -05:00
Robert Lefebvre
e8d619acad
ACM: Begin creation of TradHeli rate control.
...
May affect Multi-Rotors.
2012-11-26 21:02:41 -05:00
Robert Lefebvre
6b1fee767a
ACM: TradHeli
...
Creating Stab_Collective Function to allow for different collective ranges between Stabilize and other modes.
This makes for a smoother collective action in Stabilize mode with manual throttle, while still allowing full collective travel in Acro and other modes.
2012-11-26 19:37:20 -05:00
Robert Lefebvre
9e45e906fb
ACM: TradHeli
...
Move some TradHeli #defines into one place in APM_Config to clean up config.h and defines.h
2012-11-26 19:09:55 -05:00
Robert Lefebvre
b32d7c8b63
ACM: TradHeli
...
Prevent helis from arming while RSC control is switched on.
2012-11-26 19:03:28 -05:00
Robert Lefebvre
95eeda7cf7
ACM: TradHeli
...
Removing Angle Boost function.
Does not make sense for helis due to aerodynamics. Can cause more problems than it solves.
2012-11-26 18:58:21 -05:00
Robert Lefebvre
8056b78c55
ACM: TradHeli
...
Remove Rate I-term reset when throttle stick is on the bottom. This could be very bad for helis since it's plausible to use full downstick while flying.
There is obviously a risk here of building up a false I-term on the ground but this isn't a good solution for that anyway.
Also removed what appears to be some deadwood.
2012-11-26 18:49:24 -05:00
Robert Lefebvre
637c9a1a72
ACM: TradHeli
...
Removing this "throttle" output restriction for TradHelis.
2012-11-26 18:44:03 -05:00
Andrew Tridgell
5818aaad42
Copter: fixed build error
...
thanks to Marco for pointing this out
2012-11-24 20:39:35 +11:00
Andrew Tridgell
f6ec932d63
Copter: added reboot in CLI and over MAVLink
...
useful for getting out of CLI
2012-11-24 18:20:37 +11:00
Andrew Tridgell
cd07d965a7
Copter: ported RSSI_PIN option from ArduPlane
...
this is useful for OSD users
2012-11-22 20:59:33 +11:00
rmackay9
3372355e07
ArduCopter: remove commented out remnants of roll_scale_d and pitch_scale_d
2012-11-22 12:50:39 +09:00
rmackay9
eb6d8fca57
ArduCopter: added ReleaseNotes.txt
2012-11-22 09:51:04 +09:00
Robert Lefebvre
6ffc115236
Changes to get_throttle_rate()
...
Commented out a bit of code that is not used currently
Change the output constrains to #defines so they can be easily changed, particularly for use in TradHeli.
2012-11-21 17:11:38 -05:00
Andrew Tridgell
dbdb3e1194
ACM: allow fetch of parameters by index
...
this makes it more efficient to re-fetch parameters that are missing
2012-11-22 00:16:57 +11: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
704da2a5d9
MAVLink: make it possible to enter the CLI over the radio
...
this only works on the APM2, where UART0 is also the radio port
2012-11-21 14:11:05 +11:00
Michael Oborne
a5e3ce4655
remove cli planner mode - no longer used
2012-11-21 07:45:45 +08:00
Michael Oborne
0c84b8abf1
fix unit max. and unit type
2012-11-21 07:42:53 +08:00
Andrew Tridgell
bcf740a82f
ACM: support 16 character parameter names
2012-11-20 21:38:58 +11:00
Andrew Tridgell
c008ca7560
ACM: fixed documentation of disabling voltage/current pins for ArduCopter
2012-11-20 20:26:14 +11:00