Randy Mackay
f263e81ed7
Copter: remove unused GPS and baro filters
...
Saves 24bytes of RAM
Removing the baro filter leads to noisier Baro Alt appearing in the log
so we should make the inertial nav altitude appear in the CTUN message
2013-03-16 00:20:15 +09:00
Randy Mackay
cb84ec9d9b
Copter: add current based compass compensation
2013-03-03 23:02:36 +09:00
Randy Mackay
e0506bd622
Copter: inav circle initial implementation
2013-02-26 11:35:35 +09:00
Randy Mackay
d6ff5ae261
Copter: add roll-pitch slew for auto modes
...
Added reporting of roll, pitch inputs for ACRO, AUTO
2013-02-24 14:42:04 +09: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
609676e26c
Copter: add logging of compass values
...
Removed rarely used ITERM because we didn't have enough bits in the log
mask
2013-02-24 14:41:48 +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
67c69a19ee
Copter: remove baro-only alt hold
...
Saves 8 bytes of memory and more importantly simplifies the alt hold
calculations
2013-02-24 14:41:29 +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
Jason Short
7d5b975da2
AC: Flip code fix
...
Flight tested it today and made some flips. Throttle adjusted in Manual throttle modes. Not tested in AP throttle modes such as alt hold.
2013-02-23 13:14:11 +09:00
Jason Short
abd0fb9099
AC : global static variables should not be initialized to zero
2013-02-22 17:34:18 +09:00
Randy Mackay
9904e9f4db
Copter: update firmware version to 2.9.1-rc1
2013-02-19 13:43:36 +09:00
Randy Mackay
a0b65a262b
Copter: use scaled throttle for accel-throttle's I term
...
Accel throttle's I term is taken from scaled manual throttle
2013-02-01 22:37:25 +09:00
Randy Mackay
06a71af12f
Copter: THR_MID used to scale manual throttle
2013-02-01 22:37:16 +09:00
rmackay9
9c3b9907dd
Copter: bug fix to set sonar_alt_health to zero when disabled
2013-01-31 17:00:28 +09:00
Randy Mackay
ce370bab0c
Copter: rename CUR and CURR to CURRENT for logging
...
Based on user complaint that enable/disable was using CUR while message
was appearing as CURR
2013-01-26 17:20:41 +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
0056bfadd7
Copter: rename ROLL_PITCH_LOITER
...
new name ROLL_PITCH_LOITER_INAV makes it more clear that it should only
be used with the new inertial nav loiter controllers
2013-01-25 23:27:31 +09:00
Randy Mackay
aaecc25ac7
Copter: leonard's inav2
...
Moved loiter controller to navigation.pde
2013-01-25 15:16:35 +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
Randy Mackay
9a09f086d2
Copter: Leonard Hall's inertial nav ver 2
2013-01-23 12:34:49 +09:00
rmackay9
ab1978ad50
Copter: Leonard Hall's inertial nav based loiter
2013-01-22 18:38:00 +09:00
Robert Lefebvre
dde713aaa5
Arducopter: Backing out my changes for a new Loiter Repositioning mode. Leonard and Jonathan's work will trump this.
2013-01-20 21:32:00 +09:00
Randy Mackay
577bf865b3
Copter: update firmware version to 2.9-dev
...
The -dev extension indicates that we are post 2.9 release
2013-01-17 13:03:33 +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
148c227d73
Copter: update firmware version to rc5
2013-01-15 12:17:41 +09:00
Randy Mackay
c1fa850d10
ArduCopter: update firmware version to 2.9-rc4
2013-01-13 20:01:09 +11:00
Randy Mackay
175f69a64f
ArduCopter: smooth throttle when switching from manual throttle to alt hold
...
new set_accel_throttle_I_from_pilot_throttle function copies the
difference between the pilot's throttle and hover throttle to the
accelerometer based throttle controller's I term.
2013-01-13 20:00:59 +11:00
Randy Mackay
fbed8b8861
ArduCopter: alphabetized the contributors list
...
Jonathan Challinger added
2013-01-13 20:00:28 +11:00
Randy Mackay
5965914039
ArduCopter: increase firmware version to 2.9-rc3
2013-01-13 20:00:25 +11:00
Andrew Tridgell
b0c710b67f
Copter: move read_AHRS() before run_rate_controllers()
...
this ensures the rate controllers use the latest data
2013-01-13 20:00:14 +11:00
rmackay9
f25f1cb3bf
ArduCopter: changed alt hold to use the sonar if enabled and healthy
2013-01-13 19:56:19 +11:00
rmackay9
21b6c78d12
ArduCopter: added get_throttle_althold_with_slew to allow slower altitude target changes
...
Improved surface tracking by using slewed althold controller
Reduced sonar mode filter to just 3 elements to reduce lag but at the possible consequence of allowing sonar noise to creep through for people with margin sonar set-ups.
2013-01-13 19:51:47 +11:00
Randy Mackay
87627d883b
ArduCopter: use new logging method for remaining packet types
...
Additional changes include renaming RAW dataflash type to IMU
2013-01-13 00:17:44 +09:00
Andrew Tridgell
af478d52bc
Copter: use the new logging methods for 2 packet types
...
the rest still need to be converted
2013-01-12 18:15:23 +11:00
Andrew Tridgell
0fe7901422
Copter: only print perf data when SCHED_DEBUG is non-zero
2013-01-12 12:06:40 +11:00
Andrew Tridgell
dcb181d2d8
Copter: use new AP_Scheduler library
2013-01-12 12:02:57 +11:00
Andrew Tridgell
2e57720444
Copter: move memcheck_init() earlier in setup
2013-01-11 10:24:21 +11:00
James Bielman
7374e5d84e
ArduCopter: Use 16-bit arithmetic when comparing event tick counters.
...
- On the ARM, once the tick counter wrapped, we stopped running events
because the wraparound case wasn't being handled correctly. Make
sure the comparison is 16 bits to prevent this.
2013-01-09 11:19:52 -08:00
James Bielman
7827a4a54a
ArduCopter: Add AP_HAL_SMACCM support.
...
- Added default configuration to "config.h".
- Added main function to run under FreeRTOS with HWF4.
2013-01-09 11:19:51 -08:00
James Bielman
ab37f833db
MS5611: Fix CONFIG_MS5611_SERIAL definitions.
...
- Make sure the values are defined as integers. We were always using
SPI rather than using I2C when desired.
2013-01-09 11:19:51 -08:00
Andrew Tridgell
e575c5eba0
Copter: read baro at 50Hz
2013-01-09 23:46:05 +11:00
Andrew Tridgell
269804e866
Copter: use barometer.accumulate()
...
this gives us more consistent timing and faster baro reads on APM1
2013-01-09 23:08:19 +11:00
Andrew Tridgell
860f4b2605
Copter: merge the latest 2.9 changes into master
2013-01-08 14:37:40 -08:00
Andrew Tridgell
d11dde578f
Copter: a useful bit of timing debug code
...
enable when looking at main loop timing
2013-01-07 11:07:44 +11:00
Andrew Tridgell
d952ccf968
Copter: added main_loop_ready() function
...
this tells us when the main loop is ready to run. MAVLink won't send a
message if the main loop could run.
2013-01-07 11:07:34 +11:00
Andrew Tridgell
c48714be16
Copter: enabled PX4 sensors
2013-01-05 20:39:31 +11:00
James Bielman
264db3670e
AP_Baro: Add CONFIG_MS5611_SERIAL option to choose between SPI and I2C.
...
- Update ArduCopter and ArduPlane modules to pass the correct serial
driver to the MS5611 driver.
- Update barometer examples, assuming SPI.
2013-01-03 13:48:06 -08:00
Andrew Tridgell
94e3322e24
Copter: fixed build on px4
2013-01-02 22:09:02 +11:00
Andrew Tridgell
e56a7eacec
Copter: don't pass board version to motors
2013-01-02 15:28:34 +11:00
Andrew Tridgell
ead38f917f
Copter: use GRAVITY_MSS
2013-01-02 14:45:08 +11:00
rmackay9
228ad2198f
ArduCopter: update firmware version to 2.9-rc2
2013-01-02 09:55:37 +11:00
rmackay9
677b38a48e
ArduCopter: first implementation of surface tracking using sonar
...
Note: not yet enabled as part of any flight mode
2013-01-02 09:55:37 +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
e850ab7ccd
ArduCopter: add AUTO_VELZ_MIN, AUTO_VELZ_MAX and PILOT_VELZ_MAX to allow better control of climb/descent rate in auto and manual throttle modes
2013-01-02 09:24:31 +11:00
Craig@3DR
0ed25cf719
Global change all references from
...
GPS_PROTOCOL_MTK16
to
GPS_PROTOCOL_MTK19
2013-01-02 09:24:31 +11:00
rmackay9
466097b383
ArduCopter: use inertial nav for current altitude and climb rate
2013-01-02 09:22:51 +11:00
rmackay9
5ba363b007
ArduCopter: move gcs_check function (which sends to ground station) to run when 50hz loop is not running
...
Also removed redundant heartbeat message
2013-01-02 09:21:35 +11:00
rmackay9
bd0e018ca0
ArduCopter: restore auto-trim method but now use AHRS.add_trim
2013-01-02 09:20:08 +11:00
Robert Lefebvre
6e64b1b357
ACM: Precision Loiter RePositioning code.
...
Protected behind a #define
2013-01-02 09:19:39 +11:00
rmackay9
e6519330f4
ArduCopter: remove unused rc_override variables to save 21 bytes
2013-01-02 09:19:17 +11:00
rmackay9
ac8af9a53f
ArduCopter: Leonard Hall's changes to alt hold including adding low pass filter to climb rate
...
get_throttle_rate_stabilized changed to simply update the target altitude instead of talking directly to the rate controller.
get_throttle_althold changed to use sqrt of distance when calculating the desired rate towards the target altitude.
added reset of accel based throttle PID's I term.
unrelated small bug fix from Randy to allow CH6 tuning of throttle rate D term.
2013-01-02 09:19:17 +11:00
rmackay9
d926360e81
ArduCopter: move gcs updates to run only when there are 4ms of spare time before the next 100hz iteration starts
2013-01-02 09:14:31 +11:00
rmackay9
6da68c53a5
ArduCopter: bug fix so AP_Limits does not use up memory if it is disabled
2013-01-02 09:13:42 +11:00
rmackay9
5633164fa0
ArduCopter: bug fix for compass.accumulate check in main loop (millis vs micros issue)
2013-01-02 09:12:40 +11:00
rmackay9
8e032b89ee
ArduCopter: create 2.9 branch and update firmware version
2013-01-02 09:10:40 +11:00
Andrew Tridgell
06357c40f2
Copter: use new functions
2012-12-20 14:53:22 +11:00
Andrew Tridgell
a02f723f3a
Copter: fixed HIL builds
2012-12-20 14:52:37 +11:00
Andrew Tridgell
9e986801c9
Copter: fixed SITL for ArduCopter
2012-12-20 14:52:34 +11:00
Andrew Tridgell
08b1c2d590
Copter: fixed GPS init
2012-12-20 14:52:33 +11:00
Pat Hickey
d5d97be837
ArduCopter: add param loader properly implement parameters
...
* thanks tridge!
2012-12-20 14:52:29 +11:00
Pat Hickey
5e63491994
ArduCopter: fix issues with HAL/HIL mixup and baro/compass instances
2012-12-20 14:52:29 +11:00
Pat Hickey
21d0da84a6
ArduCopter: temporarily disable AP_Param::setup_sketch_results
...
* rebased away tridge's AP_Param changes as they seemed possibly buggy?
2012-12-20 14:52:29 +11:00
Pat Hickey
a0151aa66c
ArduCopter: fix cliSerial null ptr, do AP_Param::setup_sketch_defaults
...
* plus make SITL DataFlash available.
2012-12-20 14:52:29 +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
7af03127f6
ArduCopter: more work
2012-12-20 14:52:28 +11:00
Pat Hickey
70f4739522
ArduCopter: more fixes
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
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
19ae5c30eb
ACM : Formatting
2012-12-13 20:12:39 -08:00
rmackay9
047f848cc7
ArduCopter: remove ThirdOrderCompFilter from list of includes
2012-12-10 09:14:44 +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
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
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
0eb57bf93d
ACM: TradHeli
...
Fix to make update_throttle_cruise work with stab_throttle scaling.
2012-12-08 15:12:39 -05: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
99b32a39c4
ArduCopter: InertialNav time constant CH6 tuning changed to only update enabled axis
2012-12-07 13:01:40 +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
072ffec493
ArduCopter: allow INERTIAL_NAV to be enabled separately for horizontal and vertical position
2012-12-06 10:31:41 +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
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
1d589c0b7d
ACM: TradHeli
...
Fixes for Attitude rate controllers.
2012-12-04 14:42:04 -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
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
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
Andrew Tridgell
5818aaad42
Copter: fixed build error
...
thanks to Marco for pointing this out
2012-11-24 20:39:35 +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
Andrew Tridgell
bcae83c4f6
ACM: make it possible to run CLI on radio port in ArduCopter
2012-11-21 21:41:34 +11:00
rmackay9
07a7a1acd8
ArduCopter: replaced digitalRead and digitalWrite with faster calls
...
improved performance logging to dataflash
2012-11-19 01:16:07 +09:00
Robert Lefebvre
9c6e914bf8
Added Leonard to Contributor List.
2012-11-16 15:43:03 -05:00
rmackay9
258442770d
ArduCopter: flight mode changes ignored while in throttle failsafe
...
reaction time to flight mode changes (when not in failsafe) reduced from 0.6 seconds to 0.1 seconds
2012-11-13 12:50:51 +09:00
rmackay9
dcd98eee78
ArduCopter: remove some variables no longer required with introduction of AP_state
2012-11-12 12:41:25 +09:00
rmackay9
ac5dcc8d49
ArduCopter: remove last remanants of rate_d to resolve compiler warning of unused variables
2012-11-12 12:35:58 +09:00
Jason Short
c1b759d5d8
ACM: Added a speed filter for throttle cruise, increased alt change rate for alt hold, increased the max climb_rate reporting
2012-11-11 18:17:33 -08:00
Jason Short
9e0b0b9fcd
ACM : loging ApState at faster rate
2012-11-11 18:00:10 -08:00
rmackay9
bcb9519fd7
ArduCopter: renamed system bitmap to ap_system to resolve desktop compile issues
2012-11-11 22:42:10 +09:00
rmackay9
95f6357d35
ArduCopter: fix APM2 build
2012-11-10 22:06:23 +09:00
Jason Short
e4cec91e59
ACM : Arducopter Added ap state bitfield, system bitfield
2012-11-09 22:15:15 -08:00
Jason Short
cdabc3878b
ACM: Arducopter - remove the stabilize D scheduling
2012-11-09 22:15:15 -08:00
Jason Short
d2a0913b2d
ACM : formatting
2012-11-09 22:15:15 -08:00
rmackay9
b13264c884
AP_InertialNav: reanme AP_InertialNav and ThirdOrderCompFilter classes to resolve desktop build compiler errors
2012-11-07 22:24:00 +09:00
rmackay9
ad431d2f25
ArduCopter: fixed HIL build caused by optical flow semaphore changes
2012-11-07 21:13:34 +09: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
rmackay9
a1b4ec6d0e
ArduCopter: move to use new INS library instead of IMU library
2012-11-07 19:21:09 +09:00
Jason Short
e138b0a1d7
ACM: Added simple mode bearing logging for bug hunting
2012-10-28 12:12:38 -07:00
rmackay9
78316adf75
ArduCopter: replace Serial.print with Serial.print_P to save memory.
...
Includes replacing flight_mode_strings with print_flight_mode function.
SendDebug macro replaced with direct Serial.print_P calls.
2012-10-22 16:45:24 +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
a37a9b5b67
ArduCopter: updated firmware version to 2.8
2012-10-20 09:50:53 +09:00
Pat Hickey
d4bb8a10d7
Update ArduCopter and ArduPlane dependencies on AP_Menu
2012-10-18 20:53:39 -07:00
Robert Lefebvre
592f4040fd
Changed RLT Yaw Mode for TradHeli. Also a few comment cleanups.
2012-10-18 16:39:05 -04:00
rmackay9
1c08e48b4b
ArduCopter: updated firmware version to 2.7.4-Zeta
2012-10-18 23:30:28 +09:00
rmackay9
583f2e49a3
ArduCopter: integrated Leonard Hall's improved ACRO mode
2012-10-18 23:24:34 +09:00
rmackay9
d2912e4e01
ArduCopter: added spi_semaphore to stop conflicts between dataflash and optical flow sensor on APM1
2012-10-18 17:04:44 +09:00
rmackay9
9e3c2dd105
ArduCopter: updated firmware version to 2.7.4-Epsilon
2012-10-17 19:27:11 +09:00
rmackay9
8519fe55d3
ArduCopter: more out-of-date commented out code removed
2012-10-17 19:25:14 +09:00
rmackay9
956b347d68
ArduCopter: updated firmware version to 2.7.4-Delta
2012-10-17 10:20:41 +09:00
rmackay9
4016f3ba85
ArduCopter: update version information ahead of testing
2012-10-15 18:15:38 +09:00
LeonardTHall
d7b7e1cefa
New Yaw controller using rate feed forward and stabilize.
...
Signed-off-by: LeonardTHall <LeonardTHall@gmail.com>
2012-10-15 11:37:49 +09:00
rmackay9
997fe85880
ArduCopter: fixed acro mode
...
Changes included:
Removing earth frame roll_rate_trim, pitch_rate_trim and yaw_rate_trim.
Switch ACRO mode to use YAW_ACRO instead of YAW_HOLD.
Changed YAW_ACRO to use stabilize yaw when axis_enabled.
Reset ACRO roll, pitch and yaw targets to current attitude when first entering ACRO.
2012-10-14 17:47:46 +09:00
rmackay9
1e79d265a1
ArduCopter: remove unnecessary (probably slightly harmful) extra barometer read
...
The barometer reads including reading temperature was all moved to a timer but this extra read (originally to read the temperature) was probably forgotten.
2012-10-11 18:31:10 +09:00
rmackay9
cf3e49eea2
ArduCopter: changed sin_pitch and sin_roll to faster equivalents
2012-10-11 17:54:42 +09:00
Andrew Tridgell
601fe89baa
ACM-HIL: fixed optflow declaration
2012-10-11 11:51:25 +11:00
Pat Hickey
da374f9043
ArduCopter: Provide AP_Semaphore instance for SPI3 bus on APM2.
2012-10-09 11:39:39 -07:00
rmackay9
c0ad98be31
ArduCopter: failsafe added to shutdown motors if mainloop fails
2012-10-09 12:30:17 +09:00
rmackay9
61d0c8e35c
ArduCopter: added AP_Semaphore to list of includes
2012-10-06 12:41:58 +09:00
rmackay9
e375a27058
ArduCopter: prioritise rate controllers, rate controller targets converted to body frame
2012-10-03 14:10:31 +09:00
rmackay9
95763e610b
ArduCopter: allow DMP to run in parallel with DCM
...
Parallel DMP can be enabled by #define SECONDARY_DMP_ENABLED in APM_Config.h
New DMP dataflash log type added to allow easy comparison with DCM
2012-09-30 00:25:40 +09:00
rmackay9
41fbb19cf5
AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
...
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
rmackay9
ed881117e0
ArduCopter: updated version to 2.7.4-Beta
2012-09-25 23:39:15 +09:00
rmackay9
b2f12c4854
ArduCopter: optical flow initialisation changes now that optical flow library automatically works on APM1, APM2 and APM2.5
2012-09-24 18:39:33 +09:00
rmackay9
93ae29a3e9
ArduCopter: added throttle curve (although disabled by default) for all multicopters
2012-09-18 23:05:08 +09:00
Andrew Tridgell
5fd39bb928
ACM: updates for new GPS detection
...
a GPS can now be attached after startup
2012-09-17 14:45:47 +10:00
rmackay9
303ca11c4c
HIL: changes to fix HIL for ArduCopter after recent timing changes.
...
Changes include using AP_PeriodicProcess and calling imu.init even in HIL mode
2012-09-15 18:42:56 +09:00
rmackay9
9e66b555cb
ArduCopter: removed INSTANT_PWM from ArduCopter and AP_Motors library
2012-09-13 21:31:13 +09:00
Jason Short
834f961409
ACM : Fix enduf
2012-09-10 21:25:53 -07:00
Jason Short
4c8e257ea2
ACM : forced setup_show to dump params during log dump for better analysis.
2012-09-10 20:52:30 -07:00
Jason Short
34e07c826f
ACM : Added centralized Iterm logging at a lower rate. Logs all iterms.
2012-09-10 20:26:48 -07:00
Andrew Tridgell
841d2700b6
ACM: use spare CPU cycles to read the magnetometer
2012-09-10 11:38:18 +09:00
rmackay9
fd110a2723
ArduCopter: modified mainloop timing to be in sync with the arrival of new data from the IMU.
...
This reduces the maximum delay between when new sensor data arrives and when it is actually used by about 5ms.
2012-09-10 11:37:53 +09:00
Andrew Tridgell
f97104b435
ACM: use compass.accumulate() in ArduCopter
...
this gives us a much less noisy magnetometer
2012-09-08 10:06:04 +10:00
rmackay9
5073e56c06
ArduCopter: upgraded firmware version to 2.7.3
2012-09-02 12:58:16 +09:00
rmackay9
c9d34c1737
ArduCopter: fixes to allow AP_Mount to work on APM1 with original default channels and fix to reenable support for 3-axis gimbals on APM2.
...
Channels 5 to 11 changed to RC_Channel_aux.
Removed channel 9 because APM_RC doesn't support it in any case.
Updated EEPROM format version to 119 because of the change to RC_Channel_aux and because k_param_rc_11 moved to be after k_param_rc_10.
2012-09-02 12:51:23 +09:00
Craig Elder
274b2e2143
Arducopter: Release 2.7.2
2012-08-31 19:18:10 -07:00
Jason Short
082913efd4
ACM : revert back to the 2.6 climb rate calc
...
The current filter is outputting wild oscillations.
2012-08-28 21:22:07 -07:00
Craig Elder
d8a2bfb9e8
Arducopter: Preparing for 2.7.2 Release
2012-08-28 18:30:41 -07:00
Jason Short
9d64bea2ef
ACM: Altitude Adjust
2012-08-28 15:40:08 -07:00
Jason Short
98cc65862d
ACM : Log Timing
2012-08-28 15:40:08 -07:00
uncrustify
4021a64747
uncrustify ArduCopter/ArduCopter.pde
2012-08-21 19:19:50 -07:00
Andrew Tridgell
6d11940ada
AHRS: removed Quaternion build support from APM/ACM/rover
2012-08-22 10:42:21 +10:00
Andrew Tridgell
e9928e78de
ACM: fixed TradHeli build
2012-08-22 09:55:31 +10:00
Robert Lefebvre
575b99b4be
TradHeli: Creating Flybar Acro mode.
2012-08-21 16:54:01 -04:00
rmackay9
75459b09be
ArduCopter: changed reset_throttle_counter to uint8_t to get rid of overflow bug that was preventing target altitude from being locked in after pilot input down throttle.
2012-08-19 11:50:35 +09:00
Jason Short
988d0c98fc
ACM : Alt hold adjustment - made angle boost work during alt hold changes.
...
increased length of delay when reverting to automatic hold to deal with latency of baro sensor
2012-08-18 09:30:46 -07:00
rmackay9
5b6f7f0012
ArduCopter: modified altitude hold so that 1 second slow down period is executed after pilot moves throttle back into deadzone
2012-08-18 21:45:49 +09:00
Jason Short
770956a3fd
ACM : Made control_roll and pitch global for logging; made yaw towards waypoint use initial angle and not a recalculated angle to deal with wiggles as we approach WP
2012-08-16 15:39:50 -07:00
rmackay9
36f947acb9
ArduCopter: changed all "int" to "int16_t" and a few "long"s to "int32_t".
...
Also moved "simple_counter" variable from global scope to the "update_simple_mode" function which is the only place that it's actually used.
2012-08-16 20:04:46 +09:00
Jason Short
a4bc5950cf
ACM: Added a filtered version of Location for GPS lag.
...
I did this because when you are close to a WP the Yaw angle can go a bit wacky as the location jumps around. The filtered loc is only used in the wp_distance calculation now.
2012-08-14 14:11:51 -07:00
Jason Short
993c89c4f8
ACM: Revved the version
2012-08-14 14:11:51 -07:00
Jason Short
b01a71c4b9
ACM: Toy mode updates - added second toy mode
2012-08-11 22:37:27 -07:00
Andrew Tridgell
81440a1b09
AHRS: fixed build
...
AP_Airspeed.h is now needed to build AHRS
2012-08-11 12:22:55 +10: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
02649f3f11
ACM : Arducopter.pde
...
command_nav_index upped to in16t for negative number
renamed trim flag > CH7_flag
Added fast_corner var
removed unused alt vars
Alt hold I term update
2012-08-09 16:59:43 -07:00
Amilcar Lucas
0b0b9c29a2
Allow fully independent operation of two AP_Mount instances
2012-08-08 23:11:23 +02:00
Amilcar Lucas
9cc705939a
Add a second mount instance
2012-08-08 23:07:25 +02:00
Andrew Tridgell
fb26160d3b
ACM: change to use get_bearing_cd() instead of get_bearing()
2012-08-08 12:12:30 +10:00
Andrew Tridgell
c2a4d59132
AP_Param: update ArduCopter core for new AP_Param interface
2012-08-08 12:11:57 +10:00
Amilcar Lucas
d9f1140278
ArduCopter: Use generic channel names for AP_Mount servos.
...
This simplifies mission planner, the same code can be used for plane and copter now.
2012-08-06 23:33:51 +02:00
Amilcar Lucas
f14237126a
Add me :)
2012-08-06 00:40:12 +02:00
Amilcar Lucas
107155fa1a
AP_Mount: Allow using any RC channel to control any of the mount axes.
...
This has the added benefit of saving 60 bytes and simplifying Mission Planner gui.
Moved some code from RC_Channel_aux to AP_Mount class
The servos get written by the update_mount_position() function, this simplifies main()
PS: The beauty of using libraries: I did not have to touch a single line of ArduPlane's code!
2012-08-05 23:48:57 +02:00
Amilcar Lucas
b8c7b8a786
RC_Channel: Allow each channel to know who they are, this simplifies the enabling and output function calls.
2012-08-05 23:08:31 +02:00
Amilcar Lucas
4ba847c449
The mount type must be updated periodically
2012-08-04 18:44:08 +02:00
rmackay9
c091c8e0e6
ArduCopter: bug fix to reset yaw target when zero and when in stabilize or acro mode.
2012-08-01 12:15:02 +09:00
Andreas M. Antonopoulos
de85442c36
AC2.7.1: Updated version and tag
2012-07-31 13:11:17 -07:00
rmackay9
5cb4a88292
ArduCopter: reset target yaw when throttle is zero (except if failsafe has been triggered)
2012-07-28 23:05:05 +09:00
rmackay9
670a66667f
ArduCopter: fixed HIL build by removing ability to change _kp and _kp_yaw gains (used for accel and gyro sensor mixing)
2012-07-28 16:22:35 +09:00
rmackay9
014f5aae99
ArduCopter: added DMP_ENABLE #define and CH6 tuning value for AHRS_KP
2012-07-28 14:21:07 +09:00
Michael Oborne
f4705577c8
AC fix sitl attitude hil build
2012-07-24 21:18:36 +08:00
Andreas M. Antonopoulos
80cf794c86
AC: ArduCopter 2.7 release candidate - updated THISFIRMWARE constant.
2012-07-21 17:52:06 -07:00
Jason Short
b17eb7f768
ACM: Fixed Baro rate patch to work with Sonar and added simple filter
2012-07-21 16:45:00 -07:00
Jason Short
9f6e1347b6
Ardcucopter: RTL distance check update, reset I terms fixed.
2012-07-20 13:27:35 -07:00
Jason Short
2b20c85279
Arducopter: cleanup, skip out of throttle control when flipping.
2012-07-19 22:35:21 -07:00
Jason Short
91062b56af
Arducopter.pde: Increased the throttle Hold altitude control
...
simplified Yaw reset
2012-07-19 17:38:25 -07:00
Jason Short
1efc9eac58
Arducopter: Adjust landing speed
...
removed commented out calc_loiter_pitch_roll calls
Changed updateRTL to use 1m be default instead of wp_radius to avoid poor loiter entry speed.
2012-07-19 09:48:31 -07:00
Jason Short
c9851344e7
Arducopter
...
removed old Var
2012-07-18 22:57:10 -07:00
Jason Short
cb1cdcd4a7
Arducopter: New Alt control code
...
Uses a new method to manage altitude changes. Alt hold controller was split into a hold and a rate controller just like navigation. Changing alt is done by specifying a climb rate.
Interactive alt hold is now simplified and is an 80cm climb or descent.
2012-07-18 22:57:10 -07:00
Jason Short
5965632888
Arducopter: Flip mode
...
Flip mode graduates to pre-compiled option
2012-07-18 22:57:10 -07:00
rmackay9
b691c3f658
ArduCopter.pde: added call to set_manual_rc_channel to allow pilot's channel 6 to control pitch.
...
This initialisation code should be moved to init_ardupilot and/or into the AP_Mount library.
2012-07-18 23:49:09 +09:00
Andreas M. Antonopoulos
a976a59c88
AP_Limits: Configuration defaults moved to config.h. Fixed AP_LIMITS==DISABLED handling.
2012-07-16 11:46:43 -07:00
rmackay9
c495a5f36e
ArduCopter: added enable_out_ch and output_ch calls for rc_camera_roll, pitch and yaw servos so they actually move
2012-07-15 16:38:28 +09:00
Andreas M. Antonopoulos
c73f7ef3ab
AP_Limits library, provides modular "limits" such as altitude and geo-fencing.
2012-07-14 19:26:17 -07:00
Jason Short
e3af0c7920
Arducopter: Yaw stop fix
2012-07-14 12:23:10 -07:00
Robert Lefebvre
59e133235f
Implementing Yaw Fix. Tried to blend with Jason's changes.
2012-07-14 00:24:22 -04:00
Jason Short
4af392290b
Circle_WP: Fix for Yaw toward center, fix for transit to Circle WP from a distance
2012-07-13 19:29:36 -07:00
Jason Short
7b746cf5e1
Arducopter: Wrong define used, caused Copter to Yaw to home when flying missions
2012-07-13 12:51:38 -07:00
Jason Short
d8ff5dcfab
Arducopter: Fix circle_WP
2012-07-12 09:22:20 -07:00
Jason Short
293f17902b
Arducopter:Arducopter.pde
...
switched over to barometer.get_climb_rate() * 100
removed +home.alt calcs since home is always 0 altitude
2012-07-10 21:53:38 -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
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
f019d41729
arducopter.pde
...
Timer was set =0 at initialization.
2012-07-09 13:13:32 -07:00
Jason Short
8ccda519fa
Arducopter.pde:
...
Added note about -1 to disable feature
Set RTL_Atl by default after reaching home in case we're at the wrong alt.
increased speed of Yaw rotation for WPs
2012-07-03 17:21:46 -07:00
Jason Short
e0b3309500
Yaw mode:
...
Improved hybrid Yaw mode:
- uses rate controller rather than as fast as possible
- waits 1.5 seconds before entering hold
- bounce free
2012-07-01 13:40:12 -07:00
Jason Short
c5617eeeac
Arducopter.pde_RTL:
...
added a new RTL function that goes into Loiter, first, checks if we have reached RTL_Altitude, then enters WP mode to come home.
Removes Approach mode. Uses Auto_Approach value to decide if we should land or descend to a certain altitude
2012-07-01 13:40:11 -07:00
Jason Short
2e8eee9306
Added code for self centering throttle - disabled by default.
2012-07-01 13:40:11 -07:00
Jason Short
4d6ccccef5
Circle_WP distance check fix
2012-06-29 21:20:28 -07:00
Jason Short
668135ea8b
Arducopter.pde: Added Toy mode refinements
2012-06-29 21:20:27 -07:00
Jason Short
e036bee424
Aeducopter.pde: Toy mode updates
2012-06-29 21:20:27 -07:00
Andrew Tridgell
55092c25a6
SITL: enable the SIM_* parameters in ArduCopter and ArduPlane
2012-06-29 15:10:52 +10:00
Adam M Rivera
dadc7d5a7d
ArduCopter: Loiter Timer should have been set when the approach altitude was set. Previously, land had to be enabled before auto approach would work.
2012-06-28 20:34:53 -05:00
Andrew Tridgell
33440567e6
ACM: ArduCopter updates for new compass interface
2012-06-27 16:01:50 +10:00
Andrew Tridgell
dae1a57dc5
ACM: adapt the ArduCopter code for new barometer interface
2012-06-27 16:01:50 +10:00
Andrew Tridgell
b676caa626
ACM: enable GPS in AHRS for ArduCopter
...
this is an experiment in centripetal correction for multicopters
2012-06-27 16:01:49 +10:00
Jason Short
c76ac4543b
Added user editable define for Super simple radius
2012-06-26 10:38:46 -07:00
Jason Short
80d15368bc
Arducopter.pde : Added Approach mode, added "Toy" mode fun code I'm playing with.
...
Added landing code to make landing happen closer to home loc
Added check for distance to Loiter WP before overriding a new Loiter position.
Moved calc_loiter_pitch_roll() to 50 hz.
removed the nav_bearing var - not used with new crosstrack.
2012-06-25 23:08:25 -07:00
Jason Short
6020f6d9fa
Added throttle_min as a user definable param
2012-06-20 14:58:34 -07:00
rmackay9
c62cc4844e
ArduCopter: updated firmware to simply 2.6 (i.e. removed Epsilon) ahead of the release
2012-06-15 00:42:59 +09:00
Jason Short
c42f9ece43
Inertial Control
...
I added inertial navigation based on the simulator data. This is an option only available if you compile with Arduino and set
#define INERTIAL_NAV ENABLED
in the APM_Config.h file.
This has been tested for one real flight and did not crash my quad, but consider it very alpha. The quad may be unpredictable at first until the error correction fixes poorly calibrated accels. Be Careful.
Most of the real work is in the inertia file, but the error correction, new variable defines and calibration calls are sprinkled throughout.
The Log should record RAW messages with special debugging values.
2012-06-13 22:34:45 -07:00
rmackay9
e1acf21381
ArduCopter: updated firmware version to 2.6 Epsilon
2012-06-12 23:22:57 +09:00
Jason Short
f5a85d48a0
Added Angel's name to contrib list
2012-06-10 12:38:22 -07:00
rmackay9
aeaebb21d5
ArduCopter: updated firmware version to 2.6 Delta ahead of the next round of testing (and hopefully soon a release)
2012-06-08 21:54:09 +09:00
rmackay9
70b04d9427
ArduCopter: updated firmware description to 2.6 Gamma
2012-06-05 21:28:13 +09:00
Jason Short
1b9f75c844
Updates to Flip:
...
Ability to abort flip mode if things go wrong
init function to re-enter flip mode if aborted
2012-06-03 22:15:19 -07:00
rmackay9
72d76558a7
ArduCopter: Ensure update_GPS does nothing when gps is disabled.
...
This fixes a bug in which an APM without a GPS would not work because it would constantly scan for a valid GPS long after it should have given up and moved on.
2012-06-03 23:48:45 +09:00
rmackay9
fd6b21d0c7
ArduCopter: updated firmware version to 2.6Beta in preparation for beginning of testing
2012-06-03 17:02:35 +09:00
rmackay9
4544b37fec
ArduCopter: updated firmware version to 2.6Beta in preparation for beginning of testing
2012-06-03 16:59:23 +09:00
Robert Lefebvre
5f058fb9b2
TradHeli: Incorporating Ext ESC Control
2012-05-30 21:50:25 -04:00
Jason Short
dec6f0ca62
When RTLing, force home as the final location for loiter.
2012-05-30 11:06:41 -07:00
Jason Short
22065e3f3f
Broken timer - removed
2012-05-29 12:56:38 -07:00
Jason Short
7c6f766251
Speed up automatic disarming to 25 seconds for safety.
...
renamed AUTO_ARMING_DELAY to AUTO_DISARMING_DELAY
2012-05-29 12:41:35 -07:00
Jason Short
f491f5e9ca
Removed references to a takeoff timer
2012-05-29 11:28:40 -07:00
Jason Short
08bf04dd08
pulling throttle low in flight turns out to be more common than thought. Removed clearing of takeoff_complete flag. This is still cleared during disarm which is automatic after 30 seconds of no throttle.
2012-05-29 11:25:04 -07:00
Jason Short
09f4a16bfb
changed the way takeoff complete is figured. Looking for high throttle.
2012-05-29 11:25:04 -07:00
Jason Short
5754f97433
reversed circle_WP calculation so the next_WP refers to the destination around the circle and circle_WP refers to the center. The intent is to make it easier to see via ground station.
2012-05-27 09:21:20 -07:00
Jason Short
7df1aa2914
Arducopter.pde : setting rtl_approach_alt above 1 would force auto landing even if auto-landing was disabled.
2012-05-23 22:00:56 -07:00
Robert Lefebvre
4e4ff84cf1
Updates to CopterLEDS
...
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Jason Short
f6d8a18182
Added note
2012-05-21 09:58:23 -07:00
Jason Short
8d075015e1
added check for duplicate time-stamped GPS messages.
2012-05-18 09:54:18 -07:00
Jason Short
7e190c6f5c
Arducopter.pde :
...
removed unneeded d_rate_filters
updated Nav routine to handle faster GPS updates
moved calc_XY_velocity to GPS read
added check for duplicate GPS reads
2012-05-17 11:05:05 -07:00
Jason Short
d1cd04486a
removed retro loiter code since Angel has a branch now.
...
shrank speed filter to avoid latency
removed unused forward estimator code
placed code for switchover to gps.groundspeed at 1.5m/s
added clamp for D term when below .5m/s to eliminate noise
added hybrid I-term based on speed error and position
changes Loiter D term to use position rather than acceleration to avoid noise
2012-05-15 22:14:23 -07:00
rmackay9
357d6c2d9b
ArduCopter: bug fix for reversing tri servo
...
Extended AP_MotorsTri class to take in pointer to rc_tail servo (rc_7) and we use this servo's REV parameter to determine whether to reverse the output to the tail servo or not
2012-05-13 12:36:46 +09:00
rmackay9
2f74004fcb
ArduCopter: updated version to 2.5.5
2012-05-13 08:47:43 +09:00
Andrew Tridgell
4fee26437b
MAVLink: make ACM build with MAVLink 1.0 possible in arduino GUI
2012-04-24 22:24:58 +10:00
Adam M Rivera
b2a7227ae7
ArduCopter/Navigation: Updated code to reference the new g.retro_loiter param instead of the compile define.
2012-04-23 00:19:18 -05:00
Adam M Rivera
97040a7b3a
Merge branch 'master' of https://code.google.com/p/ardupilot-mega into auto-approach
2012-04-23 00:03:37 -05:00
Jason Short
e22832a832
Added a union for casting floats to ints and back when storing Floats to the DataFlash
2012-04-21 15:17:09 -07:00
rmackay9
c993049c48
ArduCopter - combined CH6_DAMP and CH6_STABILIZE_KD tuning parameters to avoid confusion
2012-04-21 23:24:57 +09:00
rmackay9
3e95ade004
ArduCopter - changed optflow object to be APM2 version if necessary
2012-04-21 20:15:55 +09:00
Adam M Rivera
7d13371acf
Merge branch 'master' of https://code.google.com/p/ardupilot-mega into auto-approach
2012-04-20 11:45:38 -05:00
rmackay9
f0a9209935
ArduCopter - regressed version back to 2.5.4
2012-04-20 21:58:32 +09:00
Adam M Rivera
c233defbe6
Merge branch 'retro-loiter' of https://code.google.com/r/a432511-wip into auto-approach
...
Conflicts:
Tools/ArdupilotMegaPlanner/Common.cs
2012-04-19 11:08:34 -05:00
Adam M Rivera
24363ccb83
Merge branch 'master' of https://code.google.com/p/ardupilot-mega into retro-loiter
2012-04-19 10:17:36 -05:00
Adam M Rivera
d29f1ef331
Loiter: Made the "retro loiter" routines configurable. Add RETRO_LOITER_MODE ENABLED to APM_Config.h to enable the older loiter shtuff.
2012-04-19 10:16:29 -05:00
Adam M Rivera
a7bc3d2cc6
Arducopter.pde: Moved gps to 10hz. Changed calc_XY_velocity to calc_GPS_velocity.
2012-04-18 23:07:35 -05:00
Adam M Rivera
f6d81a16c2
ArduCopter: Added code to prevent mode from switching to APPROACH on every loiter.
2012-04-16 16:29:54 -05:00
Adam M Rivera
56a00fa1f7
ArduCopter: Changed millis compare to use new config value for approach delay.
2012-04-16 14:04:30 -05:00
Adam M Rivera
f9affb3295
Merge branch 'master' of https://code.google.com/p/ardupilot-mega into auto-approach
...
Conflicts:
ArduCopter/Parameters.h
2012-04-16 10:23:01 -05:00
Adam M Rivera
41702aca94
ArduCopter: Updated param name from auto_land_timer to loiter_timer, because it could really be used for more routines like auto-approach. Added timer before approach (20s).
2012-04-16 10:07:57 -05:00
rmackay9
870b5e5f75
ArduCopter - CH6 Tuning - added AHRS_YAW_KP parameter as 30. Now you can easily set the amount that the mag is used to correct the gyro based yaw estimate in the DCM
2012-04-16 23:47:57 +09: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
2954bf6f76
ArduCopter: Added check to make sure user defined approach alt is at least 5.
2012-04-15 16:58:22 -05:00
Adam M Rivera
a24b7bcf14
ArduCopter: Added check to g.rtl_approach_alt, which if greater than zero will initiate an approach to the target alt rather than land.
2012-04-15 16:54:43 -05:00
rmackay9
a71ed6abec
ArduCopter - updated firmware version to "2.6 Beta"
2012-04-14 14:26:44 +09:00
rmackay9
24b81db20e
ArduCopter - LEDS - main code to support COPTER_LEDS.
...
Code by Robert Lefebvre
2012-04-12 22:55:44 +09:00
rmackay9
54a0709759
ArduCopter - add includes for new AP_Motors classes.
...
Remove global motor_filtered and motor_out arrays.
Removed all global heli variables.
replace "motor_armed" with "motors.armed()"
removed output to rc_4 for tri because this is now handled by AP_MotorsTri class
2012-04-04 22:50:43 +09:00
Andrew Tridgell
c0a54762c6
MAVLink: port the new adaptive flow control to ArduCopter
...
This allows for arbitrary stream rates, and supports flow control if
you are using a 3DR radio
2012-04-02 11:18:53 +10:00
rmackay9
75d7308fb4
ArduCopter - CH6 tuning - changed Roll/Pitch Rate D tuning to use the user supplied tuning range instead of the range / 100.
...
also changed heli_ext_gyro_gain to make it use the tuning range directly.
2012-03-31 09:28:25 +09:00
Andrew Tridgell
0bc604f030
ACM: removed FORCE_AUTOMATIC_DECLINATION_UPDATE
...
we now have the EEPROM option COMPASS_AUTODEC instead
2012-03-30 14:25:27 +11:00
Adam M Rivera
51b70e4d36
ArduCopter: Changed implementation of configuration value for automatic declination. There is now a FORCE_AUTOMATIC_DECLINATION_UPDATE that when enabled will update the declination on every GPS 3D fix regardless of whether or not the user saved a value to the EEPROM. By default the declination will only be set by the automatic declination routine if the user has not saved a declination to the EEPROM.
2012-03-30 14:25:06 +11:00
rmackay9
0efb0e5b4d
ArduCopter - added CH6_STABILIZE_KD tuning value
2012-03-29 21:09:41 +09:00
rmackay9
599cea21bb
Added multiple new tuning parameters to the inflight channel 6 tuning feature:
...
#define CH6_YAW_KI 24
#define CH6_ACRO_KP 25
#define CH6_YAW_RATE_KD 26
#define CH6_LOITER_KI 27
#define CH6_LOITER_RATE_KI 28
2012-03-28 23:58:58 +09:00
Andrew Tridgell
e956e21e7d
ACM: enable the new compass offset nulling in ACM
2012-03-27 15:37:24 +11:00
rmackay9
67cf7b9eed
ArduCopter - updated firmware version to 2.5.3
2012-03-25 09:13:51 +09:00
rmackay9
63b96c0153
ArduCopter - altitude hold - ensure throttle_avg is initialised from g.throttle_cruise parameter
2012-03-23 23:48:24 +09:00
rmackay9
89576a281a
ArduCopter - updated to firmware version to 2.5.2 to avoid confusion with post 2.5.1 versions posted to downloads area
2012-03-23 23:12:49 +09:00
rmackay9
1dd554c333
ArduCopter - updated version to 2.5.1
2012-03-20 17:08:18 +09:00
Andrew Tridgell
547b4ed55b
AHRS: adapt ArduCopter for new AHRS framework
2012-03-19 17:29:02 +11:00
Jason Short
c5344a2a85
ACM: Arducopter.pde - Added a constraint to the NO_NAV mode to be similar to the Loiter and rate nav modes.
2012-03-18 22:31:22 -07:00
rmackay9
9841cb0335
ArduCopter - small change to ensure both roll and pitch commands are zero before switching out of loiter_override (loiter override becomes true when roll+pitch command is greater than 5 degrees and switches back to false when both become zero)
...
- remove incorrect comments about when loiter target position is reset.
2012-03-18 15:16:04 +09:00
Jason Short
48a0c9a818
ACM: Small fix to nav_throttle to prevent too fast of a landing.
2012-03-16 14:10:19 -07:00
Jason Short
1c0b28c956
Fixed Scaling bug in Sonar mixing
2012-03-16 14:10:19 -07:00
analoguedevices
86eff20d5d
Rev'ed version number to 2.5. Added more credits
2012-03-15 02:38:54 +00:00
Jason Short
6f8b97bf6a
ACM: Added constraints for invalid climb rates. Robert Lefebvre had a bad sonar and very invalid rates crept into the system.
2012-03-13 21:31:16 -07:00
Jason Short
4315c06f34
Lowering the D filter for less latency and less oscillation.
2012-03-13 12:58:46 -07:00
Jason Short
7953808d14
ACM: Larger filter for Loiter D
2012-03-13 10:23:30 -07:00
Jason Short
0ab6b6e592
ACM: Rate_d filter for PID loop of Loiter.
2012-03-11 23:21:49 -07:00
Jason Short
77fe7de55d
ACM: The I term in update_nav_wp with the no_nav condition was pulling from the wrong PID loop and was essentially 0 all the time.
2012-03-11 23:21:49 -07:00
Andrew Tridgell
2a03a0584f
AP_Declination: disable library when AUTOMATIC_DECLINATION is not ENABLED
...
unfortunately this library was causing avrdude to fail to load the hex
to my APM2. Until we work out why, it's disabled.
2012-03-11 21:46:41 +11:00
Adam M Rivera
d3667faef4
AP_Declination: Added call to compass.set_initial_location if the compass is enabled when the 3D fix is obtained.
...
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Jason Short
62c2aa4924
ACM: Added Loiter D tuning
2012-03-10 14:17:57 -08:00
Jason Short
0671bb9168
ACM: Firmware rev
2012-03-10 12:45:03 -08:00
Jason Short
29d6085bab
added Force_new_altitude call for alt hold
2012-03-10 12:37:54 -08:00
Jason Short
4ba600c0c5
upped throttle manual boost to 225
2012-03-10 12:37:28 -08:00
Andrew Tridgell
ef771fecdc
ACM: removed a lot of the special case code for quaternions
2012-03-10 10:34:31 +11:00
Andrew Tridgell
69c29d35ce
ACM: change DCM loop to 100Hz
...
On my APM2 quad this seems to give better results
2012-03-10 10:34:31 +11:00
Andrew Tridgell
7e4c8592ff
ACM: make it possible to build ArduCopter with quaternions
2012-03-10 10:34:29 +11:00
Andrew Tridgell
9bff4e2c4c
ACM: only call the fast loop if the imu has new data
...
this prevents us spinning waiting for the sensors to gather some data
2012-03-10 10:34:29 +11:00
Jason Short
486c56ce41
Consolidated Barometer pressure sensing to a single filter based on Randy's new filter class.
2012-03-08 23:13:04 -08:00
Jason Short
730476fdfd
ACM -
...
Implemented automatic ranging of Alt Hold gains. Works well in simulator and testing.
- alt hold estimation moved to 50 hz
- simple fixed observer calc for smooth and accurate climb rates useful for derivative calcs
- auto-reset of the I term by moving I value into throttle value. This recalcs the gain every 20seconds for battery drainage compensation in long flights.
- remove filtering for Nav_throttle
- added a way to lower the gain on nav_throttle for descents by / climb_rate error by 2 - seems to work OK and keeps copter from dropping like a rock when the Baro drifts quickly lower.
- removed old throttle hold set point code
- made throttle override for alt hold +- 200 vs 250
2012-03-06 22:22:14 -08:00
Jason Short
46d7da4d14
Added define for throttle range for altitude changes, updated it to 250
2012-03-05 22:12:53 -08:00
Jason Short
ceef8070ac
added stab_d gain scheduling
2012-02-28 20:16:40 -08:00
Robert Lefebvre
76c3cd88f0
Added heli_collectiveFactor array
...
Signed-off-by: Robert Lefebvre <robert.lefebvre@gmail.com>
2012-02-28 10:49:28 -05:00
rmackay9
744e5b8c60
ArduCopter - made rate controller filters globals to fix compiler error on Arduino 022 (Arduino 1.0 was fine)
2012-02-28 22:56:26 +09:00
rmackay9
17d94b61ed
ArduCopter - modified to work with new Filter library
2012-02-28 21:02:44 +09:00
Jason Short
517172ba20
Added Loiter Rate Tuning
2012-02-26 11:33:37 -08:00
rmackay9
8193c786ef
ArduCopter - added #include <Filter.h> to unbreak the build!
2012-02-26 17:05:41 +09:00
rmackay9
69132e0fe7
ArduCopter - change sonar to use new mode filter from Filter library
2012-02-26 15:35:14 +09:00
Jason Short
a924c3685e
Based on Jani's latest logs I've made two tweaks to alt hold.
...
The first is to remove the filter on the throttle output for alt_hold.
The second was to open up the constraint on climb rate. This is to deal with larger than expected disturbances causing altitude changes.
2012-02-25 13:31:21 -08:00
Andrew Tridgell
e2bbc795ad
ACM: use a NULL gps pointer in DCM init
...
current DCM API does need a GPS reference passed in, but it can be
NULL
2012-02-25 15:08:49 +11:00
Andrew Tridgell
698749dd92
ACM: don't pass a gps pointer to DCM
...
after discussion with Randy, we don't want ArduCopter to fall back to
GPS for yaw when the compass becomes unhealthy. So we shouldn't pass
the gps object to the DCM code at all.
2012-02-25 14:51:08 +11:00
Andrew Tridgell
1cd3172954
ACM: ensure update_trig() doesn't cause NAN values for cos_roll/cos_pitch
...
the DCM matrix could have a value over 1.0 for c.x due to rounding
errors
2012-02-24 11:52:55 +11:00
Jason Short
242f54793c
revved a version
2012-02-22 09:00:42 -08:00
Jason Short
729c824809
made timer unsigned
2012-02-21 21:49:03 -08:00
Jason Short
30efbae0e9
removed old comments
2012-02-19 14:21:27 -08:00
Jason Short
cae49b3543
Added "slow WP" option for RTL.
2012-02-19 13:11:59 -08:00
Jason Short
b54d08f410
Updated manual throttle control during throttle hold
2012-02-19 12:40:51 -08:00
Randy Mackay
e146f225b1
ArduCopter - remove unnecessary block for next GPS value before saving home location
2012-02-19 15:38:40 +09:00
Jason Short
028de5d2c5
Axis lock beta (off by default)
2012-02-18 21:16:19 -08:00
Randy Mackay
b64c0da003
ArduCopter - updated version to 2.4
2012-02-18 18:44:29 +09:00
Jason Short
b532cb91b1
added Rate_D tuning value
2012-02-17 15:23:59 -08:00
Jason Short
0075901f77
upped rate loop to 250hz
2012-02-17 15:23:59 -08:00
Jason Short
36a120d8df
removed some unused vars,
...
formatting, made loop speed same as PIDT1 to eliminate variable.
2012-02-16 22:09:21 -08:00
Jason Short
e8b6f5ecee
allow auto-land if failsafe is triggered
2012-02-15 10:53:54 -08:00
Jason Short
e249c8466d
AP slew rate
2012-02-15 09:10:15 -08:00
Jason Short
05abe44f32
Added range setting via a parameter for CH6 tuning
2012-02-15 09:10:14 -08:00
Jason Short
c9b432955d
removed unused Vars
2012-02-13 15:25:23 -08:00
Andrew Tridgell
d4305e0ae2
fixed apm2beta build with AP_Param
2012-02-13 16:22:52 +11:00
Andrew Tridgell
3b4cae3cc3
adapted main ACM code for AP_Param
2012-02-13 16:22:52 +11:00
Jason Short
2c65fc9ddf
Cosmetic tweaks for tuning
2012-02-11 15:29:11 -08:00
Jason Short
b1d52da431
reset Rate_I for takeoff
2012-02-10 22:50:56 -08:00
Jason Short
19ab0f481e
made Yaw work like Roll and Pitch
2012-02-10 22:32:55 -08:00
Jason Short
4313d19bc5
2.3.1v
2012-02-09 22:22:01 -08:00
Jason Short
f40d40b0f9
Acro fix - we had lost the scaling of Acro mode in 2.1. This restores that.
2012-02-09 22:22:00 -08:00
Jason Short
ef9418c2de
fix issue with low throttle in air
2012-02-03 13:29:59 +00:00
analoguedevices
3288b518c0
credits
2012-02-01 04:44:36 +00:00
analoguedevices
6dbcac855a
Incremented version number to 2.3
2012-02-01 04:39:15 +00:00
Jason Short
5934b503b8
tuning fixes
2012-01-30 21:13:03 -08:00
Jason Short
46e08fb46a
Added more attributions
2012-01-29 21:53:44 -08:00
Jason Short
650c0ed3f1
made Loiter over ride exit dependent not on speed, but centered sticks.
2012-01-29 16:15:02 -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
d1fcebb5ca
Cosmetic changes
...
GPS LED lock waits for home_is_set to be true
2012-01-28 21:19:46 -08:00
Jason Short
326a663c6b
changed tuning range
2012-01-28 21:18:43 -08:00
Randy Mackay
122623f64b
OpticalFlow - added OF_LOITER flightmode
2012-01-28 09:27:16 +09:00
Randy Mackay
2c906b7b27
OpticalFlow - replaced PI controller with PID controller.
...
Modified optical flow hold to use aggregated position instead of speed.
2012-01-25 21:55:14 +09:00
Jason Short
1d9783652a
added Beta 4 tag
2012-01-21 22:15:23 -08:00
Jason Short
9003b95499
Converted to cm for distance
2012-01-21 22:04:35 -08:00
Jason Short
ab5716c42d
Calc error for logs
2012-01-21 11:59:49 -08:00
Jason Short
7fb641ab77
added note
2012-01-20 22:52:31 -08:00
Jason Short
127544b833
Added cast for comparison
2012-01-20 22:52:30 -08:00
Jason Short
5141534ea9
B3
2012-01-20 22:52:29 -08:00
Jason Short
db6db1ab91
set dampening range from 0 - .08 from 0 to .6. The new dampening code has changed units.
...
added the ability to force nav_throttle so we don't get ground effects screwing up baro sensor.
Added more descriptive Rest_I functions
2012-01-20 22:52:29 -08:00
Jason Short
6e94b21d67
Altitude no longer resets when moving loiter WP
2012-01-20 22:52:29 -08:00
Jason Short
017364fc5b
Lowered range to more sensible values
2012-01-20 22:52:29 -08:00
Michael Oborne
52a9bb3cd1
fix SITL attitude hil AC
2012-01-20 16:32:25 +08:00
Doug Weibel
ed9f7cb1b6
Update battery monitoring code for ArduCopter
...
Fixes compatibility for APM2. Also a significant update to the battery monitoring code: We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos. These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere). Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs. The CLI battery and current monitoring tests were consolidated into 1 test.
changed
2012-01-15 17:10:02 -07:00
Doug Weibel
0306bf97a0
Just a little more commenting work on global variables
2012-01-15 16:11:02 -07:00
Jason Short
3ebed0b278
This allows users to test the Auto_throttle hold or cruise value
2012-01-14 11:43:52 -08:00
Jason Short
46ef246e67
b2
2012-01-14 11:37:00 -08:00
Jason Short
0ae82da0fd
Fix for SIMPLE mode
2012-01-14 11:32:48 -08:00
Jason Short
89343ae306
adjusted GPS watch dog not to be so aggressive,
...
removed unneeded flag clearing
2012-01-14 11:20:40 -08:00
Jason Short
ec9880f725
made resetting throttle cruise a function
2012-01-13 16:47:08 -08:00
Jason Short
8d909f6eed
fixed GPS bug - moved to fast loop location
2012-01-13 12:47:22 -08:00
Jason Short
b0810e054e
moved GPS routines to 50hz loop to avoid delay.
2012-01-12 22:59:47 -08:00
Jason Short
648a404ee1
Version 2.2
2012-01-12 22:37:33 -08:00
Jason Short
91e05834c8
removed wind comp code,
...
Added Landing boost code
2012-01-12 22:28:58 -08:00
Jason Short
a7bce15365
R10
2012-01-11 22:41:51 -08:00
Jason Short
f35411ac45
R9
2012-01-10 23:46:08 -08:00
Jason Short
5a91396f63
Added climb rate control
...
removed unused vars
2012-01-10 23:42:26 -08:00
Jason Short
351be7c305
Made timer unsigned
2012-01-10 23:42:26 -08:00
Pat Hickey
2f63c636ad
Rename ArduCopter/config_motors.h to config_channels.h
2012-01-09 21:57:02 -08:00
Pat Hickey
f5b6746ad7
ArduCopter: Change TRI_FRAME yaw servo output to CH_TRI_YAW define
2012-01-09 21:57:02 -08:00
Pat Hickey
0b40f55334
ArduCopter: include config_motors.h in sketch
2012-01-09 21:57:01 -08:00
Randy Mackay
f68d23d91e
ArduCopter - added ROLL_PITCH_STABLE_OF (i.e. Stabilised Roll/Pitch + adjustments based on optical flow)
...
Removed optical flow from regular loiter for now until it's tested.
2012-01-09 13:53:54 +09:00
Jason Short
d45c0ce9f2
Added Acro to Rate_P
2012-01-08 14:52:10 -08:00
Jason Short
f4b530ebb1
R8
2012-01-07 22:28:03 -08:00