Commit Graph

809 Commits

Author SHA1 Message Date
Mathieu Bresciani 112f24c54f ekf2_main - Add optical flow innovation pre-flight check (#13036)
* ekf2: Add FirstOrderLpf and InnovationLpf classes for innovation lowpass filtering

* ekf2: use InnovLpf filter class in preflight checks

* ekf2: move selection of yaw test limit for pre-flight check in function

* ekf2: Move pre-flight checks into separate function

* ekf2: use static constexpr insetead of inline for sq (square) function

* ekf2: Split pre-flight checks in separate functions
Also use the same check for all the innovations:
innov_lpf < test and innov < 2xtest

* ekf2: Add optical flow pre-flight check

* ekf2: Combine FirstOrderLpf and InnovationLpf in single class

* ekf2: check vel_pos_innov when ev_pos is active as well

* ekf2: transform InnovationLpf into a header only library and pass the
spike limit during the update call to avoid storing it here

* ekf2: Static and const cleanup
- set spike_lim constants as static constexpr, set innovation
- set checker helper functions as static
- rename the mix of heading and yaw as heading to avoid confusion

* ekf2: use ternary operator in selectHeadingTestLimit instead of if-else

* ekf2: store intermediate redults in const bool flags. Those will be used for logging

* ekf2: set variable const whenever possible

* ekf2: create PreFlightChecker class that handle all the innovation
pre-flight checks.
Add simple unit testing
Use bitmask instead of general flag to have more granularity

* PreFlightChecker: use setter for the innovations to check instead of sending booleans in the update function
This makes it more scalable as more checks will be added

* ekf: Use booleans instead of bitmask for ekf preflt checks
Rename "down" to "vert"
2019-10-28 16:04:11 -04:00
Beat Küng 0871802568 mixer_module: add support for test_motor (motor_test CLI command) 2019-10-21 09:42:08 +02:00
TSC21 2930b55732 microRTPS: templates: only decode ros2_distro when possible and nedeed 2019-10-20 16:08:32 +01:00
Julian Oes d3da4a92e0 msg: don't implement print_message for fmu-v2
This saves about 3.4k of flash for fmu-v2.
2019-10-18 11:54:24 +02:00
TSC21 412c364e90 microRTPS bridge: templates: do not change naming of topics based on the fasrtpsgen version 2019-10-16 16:16:11 +01:00
Matthias Grob 679e4fedf5 LandDetector: switch land flags to properies instead of one state 2019-10-16 00:47:01 -04:00
TSC21 97e1edc835 microRTPS: templates: fix support for ROS2 Dashing 2019-10-14 23:17:27 +01:00
TSC21 f91770f9cd generate_microRTPS_bridge: fix fastrtpsgen version check handler 2019-10-14 21:23:27 +01:00
Nick b72d010c34 Update vehicle_local_position.ref_alt comment to reflect how ref_alt is being used in PX4 2019-10-14 12:33:25 -04:00
TSC21 10e3bcd138 ulog stream msgs: rename 'sequence' fields as they are protected names in fastrtpsgen 2019-10-14 16:37:17 +01:00
TSC21 88a7e3df09 microRTPS bridge: fix templates for ROS2 usage 2019-10-14 16:37:17 +01:00
Beat Küng 65f3c7f93d dshot: add telemetry and publish esc_status message 2019-10-11 08:14:17 +02:00
Beat Küng 4c4ce09005 esc_status: trim the message and remove unused fields 2019-10-11 08:14:17 +02:00
TSC21 9a4a02a255 uorb_rtps_message_ids.yaml: fix typo 2019-10-07 12:58:15 +01:00
Nuno Marques 5a8aa04970 CI: bump container tags to 2019-10-04 (#13095)
* bump container tags to 2019-10-04

* docker_run: update container name and tag

* generate_microRTPS_bridge.py: force FastRTPSGen to version 1.0 if the result of 'fastrtpsgen -version' command is not a number

* CI: temporarly disable avoidance and safe landing tests

* CI: try to revive tiltrotor test
2019-10-06 01:21:04 -04:00
TSC21 e7b0384f05 fix FastRTPSGen version verification 2019-10-04 16:56:03 +01:00
TSC21 5c0f01a8b8 microRTPS bridge: try/catch FastRTPSGen errors 2019-10-04 16:56:03 +01:00
TSC21 2677e12024 microRTPS bridge: templates: Publisher.cpp.em: close 'if' statement 2019-10-04 16:56:03 +01:00
TSC21 1970ef875f micrortps bridge: clean templates; add backwards compatibility; add ROS2 compatibility 2019-10-04 16:56:03 +01:00
TSC21 278d2fd21f first push on supporting ROS2 Dashing and IDL 4.2 2019-10-04 16:56:03 +01:00
Daniel Agar 0fe271b7f5 CollisionPrevention add more distance_sensor orientations 2019-10-01 21:05:37 -04:00
kamilritz 35c50f693f Add missing id for vehicle_visual_odometry_aligned for rtps 2019-09-24 10:49:33 +01:00
kritz 7427768e70 ECL reference frame alignment fix (#12771)
* Fix EKF frame alignemen in ECL

* Remove empty lines

* Add initalization for ev_odom

* Only use yaw covariance for angErr

* Improve frame naming in comments

* Use copyTo

* Add aligned as suffix

* Add missing vehicle_visual_odometry_aligned
2019-09-23 14:24:52 -04:00
Tanja Baumann f3c5ca6015 Collision Prevention: support multiple sensors and frames (#12883)
* build internal sensor map

* Extend testing coverage

* Update matrix library
2019-09-06 08:38:56 +02:00
TSC21 f6a5c7cca9 qshell: rename qshell sequence fields so they can be parsed on fastrtpsgen 2019-09-04 17:04:28 +01:00
Daniel Agar c8f77d438d
load_mon: update orb_publish to uORB::Publication<> 2019-09-02 20:41:34 -04:00
kritz 9ed2daef48 Fixing and simplifying mavlink odometry handling (#12793)
* Fixing and simplify mavlink odometry
2019-08-30 06:33:13 -07:00
TSC21 693d89583d RTPS: add check for ID space 2019-08-25 23:04:09 +01:00
TSC21 1fa43a707f uorb_rtps_message_ids: enlarge id space for base type msgs 2019-08-25 23:04:09 +01:00
TSC21 062b693fea uorb_rtps_classifier: improve way to check base type of alias 2019-08-25 23:04:09 +01:00
TSC21 ac6ee972d3 airspeed_validated: move it out of the alias space 2019-08-25 23:04:09 +01:00
Silvan Fuhrer ab28f1e4f7 Navigator: VTOL: disable weather vane during yaw aligning before front transition
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-21 10:08:04 +02:00
Daniel Agar dacaabe92e
introduce sensor_gyro_control message for vehicle_angular_velocity (#12145) 2019-08-16 13:53:59 -04:00
Silvan Fuhrer 5bc6979796 AirspeedSelector: added RTPS ID for airspeed_validated message
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Silvan Fuhrer cedf14e2ba Airspeed Selector: repurpose wind estimator into an airspeed (selection, validation) module.
This new airspeed module does:
  -runns an airspeed validator for every airspeed sensor present, which checks measurement validity and estimates an airspeed scale
  -selects another airspeed sensor if for the current one a failure is detected
  -estimates airspeed with groundspeed-windspeed if no valid airspeed sensor is present
  -outputs airspeed_validated topic

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Claudio Micheli 2eb9fb9ed6 Commander: move esc_status as local variable.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +02:00
Claudio Micheli 8a2d05be4f Improved code comment for condition_escs_error topic.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +02:00
Claudio Micheli 187a025dfe Commander: added esc_status prearm checks
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +02:00
Claudio Micheli 03637fa6f1 Added topics to esc_status and vehicle_status_flags.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +02:00
Matthias Grob 45187e1aa8 Improve magnetometer inconsistency check
To check directional difference between the magnetometer field vectors
instead of vector component difference.
2019-08-07 18:44:39 +02:00
Daniel Agar a917f22b65
sensors: create vehicle_acceleration module (#12597) 2019-08-07 05:05:48 -04:00
Daniel Agar b945e28e08 uORB fix vehicle_angular_velocity RTPS id 2019-08-06 13:39:56 -04:00
Daniel Agar 2ad12d7977
sensors: create vehicle_angular_velocity module (#12596)
* split out filtered sensor_gyro aggregation from mc_att_control and move to wq:rate_ctrl
2019-08-06 12:55:25 -04:00
Daniel Agar 6f2d1d55f6 logger use uORB::PublicationQueued for ulog_stream
- queue depth is now set by the msg
2019-08-06 11:07:59 -04:00
Daniel Agar a6777ca4f1 uORB add RTPS message id for new wheel_encoders msg 2019-08-05 12:34:48 -04:00
Martina Rivizzigno 39e59d6cc4 add point type (mavlink command associated with wp) in Obstacle Avoidance interface 2019-08-05 16:05:40 +02:00
Andrei Korigodski 5133453822 vehicle_status: replace ARMING_STATE_REBOOT with ARMING_STATE_SHUTDOWN
Signed-off-by: Andrei Korigodski <akorigod@gmail.com>
2019-08-05 05:55:33 -07:00
Timothy Scott 830d576f45 Changed wheel encoder publication to multi-instance 2019-08-05 02:45:33 -07:00
Timothy Scott 834ae3128f Implemented reading speed from the Roboclaw 2019-08-05 02:45:33 -07:00
Timothy Scott b5cf8416b6 Publishing encoder message at regular intervals 2019-08-05 02:45:33 -07:00