Commit Graph

5676 Commits

Author SHA1 Message Date
Andrew Tridgell ba9543ee04 GPS: NMEA bug fix from Alexey Kozin
thanks Alexey!
2012-09-12 15:04:24 +10:00
Andrew Tridgell fba1692d69 AHRS: added AHRS_BARO_USE parameter
allow disabling of the use of the barometer for vertical acceleration
compensation
2012-09-12 14:42:04 +10:00
Andrew Tridgell 589c8fcc12 APM: report throttle and ground speed mission changes 2012-09-12 13:09:32 +10:00
Andrew Tridgell b1408008c9 APM: allow for landing pitch control until final stage 2012-09-12 13:09:16 +10:00
Andrew Tridgell 05e72c6e68 APM: fixed roll in landing approach 2012-09-12 11:53:17 +10:00
Andrew Tridgell 5f3ffe4839 APM: switch to Randys new IMU rate control method
this drives the speed of the 50Hz loop by the number of samples
accumulated in the IMU. This should give much more consistent timing
in DCM.

Thanks to Randy for introducing this scheme in ArduCopter!
2012-09-11 16:39:36 +10:00
Jason Short 834f961409 ACM : Fix enduf 2012-09-10 21:25:53 -07:00
Jason Short 4c8e257ea2 ACM : forced setup_show to dump params during log dump for better analysis. 2012-09-10 20:52:30 -07:00
Andrew Tridgell 7e672628ea APM: removed the GPS_enabled flag
this fixes using GPS_PROTOCOL to specify a specific GPS with a GPS
that takes a few updates before it works (eg. needing baud rate
changes).

This makes it easier to use an APM1-1280 with more features enabled
2012-09-11 13:37:34 +10:00
Andrew Tridgell c9a299665c APM: added speed scaling to wheeled steering
this allows for a larger amount of steering control at low speeds
without causing osciallation after takeoff
2012-09-11 13:37:34 +10:00
Jason Short 34e07c826f ACM : Added centralized Iterm logging at a lower rate. Logs all iterms. 2012-09-10 20:26:48 -07:00
Jason Short e8e8c27db4 ACM Mavlink - fixed comparison of unsigned to signed int by casting to uint8_t 2012-09-10 20:22:57 -07:00
Jason Short a73bc70553 ACM : Params - formatting cleanup 2012-09-10 20:22:11 -07:00
Andrew Tridgell b787dc8cce APM: added wdt.h for SITL build of APM 2012-09-10 15:52:53 +10:00
Andrew Tridgell 841d2700b6 ACM: use spare CPU cycles to read the magnetometer 2012-09-10 11:38:18 +09:00
rmackay9 9f1033dc42 AP_InertialSensor_Stub: added num_samples_available method to fix HIL build 2012-09-10 11:38:13 +09:00
rmackay9 130f3b0030 AP_InertialSensor_MPU6000: move _last_sample_time_micros to capture time data_interrupt was called 2012-09-10 11:38:08 +09:00
rmackay9 7a265dbf61 AP_InertialSensor: use AP_TimerProcess's queue_process to run read from MPU6000 after any currently running processes complete 2012-09-10 11:38:03 +09:00
rmackay9 55ef1e0a29 AP_PeriodicProcess: queue_process changes to suspend other processes before running queued process
Also restored suspend_timer to void return type
2012-09-10 11:37:58 +09:00
rmackay9 fd110a2723 ArduCopter: modified mainloop timing to be in sync with the arrival of new data from the IMU.
This reduces the maximum delay between when new sensor data arrives and when it is actually used by about 5ms.
2012-09-10 11:37:53 +09:00
rmackay9 42406c827a ArduCopter: added NUM_IMU_SAMPLES_FOR_XYZHZ definitions for MPU6000 and Oilpan to allow more syncing of the mainloop with the arrival of data from the IMU. 2012-09-10 11:37:48 +09:00
rmackay9 6ea5c21f7c AP_ADC: added num_samples_available to allow main loop to be synced with arrival of new sensor data for Oilpan. 2012-09-10 11:37:43 +09:00
rmackay9 fc4ff007e6 AP_IMU: added num_samples_available to allow main loop timing to be synced with arrival of new data from IMU. 2012-09-10 11:37:38 +09:00
rmackay9 0a6219695b AP_InertialSensor: changed read of sensor from MPU6000 to happen immediately
This reduces the delay between when data arrives and when it is used
by up to 1ms.

Added num_samples_available method to all InertialSensors to allow
main loop timing to be synced with sensors.
2012-09-10 11:37:33 +09:00
Andrew Tridgell 0812fc4890 APM: reboot only works on the APM2 2012-09-10 11:50:48 +10:00
Andrew Tridgell cb88681914 APM: added support for MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN
this allows for remote reboot of APM
2012-09-10 11:42:30 +10:00
Andrew Tridgell e2779523ea APM: fixed fetch of relative altitude waypoints
when we fetch relative altitude waypoints from APM to a file, we need
to preserve the altitude
2012-09-10 09:40:29 +10:00
Craig Elder 90b74f5bab APM_RC: fixed noisy PWM output on startup for APM2
This reduces the number of rubbish pulses on the APM2 PWM output pins
on startup, which should help with booting some cheaper ESCs.

Thanks to Randy for the idea!
2012-09-10 08:09:28 +10:00
rmackay9 5d3ddf1fc9 ArduCopter: bug fix for ROI not working if user did not have a camera mount
Changed verify_nav_roi command to attempt to point at the target if our camera mount type is not pan_tilt nor pan_tilt_roll
2012-09-10 02:03:32 +09:00
Michael Oborne a32002e14b firmware build 2012-09-09 18:09:07 +08:00
Andrew Tridgell feb3fe77ce APM: simplify radio_trim code
this removes the duplicate code. Throttle trim is not changed.
2012-09-09 19:39:09 +10:00
Andrew Tridgell 5c3595e0dc APM: fixed throttle nudging
The nudge value depended on RC3_TRIM, which is not a reliable
value. It tried to only take effect when the throttle stick was above
50%, but if RC3_TRIM was high for some reason (say 1500) then it would
actually depress the throttle by a large amount, which could cause the
plane to stall.

This also adds a boolean option THROTTLE_NUDGE to allow disabling of
throttle nudging
2012-09-09 19:39:04 +10:00
Andrew Tridgell 657dd5969f APM: preparing for 2.61 release 2012-09-08 18:36:17 +10:00
Andrew Tridgell 6e15aa68b8 Rover: updated for new RC_Channel_aux API 2012-09-08 15:14:41 +10:00
Andrew Tridgell 49468953a3 APM: updated for new RC_Channel_aux API 2012-09-08 15:14:41 +10:00
Andrew Tridgell 4c07add542 AP_Camera: updated for new RC_Channel_aux API 2012-09-08 15:13:06 +10:00
Andrew Tridgell f41270a3ce AP_Mount: updated for new RC_Channel_aux API 2012-09-08 15:12:52 +10:00
Andrew Tridgell 3b97339104 RC_Channel: simplified RC_Channel_aux and fixed issue 725
it is perfectly valid to configure two RC channels with the same
function, especially when that function is manual output (ie. copy
input to output)

This removes the g_rc_function[] indirection array
2012-09-08 15:12:28 +10:00
Andrew Tridgell a6422be8fb APM: added mtk and mtk16 build targets
useful for testing non-auto gps detection
2012-09-08 12:43:36 +10:00
Andrew Tridgell f26b9ab286 APM: prevent crosstrack from takeoff point after takeoff completion 2012-09-08 11:37:14 +10:00
Andrew Tridgell dec12c7370 APM: use ahrs.airspeed_estimate() in two more places
this applies the wind constraint
2012-09-08 11:37:11 +10:00
Andrew Tridgell de28cc8b28 AHRS: added AHRS_WIND_MAX option
this allows APM to cope better with airspeed sensor failure, but
ensuring airspeed stays within AHRS_WIND_MAX of ground speed
2012-09-08 11:37:07 +10:00
Andrew Tridgell 8458607928 APM_OBC: changed termination servo values, and added loop counter 2012-09-08 11:37:00 +10:00
Andrew Tridgell cde7d8c5e7 APM: fixed some compiler warnings 2012-09-08 10:14:32 +10:00
Andrew Tridgell d07d42403e APM: tidy up an if() statement 2012-09-08 10:14:20 +10:00
Andrew Tridgell fa84ba451a APM_OBM: Failsafe board sketch
this combines with the OBC failsafe module
2012-09-08 10:07:17 +10:00
Andrew Tridgell cca04d195a APM_OBC: handle separate terminate pin correctly 2012-09-08 10:07:14 +10:00
Andrew Tridgell 13145e4c01 OBC: added FS_TERM_PIN option
this sets a pin for flight termination
2012-09-08 10:07:08 +10:00
Andrew Tridgell 164c60d25f APM: added RUDDER_STEER option
when enabled, this uses only the rudder to steer during takeoff and
landing, using aileron only for levelling
2012-09-08 10:07:03 +10:00
Andrew Tridgell 130b26e1f9 APM: support DO_SET_SERVO command 2012-09-08 10:06:53 +10:00