Andrew Tridgell
e0b511e367
Plane: enable new log download functions
2013-12-17 11:51:35 +11:00
Andrew Tridgell
3508a14542
Plane: small arming tidyups
2013-12-11 17:29:26 +11:00
Michael Day
b0a0316dd6
Plane: Now using AP_Arming library.
2013-12-11 17:29:23 +11:00
Andrew Tridgell
b637ab35e4
Plane: lower the priority of mount update
2013-12-09 17:34:07 +11:00
Andrew Tridgell
d642254f18
Plane: breakup one second loop into 3 pieces
...
this prevents it not running when gimbal is active
2013-12-09 17:34:07 +11:00
Randy Mackay
b6462c23af
Plane: disable external leds
2013-11-30 22:53:55 +09:00
Andrew Tridgell
5a0cb5dea4
Plane: added sonar logging to dataflash
2013-11-28 21:49:27 +11:00
Andrew Tridgell
a05a32dbda
Plane: added RCIN and SRVO logging
2013-11-26 09:04:43 +11:00
Andrew Tridgell
2fa5e6310d
Plane: added 3rd telemetry stream on platforms that have it
...
this generalises the gcs object usage
2013-11-23 19:29:22 +11:00
Andrew Tridgell
53c3dff334
Plane: allow changing of loiter direction while loitering
...
useful for causing path capture failures in the sim
2013-11-07 11:54:28 +11:00
Andrew Tridgell
1328bbf040
Plane: log the AHRS error terms in dataflash
...
also log raw IMU at 10Hz with default config
2013-11-07 10:19:13 +11:00
Andrew Tridgell
691eaabe94
Plane: prepare for 2.76 release
2013-11-05 15:55:08 +11:00
Andrew Tridgell
5e4b243c7b
Plane: make DataFlash objects static
2013-11-04 21:37:50 +11:00
Andrew Tridgell
231b5ab793
Plane: prevent too large combined pitch/roll angles
...
this reduces the roll limit by cos(pitch) and pitch minimum by
cos(roll). This prevents unreasonable attitudes in all stabilised
modes
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-04 21:21:42 +11:00
Andrew Tridgell
ff5f2ceae5
Plane: update for API changes
2013-11-04 21:21:42 +11:00
Andrew Tridgell
b1c9b57c73
Plane: mark 2.76beta1
2013-11-02 21:48:17 +11:00
Andrew Tridgell
26a3860af2
Plane: fixed PM message
2013-11-02 21:41:30 +11:00
Andrew Tridgell
bcb0deb888
Plane: ready for 2.75 release
2013-10-28 18:22:25 +11:00
Andrew Tridgell
3ff407cb75
Plane: improved perf monitoring with SCHED_DEBUG
2013-10-28 17:10:00 +11:00
Andrew Tridgell
a407609dbe
Plane: tag 2.75beta5
2013-10-26 07:57:35 +11:00
Andrew Tridgell
b897285737
Plane: set system time on GPS lock
2013-10-24 14:22:48 +11:00
Andrew Tridgell
210ca08abd
Plane: changed to 2.75beta4
2013-10-18 11:53:51 +11:00
Andrew Tridgell
4239498b62
Plane: moved fast_loop() into main scheduler table
2013-10-15 09:52:23 +11:00
Andrew Tridgell
a3168bcbaa
Plane: fixes for AP_Mount API
2013-10-13 11:03:31 +09:00
Andrew Tridgell
035ac3800a
Plane: use G_Dt for acro angle integration
...
also cleanup some other uses of performance timing
2013-10-12 13:30:27 +11:00
Andrew Tridgell
05115684c1
Plane: pass FlightStage to TECS
...
this will allow for better throttle and pitch control on landing
2013-10-12 13:14:30 +11:00
Andrew Tridgell
72505cf4e5
Plane: release 2.75beta3
2013-10-11 16:29:08 +11:00
Andrew Tridgell
8e5d1430da
Plane: use ins.wait_for_sample()
2013-10-08 17:31:15 +11:00
Andrew Tridgell
2bb497703c
Plane: avoid delay_microseconds() until fixed on PX4
2013-10-08 14:55:38 +11:00
Andrew Tridgell
48ed480d59
Plane: improved latency of main loop
...
use a 500usec delay
2013-10-08 11:50:54 +11:00
Andrew Tridgell
e6af7dad3d
Plane: switched to L3G4200D driver for Linux
2013-10-08 11:50:54 +11:00
Andrew Tridgell
61dd04ccb5
Plane: auto-update home and baro calibration when disarmed
...
this takes advantage of the PX4 arming state to ensure position and
baro calibration is updated
2013-10-05 18:45:45 +10:00
Andrew Tridgell
d275f50539
Plane: added GROUND_STEER_ALT and GROUND_STEER_DPS
...
this uses the new AP_SteerController steering controller developed for
the rover code to allow for ground steering of planes
2013-10-05 07:46:27 +10:00
Randy Mackay
9388ea3848
Plane: integrate BattMonitor exhausted method
...
BatteryMonitor object made static
Removed unused macros for battery voltage and current monitoring
2013-10-03 11:16:21 +09:00
Randy Mackay
c64d444b5a
Plane: integrate BattMonitor
2013-10-03 11:16:08 +09:00
Andrew Tridgell
65976831e2
Plane: moved Linux logs to logs directory
2013-10-01 13:05:18 +10:00
Andrew Tridgell
eef693f243
Plane: removed some compat code
...
fixes warnings
2013-09-30 21:06:43 +10:00
Andrew Tridgell
444d053dc2
Plane: enable Oilpan and BMP085 on Linux
2013-09-29 01:02:05 +10:00
Andrew Tridgell
f68778d453
Plane: be friendly to multi-tasking OSes
2013-09-28 22:04:15 +10:00
Andrew Tridgell
287db19119
Plane: updates for Stub -> HIL
2013-09-28 22:04:15 +10:00
Andrew Tridgell
1fd0f73e3f
Plane: use DataFlash_File on Linux
2013-09-28 21:24:02 +10:00
Andrew Tridgell
c3d0b315cf
Plane: added HAL_LINUX includes
2013-09-28 21:24:02 +10:00
Andrew Tridgell
650ff258db
Plane: update for new INS API
2013-09-27 10:49:00 +10:00
Mike McCauley
6a8c1a0c36
Plane: Added flymaple to ArduPlane
2013-09-24 13:51:28 +10:00
Andrew Tridgell
b28a4f21f2
Plane: fixed uartA baud rates for APM1
2013-09-21 09:30:29 +10:00
Andrew Tridgell
4bd6b2f428
Plane: use new usb_connected() function
2013-09-19 16:23:58 +10:00
Andrew Tridgell
150e7a3f16
Plane: prevent arming tone on startup
2013-09-18 10:56:06 +10:00
Andrew Tridgell
95a696ea36
Plane: enable failsafe battery reporting
2013-09-18 10:50:34 +10:00
Andrew Tridgell
ec0c894306
Plane: use the projected position for geofencing and waypoints
2013-09-17 21:05:25 +10:00
Andrew Tridgell
43ffe91546
Plane: added FS_ACTION of 2 for glide
...
this allows people without specified settings in their receiver for
failsafe to choose FBWA zero throttle glide on throttle failsafe. That
can be a better choice when flying at a R/C club field
2013-09-15 15:05:39 +10:00
Andrew Tridgell
cc6acac1dd
Plane: added AUTO_FBW_STEER option
...
this is an unusual option that gives FBWA flight control in AUTO
mode. It is being added to support use of APM in an aerial robotics
competition where students need to pilot the plane, but they still
need waypoint triggering of payloads
2013-09-13 14:38:09 +10:00
Andrew Tridgell
de7b42e323
Plane: changed to AP_Vehicle.h
2013-09-13 11:46:54 +10:00
Andrew Tridgell
f6688582a6
Plane: added FENCE_ACTION=3 behaviour
...
this makes it safer to enable the geofence as a receiver failsafe
mode. It retains manual throttle control, so if it triggers on the
ground due to the receiver losing signal from the transmitter then the
throttle can be kept low, preventing an unexpected takeoff.
2013-09-08 07:31:10 +10:00
Andrew Tridgell
4762b3e7c6
Plane: change to 2.75beta2
2013-08-30 14:02:21 +10:00
Andrew Tridgell
a93f7c39a9
Plane: updates for new notify API
2013-08-30 13:01:35 +10:00
Randy Mackay
ad8bd16725
Plane: integrate AP_Notify
2013-08-30 13:01:35 +10:00
Andrew Tridgell
5cec9b65c9
Plane: constrain calibration to roll/pitch limits
2013-08-30 13:01:34 +10:00
Andrew Tridgell
8dd0aa12ed
Plane: prevent GPS speed spikes at startup from breaking airspeed cal
...
the filter can be affected by a huge GPS velocity spike
2013-08-18 11:42:22 +10:00
Andrew Tridgell
4425b6af7c
Plane: update for new TECS API
2013-08-14 14:59:01 +10:00
Andrew Tridgell
accfd46633
Plane: update for new APM_Control API
2013-08-14 14:57:41 +10:00
Andrew Tridgell
8378dc9779
Plane: use reference to AHRS
2013-08-13 13:49:34 +10:00
Andrew Tridgell
a33573352e
Plane: fixes for updated AP_Math and AHRS APIs
...
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
2013-08-05 10:30:04 +10:00
Andrew Tridgell
e22f58c9fc
Plane: fixed build with OBC failsafe
2013-08-03 09:18:01 +10:00
Andrew Tridgell
c3b5f20a45
Plane: run TECS 50Hz code when throttle suppressed
...
this fixes auto-launch detection using TECS
2013-08-02 18:46:48 +10:00
Andrew Tridgell
8428779558
Plane: make it easier to find task numbers
2013-08-02 18:46:42 +10:00
Andrew Tridgell
62cc84aba3
Plane: use new scheduler load_average() function
...
this also simplifies the main loop
2013-08-02 18:46:28 +10:00
Andrew Tridgell
233b033e8c
Plane: removed old speed/altitude control algorithms
...
Use TECS only. This makes the code a lot simpler and easier to
properly document
2013-07-22 13:28:11 +10:00
Andrew Tridgell
c0697d0a2d
Plane: mark 2.75beta1
2013-07-22 12:50:30 +10:00
Andrew Tridgell
6e288551ab
Plane: fixed reversion to pre-failsafe mode
...
if AUTO was entered using GCS, we need to switch back to the old mode,
not control channel
2013-07-22 12:50:02 +10:00
Andrew Tridgell
c8a83e17d0
Plane: remove old AIR_START code
...
this was never used or tested
2013-07-22 12:50:01 +10:00
Andrew Tridgell
7673ca0bac
Plane: updates for new EAS2TAS scaling
2013-07-22 12:50:01 +10:00
Andrew Tridgell
9bbe6c1967
Plane: update to new license boilerplate for GPLv3
...
we had LGPLv2 in some places, despite the fw being GPLv3
2013-07-22 12:50:01 +10:00
Andrew Tridgell
882aa68c16
Plane: use new airspeed calibration code
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-22 12:50:01 +10:00
Andrew Tridgell
9b70675b12
Plane: check the control switch a bit more often
...
faster response to mode changes
2013-07-22 12:50:00 +10:00
Andrew Tridgell
51b9cf3e76
Plane: move failsafe variables into a structure
...
this makes the logic a bit easier to follow
2013-07-22 12:50:00 +10:00
Andrew Tridgell
608345415b
Plane: pass aircraft parameters to attitude controllers
...
also cope with rename of airspeed min/max variables
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-18 14:53:37 +10:00
Andrew Tridgell
a4f49a28fb
Plane: prepare for 2.74b release
2013-07-16 09:45:32 +10:00
Andrew Tridgell
e27dd14bcc
Plane: fixed FBWB aileron control
2013-07-16 09:44:23 +10:00
Andrew Tridgell
e8355905dd
Plane: prepare for 2.74 release
2013-07-15 11:19:38 +10:00
Andrew Tridgell
dbd47b2a30
Plane: make TECS the default speed/height controller
2013-07-15 11:12:24 +10:00
Andrew Tridgell
ec21922233
Plane: make wp_distance static
...
removed hack in AP_Camera library
2013-07-15 09:56:28 +10:00
Andrew Tridgell
ed20c4cbc8
Plane: fixed initial reporting of battery remaining
...
we were not showing battery remaining 100% until we used some battery
2013-07-14 21:59:15 +10:00
Andrew Tridgell
d4db2231d4
Plane: change to 2.73beta4
2013-07-13 21:47:22 +10:00
Andrew Tridgell
dc024d425a
Plane: re-do roll hanging in ACRO mode
...
this avoids the euler angle zeros of the previous method by using a
gyro integrator on the roll axis
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-13 21:45:58 +10:00
Andrew Tridgell
113bc20f8a
Plane: added a new CRUISE flight mode
...
See
http://diydrones.com/group/apmusergroup/forum/topics/feature-request-hold-heading-mode
this fixes issue #438
2013-07-13 21:45:58 +10:00
Andrew Tridgell
ea9ae31a7a
Plane: fixed a bug with altitude drift in FBWB mode
...
not taking account of deadzone correctly
2013-07-12 21:17:09 +10:00
Andrew Tridgell
1d04290eab
Plane: change to 2.74beta3
2013-07-11 11:58:54 +10:00
Andrew Tridgell
608007361b
Plane: added initial implementation of ACRO mode
...
rate based control with attitude locking
2013-07-11 09:10:41 +10:00
Andrew Tridgell
3c97fad2ec
Plane: changes for GPS field changes
2013-07-10 14:04:22 +10:00
Andrew Tridgell
7aa360b176
Plane: added relative_altitude helper functions
...
prevents some code duplication
2013-07-10 14:04:22 +10:00
Paul Riseborough
971d36f06b
Plane: added height to 10Hz TECS call
2013-07-10 14:04:22 +10:00
Andrew Tridgell
f7c8d1e1ee
Plane: use current_loc.alt for altitude to TECS
2013-07-10 11:55:35 +10:00
Craig@3DR
7f4336430a
Plane: trigger picture + logging on camera update_location()
2013-07-10 08:40:01 +10:00
Paul Riseborough
a4f3180e2a
Plane: added support for throttle nudging with TECS
2013-07-09 20:51:03 +10:00
Paul Riseborough
c34803db13
Plane: pass in adjusted height above field to TECS
2013-07-09 09:25:55 +10:00
Andrew Tridgell
9f612f6f78
Plane: only call TECS when throttle is not suppressed
...
this helps prevent integrator buildup on the ground
2013-07-08 12:07:50 +10:00
Andrew Tridgell
1355b6d89d
Plane: break-up scheduling into smaller pieces
...
ensure mavlink sends don't push us over a scheduling boundary
2013-07-05 18:05:27 +10:00
Andrew Tridgell
d30dd7c3f1
Plane: only run TECS when in an auto-throttle mode
...
this prevents integrator buildup in user controlled modes
2013-07-05 14:55:22 +10:00
Andrew Tridgell
dd330885b8
Plane: added compass and baro accumulate functions
2013-07-05 12:59:15 +10:00
Andrew Tridgell
6c7d160ee6
Plane: fixed TECS takeoff detection
2013-07-04 16:56:57 +10:00
Andrew Tridgell
a5bda3ffef
Plane: changed to using a "aircraft parameters" structure
...
this structure can be passed to libraries to give them easy access to
critical user parameters
2013-07-04 16:56:57 +10:00
Paul Riseborough
d62636d309
Plane: added new TECS altitude controller
...
Includes improvements to takeoff/launch detect logic to support hand
launching for X-8 flight
2013-07-04 16:56:57 +10:00
Andrew Tridgell
0d3faeda90
Plane: update_mount assumes 50Hz, for camera trigger
2013-06-25 12:44:26 +10:00
Andrew Tridgell
bb47029564
Plane: enable CAM_TRIGG_DIST parameter
2013-06-25 12:44:26 +10:00
Andrew Tridgell
056e0ca40d
Plane: APM2 doesn't have channel 9 PWM output
2013-06-24 13:06:54 +10:00
Andrew Tridgell
641ad6bc63
Plane: increase time allowed for update_alt()
...
the altitude tracking code can be quite expensive with TECS
2013-06-07 08:41:09 +10:00
Andrew Tridgell
b27ffdd087
Plane: new plane beta 2.74beta2
2013-06-04 15:10:11 +10:00
Andrew Tridgell
c008fa764c
Plane: update_commands() can take 7ms if it needs to write a waypoint
2013-06-04 13:42:25 +10:00
Andrew Tridgell
93cd0f9a31
Plane: switch to new AP_Scheduler
...
this gives us more accurate task scheduling in ArduPlane, plus better
monitoring of task timing (via SCHED_DEBUG)
2013-06-04 13:34:58 +10:00
Andrew Tridgell
02d72ffcba
Plane: make it possible to change board orientation at runtime
2013-06-03 16:52:44 +10:00
Andrew Tridgell
4c9bc30f58
Plane: make it possible to change control channel ordering without reboot
...
this makes configuration a bit easier
2013-06-03 16:42:38 +10:00
Andrew Tridgell
fb9bf21522
Plane: allow channel mapping of first 4 channels
...
this makes it easier to support DSM and SBUS radios
2013-06-03 16:23:48 +10:00
Andrew Tridgell
f7697574db
Plane: use the new airspeed driver interface
...
the choice of analog source is now in the airspeed driver
2013-06-03 11:51:09 +10:00
Andrew Tridgell
bb3171ab5f
Plane: zero attitude integrators on the ground
2013-06-01 22:29:38 +10:00
Andrew Tridgell
cd55ed45e2
Plane: removed the old roll/pitch/yaw PID controllers
...
use the new controllers, with auto parameter conversion
2013-05-31 14:06:56 +10:00
Andrew Tridgell
eba7d6da9a
Plane: removed the old crash_timer code
...
This code is less relevent with the new L1 navigation, and could cause
issues with the pilot not having control after a long dive.
Thanks to Soren for pointing out the issues
See issue #305
2013-05-28 11:19:28 +10:00
Andrew Tridgell
dd633fcf3f
Plane: make voltage and battery capacity failsafe settable at runtime
...
this also fixes issue #292
2013-05-22 20:33:57 +10:00
Andrew Tridgell
bd4b7d136f
Plane: mark ArduPlane 2.74beta
2013-05-13 17:32:33 +10:00
Andrew Tridgell
001d18b51d
Plane: removed scaling of pitot source
2013-05-13 15:19:05 +10:00
Andrew Tridgell
97b6aaac77
Plane: use voltage_average() for RSSI
...
this fixes it on PX4
2013-05-13 15:19:05 +10:00
priseborough
854c50501d
Plane: Added a constraint to demanded bank angle during FBW-A mode to prevent roll limits being exceeded
2013-05-07 11:01:05 +10:00
Andrew Tridgell
0cf49308af
Plane: mark a 2.73beta release
2013-05-05 22:36:22 +10:00
Andrew Tridgell
0e6a64fc14
Plane: reset roll/pitch integrators for APM_Control in takeoff
...
when airspeed is below airspeed minimum. This is consistent with the
previous controllers
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-05-05 22:03:13 +10:00
Andrew Tridgell
4e2b88f6e6
Plane: added ATT_CONTROLLER option to select attitude controller
...
set to 1 for the new APM_Control library
2013-05-05 21:51:09 +10:00
Andrew Tridgell
3cd52a9689
Plane: fixes for AP_Baro_HIL
2013-05-02 15:09:27 +10:00
Andrew Tridgell
855277fa85
Plane: get ready for 2.72 release
2013-04-28 15:56:30 +10:00
Andrew Tridgell
b53e3bb1fc
Plane: log GPS messages as they come in
...
stops us logging duplicate messages
2013-04-28 14:56:31 +10:00
Andrew Tridgell
0b8c2da4df
Plane: support 12 output channels on PX4
2013-04-25 20:10:53 +10:00
Andrew Tridgell
ac7561c5d5
Plane: mark 2.72beta version
2013-04-24 16:19:18 +10:00
Andrew Tridgell
2e5834cc7f
Plane: print flight mode as string in logs
2013-04-20 15:18:10 +10:00
Andrew Tridgell
5c553852ed
Plane: when logging is disabled don't include DataFlash at all
2013-04-20 13:52:36 +10:00
Andrew Tridgell
0c5b393919
Plane: added compass logging
2013-04-20 13:52:36 +10:00
Andrew Tridgell
c8af70a18d
Plane: make the plane code compatible with the new logging system
...
not actually converted yet
2013-04-20 13:52:36 +10:00
Andrew Tridgell
abe4dba871
Plane: added PX4 flash logging
2013-04-17 21:35:27 +10:00
Andrew Tridgell
42344455c9
Plane: fixed structure init for arduino compiler
2013-04-15 21:59:07 +10:00
Andrew Tridgell
75f4a43e2d
Plane: fixed LOITER_TURNS command
...
and cleanup more loiter variables
2013-04-15 21:31:11 +10:00
Andrew Tridgell
82cd391cf8
Plane: use RADIUS_OF_EARTH define
2013-04-15 14:55:58 +10:00
Andrew Tridgell
8f091e70c8
Plane: move elevon variables into a structure
2013-04-15 14:53:56 +10:00
Andrew Tridgell
79c6f32400
Plane: made variables static and remove initial rc overrides
...
minor code size savings
2013-04-15 14:46:01 +10:00
Andrew Tridgell
8d2cf6f3e5
Plane: update author list
2013-04-12 22:01:41 +10:00
priseborough
70a186464b
Plane: added LEVEL_ROLL_LIMIT parameter
...
this replaces both TKOFF_HEAD_HOLD and RUDDER_STEER, allowing users to
instead select a roll limit for takeoff and landing
2013-04-12 21:59:52 +10:00
Andrew Tridgell
575f346e85
Plane: removed HIL_MODE_ATTITUDE
...
we really need full sensors for HIL with the L1 controller. The flight
is also _much_ better with sensors HIL.
2013-04-12 17:44:40 +10:00
Andrew Tridgell
11eb0cfce1
Plane: update for new AP_Navigation controller class
...
this switches ArduPlane over to use the L1 navigation controller, via
a generic nav_controller object pointer.
Note that the nav_controller controls all types of navigation now,
including level flight and heading hold. This provides a cleaner
abstraction than the old method of special case navigation handling
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-04-12 12:48:09 +10:00
Andrew Tridgell
dcbe144c7e
Plane: prepare for release of 2.71
2013-04-06 17:27:21 +11:00
Andrew Tridgell
c5e2cfcc3e
Plane: preparing for 2.71-beta
2013-04-02 09:25:24 +11:00
Andrew Tridgell
7db7d7db77
Plane: change FBWB altitude control algorithm
...
this makes FBWB much less sensitive to airframe tuning. When the
elevator stick first goes neutral it locks in the current altitude as
the target altitude. When the elevator stick is off neutral, it moves
the target altitude in proportion to the elevator, at a rate goverened
by the new FBWB_CLIMB_RATE parameter
This prevents the aircraft from slowly drifting in altitude in FBWB,
and gives a more intuitive control mechanism for altitude.
Thanks to Chris Miser from Falcon UAV for help in designing this
change
2013-03-28 10:27:25 +11:00
Randy Mackay
a49fe272ad
Plane: replace gps fix with status
...
Required to ensure 3d fix is used for initialising home
2013-03-27 11:42:02 +09:00
Andrew Tridgell
f077f54e6a
Plane: added TKOFF_HEAD_HOLD option
...
this allows control over whether ArduPlane tries to hold heading
during auto takeoff. For hand launches it can be better to hold the
wings level and not attempt to hold heading during takeoff to prevent
the possibility of a stall during the climb out.
Thanks to Chris Miser from Falcon UAV for the feedback that led to
this option.
2013-03-27 10:27:14 +11:00
Andrew Tridgell
1d983b3f2e
Plane: fixed X accel triggering of auto
2013-03-22 11:53:45 +11:00
Andrew Tridgell
1ebaa14a99
Plane: prepare for 2.70 release
2013-02-21 09:49:15 +11:00