Commit Graph

109 Commits

Author SHA1 Message Date
Beat Küng
c5ea4b43be sensor_combined.msg: make timestamps relative
This is needed for the new logger & saves some space as well.
2016-07-07 11:35:50 +02:00
Beat Küng
d846ad5dac sensors: move voting into sensors module
- voting is now at a central place instead of duplicated within the
  estimators
  -> this also means that estimators that did not do voting so far,
     now have voting, like ekf2
- estimators requiring more than that can still subscribe to the raw
  sensors
- allows sensors_combined to be 3 times smaller
  - reduces logger, memcpy (cache) & RAM overhead
- all modules requiring only 1 or 2 sensor values now automatically get
  the voted result
- this also adds voting to baro
2016-07-07 11:35:50 +02:00
Beat Küng
b4ecc5a8d9 sensor_combined cleanup: remove many unneeded fields
Decreases the message size from 780 to 280 bytes.
In particular, all modules using sensor_combined must use the integral now.
The sensor value can easily be reconstructed by dividing with dt.

Voters now need to be moved into sensors module, because error count and
priority is removed from the topic.

Any module that requires additional data from a sensor can subscribe to
the raw sensor topics.

At two places, values are set to zero instead of subscribing to the raw
sensors (with the assumption that no one reads them):
- mavlink mavlink_highres_imu_t::abs_pressure
- sdlog2: sensor temperatures
2016-07-07 11:35:50 +02:00
Julian Oes
3524fd7d24 ekf2: don't ignore function argument (#4990) 2016-07-05 17:40:37 +02:00
Beat Küng
940ac5471d ekf2: remove unused gps_msg.time_usec_vel 2016-06-24 00:22:01 +02:00
Beat Küng
e2a7145379 vehicle_gps_position: remove timestamp_variance & timestamp_velocity (they're not used) 2016-06-24 00:22:01 +02:00
Beat Küng
89f5bd27e8 vehicle_gps_position: use timestamp field instead of timestamp_position
timestamp was unused. This allows to remove timestamp_position.
2016-06-24 00:22:01 +02:00
Roman
27e61127a8 ekf2: fix if else logic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
Roman
7f8c183d99 added airspeed mode enum to control state topic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
tumbili
1bce38bd9b code style formatting 2016-06-23 09:08:35 +02:00
tumbili
c2da51ccf5 use airspeed mode parameter to decide which method used to publish
control state airspeed
2016-06-23 09:08:34 +02:00
tumbili
6739ae9dfc ekf2: substract gyro bias from control state rates
Signed-off-by: tumbili <roman@px4.io>
2016-06-22 07:10:20 +02:00
CarlOlsson
d66af65a92 ekf2: fixed airspeed thr bug 2016-06-14 10:28:40 +02:00
tumbili
b9e9f62bee code style formatting 2016-06-08 17:14:33 +02:00
CarlOlsson
acea2f98d5 log airspeed in rpl mode even if it is not fused 2016-06-08 17:12:05 +02:00
CarlOlsson
9c170f7fae added parameter which defines threshold for airspeed given to the filter
remove unnecessary replay fields
2016-06-08 17:11:10 +02:00
Paul Riseborough
ac50510c78 ekf2: Use parameter defined values for EV noise if vision system estimates not available 2016-05-28 14:54:14 +02:00
Paul Riseborough
37b4955f07 ekf2: Add use and logging of external vision data 2016-05-28 14:54:14 +02:00
Paul Riseborough
57c1138d28 ekf2: add parameters for control of external vision fusion 2016-05-28 14:54:14 +02:00
Lorenz Meier
d8bcd77290 EKF2: Remove unused header 2016-05-21 14:10:49 +02:00
Paul Riseborough
83cc9ef496 ekf2: Enable tuning of initial tilt alignment uncertainty 2016-05-18 12:44:04 +10:00
Paul Riseborough
7d2d15643d ekf2: Add tuning for IMU switch-on bias errors 2016-05-18 12:44:04 +10:00
Paul Riseborough
3aa2297497 ekf2: Add parameters to control output filter 2016-05-14 11:24:41 +02:00
CarlOlsson
88800b9e36 added tas_innov_gate to params 2016-05-13 13:55:57 +02:00
Julian Oes
7d64aa8057 ekf2: raise stack size on Snapdragon
It seems that the stack size was exhausted on Snapdragon.
2016-05-11 14:53:55 +02:00
Paul Riseborough
4480e4206d ekf2: remove use of arm status 2016-05-11 14:53:55 +02:00
Paul Riseborough
af9a7a39f2 ekf2: add handling of filter internal fault message 2016-05-11 14:53:55 +02:00
Paul Riseborough
2c6b7a008f ekf2: Update tuning parameters
Remove unused gyro scale factor parameter
Change gyro and accelerometer bias noise parameters to more intuitive units
Updated tuning defaults
2016-05-11 14:53:55 +02:00
Paul Riseborough
7f1632d65b ekf2: correct control state message for 3D acc bias 2016-05-11 14:53:55 +02:00
CarlOlsson
6b5e77250f ekf2: Added airspeed to rpl logging 2016-05-10 21:32:55 +02:00
tumbili
57f73e59b7 warn immediately if ekf2 instance allocation has failed 2016-05-03 16:09:26 +02:00
tumbili
9f5e9594f5 implement ekf instance and block parameter instance as class members
in order to avoid memory management
2016-05-03 16:09:26 +02:00
Julian Oes
99286cf1bd ekf2: replace !isnan with PX4_ISFINITE (#4374) 2016-04-26 22:15:30 +02:00
Paul Riseborough
631040b30b ekf2: publish filter control mode status 2016-04-20 21:47:29 +02:00
Paul Riseborough
07eb4feed8 ekf2: publish GPS check status 2016-04-20 21:47:29 +02:00
tumbili
d227c61246 update all fields of the control state message 2016-04-19 13:25:41 +02:00
Sebastian Verling
184a2fa7de publishing velocity and position to control state in ekf2
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
2016-04-19 13:25:41 +02:00
Roman
c6668cae6c provide ekf2 with eas2tas factor 2016-04-19 11:20:57 +02:00
Paul Riseborough
25dbb5d628 ekf2: Add missing tuning parameters 2016-04-18 11:15:38 +02:00
Paul Riseborough
66fe3ab583 ekf2: Use corrected local position and velocity
Corrects for IMU offset from body frame origin
2016-04-18 11:15:38 +02:00
Paul Riseborough
43e56f9fdc ekf2: Add tuneable parameters for sensor positions 2016-04-18 11:12:09 +02:00
Paul Riseborough
7acd5fda22 ekf2: send flow sensor yaw rate data 2016-04-18 11:12:09 +02:00
Lorenz Meier
40546647b3 Update EKF2 interface 2016-04-17 16:21:49 +02:00
Lorenz Meier
236304b929 Update EKF2 version 2016-04-17 16:16:29 +02:00
Julian Oes
08ce231d76 ekf2: compile fixes after rebase 2016-04-11 18:01:49 +02:00
Julian Oes
f21f82223c ekf2: fix stupid bug caught by travis on Mac 2016-04-11 18:01:49 +02:00
Julian Oes
1f44fb1efd commander: internalize system status bools
Most condition bools in the commander are not used anywhere but in the
commander. It therefore makes sense to move them to a different internal
struct and remove them from the vehicle_status message.

Also, the land_detected should be used by all the modules instead of
getting it through the commander and system_status.
2016-04-11 18:01:47 +02:00
Paul Riseborough
e66a3bd99f ekf2: incorporate fixes to covariance prediction and initialisation
Update ecl library reference.
Update default parameters
2016-04-05 19:08:39 -07:00
CarlOlsson
16dea15d54 AStyle 2016-04-05 16:23:26 -07:00
CarlOlsson
7c88d599ee publish wind_estimate topic 2016-04-05 16:23:25 -07:00