Commit Graph

1832 Commits

Author SHA1 Message Date
uncrustify 2f5b292d50 uncrustify libraries/AC_PID/examples/AC_PID_test/AC_PID_test.pde 2012-08-21 18:59:13 -07:00
Andrew Tridgell 2b6af43c92 AHRS: removed AP_AHRS_Quaternion
this AHRS backend is causing compiler errors with the Arduino build
environment on windows. The quaternion AHRS backend is currently not
being developed/supported anyway. We can resurrect it if someone wants
to start developing it again.
2012-08-22 10:41:31 +10:00
Andrew Tridgell 37d3affe3b AP_GPS: fixed build of new MTK code 2012-08-22 10:02:21 +10:00
Craig Elder 661d1500d2 GPS: Corrections to Media Tek GPS Driver. Change to 5Hz and SBAS 2012-08-22 09:56:25 +10:00
Robert Lefebvre e1d6103045 TradHeli: Creating Flybar Acro mode. 2012-08-21 16:54:01 -04:00
Andrew Tridgell 6c0b7b7f53 AHRS: fixed duplicate gps_use variable in DCM 2012-08-21 20:17:03 +10:00
Andrew Tridgell cc0e8be85a AHRS: moved var_info[] into top level AP_AHRS class 2012-08-21 15:58:09 +10:00
Andrew Tridgell 89db3458c8 AHRS: added set_fast_gains() method
this will be used by arducopter on the ground
2012-08-21 15:38:06 +10:00
Robert Lefebvre 3d0ef1b3e6 Changing TradHeli param motors.acro_mode to motors.flybar_mode to better reflect it's intent. 2012-08-20 23:13:50 -04:00
Robert Lefebvre ab0559359d Adding new Trad Heli parameters. 2012-08-20 16:45:19 -04:00
rmackay9 4371fdda6c AP_Compass: fix for mismatching set_initial_location parameters (forgot to change long to int32_t in .cpp file) 2012-08-18 20:41:38 +09:00
rmackay9 9f81d0c601 AP_GPS: revert delay callback to be "unsigned long" 2012-08-18 20:33:45 +09:00
rmackay9 cef3e1d732 DataFlash: revert delay callbacks to use "unsigned long" 2012-08-18 20:28:31 +09:00
rmackay9 ba48bffb46 DataFlash: change "unsigned long" to "uint32_t" in callback functions 2012-08-18 19:22:14 +09:00
rmackay9 9973e4ae13 DataFlash: replaced "int" with "int16_t" 2012-08-18 18:31:20 +09:00
rmackay9 995b8a571b AP_Common: change a few more "int" to "int16_t" 2012-08-18 18:05:18 +09:00
rmackay9 ea860126e0 AP_Compass: replace "long" with "int32_t" 2012-08-18 16:58:16 +09:00
rmackay9 2ad383505c AP_GPS: replaced "int" with "int16_t" and "long" with "int32_t" 2012-08-18 16:35:38 +09:00
Andrew Tridgell 7d8903a8bf AP_Baro: the HIL baro needs to inherit calibrate() from the parent class
this was what caused the renorm errors
2012-08-18 16:32:23 +10:00
Andrew Tridgell 01ae8f8771 AHRS: check for bad values in the error before they can affect DCM
this should fix the DCM renorm errors in autotest, probably caused by
bad climb rates
2012-08-18 13:54:11 +10:00
Andrew Tridgell adda41a2ec Filter: ensure the derivative filter never returns an invalid number 2012-08-18 13:54:11 +10:00
rmackay9 756d1a3fff AP_Limits: change order of initialisation of class variables to remove compiler warnings. 2012-08-18 12:51:32 +09:00
Michael Oborne 0996782582 Fix Airspeed use use 2012-08-18 08:30:15 +08:00
Andrew Tridgell 7948b3aee7 AHRS: force an extra read of the compass on startup
the first read from the compass can be bad. This ensures we have a
good value when getting the initial AHRS yaw.

Thanks to Randy and Jason for the bug report!
2012-08-17 17:57:39 +10:00
Andrew Tridgell 84c39774fa DataFlash: fixed SITL build 2012-08-17 16:27:19 +10:00
Andrew Tridgell 1ccff12b54 SITL: added SIM_ENGINE_MUL
this allows for simulated engine failures
2012-08-17 14:22:08 +10:00
Jason Short ff32718d9b Dataflash fix for missing card error 2012-08-16 15:37:28 -07:00
Andrew Tridgell faeb206239 SITL: make abs() 16 bit in SITL
this will help us find abs() bugs in autotest
2012-08-16 15:18:17 +10:00
Andrew Tridgell 50e2458df0 math: more abs() fixes
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Jason Short e2c3149b2f Location Lib : Abs was overflowing causing bad comparison 2012-08-15 22:01:51 -07:00
Jason Short 555e26d5fa Location Lib. Potential fix for bad angle and distance calcs.
last_lat changed to int32_t since it can be negative.
2012-08-15 21:36:55 -07:00
Jason Short a6b874b591 DataFlash : Removed Chip Erase - relying on Block erase only 2012-08-15 21:04:24 -07:00
Jason Short 44b715af9b Dataflash Logs : Fixed block erase on APM2
Byte order for 512 vs 528 was reversed.
2012-08-15 21:04:24 -07:00
Andrew Tridgell 9c3c1c4f54 APM: fixed hil build 2012-08-16 12:53:37 +10:00
Andrew Tridgell 41a974683e Quaternion: we no longer support acceleration in the GPS driver
remove the linear acceleration compensation code
2012-08-15 20:07:53 +10:00
Andrew Tridgell 79aae2114c GPS: support getting raw velocity values from a UBlox
this may give better velocity numbers than the value from COG
2012-08-15 20:06:35 +10:00
Andrew Tridgell f4023d1b44 AP_Airspeed: remove airspeed filter and run at 10Hz
this saves on the filter memory, and gives just as good a result
2012-08-15 12:39:35 +10:00
Andrew Tridgell a361a3aebd AP_AnalogSource: make read_average() return a float
this allows it to take advantage of better than 1 bit resolution by
averaging
2012-08-15 12:39:35 +10:00
Andrew Tridgell 7bb8fa1e58 MAVLink: added FENCE_ACTION_REPORT 2012-08-15 12:39:35 +10:00
Andrew Tridgell 44852276da AHRS: added ahrs.yaw_initialised()
this allows the high level code to know if the AHRS driver has a
reliable yaw estimate
2012-08-15 12:39:34 +10:00
Andrew Tridgell 93f45f232f APM: added 'OBC' failsafe module for ArduPlane
this adds FS_* parameters for setting up APM to follow the outback
challenge failsafe rules.

This includes:

 - manual pin
 - heartbeat pin
 - waypoint for heartbeat failure
 - waypoint for GPS failure
2012-08-15 12:39:34 +10:00
Pat Hickey 394a3059b7 APM_RC_APM2: updated comments for clarity 2012-08-13 15:34:17 -07:00
rmackay9 4e7e78d091 AP_RC_Channel: deleted this library as nobody seems to be using it.
Everyone is using RC_Channel instead which includes parameters.
2012-08-13 16:36:10 +09:00
rmackay9 c22f3ae563 GPS_IMU: deleted this empty library as nobody seems to be using it. 2012-08-13 16:35:29 +09:00
rmackay9 cb71edb427 Waypoints: deleted this library as nobody seems to be using it. 2012-08-13 16:35:08 +09:00
rmackay9 8f475f9d38 Trig_LUT: deleted this library as nobody seems to be using it 2012-08-13 16:34:50 +09:00
rmackay9 1115dde0d4 AP_EEPROMB: deleted this library as nobody seems to be using it. 2012-08-13 16:34:33 +09:00
rmackay9 a3a56c488a APM_RC: rename example sketch directories for APM2 so they can be opened easily from arduino ide 2012-08-13 11:50:53 +09:00
Andrew Tridgell 562069cbd7 AHRS: avoid a compiler bug in quaternion code
Having _wind in the AP_AHRS class causes a register allocation error
when building the Quaternion code with some versions of avr-gcc. Quite
bizarre.
2012-08-13 11:08:10 +10:00
Andrew Tridgell fa1b72adc5 AHRS: use airspeed for wind in forward flight
when not turning we can use the airspeed sensor directly to calculate
the wind speed.
2012-08-12 10:54:25 +10:00
Andrew Tridgell 3a92509b18 AHRS: added AHRS_GPS_USE parameter
this allows for the GPS to be disables for position updates, which
allows for testing dead-reckoning
2012-08-11 22:06:03 +10:00
Andrew Tridgell 8ddf864431 Mavlink: re-generate with WIND message 2012-08-11 22:06:03 +10:00
Andrew Tridgell f8a17ba1e9 Mavlink: added WIND message
this allows us to log the wind estimation result
2012-08-11 22:06:03 +10:00
Andrew Tridgell 2c7ab7c659 AHRS: added wind estimation code
this allows us to estimate the wind while we have GPS lock, then use
that estimate in the long term dead reckoning
2012-08-11 22:06:03 +10:00
Andrew Tridgell 20a30e3a6b AP_Math: added matrix column extraction functions 2012-08-11 22:06:02 +10:00
Amilcar Lucas f103d375c9 RC_Channel_aux: cycle thru all functions except k_none and k_nr_aux_servo_functions
Probably makes no difference because g_rc_function[k_none] == NULL
2012-08-11 13:43:21 +02:00
Andrew Tridgell 708280511c AHRS: added long-term dead-reckoning
this uses airspeed (if available) or last GPS ground speed to update
our position estimate in AHRS
2012-08-11 12:00:31 +10:00
Andrew Tridgell 06070dbf23 AP_GPS: added last_ground_speed() method
used for dead-reckoning in AHRS
2012-08-11 11:59:47 +10:00
Andrew Tridgell f68211a011 AP_GPS: fixed types to be stdint types 2012-08-11 11:59:03 +10:00
Andrew Tridgell 96d1249dad SITL: fill in SIMSTATE.lat and SIMSTATE.lng 2012-08-11 11:58:25 +10:00
Andrew Tridgell 90f00ebd01 MAVLink: re-generate MAVLink C code 2012-08-11 11:58:06 +10:00
Andrew Tridgell b47cceb442 MAVLink: added SIMSTATE.lat and SIMSTATE.lng
this allows us to display both true and estimated position on the
groundstation
2012-08-11 11:57:45 +10:00
Andrew Tridgell e1ffd37411 AP_Math: added location_update() and location_offset() functions
these will be used by AHRS dead reckoning
2012-08-11 11:56:54 +10:00
Andrew Tridgell e48b0f8558 AHRS: make airspeed sensor available to AHRS
this will be used for long term dead-reckoning
2012-08-11 08:57:32 +10:00
Andrew Tridgell d3cc6e5fab ACM: fixed HIL build 2012-08-11 08:34:16 +10:00
Jason Short d37ca9343b MOTORS Mixer: temp removal of Yaw Contrib code 2012-08-09 17:00:11 -07:00
Jason Short 4e001286a6 AHRS DCM: FOrmatting 2012-08-09 16:59:43 -07:00
Amilcar Lucas aef8c7af0a AP_Mount: Reduce parameter name length, to allow MNT2_* strings to be smaller than the limit of 15 characters 2012-08-10 00:16:52 +02:00
Andrew Tridgell a2f802e5da build: fixed more build warnings 2012-08-09 16:19:39 +10:00
Andrew Tridgell 0491188c03 MPU6000: fixed some build warnings 2012-08-09 16:19:21 +10:00
Andrew Tridgell c69dccceb2 AP_MetaClass: fixed a warning 2012-08-09 16:19:04 +10:00
Andrew Tridgell 73d70354a3 AP_Param: fixed some build warnings 2012-08-09 16:18:53 +10:00
Andrew Tridgell d3c399c5d9 MAVLink: removed obsolete files 2012-08-09 15:25:49 +10:00
Andrew Tridgell 52b6e4ab2e MAVLink: added generator.sh script
this is used to re-generate our MAVLink C code
2012-08-09 15:25:06 +10: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 1683f18bff Allow fully independent operation of two AP_Mount instances 2012-08-08 23:11:23 +02:00
Amilcar Lucas 45b10a51ff AP_Mount: Enable Joystick speed code, now that the framework supports more than 16 parameters per group.
Save some bytes by skiping the redundant *_rc_in initialization in the AP_Mount() constructor
2012-08-08 22:45:36 +02:00
Andrew Tridgell eeaa855b03 SITL: fixed deletion of eeprom.bin
with the new AP_Param constructor order, we need to erase rather than
unlink the eeprom
2012-08-08 18:01:06 +10:00
Andrew Tridgell 5e19c0cf04 AP_Airspeed: removed values passed to constructor 2012-08-08 16:38:39 +10:00
Andrew Tridgell fc26d49260 AP_Param: avoid saving values within 0.01% of the default value
this saves some more space due to rounding errors
2012-08-08 13:13:30 +10:00
Andrew Tridgell 3159c9ed99 AP_Mount: fixed defaults for angles
this saves some eeprom space by not saving the 4500 values
2012-08-08 13:04:49 +10:00
Andrew Tridgell 891ed81f74 AP_Math: rename get_bearing() to get_bearing_cd() to make units obvious 2012-08-08 12:12:30 +10:00
Andrew Tridgell 6245592447 SITL: added pgm_read_dword() and pgm_read_float() 2012-08-08 12:11:57 +10:00
Andrew Tridgell e9d0ae3e7f AP_Param: update remaining libraries for new constructor syntax 2012-08-08 12:11:57 +10:00
Andrew Tridgell 7be604cffd AP_Param: update AHRS for new constructor syntax 2012-08-08 12:11:57 +10:00
Andrew Tridgell 3dfe55e72c AP_Param: update PID libraries for new constructor syntax 2012-08-08 12:11:57 +10:00
Andrew Tridgell 45c7c9b8d1 AP_Param: major update to use default values in var_info table
this stores the default value for all scalar variables in the var_info
table, which makes it possible to avoid storing default values in
eeprom. That allows us to oversubscribe the eeprom space with a much
lower risk of overrun.
2012-08-08 12:11:57 +10:00
Andrew Tridgell b0e403e6fb AP_Baro: the DerivativeFilter now handles duplicate data
this saves a few bytes of memory
2012-08-08 12:07:36 +10:00
Andrew Tridgell fb90d16092 Filter: make the DerivativeFilter test GNUPlot friendly
makes testing easier
2012-08-08 12:07:36 +10:00
Andrew Tridgell 2de06df08d Filter: automatically cope with duplicate timestamps
this makes it easier for callers to avoid excessive slope calculations

Thanks to Jon Challinger for the idea
2012-08-08 12:07:35 +10:00
Andrew Tridgell c9a56e2223 Filter: fixed a off-by-one DerivativeFilter bug
many thanks to Jon Challinger for noticing this!
2012-08-08 12:07:35 +10:00
Amilcar Lucas fbc25e4baa AP_Mount: move mount to a "retracted position" into the fuselage with a fourth servo 2012-08-06 01:27:29 +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 f3f89004e9 More work on ch9, 10 and 11 2012-08-04 19:44:41 +02:00
Amilcar Lucas 431ed1c9b9 More flexible RC support 2012-08-04 18:39:20 +02:00
Andreas M. Antonopoulos 1ea2cb7b75 AP_Limits: experimental "bounce" mode. 2012-07-31 18:39:58 -07:00
Robert Lefebvre 54b320a9a0 Fixing Trad Heli Ext ESC Controller
-Added ramp-down rate instead of instantly setting ramp to zero when throttle is dropped to bottom. This is to allow "warm-restart" if shutdown was unintentional.
-Actual ESC still goes to zero while throttle is dropped to the bottom, only the ramp counter winds down slowly behind the scenes.
2012-07-31 17:47:25 -04:00
rmackay9 23a1e33e20 AP_InertialSensor_MPU6000: another attempt at fixing the SITL build 2012-07-28 17:19:19 +09:00