Andrew Tridgell
58b767b8e4
Plane: rename geofence structure
...
makes using gdb easier as it doesn't mix up the structure and the
pointer
11 years ago
Andrew Tridgell
ec0c894306
Plane: use the projected position for geofencing and waypoints
12 years ago
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.
12 years ago
Andrew Tridgell
a33573352e
Plane: fixes for updated AP_Math and AHRS APIs
...
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
12 years ago
Andrew Tridgell
7c6dd0736e
Plane: use hal.storage for eeprom access
12 years ago
Pat Hickey
92b0c302f2
ArduPlane: Ported to AP_HAL
12 years ago
Andrew Tridgell
2324997e16
APM: added ALT_OFFSET parameter
...
useful to adjust for barometric pressure changes during a long flight
13 years ago
Andrew Tridgell
ded64fd9ea
APM: check for geofence fence total of 0
13 years ago
Andrew Tridgell
b4134de550
APM: ensure fence_total is positive
...
thanks to David Buzz for the suggestion
13 years ago
uncrustify
e212c152f7
uncrustify ArduPlane/geofence.pde
13 years ago
Andrew Tridgell
ffbd229841
APM: use AHRS position for geo-fence
...
this allows it to take account of dead-reckoning
13 years ago
Andrew Tridgell
817017658d
APM: implement FENCE_ACTION_REPORT
...
when FENCE_ACTION is set to FENCE_ACTION_REPORT a fence breach is
reported, but the flight mode is not changed
13 years ago
Andrew Tridgell
0584017aff
APM: expose change_command() and geofence_breached() to libraries
...
this makes a failsafe library easier
13 years ago
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
13 years ago
Andrew Tridgell
0b49ac0ed0
APM: fixed overflow in geofence code for altitudes above 327 meters
13 years ago
Andrew Tridgell
58fd91165f
APM: fixed some build warnings and type errors
13 years ago
Andrew Tridgell
21f06f8a39
GeoFence: fixed default return altitude units
...
off by 100x!
13 years ago
Andrew Tridgell
a6920d603d
geofence: re-breach if user changes mode outside the fence
...
if the user changes mode while outside the fence, and fencing is still
enabled, then declare a new breach
13 years ago
Andrew Tridgell
c14d702912
geofence: send fence status messages on fence events
...
this ensures the fence status goes out as soon as possible, which
means the messages arrive in a sane order on the GCS
13 years ago
Andrew Tridgell
fc20aa9602
geofence: enable return to old control mode via FENCE_CHANNEL
...
if you disable fencing with the fence channel switch while still in
GUIDED mode to the return point, then reset the control mode back to
the transmitter control mode
13 years ago
Andrew Tridgell
b9a88aac32
geofence: added FENCE_TRIGGERED_PIN
...
this allows for a digital pin to be set high when the geofence
triggers. This pin can be connected to an external failsafe device
13 years ago
Andrew Tridgell
42522baf9f
geofence: store fence points as int32_t
...
this keeps maximum precision in fence boundaries
13 years ago
Andrew Tridgell
fc495ce6a7
geofence: added fence status reporting and faster altitude check
13 years ago
Andrew Tridgell
64ae2ebec5
geofence: don't trim control surfaces on geo-fence breach
...
the user input is likely to be bad
13 years ago
Andrew Tridgell
3b148c87d5
geofence: main geo-fence code
...
this implements the primary logic of geo-fencing
13 years ago