Commit Graph

177 Commits

Author SHA1 Message Date
Peter Barker 6da68e39f8 AP_Airspeed: add rc channel option to disable all airspeed sensors 2021-06-23 15:13:13 +10:00
Peter Barker 00002b78a4 AP_Airspeed: remove HIL support 2021-06-15 09:47:31 +10:00
QioTek 0190a42e47 AP_Airspeed: added ASP5033 driver 2021-03-28 07:50:34 +11:00
Andrew Tridgell 857d905d9f AP_Airspeed: added MSP backend 2020-12-08 20:41:12 +11:00
Peter Barker de2802e322 AP_Airspeed: populate airspeed_raw for sensors returning airspeed reading
Without this ARSP[x].Airspeed isn't populated
2020-12-08 11:59:49 +11:00
Peter Barker 8647dda8a9 AP_Airspeed: add and use instance number to ARSP message 2020-11-24 12:19:45 +11:00
Iampete1 0e41b821e8 AP_Airspeed: defualt to type none on sub 2020-10-27 11:24:49 +11:00
Iampete1 2aff8787c1 AP_Airspeed: add NMEA water speed backend 2020-10-27 11:24:49 +11:00
Iampete1 662d4640ef AP_Airspeed: add dedicated MAX_WIND param 2020-10-27 11:21:04 +11:00
Andrew Tridgell 505953bdb2 AP_Airspeed: added get_num_sensors() 2020-08-27 20:20:51 +10:00
Andrew Tridgell a20d3fed94 AP_Airspeed: allow hwdef override of airspeed default type 2020-08-25 09:59:15 +10:00
Siddharth Purohit d65b43795a AP_Airspeed: move to using CANManager library 2020-08-19 17:31:09 +10:00
Josh Welsh eb4b5fb720 AP_Airspeed: Add additional DLVR support 20inH2O 30inH2O 60inH2O 2020-08-12 08:02:49 +10:00
Henry Wurzburg 21940cea09 AP_Airspeed: fix airspeed messages for consistency 2020-07-21 09:41:05 +10:00
Andrew Tridgell 40f1b5f9ae AP_Airspeed: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Peter Barker 6046aa3625 AP_Airspeed: rename APMrover2 to Rover 2020-04-14 09:50:34 +09:00
Andrew Tridgell b5e091bc84 AP_Airspeed: hide unused parameters for AP_Periph 2020-02-18 11:15:05 +11:00
Andrew Tridgell f51378f2e8 AP_Airspeed: enable for use in AP_Periph 2019-10-21 19:12:01 +11:00
Andrew Tridgell c173f8e24d AP_Airspeed: support both 5inH2O and 10inH2O versions of DLVR sensor
useful for faster aircraft
2019-07-19 21:39:30 -07:00
Andrew Tridgell 1ffc2cbe41 AP_Airspeed: allow setting of default airspeed pin 2019-07-13 15:23:45 +10:00
Peter Barker 5cfba85095 AP_AirSpeed: take EAS2TAS directory from baro; use for all backends
Plane was only setting EAS2TAS in the primary frontend; calibration
expected it to be set on each instance.
2019-06-06 12:44:36 +10:00
Andrew Tridgell bbe4c92b58 AP_Airspeed: skip cal on watchdog reset 2019-04-22 16:53:35 +10:00
Peter Barker f0379ff7f0 AP_Airspeed: move logging of ARSP into Airspeed library 2019-04-09 09:29:35 +10:00
Peter Barker 59ef486da0 AP_Airspeed: add AP::airspeed() to get airspeed singleton 2019-04-09 09:29:35 +10:00
Peter Barker 4ab13b37ac AP_Airspeed: logger uses the singleton for logging airspeed now 2019-04-09 09:29:35 +10:00
Tom Pittenger e67b6e15fa AP_Airspeed: rename dataflash to logger 2019-03-28 16:40:57 +11:00
Tom Pittenger 0c32453505 AP_Airspeed: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Tom Pittenger 95c903c7cf AP_Airspeed: disable airspeed (_TYPE=0) as rover default 2019-02-07 11:17:21 +09:00
Tom Pittenger 1a04a540f5 AP_Airspeed: convert the defines into static consts
- also perform logging at end of update
- convert Options Mask into an enum
2019-02-03 08:25:46 -08:00
ChrisBird d77906cb06 AP_Airspeed: This adds the ability to turn off and on the airspeed sensor if faulty. 2019-02-03 08:25:46 -08:00
Nathan E 0401078694 Update AP_Airspeed.cpp 2019-01-23 09:24:18 -07:00
Peter Barker 6fc76a32af GLOBAL: use AP::logger() and strip redundant Log_ from methods 2019-01-18 18:08:20 +11:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
DOMINATOR\Eugene c81f9e6baa AP_Airspeed: update data with logging 2018-11-17 07:52:42 +11:00
Michael du Breuil 88aa20d691 AP_Airspeed: Make user facing messages clearer, improve handling of bad tube order 2018-10-02 06:28:47 +10:00
liang.tang 653766c4cc AP_Airspeed: uavcan airspeed supported 2018-09-05 17:22:08 +10:00
Michael du Breuil f2b4e06a1a AP_Airspeed: Add 5"H2O DLVR differential sensor driver 2018-08-08 09:07:17 +10:00
Michael du Breuil 6225f51815 AP_Airspeed: Remove APM doc references 2018-08-01 09:24:26 +10:00
Michael du Breuil 57f3e9cd88 AP_Airspeed: Remove unused ADC include 2018-07-17 09:29:50 +10:00
Andrew Tridgell 8a2f1fdb3d AP_Airspeed: fixed airspeed filtering issue
this fixes an issue where an airspeed sensor that becomes unhealthy
can have an undue effect after the sensor becomes healthy again.

In a recent flight log the MS4525 airspeed sensor went unhealthy for a
few seconds, and at the same time gave a reading of 12m/s. The plane
was flying at 24m/s. While the sensor was unhealthy the code correctly
switched to the airspeed estimate, which was fine.

When the airspeed sensor become healthy again the IIR filter in
AP_Airspeed meant that the speed read at 12m/s initially, then came up
to 24m/s over a couple of seconds. This caused the VTOL motors to come
on for a few seconds.
2018-06-14 09:13:30 +10:00
Michael du Breuil f6624cc8b2 AP_Airspeed: Use named float wrapper 2018-05-17 00:59:45 +01:00
Peter Barker 30f944b921 AP_AirSpeed: notify of calibration start 2018-04-02 23:25:05 +01:00
Michael du Breuil a46c60f4de AP_Airspeed: Create a singleton 2018-03-21 13:36:35 +00:00
Tom Pittenger b1a4540359 Revert "AP_Airspeed: blending of several sensors and failure recognition"
This reverts commit 26c7614118.
2018-03-09 13:12:05 -08:00
Eugene Shamaev 26c7614118 AP_Airspeed: blending of several sensors and failure recognition 2018-03-09 11:27:20 -08:00
David Ingraham 2547ca399a AP_Airspeed: Fix ARSPD2_TYPE docs 2018-01-26 13:19:53 -08:00
Andrew Tridgell 58b0ac07ec AP_Airspeed: support dual airspeed sensors
allow for a primary and secondary airspeed sensor
2018-01-16 07:14:20 +11:00
rde-mato 87e3777f67 AP_Airspeed: added SDP3X airspeed sensor driver 2018-01-16 07:14:20 +11:00
Michael du Breuil 5fedc65efb AP_Airspeed: Allow specifying the MS5525 address 2018-01-10 17:49:35 +00:00
Mark Whitehorn f32f51f843 AP_Airspeed: eliminate airspeed positive bias 2017-09-22 18:21:09 +10:00
Lucas De Marchi e2e836f676 AP_Airspeed: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Peter Barker 3214b48f8c AP_AirSpeed: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Andrew Tridgell 7b73004882 AP_Airspeed: added ARSPD_USE=2 for gliders 2017-05-04 22:59:02 -07:00
Tom Pittenger 84bdf15203 AP_Airspeed: updated comment to match PR 2016-12-05 17:19:57 -08:00
Andrew Tridgell 43bac678cd AP_Airspeed: Added MS5525 airspeed driver
also improved averaging in MS4525 driver
2016-12-05 16:51:49 -08:00
Andrew Tridgell 04731dccd6 AP_Airspeed: rename MS4525 driver
ready for new driver types
2016-12-05 16:51:49 -08:00
Andrew Tridgell 14a1f559c7 AP_Airspeed: added ARSPD_TYPE and use standard driver backend methods
this will allow for new sensor types
2016-12-05 16:51:49 -08:00
Andrew Tridgell 497b87fa65 AP_Airspeed: switched to in-tree I2C driver for all boards 2016-11-09 17:07:59 +11:00
Peter Barker 42f3f7195b AP_Airspeed: add missing parameter metadata 2016-10-27 09:15:03 -07:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Tom Pittenger ce7b766d8b AP_Airspeed: remove AP_Vehicle::FixedWing dependency 2016-08-08 00:02:42 -07:00
Tom Pittenger 1586abab8d Revert "AP_Airspeed: Converted library to be stand-alone from APM:Plane."
This reverts commit 5439257236.
2016-08-07 17:54:24 -07:00
LukeMike 4d8e7f1783 VRBRAIN / AP_Airspeed: defined ARSPD_DEFAULT_PIN for VR Brain 5.4 and VR Core 1.0 2016-08-07 20:31:51 +10:00
Tom Pittenger c07b85f9bb AP_Airspeed: set param "Enable" to be FLAG_ENABLE 2016-08-04 11:30:22 -07:00
AndersonRayner 5439257236 AP_Airspeed: Converted library to be stand-alone from APM:Plane.
Additional changes:
   ARSPD_FBW_MIN and ARSPD_FBW_MAX renamed to ARSPD_MIN and ARSPD_MAX
   ARSPD_MIN and ARSPD_MAX changed to floats
2016-08-04 10:09:04 -07:00
Andrew Tridgell 003c94830b AP_Airspeed: added ARSP_PSI_RANGE parameter
for using pressure sensors with a different range
2016-07-20 13:38:22 +10:00
Andrew Tridgell 28d5103435 AP_Airspeed: initial support for MS4515DO on Disco 2016-07-20 13:38:18 +10:00
Andrew Tridgell 689595080a AP_Airspeed: ensure we have at least 10 samples for airspeed cal
thanks to Michael for pointing out this issue
2016-06-27 10:52:59 +10:00
Andrew Tridgell 4131b98f8c AP_Airspeed: use non-blocking airspeed calibration
this prevents the EKF from being upset by a time jump
2016-05-24 17:00:56 +10:00
Lucas De Marchi 62f048c417 AP_Airspeed: remove support for flymaple 2016-05-23 21:49:45 -03:00
Staroselskii Georgii 3feade792a AP_Airspeed: changed default pin for Navio boards
Use channel 5 (i.e. /sys/kernel/adc/ch5) for Airspeed sensors instead of virtual 65 that doesn't
make sense on these boards.
2016-04-27 15:37:34 +03:00
Lucas De Marchi cc4504e613 AP_Airspeed: fix coding style
- replace tabs with spaces
  - remove C-style void from function arguments
  - use pragma once
  - fix pointer alignement
  - remove unused header: AP_Airspeed_I2C_PX4 - we actually use
    AP_Airspeed_PX4
2016-02-16 19:49:09 -02:00
Lucas De Marchi 2591261af6 Global: rename min and max macros to uppercase
The problem with using min() and max() is that they conflict with some
C++ headers. Name the macros in uppercase instead. We may go case by
case later converting them to be typesafe.

Changes generated with:

	git ls-files '*.cpp' '*.h' -z | xargs -0 sed -i 's/\([^_[:alnum:]]\)max(/\1MAX(/g'
	git ls-files '*.cpp' '*.h' -z | xargs -0 sed -i 's/\([^_[:alnum:]]\)min(/\1MIN(/g'
2015-12-01 16:28:09 -02:00
Caio Marcelo de Oliveira Filho 2b10e0fac0 AP_Airspeed: use millis/micros/panic functions 2015-11-20 12:29:07 +09:00
Lucas De Marchi 221d822573 AP_Airspeed: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:11 +11:00
Lucas De Marchi 6f4904189b Replace use of println_P() with println() 2015-10-30 14:35:22 +09:00
Lucas De Marchi 831d8acca5 Remove use of PROGMEM
Now variables don't have to be declared with PROGMEM anymore, so remove
them. This was automated with:

    git grep -l -z PROGMEM | xargs -0 sed -i 's/ PROGMEM / /g'
    git grep -l -z PROGMEM | xargs -0 sed -i 's/PROGMEM//g'

The 2 commands were done so we don't leave behind spurious spaces.

AVR-specific places were not changed.
2015-10-30 14:35:16 +09:00
Lucas De Marchi 2c38e31c93 Remove use of PSTR
The PSTR is already define as a NOP for all supported platforms. It's
only needed for AVR so here we remove all the uses throughout the
codebase.

This was automated with a simple python script so it also converts
places which spans to multiple lines, removing the matching parentheses.

AVR-specific places were not changed.
2015-10-30 14:35:04 +09: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 f23bc463cb AP_Airspeed: fix for HAL_SITL rename 2015-05-05 09:45:54 +10: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
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 a4cd9c4bd7 AP_Airspeed: added HIL support 2014-08-10 18:16:53 +10: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
LukeMike 8f552d5758 VRBRAIN: Changed the management of VirtualRobotix's boards. 2014-06-19 11:27:38 +02:00
Emile Castelnuovo e8b9e9d53c AP_Airspeed: added #defines for VRBRAIN board 2014-04-08 16:19:20 +10:00
Andrew Tridgell ad4db4de6c AP_Airspeed: added setHIL() method
useful for log playback
2014-02-18 09:25: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 cf1f05a198 AP_Airspeed: expose get_temperature() 2014-01-28 10:35:35 +11:00