Commit Graph

1772 Commits

Author SHA1 Message Date
Jason Short 31f31eec75 ACM : Test for bearing calc 2012-08-15 21:04:24 -07:00
Jason Short 99dcbd039d ACM Log : fixed formatting 2012-08-15 21:04:24 -07:00
Andrew Tridgell ed064b2506 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 f1af837543 ACM: Switched to filtered loc 2012-08-14 14:11:52 -07:00
Jason Short cdd2093a4c ACM: Switched to filtered_loc for distance calcs 2012-08-14 14:11:52 -07: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
rmackay9 2a83f1eef2 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 b01a71c4b9 ACM: Toy mode updates - added second toy mode 2012-08-11 22:37:27 -07:00
Jason Short 8160aa6103 ACM : Toy mode updates 2012-08-11 22:37:27 -07:00
Jason Short 1e0ab8768e ACM: Toy mode updates 2012-08-11 22:37:26 -07:00
Jason Short b27c1ce396 ACM : Added check for second Toy mode 2012-08-11 22:37:26 -07:00
Jason Short 11b7475ff9 ACM : Added CH7 multimode triggers, split Toy mode into two 2012-08-11 22:37:26 -07:00
Jason Short 45574c0b1a ACM : CH_7 multimode option added 2012-08-11 22:37:26 -07:00
Jason Short c305237e3a ACM : Added CH_7 Multimode 2012-08-11 22:37:26 -07:00
Andrew Tridgell 3bdc7d41be 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 780b469b11 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 81440a1b09 AHRS: fixed build
AP_Airspeed.h is now needed to build AHRS
2012-08-11 12:22:55 +10:00
Andrew Tridgell c2dc920d02 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 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 9a568385b0 ACM increase the minimum speed at WP 2012-08-10 10:01:40 -07:00
Jason Short be0559864c ACM : switched to get_bearing_cd 2012-08-09 17:04:30 -07:00
Jason Short 132ac7d412 ACM : attitude.pde - removed unused function 2012-08-09 17:04:12 -07:00
Jason Short e73c0250ad ACM: Radio.pde - toy mode updates 2012-08-09 17:00:11 -07:00
Jason Short f641c5d077 ACM system.pde - toy mode update, cleanup of throttle cruise code 2012-08-09 16:59:44 -07:00
Jason Short 35839070ad ACM - isolated Toy code 2012-08-09 16:59:44 -07:00
Jason Short adf5939ba4 ACM: navigation - Alt cleanup, fast corner support 2012-08-09 16:59:44 -07:00
Jason Short 6037fabb5c 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 88a94c88b5 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 d674baadd2 ACM : Events - renamed target alt 2012-08-09 16:59:44 -07:00
Jason Short 07bd1940e7 ACM Defines.h -added Toy mixer enums 2012-08-09 16:59:43 -07:00
Jason Short 26e3d6090e ACM control modes - renames CH_7 flag 2012-08-09 16:59:43 -07:00
Jason Short 3e57f8afd8 ACM: config.h = updated default gains
More yaw rate control
2012-08-09 16:59:43 -07:00
Jason Short b5156185cc ACM Commands parser to look for future nav commands to inspect upcoming turn angle 2012-08-09 16:59:43 -07:00
Jason Short d796814dfc ACM : Commands Logic
Altitude cleanup
2012-08-09 16:59:43 -07:00
Jason Short 98b8866215 ACM: Added fast corner support 2012-08-09 16:59:43 -07:00
Jason Short 5d756decd2 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 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
Jason Short 4a56e8ea2c ACM : Toy Mixer options 2012-08-09 16:59:43 -07:00
Andrew Tridgell dc47074dbd 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 2a7b298bbc 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 d34549f386 Add an optional second mount to ArduPlane and ArduCopter 2012-08-08 23:22:24 +02: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 03714fc695 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 103b02fe94 ACM: removed pointless load() calls 2012-08-08 16:51:14 +10: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
rmackay9 f79b90725e ArduCopter: Dan Gray's fix for Condition_Yaw
command_yaw_dir is an unsigned byte but was being set to a -ve number leading to very incorrect yaw target heading for counter clockwise turns.
command_yaw_end (i.e. turn's end target) was not being set if turn was of type "relative"
2012-08-07 06:43:10 -07:00
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 e93daca17e Fix heli compilation 2012-08-06 23:30:02 +02:00
Amilcar Lucas f14237126a Add me :) 2012-08-06 00:40:12 +02:00
Amilcar Lucas aa3cc63b15 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 0106c133cf Default CLI_SLIDER_ENABLED to DISABLED
Chris asked for this on the mailing list
2012-08-06 00:22:33 +02:00
Amilcar Lucas af08b630cd Spellcheck in comments 2012-08-06 00:21:14 +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 afd96025a7 ArduCopter: Save more space in APM1280 2012-08-05 23:05:52 +02:00
Amilcar Lucas 9c1ac2d9e6 More work on ch9, 10 and 11 2012-08-04 19:44:41 +02:00
Amilcar Lucas 4ba847c449 The mount type must be updated periodically 2012-08-04 18:44:08 +02:00
Amilcar Lucas bbc4bdb729 More flexible RC support 2012-08-04 18:39:20 +02:00
Amilcar Lucas d29f7023cc Merge from ArduPlane 2012-08-04 18:38:50 +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
rmackay9 a5b5f6a619 ArduCopter: bug fix to global var_info parameter list for ahrs object. 2012-08-01 10:52:27 +09:00
Andreas M. Antonopoulos 7262b0429a AP_Limits: experimental "bounce" mode. 2012-07-31 18:39:58 -07:00
Andreas M. Antonopoulos de85442c36 AC2.7.1: Updated version and tag 2012-07-31 13:11:17 -07:00
Jason Short 8c47b0c087 ACM: Toy mode fix - Pitch flipped the sign on roll/Yaw coupling. 2012-07-30 15:43:05 -07:00
rmackay9 77b1785bc6 ArduCopter: reduce stabilize roll, pitch and rate yaw IMAX values 2012-07-30 11:01:45 +09:00
Michael Oborne e577b51e17 AC remove attitude hil unused extra (gps jump issue.) 2012-07-29 08:18:41 +08: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 3047084ed3 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 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
Michael Oborne ef870e3ca1 AC remove some attitude HIL limitations 2012-07-28 13:59:30 +08:00
rmackay9 94cb325184 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 014f5aae99 ArduCopter: added DMP_ENABLE #define and CH6 tuning value for AHRS_KP 2012-07-28 14:21:07 +09:00
rmackay9 f97257830b 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 8e5312a759 ArduCopter: add support for MAVLink's MAV_CMD_NAV_ROI command
do_nav_roi and verify_nav_roi functions added to turn the copter and/or mount in response to a MAV_CMD_NAV_ROI way point
2012-07-25 11:02:54 +09:00
Michael Oborne f4705577c8 AC fix sitl attitude hil build 2012-07-24 21:18:36 +08:00
Jason Short 8188058404 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 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 96aabb7712 ACM: Lowered default Alt hold P 2012-07-21 16:45:00 -07:00
Jason Short 55c342c858 ACM: Safety patch for CH7 flip toggle. Prevents flipping while on the ground. ouch. 2012-07-20 16:47:05 -07:00
Jason Short 1d085c8cf4 Added minimum speed for RTL 2012-07-20 13:27:35 -07:00
Jason Short fcd0e12a1e ACM: Flip code revision to fix bad orientation bug. 2012-07-20 13:27:35 -07:00
Jason Short ca70acbf64 Arducopter: Added safety check for inadvertent triggering of flip code. 2012-07-20 13:27:35 -07:00
Jason Short 9f6e1347b6 Ardcucopter: RTL distance check update, reset I terms fixed. 2012-07-20 13:27:35 -07:00
Jason Short 613849a8df Arducopter: Force nav_yaw to match auto_yaw when starting a mission 2012-07-19 22:59:03 -07:00
Jason Short 2b20c85279 Arducopter: cleanup, skip out of throttle control when flipping. 2012-07-19 22:35:21 -07:00
Jason Short fbe898a6db Arducopter: motors.pde formatting 2012-07-19 22:35:21 -07:00
Jason Short 3b496ff229 Arducopter: Upped D rate to .005 by default 2012-07-19 22:35:21 -07:00
Andrew Tridgell 0a12b6ad6f ACM: fixed HIL build with new accel setup code 2012-07-20 12:46:16 +10:00
Andrew Tridgell 85465c9126 MAVLink: fixed another two places where micros() was used for a millisecond time 2012-07-20 11:57:15 +10:00
Jason Short f46e8468c4 Arducopter: Adjusted speed of climb to not stall out before hitting peak 2012-07-19 17:53:49 -07:00
Jason Short da6d981479 Arducopter: Testing toy mode - commented out by default 2012-07-19 17:50:42 -07:00
Jason Short ad45012739 Arducopter: Renamed Config define (RTL_HOLD_ALT) 2012-07-19 17:50:15 -07:00
Jason Short 351b503fb6 Arducopter: Flip Check 2012-07-19 17:49:17 -07:00
Jason Short 49c7579079 Arducopter: Config.h defaults adjustments 2012-07-19 17:48:48 -07:00
Jason Short 610d1d1795 Arducopter: deprecated the get_nav_yaw_offset function.
Small Toy mode updates
2012-07-19 17:41:52 -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 6506ebf69f Arducopter: Fix compile issue 2012-07-19 10:09:16 -07:00
Jason Short 5a73a2b9cd Arducopters parameter: Adjusted RTL_ALTITUDE units so they reflect comments in config.h 2012-07-19 09:50:57 -07:00
Jason Short 2df487ab7b 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 3401bd3583 Arducopter: Clarified units in comment 2012-07-19 09:49:13 -07:00
Jason Short 3a62608355 Arducopter: Added Slow_WP setting to regular wp navigation 2012-07-19 09:48:54 -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 c9d3ab5413 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 e09d6ad7a8 Arducopter
Simplified the inertial calcs for now
2012-07-18 22:57:11 -07:00
Jason Short a7b1252b51 arducopter
alt hold state reset
2012-07-18 22:57:11 -07:00
Jason Short c995749aaa 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 66ac438b9e Arducopter
Better logging for Raw Inertial values
2012-07-18 22:57:11 -07:00
Jason Short dcf9f9dab1 Arducopter
for rate altitude changes
2012-07-18 22:57:10 -07:00
Jason Short 71248fe114 Arducopter
increased landing authority
2012-07-18 22:57:10 -07:00
Jason Short c9851344e7 Arducopter
removed old Var
2012-07-18 22:57:10 -07:00
Jason Short a88d69e40e Arducopter:
Loiter unlimited can now travel to a WP and then loiter.
set_altitude for landing now set to 0
2012-07-18 22:57:10 -07:00
Jason Short aa645afe2b Arducopter: Altitude change nav
Split altitude hold into two controls to parallel navigation.
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 3f5e787fe8 Arducopter: Flip mode 2012-07-18 22:57:10 -07:00
Jason Short 9dad38e91d Arducopter: Flip mode
Flip mode graduates
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
Jason Short f73a2004be Arducopter: INS
updated Nav control to use INS
2012-07-18 22:57:10 -07:00
Jason Short 98725be0ec Arducopter: INS
removed calibrate accels for now
2012-07-18 22:57:10 -07:00
Jason Short 97845cace1 Arducopter: INS
Updated INS gains
2012-07-18 22:57:10 -07:00
Jason Short 0d8e8e0a04 Arducopter: INS
removed IMU test, updated INS test to include normalized gravity accel vector.
2012-07-18 22:57:10 -07:00
Jason Short bb99bd4626 Arducopter: INS
removed zero accells call
2012-07-18 22:57:10 -07:00
rmackay9 33d8cbfd51 ArduCopter: small bug fix to radio.pde to allow code to compile when MOUNT == DISABLED 2012-07-18 23:49:41 +09: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
Michael Oborne 636fcadde4 fix rc libray param gen 2012-07-18 07:03:39 +08:00
Andreas M. Antonopoulos 0e5345d17b AP_Limits: documentation bug (which uncovered a param_parser bug - the irony burns) 2012-07-16 23:35:11 -07:00
Jonathan Challinger fc4f111d15 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 a976a59c88 AP_Limits: Configuration defaults moved to config.h. Fixed AP_LIMITS==DISABLED handling. 2012-07-16 11:46:43 -07:00
Michael Oborne e632ad6aa4 AC fix limits param gen header 2012-07-15 18:23:06 +08:00
rmackay9 36ecdff593 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 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
rmackay9 761dad4e99 ArduCopter: restored set_range calls for RC_Channels 5 ~ 8. 2012-07-15 16:37:40 +09:00
rmackay9 29b6ec0b11 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 793fb7f059 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 c73f7ef3ab AP_Limits library, provides modular "limits" such as altitude and geo-fencing. 2012-07-14 19:26:17 -07:00
Jason Short 584e7dcda4 Arducopter: Removed Yaw Limit for Quads 2012-07-14 14:06:34 -07:00
Jason Short 44b16b7b61 Arducopter: Temp reversion to old Yaw controller. 2012-07-14 12:26:13 -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 d34ca0e6ea Arducopter - commands: Add home logging 2012-07-13 11:51:40 -07:00
Jason Short d8ff5dcfab Arducopter: Fix circle_WP 2012-07-12 09:22:20 -07:00
Jason Short a28070e0e0 Arducopter: Loiter unlimited fix 2012-07-12 08:52:49 -07:00
Andreas M. Antonopoulos d4a0cb5db1 Added Michael Pursifull's Maxsonar HRLV model support 2012-07-11 18:46:47 -07:00
Jason Short 7a5544051d Arducopter
Lowered WP speed default to 500. 600 was quite high once the nav routines were fixed and quad could achieve that speed.
2012-07-11 17:46:07 -07:00
Jason Short 6f9e2bf3a8 Arducopter: Toy mode update
Removed debugging printfs,
lowered roll response - was too high in test flights
made roll limit 2500 for testing
2012-07-11 17:46:06 -07:00
Jason Short 1feaaa4655 Arducopter: Toy mode refinements 2012-07-10 21:53:38 -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 c04bff67de Arducopter: Config.h, default gain tweaks from flight tests. 2012-07-10 21:53:38 -07:00
Jason Short f35b5ba13f Arducopter:test.pde made a note for WP radius that shows m in the printout. 2012-07-10 21:53:38 -07:00
Jason Short 782ebf5176 Arducopter:Log.pde Logging the calculated Climbrate 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
Jason Short 0620d86bfd Arducopter:Params
WP_RADIUS_DEFAULT is now stored the same as Arduplane
2012-07-10 21:53:37 -07:00
Jason Short 1dbde3f803 Arducopter: Added note 2012-07-10 21:53:37 -07:00
Jason Short af5423b863 Toy Mode: High Yaw default 2012-07-10 21:53:37 -07:00
Jason Short 19d8c405fd Arducopter : Force home alt to 0 2012-07-10 21:53:37 -07:00
Jason Short 89fec907e2 Arducopter: CH7 Waypoint saving
Saves the takeoff Waypoint as Home + new altitude rather than current location.
2012-07-10 21:53:37 -07:00
Amilcar Lucas dfe0983e1e Merge the changes from APM_Camera branch into ArduCopter
Conflicts:

	ArduCopter/Camera.pde
	ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Andrew Tridgell be763a6ead ACM: use get_distance_cm() not get_distance()
this fixes a bug introduced in 28f2eb6b9
2012-07-11 07:50:07 +10:00
Andrew Tridgell 0f9fb2c64b AHRS: added AHRS_GPS_GAIN parameter
this allows control of how much GPS velocity information is used in
doing centripetal correction in DCM
2012-07-10 16:22:48 +10:00
Jason Short f019d41729 arducopter.pde
Timer was set =0 at initialization.
2012-07-09 13:13:32 -07:00
Jason Short 226bba48a6 Toy Mode Yaw Rate fix 2012-07-09 13:13:32 -07:00
Jason Short cf6d73ec88 commands.pde RTL Alt
fix to maintain current altitude of we are above our RTL alt for safety.
2012-07-09 13:13:32 -07:00
Jason Short 038116f521 Airspeed patch:
pre-calculated airspeed resistance pitches copter automatically to gain a certain speed allowing the speed controller to work off of a better set point - similar to Alt hold.
added param tilt_comp with a default of 54 which equals 19.5° of pitch to go 6m/s
upped Z and Y target speeds to int32_t for speed squared calculation
2012-07-09 13:13:32 -07:00
Andreas M. Antonopoulos 384365832a ArduCopter: Copied parameter documentation from ArduPlane, where appropriate 2012-07-04 23:33:55 -07:00
Andrew Tridgell 8220ae8096 MAVLink: climb_rate is in m/s 2012-07-05 13:20:26 +10:00
Andreas M. Antonopoulos fdbb1ebd42 parameter documentation to test auto build 2012-07-04 20:06:12 -07:00
Andrew Tridgell 60caaa4b04 MAVLink: remove MAVLink 0.9 protocol support
this simplifies the code a lot. We're not going back to 1.0
2012-07-05 13:00:46 +10:00
Adam M Rivera 857ad6c706 Camera.pde: Implemented gyro based camera stabilization to support continuous servo gimbals. 2012-07-04 21:08:03 -05:00
Adam M Rivera 6e93ab6af6 Parameters: Added flag for camera pitch/roll servos (continuous or regular) 2012-07-04 21:06:21 -05:00
Andrew Tridgell 5ed345fe94 ACM: removed some Location functions which are now in AP_Math 2012-07-04 13:44:36 +10:00
Jason Short fd97eb5a8d commands
fixed logic bug to make a copter loiter after the mission is ended.
2012-07-03 17:38:50 -07:00
Jason Short 37685756df Config.h:
decreased alt hold_P to .4
removed RTL_AUTO_LAND default
increased alt hold I
2012-07-03 17:37:37 -07:00
Jason Short c29a0bc3f8 Navigation
increased speed governor to get faster WP travel
added param for WP tilt - basically a precalculated I term for wind resistance.
2012-07-03 17:34:50 -07:00
Jason Short 3a3966736c Params
Added Tilt_Compensation to Params,
deprecated RTL_Land_Enabeled
RTL_Approach_alt is not int16_t, -1 means do noting. 0 means land, >1 means hover to that altitude after timeout.
2012-07-03 17:33:03 -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 b076b571eb commands_logic: Removed some old unused code 2012-07-03 17:19:19 -07:00
Jason Short 2d572461ec Config: increased WP distance to 2m but default, removed alt hold D: causing issues with APM1 noise. 2012-07-03 17:18:33 -07:00
Jason Short 1070eea70b Log.pde: formatting 2012-07-03 17:16:26 -07:00
Jason Short 1a6549fef7 removed GPS ground speed calc - was causing some funny business during the transition. 2012-07-03 17:16:14 -07:00
Jason Short c62706ad06 Toy Mode: Yaw performance update. 2012-07-03 17:14:54 -07:00
Jason Short 8a08a74cc6 Config.h : shortening the landing time to 10s 2012-07-02 17:52:38 -07:00
Jason Short 16b25a26c2 Toy Mode: removed virtual WP, copter now just goes into auto_loiter when not holding the sticks. 2012-07-02 17:52:38 -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 9a30270879 System.pde - RTL
removed Approach mode, fixed RTL to loiter until desired altitude is reached
2012-07-01 13:40:12 -07:00
Jason Short e35fb9ecd7 Parameters
removed unused parameters for retro loiter
2012-07-01 13:40:12 -07:00
Jason Short 3cf16c1424 GCS_Mavlink.pde
removed Approach define
2012-07-01 13:40:11 -07:00
Jason Short ab564b8a86 defines.h
removed Approach mode enumeration
2012-07-01 13:40:11 -07:00
Jason Short 3646d69faf read_control_switch
Removed Prev_WP reference. unneeded.
2012-07-01 13:40:11 -07:00
Jason Short 8ab1acfb92 Config.h
Removed Approach delay redundancy - using land timer instead
Removed Retro loiter mode param
2012-07-01 13:40:11 -07:00
Jason Short 2ad08fdd98 RTL: Commands.pde
When we are out of commands we land or Loiter at the RTL_Approach_altitude.
2012-07-01 13:40:11 -07:00
Jason Short d58ceb2b09 RTL: Commands.pde
Removed do_approach function - now redundant
2012-07-01 13:40:11 -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 2450c25544 Arducopter: enabled RTL_altitude, renamed function to be more accurate 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
Andrew Tridgell 82ede937e7 AnalogSource: convert analogRead() calls to the new API
this should give us much better analog values, plus save a bunch of
CPU time
2012-07-01 15:01:05 +10:00
rmackay9 78fa903e17 ArduCopter: updated STABILIZE_ROLL_I to 0.01 (was 0.1) as instructed by Marco 2012-06-30 19:26:14 +09:00
Jason Short 4d6ccccef5 Circle_WP distance check fix 2012-06-29 21:20:28 -07:00
Jason Short 59d16f5fe0 Commands.pde: increased bad WP distance check 2012-06-29 21:20:28 -07:00
Jason Short eea788b63f navigation.pde : Added a drag/velocity prediction filter for improved I term wind correction. 2012-06-29 21:20:28 -07:00
Jason Short 031830b5fe System.pde: Toy mode details for set_mode() 2012-06-29 21:20:28 -07:00
Jason Short c276fe8fa0 GCS_Mavlink: added notes to #if malink10 2012-06-29 21:20:28 -07:00
Jason Short 0011190880 defines.h: Toy Mode defines for flight modes 2012-06-29 21:20:28 -07:00
Jason Short 4450d80ea3 Config.h: Optimizing Nav gains 2012-06-29 21:20:28 -07:00
Jason Short 3ce867508b Attitude.pde: Toy mode logic 2012-06-29 21:20:27 -07:00
Jason Short 668135ea8b Arducopter.pde: Added Toy mode refinements 2012-06-29 21:20:27 -07:00
Jason Short 49401bffae Params: Added toy_yate_rate 2012-06-29 21:20:27 -07:00
Jason Short 5e4d28baf0 Added Toy mode to navigation 2012-06-29 21:20:27 -07:00
Jason Short e036bee424 Aeducopter.pde: Toy mode updates 2012-06-29 21:20:27 -07:00
Adam M Rivera 61baa666c4 commands_process.pde: Bug fix 427. By default, the copter would land after an AUTO mission. Updated to check for valid approach altitude at end of mission. 2012-06-29 21:41:56 -05: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 eeab4c5363 Attitude.pde: Turned off boost_p for nav_throttle based on Testing feedback from Marco. 2012-06-26 10:39:42 -07:00
Jason Short c76ac4543b Added user editable define for Super simple radius 2012-06-26 10:38:46 -07:00
rmackay9 068fe64b9b ArduCopter HIL: changed calls to setHIL to send in time as a uint32_t (it was a float) 2012-06-26 22:50:17 +09:00
Jason Short 812bf7d874 Attitude.pde - Added small boost to alt hold for takeoff. 2012-06-25 23:12:19 -07:00
Jason Short 46fb3b783a GCS_Mavlink.pde : mav_nav only used in legacy Mavlink. 2012-06-25 23:08:25 -07:00
Jason Short cd93c40f09 Added Toy Mode control 2012-06-25 23:08:25 -07:00
Jason Short 807c4ced34 Added Toy Mode defines 2012-06-25 23:08:25 -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 7f92d702ab commands.pde: fixed unit error for distance check 2012-06-25 23:06:28 -07:00
Jason Short a0dc1f7ab1 Config.h : New Gains based on testing, new Crosstrack gain. from 1.0 to .2 because of new algorithm 2012-06-25 23:06:28 -07:00
Jason Short c71c503c84 GCS Mavlink.pde: change reference to nav_bearing to target_bearing. 2012-06-25 23:06:28 -07:00
Jason Short 53d2a46cd6 Navigation.pde : removed old cross tracking from Arduplane. Added new 2D cross tracking. Added use of GPS velocity when above 1.5m/s 2012-06-25 23:06:28 -07:00
Jason Short 92d481c08c inertia.pde: WIP don't fly with inertia enabled until FN. 2012-06-25 23:06:28 -07:00
Jason Short 28829b0d60 Log.pde: removed nav_bearing reference and replaced with target_bearing ref 2012-06-25 23:06:28 -07:00
Andreas M. Antonopoulos bef005b5f2 AC2.6: Fix battery calculation and scaling bug for MAV1.0, now same as ArduPlane
http://code.google.com/p/arducopter/issues/detail?id=430
2012-06-24 17:01:25 -07:00
Robert Lefebvre 1064dcbd34 Open up constraint on Rate Yaw Output for all copters. 2012-06-22 10:06:01 -04:00
Jason Short 7e0708ca36 Config.h - returned low to original 120 2012-06-20 15:22:35 -07:00
Jason Short 839b8865aa Parameters.h: throttle_min and throttle_max now have defaults from Config.h 2012-06-20 15:02:00 -07:00
Jason Short efdf0a7fc8 changed define to a param for throttle_min and throttle_max 2012-06-20 15:00:53 -07:00
Jason Short e8510faf5d changed define to param for throttle_min 2012-06-20 15:00:05 -07:00
Jason Short 6020f6d9fa Added throttle_min as a user definable param 2012-06-20 14:58:34 -07:00
Jason Short 4f18e7f80b lowered minimum throttle 2012-06-20 08:47:47 -07:00
Jason Short 27e0aee03f Small fix to angle boost - increases by about 20% to deal with inefficiencies of non-downward thrust 2012-06-20 08:47:47 -07:00
Jason Short 39a253a273 decreased I term based on the tests last weekend in high winds 2012-06-20 08:47:47 -07:00
Jason Short 8b212d8baa Adjustments to the Inertial_nav
lowered Rate_I and Rate_P to be less jumpy. raised throttle_p
added a clear to rate when entering loiter
moved the raw reporting
2012-06-20 08:47:47 -07:00
Andrew Tridgell 58379b928f MAVLink: make usage of MAVLink defines more consistent 2012-06-15 16:27:11 +10: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 e31a1d969f Inertial Nav disabled by default 2012-06-13 22:37:52 -07: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 65050775e1 ArduCopter: made Robert's new yaw method optional (off by default).
Add this line to APM_Config.h to enable Robert's yaw
#define ALTERNATIVE_YAW_MODE ENABLED
2012-06-13 21:50:16 +09:00
Jason Short ff0659535e Raised the Max throttle to 1000, min to 200. Worked good in SIM with Tridge's motor safety patch. 2012-06-12 13:58:49 -07:00
rmackay9 e1acf21381 ArduCopter: updated firmware version to 2.6 Epsilon 2012-06-12 23:22:57 +09:00
rmackay9 c6f1d93849 ArduCopter: updated standard loiter pids.
Loiter_P (speed from distance to target) = 0.2 (was 0.35)
Loiter_Rate_P (lean angle from desired acceleration) = 2.4 (was 2.5)
Loiter_Rate_I = unchanged at 0.08
Loiter_Rate_D = 0.40 (was 0.45)
2012-06-12 20:56:31 +09:00
Jason Short f5a85d48a0 Added Angel's name to contrib list 2012-06-10 12:38:22 -07:00
Andrew Tridgell 940d994efb GPS: Use appropiate GPS_ENGINE settings in APM, ACM and rover 2012-06-10 16:36:18 +10: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
Andrew Tridgell a684bddbda GPS: open the GPS serial port with a 256 byte buffer
the UBLOX needs more than 128 bytes for reliable parsing
2012-06-08 16:42:03 +10:00
Robert Lefebvre c5916a8b4d Opening up the Yaw Rate constraint for Trad Heli. 2012-06-07 22:40:25 -04:00
Robert Lefebvre e2496181ff Yaw Fix
Modified Nav_Yaw controller to better track intended heading changes.
2012-06-07 17:15:33 -04:00
Jason Short a9610a0761 Stabilization patches
removed Angle error limit for stabilization
constricted Iterm to +- 5° error and limited the implementation to when the quad is +- 5° from center
doubled the output limit for Rate controller.
increased default Rate_P gain to .18 with matching Rate_D of .004
Tested in the SIM and in backyard. dramatically increases performance and quad no longer overshoots and flips when pushed hard.
2012-06-05 16:41:44 -07:00
rmackay9 70b04d9427 ArduCopter: updated firmware description to 2.6 Gamma 2012-06-05 21:28:13 +09:00
Andrew Tridgell 8b258e23e7 ACM: prevent link flood with "Low Battery" warnings
thanks to Marco for noticing this
2012-06-05 11:31:40 +10:00
Michael Oborne 14be88dd55 AC: add hilstate message 2012-06-04 16:24:08 +08:00
Jason Short 71f80f3a77 Bug fix: When adjusting altitude, RTL then land will fail unless this var is reset to false. 2012-06-03 22:25:27 -07: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
Andrew Tridgell 7c63d2c17b ACM: MAVLINK10 uses HIL_STATE
thanks to Michael for noticing this
2012-06-04 13:31:07 +10:00
Andrew Tridgell e7cf643386 added mavlink09 targets
allows easier building with mavlink0.9
2012-06-04 13:14:52 +10:00
Andrew Tridgell 3f4e87cccc ACM: fixed HIL build for MAVLINK10 2012-06-04 13:14:52 +10:00
Michael Oborne 9303a89573 fix AC hil build 2012-06-04 11:12:52 +08:00
Michael Oborne a71ed6c5ce enable mavlink10 by default 2012-06-04 08:02:08 +08:00
Jason Short 15aea320cb Added note to remove this unused param 2012-06-03 11:13:50 -07:00
Jason Short 12ab875d58 using current PWM rather than a re-read of the PWM. 2012-06-03 11:13:50 -07:00
Jason Short 9ab06c5542 Moved PID logging counter into define 2012-06-03 11:13:50 -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
rmackay9 dcdeae412e ArduCopter: Another attempt at fixing the lat/lon printing bug in which small negative lattitudes or longitudes were appearing as positives.
Fixed in both ArduCopter Log.pde and the GPS Auto test sketch
2012-06-03 16:58:19 +09:00
rmackay9 2a216ce900 ArduCopter: fixed print_latlon bug in which it would print negative lat/lon numbers incorrectly (i.e. -1234567890 would be printed as -124.xxx). 2012-06-02 12:51:12 +09:00
Jason Short c2d14a5cad RC_Channel fix for throttle output.
throttle was outputting incorrectly and allowing the user to max out the throttle leaving nothing for attitude control
2012-05-31 14:59:03 -07:00
Robert Lefebvre 5f058fb9b2 TradHeli: Incorporating Ext ESC Control 2012-05-30 21:50:25 -04:00
Robert Lefebvre 30e55533dc Change to increase Parameter space as we have run out.
This will decrease the max number of waypoints from 186
to 169.
2012-05-30 20:41:53 -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 bc578172a5 moved detector to run until the throttle is low, then stop running. 2012-05-30 09:44:59 -07:00
Jason Short f0456dc947 Missed a Semicolon 2012-05-30 09:36:16 -07:00
Jason Short 302c632205 Altered the ground detector logic to no continuously run when landed 2012-05-30 09:34:31 -07:00
Jason Short 22065e3f3f Broken timer - removed 2012-05-29 12:56:38 -07:00
Jason Short 0ce883b96a Removed unused variable 2012-05-29 12:43:23 -07:00
Jason Short 9310d613e1 Lowered I term - causes oscillations in SIM 2012-05-29 12:43:01 -07:00
Jason Short 2311d52d37 Renamed some variables to clarify functionality. 2012-05-29 12:42:37 -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 15774366ba Failsafe: Looking for takeoff_complete now vs unreliable GPS 2012-05-29 11:25:04 -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 b8349f5486 Added note to functionality 2012-05-29 11:25:04 -07:00
Jason Short 9d92602188 changed WP radius to AP_Int16 2012-05-28 22:39:29 -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
Andrew Tridgell d9457ecc38 MAVLink: send time of GPS fix accurately
when we send a GPS_RAW message, set the usec field to the time we got
the fix from the GPS, not the current time. This makes it possible for
aerial photo processing to be more accurate, as the usec field with
more accurately reflect the planes position/time pair
2012-05-23 17:33:33 +10:00
Andrew Tridgell 66544a5db2 Log: don't print '+' while erasing logs
we no longer do page based erase, so printing a + every 128 pages
makes no sense
2012-05-22 20:10:29 -07:00
Robert Lefebvre 4e4ff84cf1 Updates to CopterLEDS
Creation of Nav Blink Function.
2012-05-22 09:58:37 -04:00
Andrew Tridgell 422dc82f32 MAVLink: allow parameter fetch during mavlink_delay()
this allows the planner to fully connect to the APM with MAVLink while
doing a DataFlash erase
2012-05-22 16:13:35 +10:00
Jason Short 1b9f34e4e0 Flip.pde: renamed dcm to ahrs 2012-05-21 12:58:51 -07:00
Jason Short 5407acdb4c Some bug fixes to Auto-flip. I ran this code through the sim and found these flaws. 2012-05-21 11:07:41 -07:00
Jason Short f6d8a18182 Added note 2012-05-21 09:58:23 -07:00
Jason Short 1a5e2f4e37 Attitude.pde - Removed rate limit based on SIM flights. These should never have been in place and seriously detriment Acro flight. 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 9732b7d2dc navigation.pde:
removed unneeded WP_Distance check
remove unneeded return for Navigate
removed unneeded rate_D calcs
removed unused functions
2012-05-17 11:05:05 -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
Jason Short 7f3e142fa8 Loiter Gains based on new SIM 2012-05-15 22:01:01 -07:00
Robert Lefebvre c5f7b2fff2 Fixed Syntax error. 2012-05-15 12:35:35 -04:00
Robert Lefebvre c8fb9a6635 More CopterLEDS changes.
Merged CopterLEDS and Piezo functions to eliminate pin conflict on APM2.  Created new Parameter bit to turn piezo function on and off from MP. Moved GPS and Aux pin assignments to allow commonality between APM1 and 2.  Set LED_Mode parameter default to 9 in order to make CopterLEDS completely backwards compatible with old Motor LEDS and Piezo code.  Legacy users should see no difference.
2012-05-15 12:00:21 -04:00
Robert Lefebvre a285e2779f CopterLEDS changes for APM2 2012-05-15 10:07:03 -04: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
rmackay9 af86ae8cbf ArduCopter: fixed compile error by declaring extern print_latlon 2012-04-30 21:44:27 +09:00
Andrew Tridgell 435a64b97e ACM: fixed HIL build 2012-04-30 22:42:17 +10:00
rmackay9 a1f5661161 ArduCopter: restored gps test in CLI
Added check so not enabled when using 1280.  Also fixed comments in other tests to explain the check for the 1280.
2012-04-30 17:29:50 +09:00
Adam M Rivera 56d3fa1601 Parameters.pde/AP_MotorsHeli: Updated comments to leverage the new value aliases 2012-04-28 20:50:41 -05:00
Adam M Rivera 40fdba441b Parameters.pde: Added value aliases to comments 2012-04-28 20:35:22 -05:00
Adam M Rivera 941cf6fa69 Parameters.pde: Added more parameter comments. 2012-04-28 12:14:17 -05:00
Andrew Tridgell 67afdc7485 autotest: fixes for MAVLink 1.0 in autotest 2012-04-27 15:15:53 +10:00
Adam M Rivera 239323eaa4 Parameters.pde/AP_MotorsHeli.cpp: Added comments from Roberts clone. 2012-04-26 18:26:14 -05:00
Adam M Rivera cb6f97fc7f Changed the marker for Group parameters to @Group. 2012-04-25 12:27:51 -05:00
Adam M Rivera 51bcc73c77 Parameters.pde: Added lib comments. 2012-04-25 11:23:46 -05:00
Adam M Rivera 9fb9231ec4 Merge branch 'master' of https://code.google.com/p/ardupilot-mega into param-suffix 2012-04-24 14:11:54 -05:00
Adam M Rivera 29fec278eb Parameters.pde: Updated comment schema to include the parameter name which becomes the XML node that contains the meta data. 2012-04-24 13:11:16 -05:00
Adam M Rivera acab9b7c2c Parameters.pde: Added new comment structure to a few parameters for testing. 2012-04-24 11:37:33 -05:00
Andrew Tridgell 4fee26437b MAVLink: make ACM build with MAVLink 1.0 possible in arduino GUI 2012-04-24 22:24:58 +10:00
Andrew Tridgell fe970221e2 ACM: added support for MAVLink 1.0 to ArduCopter
most operations should now work
2012-04-24 19:54:20 +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 60c347e23b Parameters: Added g.retro_loiter which is configurable by the user via the MP. 2012-04-23 00:17:52 -05:00
Adam M Rivera 8e580729b7 config.h: Removed comment. 2012-04-23 00:16:41 -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 9c19138fb8 Log.pde : Updated Flash Logging to log Floats properly vs scaled integers. 2012-04-21 15:25:53 -07: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 090f5aaa6f ArduCopter - config.h - set standard RC_SPEED to 125 for helicopter frame 2012-04-21 23:46:36 +09: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 533772339e ArduCopter - Attitude.pde - added logging of optical flow pid controller 2012-04-21 20:17:12 +09:00
rmackay9 3e95ade004 ArduCopter - changed optflow object to be APM2 version if necessary 2012-04-21 20:15:55 +09:00
rmackay9 919f004b27 ArduCopter - changed Optical Flow for APM2 to use A3 pin 2012-04-21 20:15:16 +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
James Goppert 5390467f3d Worked on ArduCopter cmake options. 2012-04-19 16:05:08 -04: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 1676e09f12 navigation.pde: Put the new calc_GPS_velocity method in a compiler if that checks the new RETRO_LOITER_MODE config value (saves space and ensures its not being used unless retro loiter mode is enabled) 2012-04-19 10:21:04 -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 d4a4641ae6 navigation.pde: Added calc_GPS_velocity. Added constraint to x/y error and x/y rate error. 2012-04-18 23:06:15 -05:00
James Goppert 53c143a575 Improved cmake options. 2012-04-18 23:15:29 -04:00
James Goppert 0e7e77760a Updated ArduPlane/ArduCopter cmake options. 2012-04-18 15:16:02 -04:00
Adam M Rivera a3842734a9 Planner/defines.h: Updated the enumeration value for APPROACH so as not to disturb the order of the universe. 2012-04-18 10:32:01 -05:00
James Goppert a9f0bd24d7 Switched to project specific cmake lists.
This is better since each project has very different options.
2012-04-17 23:07:20 -04: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 07e53fad18 commands_logic.pde: Added write to constrained value to EEPROM. 2012-04-16 14:03:33 -05:00
Adam M Rivera 7b277d7044 config.h: Added RTL_APPROACH_DELAY config value. 2012-04-16 14:00:08 -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 0c3d6614cd system.pde: Updated param name to loiter_timer. 2012-04-16 10:12:30 -05:00
Adam M Rivera 3d024ba2dd commands_logic: Allowed for an approach alt as low as 1m. Added a check to make sure we are currently above our target approach alt. 2012-04-16 10:11:50 -05:00
Adam M Rivera 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
Adam M Rivera a366bb2f81 Parameters: Changed rtl_approach_alt to float to support more granular altitudes 2012-04-16 10:06:29 -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
Andrew Tridgell 95cb35c7bb AHRS: enable AHRS_ group in ArduCopter 2012-04-16 20:55:14 +10: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 cddcdb8be3 commands_logic: Added check to make sure the do_approach method is not being used to land. 2012-04-15 16:57:49 -05:00
Adam M Rivera a2b338c052 System: Added handler for the new APPROACH flight mode which will initiate an approach to a target alt as defined by the user. 2012-04-15 16:55:34 -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
Adam M Rivera cfe3b58248 commands_logic: Added do_approach() to set the new target alt based on the user defined value. 2012-04-15 16:53:25 -05:00
Adam M Rivera 83fe6733d4 Defines: Added new control mode (APPROACH). 2012-04-15 16:52:32 -05:00
Adam M Rivera 7ba8c291bd Parameters: Added new APPROACH_ALT params (g.rtl_approach_alt) which stored the users desired target altitude after RTL is complete. 2012-04-15 16:51:41 -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 c337df11c8 ArduCopter - LEDS - set new output pins to OUTPUT to support COPTER_LEDS.
Code by Robert Lefebvre
2012-04-12 22:55:40 +09:00
rmackay9 d70f5da5e0 ArduCopter - LEDS - define pins to be used for COPTER_LEDS.
Code by Robert Lefebvre
2012-04-12 22:55:36 +09:00
rmackay9 84b07b5e6a ArduCopter - LEDS - added new COPTER_LEDS definition
Code by Robert Lefebvre
2012-04-12 22:55:32 +09:00
rmackay9 0a3bc9a66a ArduCopter - LEDS - two new parameters to support COPTER_LEDS.
Code by Robert Lefebvre.
2012-04-12 22:55:28 +09:00
rmackay9 fad162989f ArduCopter - navigation.pde - added logging of Loiter PID controllers 2012-04-11 23:52:25 +09:00
rmackay9 f8210b164c ArduCopter - Parameters.h - changed initialisation order to remove compiler warning (have not changed enum values so shouldn't require eeprom format id update) 2012-04-09 17:37:06 +09:00
rmackay9 df85051574 ArduCopter - added dataflash logging of roll and pitch rate controllers 2012-04-08 10:19:20 +09:00
rmackay9 998058ec07 ArduCopter - removed unused motor pde files including heli.pde, motors_hexa.pde, motors_octa.pde, motors_octa_quad.pde, motors_tri.pde and motors_y6.pde 2012-04-04 23:06:12 +09:00
rmackay9 ad9a8acbab ArduCopter - test.pde - changed references "motor_armed" to "motors.armed()" as part of move to AP_Motors library.
Change to ESC initialisation calls to use motors.throttle_pass_through method of AP_Motors class.
2012-04-04 23:05:26 +09:00
rmackay9 1d086c83f0 ArduCopter - system.pde - changed references to "motor_armed" to "motors.armed()" as part of the move to use AP_Motors library. 2012-04-04 23:03:21 +09:00
rmackay9 4aa40bdf10 ArduCopter - setup.pde - changed cli for helicopter to call the new AP_Motors class's parameters instead of the global parameters.
changed init_esc to call the AP_Motor's class's "throttle_pass_through" function.
2012-04-04 23:02:29 +09:00
rmackay9 473126581d ArduCopter - radio.pde - changed motor initialisation to set update rate, frame orientation, min and max throttle to AP_Motors class.
Note: perhaps the motors speed at least should be moved to a parameter within the motors class.
output_min function greatly simplified as this is handled by the AP_Motors class.
2012-04-04 23:00:56 +09:00
rmackay9 905a445391 ArduCopter - motors.pde - changed references to "motor_armed" to "motors.armed()" because we've moved to using the AP_Motors class.
Simplified set_servos_4 function which was responsible for calling "output_motors_armed" or "output_motors_disarmed" as this determination as to whether the motors are armed or not is handled within the AP_Motors class.
2012-04-04 22:58:42 +09:00
rmackay9 aa54458dcf ArduCopter - leds.pde - changed refrences to "motor_armed" to "motors.armed()" 2012-04-04 22:57:50 +09:00
rmackay9 7df17e9b3b ArduCopter - removed references to MOT_1 etc as these are now within the AP_Motors class (i.e. MOT_1 has become AP_MOTORS_MOT_1) 2012-04-04 22:56:07 +09:00
rmackay9 ee308ea06c ArduCopter - increased firmware version to 118. Removed nearly all heli parameters as these are all created by the AP_MotorHeli class now.
Note: we cannot move the heli_servos to the AP_MotorHeli class yet because of a small issue in the parameters class.
2012-04-04 22:55:07 +09:00
rmackay9 8402a3d837 ArduCopter - Log.pde - changed MOT output to dataflash to take values from AP_Motors class's motor_out array instead of the global motor_out array. 2012-04-04 22:53:21 +09:00
rmackay9 e5710958bc ArduCopter - GCS_Mavlink.pde - changed output to ground station to use new AP_Motor's class motors array inplace of the global "motor_out" array. 2012-04-04 22:52:26 +09:00
rmackay9 aa4085183c ArduCopter - Attitude.pde - moved heli_get_angle_boost from heli.pde (which will be removed) to Attitude.pde. In fact we should combine heli_get_angle_boost and the regular get_angle_boost. 2012-04-04 22:51:39 +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 e0bb7e2777 MAVLink: don't waste 100 bytes of bandwidth sending 1 byte of information
the GPS_STATUS message is a massive waste of bandwidth, but it is the
only message that tells us the number of visible satellites. So only
send it if that information changes.

This makes MAVLink work better at low baud rates
2012-03-30 17:46:20 +11:00
Andrew Tridgell 7634f541b9 ACM: use set_blocking_writes(false) when we arm motors 2012-03-30 17:46:20 +11:00
Andrew Tridgell b4107d35e8 MAVLink: raise the serial transmit buffer size to 256 bytes
the 128 byte serial transmit buffer was causing significant problems
with queueing of mavlink messages. With 256 bytes we can fit a lot
more messages out in each pass of the code, which makes telemetry more
efficient

As we discussed on the dev call, we now have enough free ram for this
to be worthwhile
2012-03-30 17:46:20 +11:00