Commit Graph
47331 Commits
Author SHA1 Message Date
Paul Riseborough 2e008dfbc4 msg: Add vertical derivative to vehicle position messages
This enables control loops that are sensitive to vertical velocity offsets to use a vertical velocity that is kinematically consistent with the vertical position.
2017-06-19 09:09:52 +02:00
Paul Riseborough 862201cc4c ecl: EKF update
Adds interface for vertical position derivative
2017-06-19 09:09:52 +02:00
Paul Riseborough 9303db85eb matlab: remove project specific code from mag cal comparison script 2017-06-17 17:35:07 +10:00
Pavel Kirienko 5805438d92 DSDL update 2017-06-17 08:37:17 +03:00
Beat Küng 4afa931d80 voted_sensors_update: fix mag rotation
fixes a wrong index for _mag_device_id: previously, driver_index was used
(the CAL_MAG param index), but the correct index is the uorb topic
instance.
2017-06-17 06:36:54 +02:00
Paul Riseborough edeed770b7 matlab: fix alignment bugs 2017-06-17 11:46:36 +10:00
Mohammed Kabir 4d6c1b5749 Add second barometer to thermal compensation fitting script 2017-06-16 21:15:09 +05:30
Paul Riseborough 7f1cca5b28 Merge pull request #244 from PX4/pr-rangeAid
Pr range aid
2017-06-16 17:47:21 +10:00
Todd Stellanova fd47e0cbb3 Set system real time clock once from GNSS data.
Fixes #7421

Tested with Pixracer and Zubax GNSS2.0
2017-06-16 07:46:39 +05:30
ChristophTobler 6f5cffafec fix type of range_aid parameter: int -> int32_t 2017-06-15 10:14:59 +02:00
ChristophTobler bc406a122e disable min loiter altitude 2017-06-15 09:18:35 +02:00
ChristophTobler 1fed209804 fix formatting 2017-06-15 09:10:43 +02:00
Roman 5036967343 barometer does not special height sensor offset because a barometer
offset from the local origin is calculated if the primary source for
height is not baro

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman c5d464b821 make range sensor height offset computation more robust
- when switching to range finder use the current terrain estimate as
height sensor offset, otherwise spikes in the range measurements could lead
to a wrong offset

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman 182ea43445 fixed baro offset calculation
- do not subtract the height sensor offset variable when computing the
baro offset from the local origin. The baro height offset is calculated
when baro is not fused and so the height sensor offset used in that case
is associated to another sensor and has nothing to do with the baro.

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman 39983a7d55 range aid: added hysteresis for switching in and out of range aid
- prevents rapid switching
- added innovation consistency check for using range aid

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman 1b92c9b5b3 ekf_helper: fixed resetting height using range finder
- take range sensor offset wrt to IMU into account
- use projection to earth Z axis

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman 3778f0921a ekf: enable range finder to be used for estimating height even if it's not
the primary height source

- moved height control into single function in order to decide which sensor
should be used for estimating height
- under certain conditions allow to use the range finder to estimate height
even if it's not the primary height source
- fixed a bug where the delta time for the baro offset calculation was always
zero
- use methods to set height control flags to reduce code duplication and
to prevent bugs

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman 36bffd2571 ekf: calculate the delta time between consecutive baro measurments
(used for calculating filtered baro offset when primary height source
is not baro)

Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman a0ab5cf0d7 ekf vel_pos_fusion: added height sensor offset to range innovation calculation
Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Roman a1e67396f4 ekf: added methods for setting control height flags
Signed-off-by: Roman <bapstroman@gmail.com>
2017-06-15 09:10:43 +02:00
Sean Matthews 1c56cad3b1 Uses astyle 2.06 2017-06-15 08:56:49 +02:00
Sean Matthews 08891526fd Fixes #6484: Bug in Offboard mode incorrect use of type_mask 2017-06-15 08:56:49 +02:00
Lorenz Meier d5c923c7ef Navigator: Fix RTL backtransition for VTOL
A recent change removed the command forwarding required for VTOL transitions. This change brings this back.

Partially reverts https://github.com/PX4/Firmware/pull/7249
2017-06-15 08:27:23 +02:00
Matthias Grob e28f8bff67 commander: make commonly spoken strings more user friendly
these technical messages might not be suitable for the user of a product
2017-06-15 07:50:41 +02:00
Paul Riseborough d6decb3c84 Merge pull request #277 from PX4/pr-ekfBufferParam
EKF: Add a parameter to enable setting of a minimum buffer length
2017-06-15 07:34:21 +10:00
Mohammed Kabir 5a96490c68 sensors : fix race condition triggered by slow-to-boot external sensors 2017-06-14 19:53:07 +02:00
Mohammed Kabir 51b23f0b57 sensors : add parameters for 4th mag into used parameters list 2017-06-14 19:53:07 +02:00
Beat Küng 90df55123b lps25h_spi.cpp: remove MAGIOCGEXTERNAL ioctl
Because it's a baro driver, not a mag.
2017-06-14 19:53:07 +02:00
Beat Küng ce7d8d2270 sensor_mag.msg: add is_external flag & set it in the mag drivers
With this we don't have to use the ioctl MAGIOCGEXTERNAL, which does not
work on POSIX (eg. RPi).
2017-06-14 19:53:07 +02:00
Beat Küng 19cdbcfd4f sdp3x_airspeed: fix shadowing warning for crc 2017-06-14 19:53:07 +02:00
Beat Küng ba3d66abba voted_sensors_update: fix invalid/stale mag data on posix
Problem: _mag_device_id is used to get the correct rotation matrix for each
mag. But on POSIX, _mag_device_id was always 0, leading to invalid rotation
matrices.
This resulted in stale mag error messages (rot matrix=0 ==> mag data=0).
_mag_device_id was 0 because there are no /dev/magX devices (eg. on RPi),
thus the mag driver could not be opened.

This patch does: get the device id from the uorb topic instead. We still
need the device handle on certain platforms to apply the calibration params
and to check if the mag is internal or external.

Problem left: on POSIX, the check for external mag does not work.
2017-06-14 19:53:07 +02:00
Beat Küng 76f593afb0 fix voted_sensors_update: remove DevMgr::releaseHandle(h);
the 'continue' continues with the inner loop, whereas the outer loop is
responsible for opening the handle. Thus the inner loop needs to keep it
open.
2017-06-14 19:53:07 +02:00
Beat Küng af6846b9a8 fix voted_sensors_update: use int32 for param_get() 2017-06-14 19:53:07 +02:00
Beat Küng ce27e75a76 sensors: better status output 2017-06-14 19:53:07 +02:00
Beat Küng 1392e25652 Tools/jMAVSim: update submodule
allows setting gps origin via ENV variable
2017-06-14 13:12:10 +02:00
Paul Riseborough c48b879843 Merge pull request #276 from CarlOlsson/feature/only_update_mag_states
EKF: Add feature to use the mag to only update the mag states
2017-06-14 11:04:14 +10:00
Sean Matthews c41185a277 Fixes valid yaw check 2017-06-14 01:23:37 +05:30
Sean Matthews d9cec600ed Fixes #7313: Invalid setpoint yaw after takeoff 2017-06-14 01:23:37 +05:30
Julien Lecoeur 89a8c656f2 Unneeded includes 2017-06-13 11:50:00 +02:00
Julien Lecoeur 1a6d2c491b Remove explicit template instantiation of Subscription<T> 2017-06-13 11:50:00 +02:00
Julien Lecoeur 550aee4da3 Remove explicit template instantiation of Publication<T> 2017-06-13 11:50:00 +02:00
Julien Lecoeur 3ff1f4d16f Move uORB::Subscription template implementation to header 2017-06-13 11:50:00 +02:00
Nicolae Rosia 0dc4f1f96d Fix strip target and bebop upload
Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2017-06-13 08:16:37 +02:00
Nicolae Rosia 5e57594fba update docker_run.sh
Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2017-06-13 08:16:37 +02:00
Nicolae Rosia 3dd32492de Move find of STRIP_TOOL to toolchain
Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2017-06-13 08:16:37 +02:00
Nicolae Rosia a50a87928f navio_adc: add override flag to init
Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2017-06-13 08:16:37 +02:00
Nicolae Rosia a6acb2e68e ARM Toolchain: search compiler in PATH
Add CMake target for strip since these changes break adb_upload_to_bebop.

GCC users should add the cross compiler bin path to PATH (location of arm-linux-gnueabihf-g++).
Clang user should do the following:
* set CMAKE_CXX_COMPILER to clang++ by providing -DCMAKE_CXX_COMPILER=clang++ to cmake
* get GCC cross compiler - needed because Clang does not ship a CRT
* create a symlink for clang and clang++ in GCC cross compiler bin dir.
* add GCC bin dir to PATH

Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2017-06-13 08:16:37 +02:00
Nicolae Rosia 8f9ca9b45e Commit 8797a090dc06cd0c9f4cf132b67e4872af1ff8f1 relocated __DF_RPI
but missed to move it from *-clang.cmake Toolchain

Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2017-06-13 08:16:37 +02:00
Kabir Mohammed f266b91cc9 bebop uploader : kill and restart autostarted PX4 daemon 2017-06-13 08:16:37 +02:00