Commit Graph

29923 Commits

Author SHA1 Message Date
Julian Kent d70b024ec7 GTest functional tests that include parameters and uORB messaging (#12521)
* Add kdevelop to gitignore

* Add test stubs

* Rename px4_add_gtest to px4_add_unit_gtest

* Add infrastructure to run functional tests

* Add example tests with parameters and uorb messages

* Fix memory issues in destructors in uORB manager and CDev

* Add a more real-world test of the collision prevention
2019-08-09 15:10:09 +02:00
bresch 4eb9c7d812 Create TrajMath library and move waypoint speed calculations in it 2019-08-09 12:04:48 +02:00
bresch b1698b78bc AutoSmoothVel - scale down acc_hor using traj_p parameter in the computation of the maximum waypoint entrance speed 2019-08-09 12:04:48 +02:00
bresch de10f1e04d MC auto - Modify yaw_sp_aligned to take mis_yaw_error tolerance.
Add check for this flag in AutoLine
2019-08-09 12:04:48 +02:00
Dennis Mannhart 9e9b2ab9e8 FlightTaskAutoLine/SmoothVel: stop at waypoint if altitude is has not been reached yet 2019-08-09 12:04:48 +02:00
bresch 255c911155 AutoSmoothVel - Compute desired speed at target based on angle between previous-current and current-next waypoints
Also remove crosstrack P controller that produces overshoots when the
acceptance radius is large (crosstrack error is suddenly large at
waypoint switch).
2019-08-09 12:04:48 +02:00
Silvan Fuhrer 07895cd3b6 Airspeed Selector: resolve conflics for wind estimate topic publishing after rebase
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Silvan Fuhrer d129fcccd5 Omnibus: take out local_position_estimator from build as was out of flash after ecl update for airspeed selection module
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02: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
Silvan Fuhrer 970e362e9a Increased stack of lp work queue as with new airspeed modudle it was getting low
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Silvan Fuhrer 50dc8aee7a Airspeed Selector: added airspeed validator class
This validator takes measurements from a single airspeed sensor and:
    -checks validity of measurement
    -can estimate an airspeed scale factor (estimation enabled with parameter setting) to accout for errors in airspeed due due placement of sensor

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Silvan Fuhrer 248e1818e2 Airspeed Selector: changes in airspeed library to account for new EAS state (equivalent airspeed)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Claudio Micheli aae16cc594 uavcan esc: use time literals for timeout checks.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +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 5fe7992af5 mixer_group: improved get_multirotor_count () code readbility.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +02:00
Claudio Micheli 09d79b221f Simplified esc_status healthiness logic.
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 75c336c00c uavcan_main: replaced printf messages with PX4_INFO
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-08-09 09:41:17 +02:00
Claudio Micheli 1e04d718f6 uavcan escs: Modified esc_status reporting to have _rotor_count published.
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 d06c679252 uavcan esc: added timeout checks to escs.
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
Mark Sauder 056c8000a1 MultiCopterLandDetector: Implement ModuleParams inheritance (#12356) 2019-08-09 07:57:42 +02:00
Daniel Agar 2f222d6cbf containers/List add nullptr check 2019-08-09 07:55:13 +02:00
Daniel Agar 9481b3b232 Update submodule mavlink v2.0 to latest Fri Aug 9 02:59:05 UTC 2019 (#12669)
- mavlink v2.0 in PX4/Firmware (e8a11086eb): https://github.com/mavlink/c_library_v2/commit/72832840733f0d78cda7e2071a6bf6c7fc3f9273
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/0385f82286df78d51b06e5e325b13e2411ba2170
    - Changes: https://github.com/mavlink/c_library_v2/compare/72832840733f0d78cda7e2071a6bf6c7fc3f9273...0385f82286df78d51b06e5e325b13e2411ba2170
2019-08-09 00:15:38 -04:00
PX4 Build Bot 34ed454ea9 Update submodule ecl to latest Fri Aug 9 02:59:11 UTC 2019
- ecl in PX4/Firmware (e93e676c38bc3ce2e57c20a8dc33ffe377826903): https://github.com/PX4/ecl/commit/d38164fc8e68b740405669127138e550c3c7375c
    - ecl current upstream: https://github.com/PX4/ecl/commit/62fa464e4dd6cb5e585d23bd353aa50a469879f7
    - Changes: https://github.com/PX4/ecl/compare/d38164fc8e68b740405669127138e550c3c7375c...62fa464e4dd6cb5e585d23bd353aa50a469879f7

    62fa464 2019-07-17 RomanBapst - WindEstimator: added support for pre-set airspeed scale factor
a7d9c73 2019-07-09 Silvan Fuhrer - Wind estimator: added wind_estimator_reset state (to indicate if wind estimator was reset in last fusion-cycle)
09f29db 2019-07-02 Silvan Fuhrer - added option to fix airspeed scaling to 1
2019-08-08 23:39:43 -04:00
Daniel Agar e8a11086eb create uORB::PublicationMulti for multi publications 2019-08-08 21:01:56 -04:00
Daniel Agar 0a0c404a08 mavlink receiver move to uORB::Publication 2019-08-08 21:01:56 -04:00
David Sidrane 21782603b3 px4_fmu-v5x: add networking
* fixed dropped CONFIG_LIBC_FLOATINGPOINT=y
* fix RMII TX pinning
* update platforms/nuttx/NuttX/nuttx w/ f7 eth
2019-08-08 20:38:56 -04:00
mcsauder 887b55269a Delete whitespace to quiet githooks. 2019-08-08 18:56:26 -04:00
Daniel Agar c6aaa606da sensors angular velocity and acceleration publishers fix auto usage
- if the primary gyro or accel change this will cause the callback to be registered multiple times
2019-08-08 11:36:27 -04:00
Daniel Agar c66fc85630 fw_pos_control_l1: move to WQ with uORB callback scheduling 2019-08-07 23:13:21 -04:00
Daniel Agar cab0aee2a0 fw_att_control: move to WQ with uORB callback scheduling 2019-08-07 22:54:44 -04:00
Daniel Agar 0955fd2d58 NuttX boards reduce CONFIG_NFILE_DESCRIPTORS 54 -> 20 2019-08-07 21:23:27 -04:00
Daniel Agar e43e37cc46 fw_pos_control_l1 add new simple min groundspeed 2019-08-07 18:50:42 +02:00
Matthias Grob 161429f8c6 voted_sensors_update: refactor to camelCase function names 2019-08-07 18:44:39 +02:00
Matthias Grob 89a0a3acb6 PreflightCheck: improve output in case of mag inconsistency 2019-08-07 18:44:39 +02:00
Matthias Grob fe37ee2b7f voted_sensors_update: refactor out matrix:: because of using namespace 2019-08-07 18:44:39 +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 83e532d339 logger move to uORB::SubscriptionInterval (#12123) 2019-08-07 11:02:16 -04:00
baumanta e91614c791 change angle parmeter to degrees 2019-08-07 15:29:13 +02:00
baumanta f80a539faa add unit for coll prev angle 2019-08-07 15:29:13 +02:00
baumanta 14f128b89d add parameter for detection angle 2019-08-07 15:29:13 +02:00
baumanta 150b5df7cb change size of reaction angle 2019-08-07 15:29:13 +02:00
baumanta b26d3ac9d4 no slinding in collision prevention (roll jerk fix) 2019-08-07 15:29:13 +02:00
Daniel Agar a917f22b65 sensors: create vehicle_acceleration module (#12597) 2019-08-07 05:05:48 -04:00
bresch 50fbb56737 Yaw mode 3 - Add check for minimum distance to target in MPC_YAW_MODE 3 (along trajectory) to be consistent with the other yaw modes 2019-08-07 10:30:34 +02:00
Martina 119e5e3182 Revert "CollisionPrevention only process distance_sensor updates"
This reverts commit 839787568c.
2019-08-07 04:01:50 -04:00
Daniel Agar 6e781c2289 InvenSense ICM20948 move to PX4Accelerometer, PX4Gyroscope, PX4Magnetometer helpers 2019-08-06 23:36:31 -04:00