Caio Marcelo de Oliveira Filho
2e464a53c2
AP_HAL: make code not depend on concrete HAL implementations
...
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.
A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.
The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.
Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.
The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Gustavo Jose de Sousa
d42b132507
AP_Airspeed: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:28:42 +10:00
Staroselskii Georgii
402f46c56f
AP_Airspeed: fixed a typo in the ARSPD_DEFAULT_PIN define
...
There was a redundant elif for Linux builds.
2015-07-07 21:02:21 +10:00
Andrew Tridgell
e66b56970e
AP_Airspeed: convert example from .pde to .cpp
2015-06-01 16:58:10 +10:00
Lucas De Marchi
cc1fbddc95
AP_Airspeed: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:52 +10:00
Andrew Tridgell
f23bc463cb
AP_Airspeed: fix for HAL_SITL rename
2015-05-05 09:45:54 +10:00
Randy Mackay
2a6421d1bf
Airspeed: fix example sketch
2015-05-02 20:53:49 +09:00
Andrew Tridgell
c565d3b805
AP_Airspeed: fixed example build
2015-03-14 20:00:15 +11:00
Andrew Tridgell
26a77dc502
AP_Airspeed: change for new PX4 paths
2015-02-14 12:25:43 +11:00
Andrew Tridgell
1c270d17a8
AP_Airspeed: ignore temperatures below -80
...
ETS driver on PX4 returns -1000
2015-02-06 21:41:15 +11:00
Emile Castelnuovo
a863f0bca8
AP_Airspeed: VRBRAIN code clean up. Deleted unused boards.
2015-02-02 08:44:01 +11:00
LukeMike
61f4239e47
AP_Airspeed: enabled PX4 library for VR boards
2015-02-02 08:44:00 +11:00
Emile Castelnuovo
25818f08a3
AP_Airspeed: added VRBRAIN board type
2015-02-02 08:43:59 +11:00
Emile Castelnuovo
de8a0ebc08
AP_Airspeed: added #defines for new VR boards.
2015-02-02 08:43:58 +11:00
LukeMike
b29f50ba9b
AP_Airspeed: Defined AirSpeed analog inputs for ArduPlane on VR Micro Brain 5
2015-02-02 08:43:57 +11:00
Randy Mackay
293eb74a37
AirSpeed: fix example sketch
2015-01-28 17:15:36 +09:00
Andrew Tridgell
2235d18d67
AP_Airspeed: make it possible to tell if a airspeed sensor is unhealthy
...
we need use() to reflect if the user wants to use the sensor, so the
arming checks can tell if it is not working as expected
2015-01-20 11:26:20 +11:00
Andrew Tridgell
258542b939
AP_Airspeed: added ARSPD_SKIP_CAL parameter
...
allows airspeed calibration to be skipped for easier startup
2014-11-13 21:12:37 +11:00
Andrew Tridgell
9c631944f7
AP_Airspeed: expose raw pressure for logging
2014-11-13 17:49:04 +11:00
Andrew Tridgell
ad8b73c8aa
AP_Airspeed: update ARSPD_AUTOCAL docs
2014-10-24 17:16:17 +11:00
Andrew Tridgell
ef0eca4835
AP_Airspeed: fixed airspeed in Replay
2014-10-19 19:42:15 +11:00
Andrew Tridgell
f6f51ceebe
AP_Airspeed: fixed example build
2014-08-13 21:46:09 +10:00
Andrew Tridgell
a4cd9c4bd7
AP_Airspeed: added HIL support
2014-08-10 18:16:53 +10:00
Andrew Tridgell
c1646fec73
AP_Airspeed: fixed example build
2014-07-25 17:54:11 +10:00
Andrew Tridgell
0f7e78e418
Airspeed: fixed example to setup pin
2014-07-25 17:15:00 +10:00
Randy Mackay
4cf7f01694
AP_Airspeed: init members to reduce compiler warnings
2014-07-16 14:40:50 +09:00
Randy Mackay
4c76c77239
AP_Airspeed: use 'no break' to resolve compiler warning re switch
2014-07-16 14:40:49 +09:00
Andrew Tridgell
52c53e55f8
AP_Airspeed: use board subtypes
2014-07-14 09:44:35 +10:00
Andrew Tridgell
6b87c9fdf7
AP_Airspeed: avoid some float conversion warnings
2014-07-08 20:26:44 +10:00
LukeMike
8f552d5758
VRBRAIN: Changed the management of VirtualRobotix's boards.
2014-06-19 11:27:38 +02:00
Kevin Hester
d09e871319
AP_Airspeed: fixup line endings
2014-04-15 15:56:26 +09:00
Emile Castelnuovo
e8b9e9d53c
AP_Airspeed: added #defines for VRBRAIN board
2014-04-08 16:19:20 +10:00
Andrew Tridgell
b8e4e35a0d
AP_Airspeed: use pythagorous3()
2014-04-01 22:15:12 +11:00
Andrew Tridgell
9ab1a79b5a
AP_Airspeed: changed sqrt() to sqrtf()
2014-04-01 22:09:21 +11:00
Andrew Tridgell
dbd8f4b735
AP_Airspeed: fixed example build
2014-03-19 12:14:03 +09:00
Andrew Tridgell
ad4db4de6c
AP_Airspeed: added setHIL() method
...
useful for log playback
2014-02-18 09:25:08 +11:00
Randy Mackay
c18b3f6094
AP_Airspeed: fix example sketch
2014-02-15 06:09:08 +11:00
Andrew Tridgell
03cc777991
AP_Airspeed: added last_update_ms() interface
2014-02-15 05:27:51 +11:00
Andrew Tridgell
d853d65b84
AP_Airspeed: added ARSPD_TUBE_ORDER parameter
...
This allows for either order of tube connection by default, but the
order can be specified if need be
2014-02-15 05:12:15 +11:00
Andrew Tridgell
dcd7f9d26d
AP_Airspeed: use raw (signed) airspeed
...
this allows us to detect when the user has the ports the wrong way
around, and mark the sensor unhealthy
2014-02-14 21:50:59 +11:00
Andrew Tridgell
35791e1f05
AP_Airspeed: fixed get_temperature on PX4
2014-02-12 13:46:15 +11:00
Andrew Tridgell
a339ec25c8
AP_Airspeed: fixed example build
2014-01-30 13:33:29 +11:00
Andrew Tridgell
cf1f05a198
AP_Airspeed: expose get_temperature()
2014-01-28 10:35:35 +11:00
Andrew Tridgell
c649e4b06f
AP_Airspeed: avoid a warning
2013-12-11 17:29:27 +11:00
Andrew Tridgell
c22df0fa60
AP_Airspeed: fixed a build warning
2013-12-11 10:22:07 +11:00
Andrew Tridgell
ee7c742863
AP_Airspeed: changed default pin for SITL to pin 1
...
this leaves room for the sonar
2013-11-28 21:44:32 +11:00
Andrew Tridgell
9d7f24f754
AP_Airspeed: added healthy() API
2013-11-07 12:48:17 +11:00
Paul Riseborough
71de4ddcd0
AP_Airspeed : Fixes bug that caused airspeed calibration to be sent a zero airspeed
...
This bug resulted in the airspeed ratio going to the maximum value of 4 and staying there. This could lead to a very slow flying model and a stall.
2013-11-02 21:41:11 +11:00
Andrew Tridgell
c64aa0e4de
AP_Airspeed: fixed I2C semaphore handling for I2C airspeed
...
this affects MS4525DO on APM2
2013-10-29 14:55:38 +11:00
Andrew Tridgell
e60d5d4f33
AP_Airspeed: fixed some warnings
2013-09-30 21:06:43 +10:00
Andrew Tridgell
2095b2a2d7
AP_Airspeed: updates for AP_HAL::MemberProc
2013-09-30 21:06:42 +10:00
Andrew Tridgell
291369db7f
AP_Airspeed: split up airspeed driver
...
this gives us separate backends for PX4, analog and I2C. This allows
the MS airspeed sensor to work on Linux, and it should work on APM2 as well.
2013-09-28 21:24:03 +10:00
Mike McCauley
c1d3bedb60
AP_Airspeed: changes for Flymaple port pins and caibration constants
2013-09-24 13:33:25 +10:00
Andrew Tridgell
2e742582e4
AP_Airspeed: changed to AP_Vehicle.h
...
also allow updates to ARSPD_RATIO from user while autocal is running
2013-09-13 11:45:57 +10:00
Andrew Tridgell
cc4fad23d9
AP_Airspeed: updates for Pixhawk
2013-09-13 10:48:57 +10:00
Andrew Tridgell
b7e54bd463
AP_Airspeed: reduce speed of autocal
...
it was responding to noise too rapidly
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-09-12 07:48:57 +10:00
Andrew Tridgell
1328316bfc
AP_Airspeed: fixed saving of airspeed ratios
2013-08-31 10:26:27 +10:00
Paul Riseborough
1c7bdc40ec
AP_Airspeed : Expanded range of ARSPD_RATIO adjustment
2013-08-31 08:03:11 +10:00
Andrew Tridgell
97b7130bb9
libraries: update license header to GPLv3
...
we switched to GPLv3 a long time ago, but neglected to update the
per-file license headers
2013-08-30 13:01:39 +10:00
Andrew Tridgell
69c8df3326
AP_Airspeed: fixed example build
...
removed Airspeed_Calibration test, as it is not useful
2013-08-30 13:01:36 +10:00
Andrew Tridgell
0c06dff2db
AP_Airspeed: constrain internal state of calibration code
2013-08-30 13:01:34 +10:00
Andrew Tridgell
3916a07dcf
AP_Airspeed: added logging of airspeed calibration internals
2013-08-30 13:01:34 +10:00
Andrew Tridgell
ce3fb290f1
AP_Airspeed: fixed initialisation of auto-calibration
2013-08-30 13:01:34 +10:00
Andrew Tridgell
c6c59174b3
AP_Airspeed: return when airspeed init fails
2013-08-30 13:01:33 +10:00
Andrew Tridgell
31e1b7fcf6
AP_Airspeed: list MEAS airspeed in ARSPD_PIN docs
2013-08-30 13:01:33 +10:00
Paul Riseborough
5a68c515dc
AP_Airspeed: Altitude Calibration - added constrain on P matrix diagonals
2013-07-22 12:50:02 +10:00
Andrew Tridgell
3ba0dec4b3
AP_Airspeed: fixed typo
2013-07-22 12:50:02 +10:00
Paul Riseborough
d1805f4349
AP_Airspeed: Airspeed Calibration computational efficiency improvement
2013-07-22 12:50:02 +10:00
Andrew Tridgell
e6d9d14fad
AP_Airspeed: added example sketch for airspeed calibration
2013-07-22 12:50:01 +10:00
Andrew Tridgell
3c66cb8af1
AP_Airspeed: added EAS2TAS in airspeed driver
...
this keeps the true airspeed ratio in the airspeed driver, which seems
the most logical place
2013-07-22 12:50:01 +10:00
Andrew Tridgell
893d2da6f6
AP_Airspeed: added auto-calibration support
...
This uses a Kalman filter to calculate the right ARSPD_RATIO at runtime
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-22 12:50:01 +10:00
Andrew Tridgell
98d6331387
AP_Airspeed: fixed example build
2013-07-15 14:10:27 +10:00
Andrew Tridgell
9d66adae13
AP_Airspeed: added get_airspeed_ratio() and set_airspeed_ratio()
...
This is to help Paul develop an automatic tuning system for airspeed
ratio
2013-07-13 21:53:38 +10:00
Randy Mackay
6cd18868c2
AirSpeed: fix example sketch compile error
2013-06-25 22:45:30 +09:00
Andrew Tridgell
68adeb041d
AP_Airspeed: support ARSPD_PIN option for choosing source
...
this gives us support for arbitrary analog pins for the airspeed
sensor, plus support for the EagleTree airspeed driver on PX4
2013-06-03 11:51:09 +10:00
Andrew Tridgell
dfb98490f4
AP_Airspeed: use rationmetric analog input for airspeed sensor
2013-05-13 15:13:19 +10:00
Andrew Tridgell
00e905b025
AP_Airspeed: use new voltage_average() API in Airspeed driver
2013-03-08 10:01:15 +11:00
James Bielman
5631f865b2
Update floating point calculations to use floats instead of doubles.
...
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Andrew Tridgell
374af1cd14
build: change from Arduino.mk to apm.mk
2013-01-02 17:29:37 +11:00
Andrew Tridgell
a1187519a8
AP_HAL: use AP_HAL_BOARD_DRIVER in remaining test sketches
2012-12-20 14:52:37 +11:00
Pat Hickey
eb530b86e8
move Arduino.mk to /mk/Arduino.mk
2012-12-20 14:52:35 +11:00
Andrew Tridgell
7d27e420ae
AP_HAL: remove unnecessary Arduino.h includes
2012-12-20 14:52:30 +11:00
Andrew Tridgell
b5a23d934b
Airspeed: updates for new AP_Param API
2012-12-20 14:51:38 +11:00
Pat Hickey
475da4eca4
CONFIG_HAL_BOARD - test sketches fixed up, build all passes
2012-12-20 14:51:37 +11:00
Pat Hickey
7017a35fc3
AP_Airspeed: fix for AnalogIn read_average
2012-12-20 14:51:35 +11:00
Pat Hickey
a4f1f6a5db
AP_Progmem: fix dependencies for all sketches touched by AP_HAL_AVR
2012-12-20 14:51:28 +11:00
Andrew Tridgell
53105efbcd
HAL_AVR: more uart0 -> console changes
2012-12-20 14:51:27 +11:00
Pat Hickey
dfc8e91fd3
AP_Airspeed: port to AP_HAL
2012-12-20 14:51:25 +11:00
Pat Hickey
3f1d9d7f69
AP_Param: #include <AP_Param.h> fixups for libraries & sketches
...
* I mostly went through with grep and added an #include <AP_Param.h> below
every #include <AP_Common.h>. Not all of these example sketches might
strictly need AP_Param.
2012-12-20 14:51:19 +11:00
rmackay9
56f88821e9
AP_AHRS: fix example sketch
...
AP_Airspeed: fix example sketch
AP_Baro: fix example sketch
AP_Declination: fix example sketch
AP_Math: fix example sketch
2012-11-08 00:08:18 +09:00
rmackay9
e4c8eaa181
AP_Airspeed: fixed constructor compile error in example sketch
2012-09-23 11:44:28 +09:00
Andrew Tridgell
0c864fd4dc
AP_Airspeed: a bit more filtering
...
this helps reduce noise at low speed
2012-09-19 16:23:25 +10:00
uncrustify
90419ad834
uncrustify libraries/AP_Airspeed/AP_Airspeed.h
2012-08-21 19:00:17 -07:00
uncrustify
37c79f5501
uncrustify libraries/AP_Airspeed/AP_Airspeed.cpp
2012-08-21 19:00:17 -07:00
uncrustify
3c2873b4f5
uncrustify libraries/AP_Airspeed/examples/Airspeed/Airspeed.pde
2012-08-21 19:00:17 -07:00
Michael Oborne
bcceedffab
Fix Airspeed use use
2012-08-18 08:30:15 +08: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
f95b06a880
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
dcc50b5705
AP_Airspeed: removed values passed to constructor
2012-08-08 16:38:39 +10:00
Andrew Tridgell
518d6365ff
AP_Param: update remaining libraries for new constructor syntax
2012-08-08 12:11:57 +10:00
Michael Oborne
9e4d118fdb
Airspeed Library - fix param names.
...
The Group definition give the start of the param name.
This way we can maintain multiple instances if required of the same library as options.
2012-07-16 21:48:47 +08:00
Andrew Tridgell
feb456de56
Airspeed: Added AP_Airspeed sensor library
...
this will allow an airspeed sensor object to be passed to AHRS for
dead reckoning
2012-07-16 11:21:20 +10:00