Commit Graph

1524 Commits

Author SHA1 Message Date
rmackay9 5f2c662fc9 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 67de828bcc ACM Test: Added a return statement 2012-08-15 21:37:23 -07:00
Jason Short 93c644fd0f ACM : Test for bearing calc 2012-08-15 21:04:24 -07:00
Jason Short fd76bf7df4 ACM Log : fixed formatting 2012-08-15 21:04:24 -07:00
Andrew Tridgell 0a7d8a4933 MAVLink: enable fetching of single parameters
this makes it possible for the GCS to fetch a single parameter by
name, which is useful for parameters that change in flight
2012-08-16 10:14:46 +10:00
Jason Short 2cc27b9804 ACM: Switched to filtered loc 2012-08-14 14:11:52 -07:00
Jason Short 5d64942f01 ACM: Switched to filtered_loc for distance calcs 2012-08-14 14:11:52 -07:00
Jason Short cbd4661b96 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 ba6ec9ae45 ACM: Revved the version 2012-08-14 14:11:51 -07:00
rmackay9 95c59fd4a4 ArduCopter: remove RTL_LAND parameter as it's been deprecated in favour of APPROACH_ALT.
Updated comments on ALT_HOLD_RTL and APPROACH_ALT to make it a little easier to understand.
2012-08-14 12:14:35 +09:00
Jason Short 455cfa4caa ACM: Toy mode updates - added second toy mode 2012-08-11 22:37:27 -07:00
Jason Short 4eb66699e1 ACM : Toy mode updates 2012-08-11 22:37:27 -07:00
Jason Short 4f14baf5e5 ACM: Toy mode updates 2012-08-11 22:37:26 -07:00
Jason Short abe7a12fba ACM : Added check for second Toy mode 2012-08-11 22:37:26 -07:00
Jason Short 0eed8853b4 ACM : Added CH7 multimode triggers, split Toy mode into two 2012-08-11 22:37:26 -07:00
Jason Short 9134271073 ACM : CH_7 multimode option added 2012-08-11 22:37:26 -07:00
Jason Short 609d5cd1d4 ACM : Added CH_7 Multimode 2012-08-11 22:37:26 -07:00
Andrew Tridgell 35c88dd418 INS: disable INS AP_Param table when not on APM1 hardware
this could cause overwriting of memory with default values
2012-08-11 22:06:03 +10:00
Amilcar Lucas 049e232ef0 ArduCopter: Enable the aux servos later, only in the slow periodic loop
This might solve some of the boot issues some users are having
2012-08-11 12:58:13 +02:00
Andrew Tridgell d0709443b4 AHRS: fixed build
AP_Airspeed.h is now needed to build AHRS
2012-08-11 12:22:55 +10:00
Andrew Tridgell 8c0eeee3dc ACM: allow users to set the AHRS_YAW_P and AHRS_RP_P
the forced set left users with parameters they couldn't use
2012-08-11 08:35:10 +10:00
Jason Short 0688eee9bc 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 31fdeab873 ACM increase the minimum speed at WP 2012-08-10 10:01:40 -07:00
Jason Short 4aba673b38 ACM : switched to get_bearing_cd 2012-08-09 17:04:30 -07:00
Jason Short fb7e5724c7 ACM : attitude.pde - removed unused function 2012-08-09 17:04:12 -07:00
Jason Short ab60681376 ACM: Radio.pde - toy mode updates 2012-08-09 17:00:11 -07:00
Jason Short 3b2a1ad9e8 ACM system.pde - toy mode update, cleanup of throttle cruise code 2012-08-09 16:59:44 -07:00
Jason Short e7632b9517 ACM - isolated Toy code 2012-08-09 16:59:44 -07:00
Jason Short 1980e0464c ACM: navigation - Alt cleanup, fast corner support 2012-08-09 16:59:44 -07:00
Jason Short a199669b61 ACM Motors.pde
Added Toy mode options,
Added DCM kp set to .1(armed) and .8 (disarmed)
2012-08-09 16:59:44 -07:00
Jason Short 37e3b64877 ACM : more aggressive and flexible flip code. Will flip right or left, and while pitching hard.
Increase in throttle is removed from init sequence to remove delay.
2012-08-09 16:59:44 -07:00
Jason Short 022c567b47 ACM : Events - renamed target alt 2012-08-09 16:59:44 -07:00
Jason Short 4c067b4c3a ACM Defines.h -added Toy mixer enums 2012-08-09 16:59:43 -07:00
Jason Short a85cee34e7 ACM control modes - renames CH_7 flag 2012-08-09 16:59:43 -07:00
Jason Short 168b755d0b ACM: config.h = updated default gains
More yaw rate control
2012-08-09 16:59:43 -07:00
Jason Short c3cf8de9da ACM Commands parser to look for future nav commands to inspect upcoming turn angle 2012-08-09 16:59:43 -07:00
Jason Short 3432030f7f ACM : Commands Logic
Altitude cleanup
2012-08-09 16:59:43 -07:00
Jason Short ecedacbe7e ACM: Added fast corner support 2012-08-09 16:59:43 -07:00
Jason Short c3f01bebfc ACM : Attitude.pde
yaw limit, moved toy code out of att to it's own pre
2012-08-09 16:59:43 -07:00
Jason Short 7615c835ee 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
Jason Short f20189a2e1 ACM : Toy Mixer options 2012-08-09 16:59:43 -07:00
Andrew Tridgell a7399c405d MAVLink: removed the need for Mavlink_compat.h
we have now fully transitioned to MAVLink 1.0, so we no longer need
the compatibility layer and the old names in the code
2012-08-09 12:22:46 +10:00
Andrew Tridgell 16d63978f1 MAVLink: moved mavlink variables back to library
these were moved to the main sketches to allow for compile time
selection of MAVLink 0.9 vs 1.0. We no longer support 0.9, so we can
move it back, which simplifies some test sketches
2012-08-09 12:06:21 +10:00
Amilcar Lucas 9a8fd4738e Add an optional second mount to ArduPlane and ArduCopter 2012-08-08 23:22:24 +02:00
Amilcar Lucas 1683f18bff Allow fully independent operation of two AP_Mount instances 2012-08-08 23:11:23 +02:00
Amilcar Lucas f321f5d9c5 Add a second mount instance 2012-08-08 23:07:25 +02:00
Andrew Tridgell 72935345ea ACM: make it possible to set AHRS_GPS_GAIN on ArduCopter
this was affected by the AP_Param change, in particular the
constructor ordering. To ensure a user can set AHRS_GPS_GAIN to 1.0 if
they want to, we need to do a set_and_save() if the value isn't in
EEPROM
2012-08-08 17:36:01 +10:00
Andrew Tridgell 2ba08c2122 ACM: removed pointless load() calls 2012-08-08 16:51:14 +10:00
Andrew Tridgell 295a9ce39c ACM: change to use get_bearing_cd() instead of get_bearing() 2012-08-08 12:12:30 +10:00
Andrew Tridgell d8106cf20f AP_Param: update ArduCopter core for new AP_Param interface 2012-08-08 12:11:57 +10:00
rmackay9 40839fdea2 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
Amilcar Lucas ff32fed176 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 16dd919819 Fix heli compilation 2012-08-06 23:30:02 +02:00
Amilcar Lucas 03b902d4b7 Add me :) 2012-08-06 00:40:12 +02:00
Amilcar Lucas a961988bba ArduCopter: Make the code fit in a 1280 chip again
Even allows to control a camera/antenna mount, if the user explicitly wants to.
2012-08-06 00:23:48 +02:00
Amilcar Lucas fc3a60a176 Default CLI_SLIDER_ENABLED to DISABLED
Chris asked for this on the mailing list
2012-08-06 00:22:33 +02:00
Amilcar Lucas 2a3be452e0 Spellcheck in comments 2012-08-06 00:21:14 +02:00
Amilcar Lucas 36bcd827b4 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 fe4713b46e 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 f28be02286 ArduCopter: Save more space in APM1280 2012-08-05 23:05:52 +02:00
Amilcar Lucas f3f89004e9 More work on ch9, 10 and 11 2012-08-04 19:44:41 +02:00
Amilcar Lucas 9b31938519 The mount type must be updated periodically 2012-08-04 18:44:08 +02:00
Amilcar Lucas 431ed1c9b9 More flexible RC support 2012-08-04 18:39:20 +02:00
Amilcar Lucas 7b2896c72b Merge from ArduPlane 2012-08-04 18:38:50 +02:00
rmackay9 64f027bf42 ArduCopter: bug fix to reset yaw target when zero and when in stabilize or acro mode. 2012-08-01 12:15:02 +09:00
rmackay9 b85986cb44 ArduCopter: bug fix to global var_info parameter list for ahrs object. 2012-08-01 10:52:27 +09:00
Andreas M. Antonopoulos 1ea2cb7b75 AP_Limits: experimental "bounce" mode. 2012-07-31 18:39:58 -07:00
Andreas M. Antonopoulos 005b3d7f62 AC2.7.1: Updated version and tag 2012-07-31 13:11:17 -07:00
Jason Short 4829e937ea ACM: Toy mode fix - Pitch flipped the sign on roll/Yaw coupling. 2012-07-30 15:43:05 -07:00
rmackay9 072c247911 ArduCopter: reduce stabilize roll, pitch and rate yaw IMAX values 2012-07-30 11:01:45 +09:00
Michael Oborne 2d6d74f625 AC remove attitude hil unused extra (gps jump issue.) 2012-07-29 08:18:41 +08:00
rmackay9 38ff381620 ArduCopter: reset target yaw when throttle is zero (except if failsafe has been triggered) 2012-07-28 23:05:05 +09:00
rmackay9 a10ac65c11 ArduCopter: added DMP_ENABLED to APM_Config.h to make it easier for people to enable it. 2012-07-28 16:31:38 +09:00
rmackay9 07a8d0cc99 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
Michael Oborne f83ca8b296 AC remove some attitude HIL limitations 2012-07-28 13:59:30 +08:00
rmackay9 0073f65ac6 ArduCopter: added ahrs.ini() to system.pde to allow offsets to be pushed into MPU6000's DMP 2012-07-28 14:21:45 +09:00
rmackay9 83ab9be0eb ArduCopter: added DMP_ENABLE #define and CH6 tuning value for AHRS_KP 2012-07-28 14:21:07 +09:00
rmackay9 38d974b63f ArduCopter: changes in arducopter to support moving AHRS var_info from AP_AHRS to AP_AHRS_DCM 2012-07-28 14:18:31 +09:00
rmackay9 5318da9e0e 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
Michael Oborne 78b94f39ae AC fix sitl attitude hil build 2012-07-24 21:18:36 +08:00
Jason Short 34945b4e38 ACM: Failsafe Fix for Mission planner initiated AUTO mode
Keeps the failsafe from exiting Auto mode when returning from failsafe. Added arming ability for Toy mode.
2012-07-23 19:34:25 -07:00
Andreas M. Antonopoulos f8a9cdd8cd AC: ArduCopter 2.7 release candidate - updated THISFIRMWARE constant. 2012-07-21 17:52:06 -07:00
Jason Short 9cf36c553c ACM: Fixed Baro rate patch to work with Sonar and added simple filter 2012-07-21 16:45:00 -07:00
Jason Short b6f45bb188 ACM: Lowered default Alt hold P 2012-07-21 16:45:00 -07:00
Jason Short 3d32bbc476 ACM: Safety patch for CH7 flip toggle. Prevents flipping while on the ground. ouch. 2012-07-20 16:47:05 -07:00
Jason Short 6177a1f5de Added minimum speed for RTL 2012-07-20 13:27:35 -07:00
Jason Short 122e2430ff ACM: Flip code revision to fix bad orientation bug. 2012-07-20 13:27:35 -07:00
Jason Short 2dfe38588d Arducopter: Added safety check for inadvertent triggering of flip code. 2012-07-20 13:27:35 -07:00
Jason Short e585eaa253 Ardcucopter: RTL distance check update, reset I terms fixed. 2012-07-20 13:27:35 -07:00
Jason Short 6067170f48 Arducopter: Force nav_yaw to match auto_yaw when starting a mission 2012-07-19 22:59:03 -07:00
Jason Short c1186abf65 Arducopter: cleanup, skip out of throttle control when flipping. 2012-07-19 22:35:21 -07:00
Jason Short 6528aba386 Arducopter: motors.pde formatting 2012-07-19 22:35:21 -07:00
Jason Short 64d06a8f0e Arducopter: Upped D rate to .005 by default 2012-07-19 22:35:21 -07:00
Andrew Tridgell 53e0e44704 ACM: fixed HIL build with new accel setup code 2012-07-20 12:46:16 +10:00
Andrew Tridgell d0ebb4ca26 MAVLink: fixed another two places where micros() was used for a millisecond time 2012-07-20 11:57:15 +10:00
Jason Short 676f02da7c Arducopter: Adjusted speed of climb to not stall out before hitting peak 2012-07-19 17:53:49 -07:00
Jason Short ca470f8a53 Arducopter: Testing toy mode - commented out by default 2012-07-19 17:50:42 -07:00
Jason Short 24d05c171a Arducopter: Renamed Config define (RTL_HOLD_ALT) 2012-07-19 17:50:15 -07:00
Jason Short 45f71e9783 Arducopter: Flip Check 2012-07-19 17:49:17 -07:00
Jason Short f7017f1fb3 Arducopter: Config.h defaults adjustments 2012-07-19 17:48:48 -07:00
Jason Short 219fed1441 Arducopter: deprecated the get_nav_yaw_offset function.
Small Toy mode updates
2012-07-19 17:41:52 -07:00
Jason Short 8f7eba4fd1 Arducopter.pde: Increased the throttle Hold altitude control
simplified Yaw reset
2012-07-19 17:38:25 -07:00
Jason Short 05a2d3ae35 Arducopter: Fix compile issue 2012-07-19 10:09:16 -07:00
Jason Short 243aa72abe Arducopters parameter: Adjusted RTL_ALTITUDE units so they reflect comments in config.h 2012-07-19 09:50:57 -07:00
Jason Short ec1d400adf Arducopter: Slower WP deceleration for RTL and WP navigation
Slower descent and slightly faster ascent
2012-07-19 09:50:18 -07:00
Jason Short 91c1c255a2 Arducopter: Clarified units in comment 2012-07-19 09:49:13 -07:00
Jason Short 35144ccbf2 Arducopter: Added Slow_WP setting to regular wp navigation 2012-07-19 09:48:54 -07:00
Jason Short bc843b0684 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 25c3ed6c4b Oilpan ADC parameters added
including a function that configures each Accel Axis
Defaults matching old behavior
Added param group
2012-07-18 22:57:11 -07:00
Jason Short 7e25775af9 Arducopter
Simplified the inertial calcs for now
2012-07-18 22:57:11 -07:00
Jason Short 79cdef1a48 arducopter
alt hold state reset
2012-07-18 22:57:11 -07:00
Jason Short f29aa0dc25 Arducopter
upped nav max to 32deg from 30
renamed calc_desired_speed to get_desired_speed
Added get_desired_climb_rate function to do smooth transitions in altitude
modified get_altitude_error to override the older altitude manager.
2012-07-18 22:57:11 -07:00
Jason Short a53a0a51be Arducopter
Better logging for Raw Inertial values
2012-07-18 22:57:11 -07:00
Jason Short bfabc54b01 Arducopter
for rate altitude changes
2012-07-18 22:57:10 -07:00
Jason Short 16adaf12db Arducopter
increased landing authority
2012-07-18 22:57:10 -07:00
Jason Short 1595a662c0 Arducopter
removed old Var
2012-07-18 22:57:10 -07:00
Jason Short c0a0e834e5 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 5f7c5ff387 Arducopter: Altitude change nav
Split altitude hold into two controls to parallel navigation.
2012-07-18 22:57:10 -07:00
Jason Short f40d8f04af 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 806663b80b Arducopter: Flip mode 2012-07-18 22:57:10 -07:00
Jason Short 3a11a7596a Arducopter: Flip mode
Flip mode graduates
2012-07-18 22:57:10 -07:00
Jason Short 095a9c5c96 Arducopter: Flip mode
Flip mode graduates to pre-compiled option
2012-07-18 22:57:10 -07:00
Jason Short c5d3620d2b Arducopter: INS
updated Nav control to use INS
2012-07-18 22:57:10 -07:00
Jason Short 4c44dda7e8 Arducopter: INS
removed calibrate accels for now
2012-07-18 22:57:10 -07:00
Jason Short f56e1582a2 Arducopter: INS
Updated INS gains
2012-07-18 22:57:10 -07:00
Jason Short 02f1695991 Arducopter: INS
removed IMU test, updated INS test to include normalized gravity accel vector.
2012-07-18 22:57:10 -07:00
Jason Short 0ea3424779 Arducopter: INS
removed zero accells call
2012-07-18 22:57:10 -07:00
rmackay9 fed92cc979 ArduCopter: small bug fix to radio.pde to allow code to compile when MOUNT == DISABLED 2012-07-18 23:49:41 +09:00
rmackay9 6ca8fda76d 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
Michael Oborne 45609b3e6f fix rc libray param gen 2012-07-18 07:03:39 +08:00
Andreas M. Antonopoulos 5917928bdc AP_Limits: documentation bug (which uncovered a param_parser bug - the irony burns) 2012-07-16 23:35:11 -07:00
Jonathan Challinger e271f97b53 Changed mavlink GLOBAL_POSITION_INT.relative_alt message to correctly return altitude above ground. 2012-07-17 16:15:11 +10:00
Andreas M. Antonopoulos b03e424fda AP_Limits: Configuration defaults moved to config.h. Fixed AP_LIMITS==DISABLED handling. 2012-07-16 11:46:43 -07:00
Michael Oborne 6fe0882809 AC fix limits param gen header 2012-07-15 18:23:06 +08:00
rmackay9 f7bb7667a1 ArduCopter: removed unused config for CAM_ROLL_GAIN and CAM_ROLL_PITCH now in AP_Mount library) 2012-07-15 16:38:52 +09:00
rmackay9 9276c68f80 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
rmackay9 f137f51ec0 ArduCopter: restored set_range calls for RC_Channels 5 ~ 8. 2012-07-15 16:37:40 +09:00
rmackay9 0dc0e3801c ArduCopter: reverted channel 5~8 to be regular RC_Channel objects, restored rc_camera_roll and rc_camera_pitch RC_Channels and created new rc_camera_yaw RC_Channel to control the camera mount servos.
Defined camera_mount (MNT_) in Parameters.h and Parameters.pde so that it appears in global parameters list.
Removed unused camera_*_gain and camaera_*_continuous parameters.
2012-07-15 16:36:05 +09:00
rmackay9 46a44a6b1b ArduCopter: added definition for yaw channels.
APM1 uses channel 11 for camera's yaw servo, APM2 uses channel 8.  This should allow all frame types except octacopters to potentially use a 3 axis camera mount.
2012-07-15 16:31:23 +09:00
Andreas M. Antonopoulos 31fd74d94c AP_Limits library, provides modular "limits" such as altitude and geo-fencing. 2012-07-14 19:26:17 -07:00
Jason Short eafdfb2fea Arducopter: Removed Yaw Limit for Quads 2012-07-14 14:06:34 -07:00
Jason Short f36aa618cf Arducopter: Temp reversion to old Yaw controller. 2012-07-14 12:26:13 -07:00
Jason Short 3ce48cb42c Arducopter: Yaw stop fix 2012-07-14 12:23:10 -07:00
Robert Lefebvre ef9cd54035 Implementing Yaw Fix. Tried to blend with Jason's changes. 2012-07-14 00:24:22 -04:00
Jason Short 9eb638dac8 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 ce0de98144 Arducopter: Wrong define used, caused Copter to Yaw to home when flying missions 2012-07-13 12:51:38 -07:00
Jason Short 34cf0b4c24 Arducopter - commands: Add home logging 2012-07-13 11:51:40 -07:00
Jason Short bfce0ad9c5 Arducopter: Fix circle_WP 2012-07-12 09:22:20 -07:00
Jason Short 1a62d84288 Arducopter: Loiter unlimited fix 2012-07-12 08:52:49 -07:00
Andreas M. Antonopoulos 9dfb3c4db9 Added Michael Pursifull's Maxsonar HRLV model support 2012-07-11 18:46:47 -07:00