Commit Graph

164 Commits

Author SHA1 Message Date
rmackay9 ef727bbb3c ArduPlane: move to use new INS library instead of IMU library 2012-11-07 19:21:03 +09:00
Andrew Tridgell 8652bfee8d APM: added RSSI_PIN option for receiver RSSI
this allows you to configure the pin for receiver RSSI without
recompiling
2012-11-06 22:04:41 +11:00
Andrew Tridgell aa236c43f8 APM: prepare for 2.66 2012-10-31 13:25:19 +11:00
Pat Hickey d4bb8a10d7 Update ArduCopter and ArduPlane dependencies on AP_Menu 2012-10-18 20:53:39 -07:00
rmackay9 f695db61ea ArduPlane: added AP_Semaphore.h to list of includes 2012-10-06 13:14:28 +09:00
rmackay9 41fbb19cf5 AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
Andrew Tridgell 51aeb2dd4c APM: prepare for 2.65 2012-09-24 07:14:30 +10:00
Andrew Tridgell a4c3c5973d APM: prepare for 2.64 release 2012-09-23 19:32:56 +10:00
Andrew Tridgell cebb67e1df APM: removed the unused sonar code
when we start supporting a sonar we'll add a AP_Sonar library, like
AP_Airspeed
2012-09-19 19:35:22 +10:00
Andrew Tridgell 2324997e16 APM: added ALT_OFFSET parameter
useful to adjust for barometric pressure changes during a long flight
2012-09-19 16:23:25 +10:00
Andrew Tridgell 37cb56f3e1 APM: save another few bytes 2012-09-18 13:58:50 +10:00
Andrew Tridgell df962d25a8 APM: fixed a comment 2012-09-18 13:58:49 +10:00
Andrew Tridgell 12dc2e79cf APM: save 100 bytes of memory
remove flight_mode_strings array
2012-09-18 13:58:49 +10:00
Andrew Tridgell 86face0a03 APM: preparing for 2.63 release 2012-09-17 17:32:13 +10:00
Andrew Tridgell 7e8ef0ae95 APM: fixed handling of DO_REPEAT_SERVO and DO_REPEAT_RELAY 2012-09-17 14:45:47 +10:00
Andrew Tridgell b55e7903aa APM: prepare for 2.62 release 2012-09-13 12:02:18 +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
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 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 657dd5969f APM: preparing for 2.61 release 2012-09-08 18:36:17 +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 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 68705fe7e6 APM: accumulate mag readings during spare cycles in ArduPlane
With this change we average over 100 mag readings per compass.read()
call, which means we are reading the compass at over 1kHz instead of
10Hz. The noise reduction is huge.
2012-09-08 10:05:58 +10:00
Andrew Tridgell 83153eebd4 APM: obey pitch limits in FBWA as well
this means pitch limits are constrained by LIM_PITCH_MIN and
LIM_PITCH_MAX
2012-08-30 20:15:42 +10:00
Andrew Tridgell e2b8817a89 APM: added the ability to forcibly crash the plane on OBC failsafe breach
this allows a user to setup the OBC failsafe system to forcibly crash
the plane (surfaces at limits, zero throttle) when the failsafe system
triggers. This is to allow APM to be used in the Outback Challenge. In
the OBC an external failsafe board also does this using the heartbeat
control pin, so this is an extra safety mechanism.

To prevent users accidentially triggering a crash, this code only
activates if FS_TERM_ACTION is set to to the magic value 42.
2012-08-28 20:18:24 +10:00
Andrew Tridgell fce01464b1 APM: added ALT_CTRL_ALG parameter
this allows you to select different altitude control algorithms. The
current choices are for the default (automatic based on if airspeed is
available), or to force a non-airspeed algorithm

The idea is to make it possible to use airspeed for some things (like
wind speed, speed scaling) but not for alt control
2012-08-28 20:18:24 +10:00
Andrew Tridgell dcbd0fbd44 APM: cleanup throttle suppression code and don't use airspeed to unsupress
this removes the throttle suppression when any of the conditions are
met once, as otherwise flying slow below 10m could zero the throttle.

It also removes the use of airspeed for disabling throttle
supression. Otherwise a strong gust of wind can cause ArduPlane to
try to takeoff!
2012-08-28 20:18:23 +10:00
Andrew Tridgell c730d9072e APM: prepare for ArduPlane 2.60 2012-08-22 16:28:38 +10:00
Andrew Tridgell 2d8f99433c APM: removed factor of 0.5 in non-airspeed takeoff pitch
this limited the pitch far below the specified target pitch
2012-08-22 16:28:38 +10:00
Andrew Tridgell 6ab2a861f7 APM: added RSSI to RC_CHANNELS_RAW as well
and prevent double read
2012-08-22 13:58:25 +10:00
Andrew Tridgell c0c0b8c976 APM: added RECEIVER_RSSI_PIN option
this allows for the receiver RSSI to be sent over MAVLink

Thanks to Burt Green for the suggestion
2012-08-22 13:33:12 +10:00
Andrew Tridgell 9e926eae51 APM: optional build with new controller libs 2012-08-22 12:39:07 +10:00
uncrustify 0e8a76ccdd uncrustify ArduPlane/ArduPlane.pde 2012-08-21 19:19:51 -07:00
Andrew Tridgell 343f7d2de0 APM: removed DMP support from ArduPlane
Without centripetal correction the DMP code will almost certainly
crash a plane
2012-08-22 11:46:35 +10:00
Andrew Tridgell 6d11940ada AHRS: removed Quaternion build support from APM/ACM/rover 2012-08-22 10:42:21 +10:00
rmackay9 6d489947cf ArduPlane: replaced many "int" with "int16_t", "long" with "int32_t" 2012-08-18 18:26:13 +09:00
Andrew Tridgell 5e690d5680 APM: added parameter FBWB_ELEV_REV
this fixes issue 343
2012-08-17 15:04:53 +10:00
Andrew Tridgell df3c8a5bc0 APM: when land_complete is true, use land_pitch
this gives a flare on final landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell 47be6d8ad1 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 8cb55eb75a APM: keep the time of the last heartbeat message
this will be used for failsafe processing
2012-08-15 12:39:34 +10:00
Andrew Tridgell 2865434d02 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
Andrew Tridgell 93f1d5645b APM: fixed LOITER_TIME and LOITER_TURNS
These now follow the mavlink spec. Loiter time is in seconds, and
loiter turns is now 32 bit angle, so can handle larger numbers of
turns.
2012-08-15 12:39:34 +10:00
Andrew Tridgell d9b09d2c93 APM: allow for navigation by dead-reckoning
we now ask AHRS if we have a position estimate, and use that if
available
2012-08-11 12:01:08 +10:00
Amilcar Lucas d34549f386 Add an optional second mount to ArduPlane and ArduCopter 2012-08-08 23:22:24 +02:00
Andrew Tridgell dcc50b5705 AP_Airspeed: removed values passed to constructor 2012-08-08 16:38:39 +10:00
Andrew Tridgell 5bfd1200d6 APM: change variables to use _cm, _cd and _ms suffix for units
this makes it less likely that we mix up units
2012-08-08 12:12:30 +10:00
Andrew Tridgell a823c9ceae APM: removed cli slider and dipswitch options
use mavlink/eeprom for all config
2012-08-08 12:12:29 +10:00
Andrew Tridgell 12cd6b68ff AP_Param: update ArduPlane core for new AP_Param interface 2012-08-08 12:11:57 +10:00