Commit Graph

3740 Commits

Author SHA1 Message Date
Jonathan Challinger 4311fa8952 Copter: 90-atan2(-x,y) is the same as atan2(y,x) 2015-02-03 14:48:02 +09:00
Jonathan Challinger f77b359e83 Copter: increase get_roi_yaw from 40hz to 100hz 2015-02-03 14:46:17 +09:00
Jonathan Challinger 2cb63dc792 Copter: don't assume home is at the origin 2015-02-03 11:38:25 +09:00
Jonathan Challinger 9c2865f6a8 Copter: update pv_location_to_vector to use get_origin instead of get_home 2015-02-03 11:38:23 +09:00
Jason Short 3b5228922e Copter: increased ESC auto-cal delay 2015-02-03 11:33:54 +09:00
Andrew Tridgell 51dc3c120d Copter: handle GIMBAL_REPORT receive and send
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2015-02-03 09:49:15 +11:00
Randy Mackay f00861d2f1 Copter: using arming_failed as event 2015-02-03 06:14:56 +09:00
Randy Mackay 9e813948fa Copter: protect against multiple arming messages
Protect against the GCS sending multiple arming messages close together
which disrupts the gyro calibration
2015-02-02 22:31:20 +09:00
Randy Mackay 32cb901ce3 Copter: allow arming at mid throttle in AltHold, Loiter 2015-02-02 22:31:18 +09:00
Randy Mackay e7f20c04c3 Copter: init_arm_motors calls pre-arm checks
This reduces a small amount of duplicated code in the pilot initiated
arming and GCS initiated arming functions
2015-02-02 22:31:14 +09:00
Randy Mackay f4c392c64d Copter: pre_arm_checks returns success or failure
This makes the pre-arm check function consist with the other arming
check functions
2015-02-02 22:31:11 +09:00
Randy Mackay 64af4ff923 Copter: rename set_servos_4 to motors_output 2015-02-02 22:31:08 +09:00
Randy Mackay 8754ce9eed Copter: move 80% thr limit to MotorsTri 2015-02-02 22:31:04 +09:00
Randy Mackay 43ba94e99a Copter: rename manual_flight_mode to mode_has_manual_throttle 2015-02-02 22:31:01 +09:00
Randy Mackay 3aac281c5a Copter: land detector requires desired climb rate be < -20cm/s 2015-01-31 17:23:43 +09:00
Randy Mackay 3e872c71fc Copter: AC3.2.1-rc2 release notes 2015-01-30 16:23:52 +09:00
Robert Lefebvre 8e8ec09740 Copter: update pos_control alt_max from fence at 1hz 2015-01-30 14:13:49 +09:00
Randy Mackay e0cfe091fb Copter: setup uart after checking usb_connected 2015-01-29 14:05:15 +11:00
Randy Mackay 8ea65c2dc2 Copter: APM_Config define to disable FRSKY telem 2015-01-29 14:05:14 +11:00
Randy Mackay f91fb9a4e8 Copter: rename frsky_telemetry_send function 2015-01-29 14:05:14 +11:00
Randy Mackay 34503de18e Copter: integrate SerialManager
Remove serial0, serial1 baud and protocol parameters
Pass serial_manager to GCS, GPS, mount, FrSky_telem objects during init
call SerialManager init_console on startup
use SerialManager's set_block_writes_all
2015-01-29 14:05:14 +11:00
Randy Mackay 7ffcf62e2e Copter: move MNT param's underscore to mount lib 2015-01-29 13:57:19 +11:00
Randy Mackay c51ba8cd03 Copter: integrate mount frontend-backend restructure
initialise mount on startup
use Mount::has_pan_control method
Remove calls to unimplemented mount.configure_cmd
Remove call to update_mount_type which will be handled from within mount
lib
2015-01-29 13:57:18 +11:00
Randy Mackay 31b2534c1d Copter: rename mount.set_roi_cmd to set_roi_target 2015-01-29 13:57:18 +11:00
Randy Mackay 18f8ffab6f Copter: remove land detector bar climb rate definition 2015-01-28 10:59:15 +09:00
Jonathan Challinger 9d585700f8 Copter: remove baro climb rate check from land detector 2015-01-28 10:57:00 +09:00
Matthias Badaire a2d71d2811 Copter: Frsky telemtry change move parameter to init of the class
Parameter needs to be passed and use at the init of the class frsky telem
2015-01-22 16:49:39 +11:00
Randy Mackay 1819bd48f4 Copter: remove home_is_set checks from Loiter, PosHold, RTL
This allows these flight modes to potentially operate even when the
vehicle has never had a GPS lock.
Potentially we should replace this with a check that the EKF's origin
has been set
2015-01-22 14:40:19 +09:00
Randy Mackay d49489ca7e Copter: optflow_position_ok requires using EKF 2015-01-22 14:40:13 +09:00
Randy Mackay 01f1ce4cb3 Copter: position_ok false when EKF in const pos mode 2015-01-22 14:40:11 +09:00
Randy Mackay 74ac79ba10 Copter: Drift uses throttle_zero flag 2015-01-22 14:40:08 +09:00
Randy Mackay 02d0b05926 Copter: minor format fix 2015-01-22 14:40:05 +09:00
Randy Mackay 4185d17915 Copter: fix to RTL, PosHold and Loiter's use of filter status 2015-01-22 14:40:02 +09:00
Randy Mackay cc52bbbffb Copter: update current loc once home is set 2015-01-22 14:39:59 +09:00
Randy Mackay f1a6b06586 Copter: remove redundant filter status checks 2015-01-22 14:39:57 +09:00
Randy Mackay 3641d3d508 Copter: send inav velocities in global position message
Also absolute alt now calculated from home alt + current alt above home
instead of using GPS absolute alt
2015-01-22 14:39:54 +09:00
Randy Mackay e464909ddf Copter: position_ok true when EKF predicts it will be ok
This resolves the chicken and egg problem of the EKF filter status's
position flags not becoming true until after the vehicle has been armed
at least once.
2015-01-22 14:39:52 +09:00
Randy Mackay 58ac9de94b Copter: update home position when disarmed
This resolves the issue in which the vehicle's position jumped back to
it's home location when disarmed and using the EKF.  This also makes
copter consistent with plane.
2015-01-22 14:39:50 +09:00
Randy Mackay fd0b82f669 Copter: add optflow_position_ok and use for loiter
This allows entering Loiter flight mode with only optical flow based
position
2015-01-22 14:39:47 +09:00
Randy Mackay 199dc3454d Copter: replace GPS_ok with position_ok
position_ok uses the EKF's filter status if the EKF is being used
otherwise it falls back to the GPS based checks used by inertial nav
2015-01-22 14:39:45 +09:00
Randy Mackay a4f71e5946 Copter: replace inav's position_ok with get_filter_status 2015-01-22 14:39:42 +09:00
Randy Mackay e94693e8ac Copter: remove unused throttle integrator 2015-01-21 14:38:06 +09:00
Robert Lefebvre b8822a42b6 Copter: Change Compass logging to new DataFlash method that handles instances. 2015-01-21 14:37:52 +09:00
Robert Lefebvre 37304fd5ed Copter: Minor formatting changes in Log.pde 2015-01-21 14:37:23 +09:00
Robert Lefebvre 4b86a4aeec Arducopter: Change mode logging to use common-vehicle DataFlash library. 2015-01-21 14:37:20 +09:00
Robert Lefebvre 422970a1b1 Arducopter: Change compass logging to use common-vehicle DataFlash library. 2015-01-21 14:37:16 +09:00
Robert Lefebvre 1b152cf2bf ArduCopter: Change Current logging to use common-vehicle logging in DataFlash library. 2015-01-21 14:37:04 +09:00
Robert Lefebvre c9d5b6aa7f Arducopter: Change Attitude logging to use common-vehicle logging in DataFlash library. 2015-01-21 14:36:59 +09:00
Randy Mackay 0065b3b224 Copter: tighten accel and gyro pre-arm consistency check
Accel diff threshold to 0.7m/s/s (was 1.0 m/s/s)
Gyro diff threshold to 5deg/sec (was 20deg/sec)
2015-01-20 12:44:02 +09:00
Randy Mackay 4059e02a8c Copter: move ch6 tuning to tuning.pde 2015-01-16 15:12:58 +09:00
Jason Short fe74a11b4e Copter: Drift mode gain changes and roll control through ch4 2015-01-15 11:55:24 +09:00
Randy Mackay d6c48e422a Copter: restore baro climb rate check to land_detector 2015-01-14 16:08:57 +09:00
Randy Mackay 1c25c00f5b Copter: move land_detector to separate file 2015-01-14 16:08:55 +09:00
Jonathan Challinger 36410a5131 Copter: clean up land detector and modify to use desired velocity 2015-01-14 16:08:50 +09:00
Randy Mackay 0c44b5f4fe Copter: fix typo in AC3.2.1 Release Notes 2015-01-10 22:29:46 +09:00
Andrew Tridgell 557f4df77e Copter: use barometer.all_healthy() for health check in SYS_STATUS and arming 2015-01-09 11:51:51 +11:00
Andrew Tridgell c151f24672 Copter: updates for new AP_Baro API 2015-01-09 11:50:55 +11:00
Randy Mackay 781f2b7ddc Copter: update AC3.2.1-rc1 Release Notes 2015-01-09 05:06:36 +09:00
Randy Mackay ce9b87c101 Copter: AC3.2.1-rc1 Release Notes 2015-01-08 21:53:47 +09:00
Randy Mackay 80f59694d0 Copter: remove deprecated Guided-Spline
Guided-Spline has been replaced by Guided-PosVel
2015-01-07 14:03:50 +09:00
Randy Mackay be5bf91e92 Copter: add ekf velocity scaler to posvel controller
Also set auto-yaw-mode to yaw-hold only when posvel controller is
started instead of on every iteration.
added GUIDED_POSVEL_TIMEOUT_MS definition.
removed deprecated trigger_xy call.
Also use wp_nav.get_speed_xy in place of get_speed_param
2015-01-07 14:03:08 +09:00
Jonathan Challinger 474456e349 Copter: use guided_posvel for set_position_target messages 2015-01-07 14:02:24 +09:00
Jonathan Challinger bc29008233 Copter: add guided_posvel 2015-01-07 14:02:21 +09:00
Randy Mackay 06d1a4c59f Copter: use LandingGear command mode enum 2015-01-07 11:58:23 +09:00
Randy Mackay d26fa6d827 Copter: minor format fix
no functional change
2015-01-07 11:58:23 +09:00
Randy Mackay 5f3c2bcd11 Copter: rename landing_gear.pde 2015-01-07 11:58:21 +09:00
Robert Lefebvre 62b5f32643 Copter: Use landinggear.force_deploy method when auto-landing 2015-01-07 11:58:20 +09:00
Robert Lefebvre 20fce5c9ff Copter: Move landing gear code into new file 2015-01-07 11:58:20 +09:00
Robert Lefebvre fd61c3179a Copter: Remove relay pointer from LandingGear object 2015-01-07 11:58:18 +09:00
Robert Lefebvre e10e020062 Copter: Add Landing Gear functionality to main code 2015-01-07 11:58:16 +09:00
Staroselskii Georgii 84a15304a1 Copter: added AK8963 support 2015-01-07 08:41:13 +11:00
Randy Mackay f54a13f24b Copter: report NAV_CONTROLLER_OUTPUT in RTL, Guided
This allows the GCS to display to the user where the vehicle is flying
to in RTL and Guided flight modes
2015-01-06 16:38:34 +09:00
Robert Lefebvre d7ba808400 ArduCopter: Bug fix, int8t should be uint16t. 2015-01-06 15:02:48 +09:00
Robert Lefebvre 205b312789 Copter: GCS Failsafe comments and format changes 2015-01-05 10:34:17 +09:00
Robert Lefebvre 5f19a43104 Copter: GCS Failsafe to trigger if using Guided mode 2015-01-05 10:33:50 +09:00
Andrew Tridgell c268d7252f Copter: fixed flymaple build 2015-01-05 07:36:40 +11:00
Andrew Tridgell cb5552f0e3 Copter: fixed build with optflow disabled 2015-01-04 12:29:22 +11:00
Andrew Tridgell ab62105afe Copter: use common send_opticalflow() 2015-01-03 15:53:49 +11:00
Andrew Tridgell 788bb8ab9f Copter: make optflow available to AHRS 2015-01-03 14:16:34 +11:00
Andrew Tridgell c784ee717b Copter: update for new OptFlow API 2015-01-03 14:16:33 +11:00
Randy Mackay f1f71ef605 Copter: cli uses has_current method 2014-12-31 15:22:50 +09:00
Randy Mackay 3ccc61c163 Copter: use battery.has_current method 2014-12-31 15:22:49 +09:00
Randy Mackay d6b4bfd97f Copter: move underscore in BATT_ parameters 2014-12-31 15:22:48 +09:00
Randy Mackay 2e7435df52 Copter: remove unused OF_LOITER pid defines 2014-12-31 13:16:18 +09:00
Randy Mackay 3e34e7ed7e Copter: remove logging dependency on optflow 2014-12-31 13:16:17 +09:00
priseborough 695f12bec0 Copter: Don't log EKF optical flow data if not required 2014-12-31 13:16:12 +09:00
Randy Mackay f2b0fc3566 Copter: disarm on landing regardless of pilot input 2014-12-27 13:33:06 +09:00
Randy Mackay 72127cde35 Copter: remove broken support for do-change-alt
This command was not implemented fully removing this code resolves a
compiler warning
2014-12-26 22:17:45 +09:00
Randy Mackay 2bc1b7e4d6 Copter: skip pre-arm checks when already armed 2014-12-26 22:01:43 +09:00
Randy Mackay 990a34cb75 Copter: remove support for do-set-home mission command
This avoids the chance of an arithmetic exception in cases where the
position is moved too far
2014-12-26 15:55:26 +09:00
Randy Mackay 2ea9b8a5a8 Copter: set pre_arm_gps_check flag 2014-12-26 12:32:36 +09:00
Randy Mackay 05fedbf98f Copter: minor formatting fixes 2014-12-18 16:38:34 +09:00
Jonathan Challinger 91bff63267 Copter: Fix LAND overshoot issue 2014-12-18 16:38:31 +09:00
Randy Mackay b6bcf841e1 Copter: remove second camera mount 2014-12-16 21:26:20 +09:00
Jonathan Challinger cafb38e923 Copter: allow radio failsafe while disarmed so that user can be notified 2014-12-15 14:10:29 +09:00
Randy Mackay 79e40b4f6a Copter: do not send mode_change event before init complete
This avoids a beep as the flight mode is set during start-up
2014-12-15 14:10:23 +09:00
Randy Mackay 562f3e7382 Copter: set notify event when failsafe changes flight mode 2014-12-15 14:10:19 +09:00
Randy Mackay 6a15d21704 Copter: minor format change 2014-12-15 14:10:13 +09:00
Jonathan Challinger f045c75bfe Copter: play various tones 2014-12-15 14:09:12 +09:00
Randy Mackay fd55a2d9c4 Copter: increase GPS_HDOP_GOOD default to 2.3 2014-12-15 10:45:50 +09:00
Andrew Tridgell e73f8b8e40 Copter: removed use of mavlink_check_target() 2014-12-11 12:32:34 +09:00
Randy Mackay 67f48168a8 Copter: send OPTICAL_FLOW msg to GCS 2014-12-08 14:58:31 +09:00
Randy Mackay 641c770726 Copter: send optflow health in extended status 2014-12-08 14:58:28 +09:00
Randy Mackay 882546aa8e Copter: optflow logging minor format change 2014-12-08 14:58:27 +09:00
Randy Mackay 3127dd94c1 Copter: add OPTFLOW to default logging 2014-12-08 14:58:27 +09:00
Randy Mackay aba829678a Copter: optflow instantiation format change
No functional change
2014-12-08 14:58:26 +09:00
Randy Mackay c93c7af20c Copter: move update_optflow to sensors.pde
No functional change
2014-12-08 14:58:25 +09:00
Randy Mackay 67fdfffc2a Copter: remove OF_Loiter PIDs and tuning 2014-12-08 14:58:18 +09:00
Randy Mackay 0994529624 Copter: remove OF_Loiter from FLTMODE param descriptions
Also remove OF_Loiter reference in comments
No functional change
2014-12-08 14:57:04 +09:00
Andrew Tridgell fba02479b7 Copter: fixed build with no EKF 2014-12-06 18:43:38 +11:00
priseborough 963cc4d60a Copter: Add velocity gain scaler to interfaces
Allows nav gain to be scaled to compensate for optical flow noise
2014-12-06 18:16:50 +11:00
priseborough 9e7709fa09 Copter: Expand EKF speed limit public method to handle control limits 2014-12-06 18:16:50 +11:00
priseborough 9844dacf40 Copter: Add EKF ground speed limit to loiter speed control
This is required to prevent the speed controller saturating the optical flow sensor during low altitude flying.
2014-12-06 18:16:50 +11:00
priseborough 715d64dce9 Copter: Check for new optical flow updates at 200Hz
Supports use of higher flow read rates if required.
2014-12-06 18:16:48 +11:00
priseborough 468c83c074 Copter : Check for new optical flow readings every 10ms
The driver polls the sensor asynchronously every 100 msec, so we need to continually check for new data.
2014-12-06 18:16:48 +11:00
priseborough be54f2d6ee Copter : Don't force pre-compiler inclusion of optical flow 2014-12-06 18:16:48 +11:00
priseborough 6d5fb33d1a Copter : enable optical flow by default 2014-12-06 18:16:47 +11:00
priseborough 45c007d216 Copter : Correct comment on required optical flow update rate 2014-12-06 18:16:47 +11:00
priseborough a72b6b179b Copter : Modify EKF optical flow data interface 2014-12-06 18:16:46 +11:00
priseborough 311206017c Copter : Update EKF optical flow data interface
Makes it compatible with the new PX4Flow interface
2014-12-06 18:16:46 +11:00
priseborough 267ef48026 Copter : disable tilt correction of range finder data for use by EKF
This is a temporary fix. We need to make separate range and altitude measurements available.
2014-12-06 18:16:45 +11:00
priseborough 27f9289391 Copter : Add range finder measurements to EKF optical flow data 2014-12-06 18:16:44 +11:00
priseborough 635e593d55 Copter : temporary mods to test use of flow sensor internal gyro data 2014-12-06 18:16:44 +11:00
priseborough 34249ffa42 Copter : EKF optical flow fusion support preliminary changes
Assumes optflow sensor has been modified to push data at a low rate, eg 10Hz
and velocity data is angular velocity, not linear velocity
2014-12-06 18:16:44 +11:00
Randy Mackay 8b80e58861 Copter: enable OPTFLOW - do not merge to master 2014-12-06 18:16:44 +11:00
priseborough 60527a023a Copter : Update optical flow test for new PX4Flow interface 2014-12-06 18:16:43 +11:00
priseborough 0d7555b259 Copter : Remove legacy optical flow control mode
This mode is not compatible with the new PX4Flow interface
2014-12-06 18:16:43 +11:00
priseborough 900519b35b Copter : Remove legacy optical flow control mode
This mode is not compatible with the new PX4Flow interface
2014-12-06 18:16:43 +11:00
priseborough 23953b459e Copter : Update logging for new PX4Flow sensor interface 2014-12-06 18:16:43 +11:00
priseborough 20e715aa13 Copter : Remove ADNS3080 flow sensor support 2014-12-06 18:16:43 +11:00
priseborough 5ef2208017 Copter: Change flow sensor read sample rate to 10Hz 2014-12-06 18:16:43 +11:00
Randy Mackay 7be78621f4 Copter: run_nav_updates at 50hz on Pixhawk, 25hz on APM2
Based on work by Jon Challinger (see earlier commit)
2014-12-05 14:01:16 +09:00
Jonathan Challinger 203b713f0d Copter: run_nav_updates at 100hz on pixhawk 2014-12-05 14:01:14 +09:00
Andrew Tridgell dcdfff66e8 Copter: setup pwm esc scaling 2014-11-26 11:14:44 +11:00
Randy Mackay 13b8159fb5 Copter: only allow one preflight calibration at a time 2014-11-21 22:00:45 +09:00
Randy Mackay 330b52194f Copter: change to switch order in guided spline
No functional change
2014-11-19 12:06:30 -08:00
Arthur Benemann db89bd6f03 Copter: correct frame/location of guided spline 2014-11-19 11:59:13 -08:00
Randy Mackay 84f82dd129 Copter: correct get_pilot_desired_throttle calc
Also minor format and commenting addition
2014-11-17 18:16:14 -08:00
Jonathan Challinger 3a529b2cef Copter: utilize get_control_mid for throttle calculations 2014-11-17 18:16:11 -08:00
Andrew Tridgell b6c06ab691 Copter: fix build with new mavlink repo 2014-11-18 11:20:04 +11:00
Randy Mackay c6e70179d2 Copter: move MOUNT_STATUS lower in GCS_MAVLink
No functional change
2014-11-17 15:59:41 -08:00
Arthur Benemann 6bee8969a1 Copter: append MOUNT_STATUS message to STREAM_EXTRA3 messages
The msg is now periodically sent to the GCS, instead of only on request.STREAM_EXTRA3
2014-11-17 15:59:26 -08:00
Jonathan Challinger 387f3276cb Copter: handle SET_POSITION_TARGET mavlink messages 2014-11-17 14:38:55 -08:00
Jonathan Challinger 1b1327dc93 Copter: add Guided_Spline mode 2014-11-17 14:38:48 -08:00
Jonathan Challinger e7939cca01 Copter: change function definitions in guided to static 2014-11-17 14:38:43 -08:00
Jonathan Challinger c7a38c4350 Copter: use force_descend option on auto landings 2014-11-13 18:40:42 -08:00
Craig Elder f7d0a930c2 Copter: Updated GCS_FAILSAFE Parameter Description 2014-11-13 13:10:06 -08:00
Arthur Benemann f24f5a6a32 Copter: remove call to camera.configure and control
The do_take_picture() function must be called for logging to occur.
configure_msg is empty at the moment so the call to this is remove
2014-11-11 10:31:49 -08:00
Randy Mackay ed099a73a3 Copter: minor rename of ACRO circular limits variable 2014-11-10 18:36:17 -08:00
Randy Mackay 83051c306d Copter: minor rename of a circular limits variable 2014-11-10 18:36:15 -08:00