Matthias Grob
6a5ca6e336
FlightTask: use inline assignment initializer for reset_counters struct
2019-09-24 10:34:08 +02:00
bresch
679b1659eb
AutoLineSmoothVel - Reorganize functions declarations to match cpp file
2019-09-24 10:34:08 +02:00
bresch
c811cf4784
FlightTask - Move ekf reset counter monitoring logic in the base FlihtTask
...
Each child FlightTask can simply implement what it wants to do in case
of an EKF reset event by overriding one of the _ekfResetHandler functions
2019-09-24 10:34:08 +02:00
bazooka joe
fb3a91cc4f
added circuit_breaker_enabled_by_val()
...
added and using circuit_breaker_enabled_by_val() where possible instead of circuit_breaker_enabled() which search for cbrk parameters by name, which is extensive process.
2019-09-22 13:55:40 -04:00
PX4 Build Bot
c67a7536d4
Update submodule matrix to latest Sun Sep 22 08:37:30 EDT 2019
...
- matrix in PX4/Firmware (8b1f9546aabfe6ab2a0431f1d5af6dcc976d4f59): https://github.com/PX4/Matrix/commit/60c9c99dcc44ea12bed0c3f9b95d01e2aa6d7d9e
- matrix current upstream: https://github.com/PX4/Matrix/commit/c34e8dc98fd05ea55dcd4c9fc551b11a3d23a601
- Changes: https://github.com/PX4/Matrix/compare/60c9c99dcc44ea12bed0c3f9b95d01e2aa6d7d9e...c34e8dc98fd05ea55dcd4c9fc551b11a3d23a601
c34e8dc 2019-09-17 Matthias Grob - helper: consider matrices with the same NANs and INFINITYs equal
bbaa938 2019-09-17 Matthias Grob - helper: consider NAN equal to NAN such that vectors can be compared exactly
33a6291 2019-09-17 Matthias Grob - Matrix: add proper print function testing
b0b7d72 2019-09-17 Matthias Grob - Multiplication test: fix division resulting in NAN
3747232 2019-09-17 Matthias Grob - LeastSquaresSolver: Fix nasty GCC compile optimization error
5844b0e 2019-09-16 Matthias Grob - Implement one float equality check and use it everywhere
1e80807 2019-09-16 Matthias Grob - test: Add uncovered equality checks with NAN and INFINITE
a374f37 2019-09-16 Matthias Grob - Include helper_functions like all other library components
2019-09-22 11:34:53 -04:00
bresch
6f3868b5ba
ManualVelocitySmoothing - Fix unlock initialization
2019-09-19 17:31:49 +02:00
bresch
0153e1b126
Matrix - Explicitly cast array[3] to Vector3f
...
Use .xy() for Vector2 -> Vector3 assignment
2019-09-19 17:31:49 +02:00
bresch
f405bf506b
AltitudeSmoothVel - Use ManualVelocitySmoothingZ class instead of re-implementing the logic
2019-09-19 17:31:49 +02:00
bresch
ce96d98621
ManualVelocitySmoothing - Cosmetic changes (renaming, indentation,..)
...
Set the classes as final and set destructor to non-virtual
2019-09-19 17:31:49 +02:00
bresch
7cdb2364e9
ManualVelocitySmoothingXY - Add simple unit test
2019-09-19 17:31:49 +02:00
bresch
f5d7eb4d87
Refactor FlightTaskManualPositionSmoothVel
2019-09-19 17:31:49 +02:00
bresch
080eedfd02
ManualPositionSmoothVel - Split large function into smaller ones, split XY and Z axes
...
Next step is to move as much as possible to a library in order to
reuse the Z axis in the Altitude FlightTask
2019-09-19 17:31:49 +02:00
Dennis Mannhart
453b6a39e4
TrajMath: move from FlightTasks/Utility into mathlib library because the function is also used by other libraries
2019-09-19 14:09:44 +02:00
Dennis Mannhart
e6b7062442
TrajMath: replace type placeholder with floats
2019-09-19 14:09:44 +02:00
Matthias Grob
c8d0eba1d2
Update ecl and matrix to safe matrix access
2019-09-18 22:01:36 -04:00
Julian Kent
2d4ecab3b0
Remove unsafe access to .data() and _data in Matrix
2019-09-18 22:01:36 -04:00
Matthias Grob
270e12a4df
VelocitySmoothing: refactor local scope t variables instead of array
2019-09-17 09:27:00 +02:00
bresch
da8ac8cafb
VelocitySmoothing - Clean up updateTraj function based on Matthias' comments
2019-09-17 09:27:00 +02:00
bresch
b82fa68893
VelocitySmoothingTest - Fix typo and use "zero" instead of "null"
2019-09-17 09:27:00 +02:00
bresch
42cedb7fda
VelocitySmoothing - Change direction of "brake" as braking means that
...
only the T3 part is required and that the jerk applied during T3 is the
opposite of the one defined by "_direction".
2019-09-17 09:27:00 +02:00
bresch
8490266be8
VelocitySmoothing - (Re)set _state_init every time _state is (re)set
2019-09-17 09:27:00 +02:00
bresch
654938f6a1
VelocitySmoothing - Cosmetic changes (new lines, reorganize functions),
...
regroup both updateTraj functions and edit some comments
2019-09-17 09:27:00 +02:00
bresch
0b765a1642
AltitudeSmoothVel - Update to use new implementation of VelocitySmoothing
...
Remove jerk reduction (not needed in the new implementation)
2019-09-17 09:27:00 +02:00
bresch
862454827e
VelocitySmoothingTest - Test that the trajectory is always within the constraints
2019-09-17 09:27:00 +02:00
bresch
8cc2a7018e
VelocitySmoothing - Re-enable time stretch, integrate dt to get local time.
...
Also split a few functions into smaller ones for readability, fix
formatting, use geters to get the current state of the trajectory
instead of return arguments.
2019-09-17 09:27:00 +02:00
bresch
c7696488fe
VelocitySmoothing - Improve computation of the direction of the trajectory by predicting the velocity at zero acceleration instead of the current velocity
...
This helps when the current velocity is smaller than the target but that
the acceleration is too large such that the velocity will overshoot.
Without this check, the algorithm increases the acceleration which leads
to an even larger overshoot.
2019-09-17 09:27:00 +02:00
bresch
052932fa95
VelocitySmoothingTest - Update unit test to use the same parameters ordering (time, setpoint) as the VelocitySmoothing class
2019-09-17 09:27:00 +02:00
bresch
c13499e64b
test_velocity_smothing - Update test script to use new polynomial evaluation algorithm
2019-09-17 09:27:00 +02:00
bresch
a03cc495ce
VelocitySmoothing - Refactor class to use polynomial evaluation instead of numerical integration
...
This solves many numerical issues when the trajectory is close to the
primary NE axes (small velocities). It is also more robust when dt is
large and has some jitter.
2019-09-17 09:27:00 +02:00
Matthias Grob
d4f984fea5
FlightTaskAutoLineSmooth: Fix comment to be style compliant
2019-09-13 18:10:05 +02:00
bresch
47401d1177
AutoLineSmoothVel - Replace min/max absolute constraints with a function named constrainAbs
...
This function constrain the absolute value of some value but keeps the original sign.
2019-09-13 17:46:01 +02:00
bresch
3c5b24037a
AutoLineSmoothVel - Improve virtual pilot logic that provides velocity setpoints to the trajectory generator.
...
Constrain the generated velocities in the NE inertial frame rather than
just constraining the norm.
2019-09-13 17:46:01 +02:00
bresch
59f54a7fd8
mathlib - Add FLT_EPSILON deadzone in sign computation
2019-09-13 17:46:01 +02:00
Martina Rivizzigno
78279f6587
Unit tests for Obstacle Avoidance interface ( #12816 )
...
* FlighTask: remove legacy definition of empty_trajectory_wapoint
* add unit tests for the ObstacleAvoidance interface
2019-09-12 14:37:31 +02:00
Julian Kent
39451b811a
Do syscall for time once, outside of loop
2019-09-11 12:34:59 -04:00
Julian Kent
b27d6a958a
Account for the time since range data arrived
2019-09-11 12:34:59 -04:00
Hamish Willee
94ef585f76
Link to missing params docs
2019-09-11 09:17:00 -04:00
Julian Kent
a8fbe6bba2
Remove references to pow(x,0.5), use sqrt instead ( #12928 )
...
* Remove references to pow(x,0.5), use sqrt instead
* Update matrix library
2019-09-10 13:29:39 +02:00
mcsauder
ddd9a97d42
Modify the LeddarOne driver class to utilize the PX4RangeFinder library.
2019-09-06 11:59:29 +02: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
Julien Lecoeur
7bea81f02c
Add board orientation ROLL_90_YAW_270
2019-09-05 20:41:32 -07:00
Daniel Agar
c75954fef8
lib/led: temporarily ignore implicit fallthrough warning
2019-09-04 20:03:02 -07:00
PX4 Build Bot
69475a172b
Update submodule ecl to latest Wed Sep 4 08:37:31 EDT 2019
...
- ecl in PX4/Firmware (da6970329175df98ff46b2d9ddfa467ba438bb2e): https://github.com/PX4/ecl/commit/62fa464e4dd6cb5e585d23bd353aa50a469879f7
- ecl current upstream: https://github.com/PX4/ecl/commit/3b32ee41660afd4785c374355e0fdefdae83e9b9
- Changes: https://github.com/PX4/ecl/compare/62fa464e4dd6cb5e585d23bd353aa50a469879f7...3b32ee41660afd4785c374355e0fdefdae83e9b9
3b32ee4 2019-09-02 bresch - Flow aiding - Reset state when flow is enabled only if it is the only position/velocity aiding sensor. Until now, it was alway resetting if the vehicle does not have gps or external vision. This caused a reset/glitch at every stop (when range data gets valid)
be368f3 2019-08-28 kamilritz - Update comment
c5abfe6 2019-08-28 kamilritz - remove canonicalize and adapt comments
67512d8 2019-08-22 kamilritz - Update matrix library for CI
a2ff415 2019-08-22 kamilritz - Fix get frame aligning quaternion function
53eac6e 2019-08-21 kamilritz - Canonicalize alignment quaternion
933c32c 2019-08-20 kamilritz - Enable local frame alignment also without using it
ea352a6 2019-08-20 kamilritz - Dont use mag suffix for magnitude
05196db 2019-08-20 kamilritz - Fix alignment of local frame
2019-09-04 08:09:36 -07:00
Julian Oes
5e9cae11f8
controllib: fix for undefined sanitizer
2019-09-03 11:54:09 -05:00
Daniel Agar
4d9f2bf776
add IMU_GYRO_RATEMAX to optionally limit gyro control publication rate
2019-09-02 20:06:50 -04:00
Daniel Agar
b0f82ee8ac
CollisionPrevention: update orb_publish to uORB::Publication<>
2019-09-02 15:35:34 -04:00
Julian Kent
bc58bed960
Add test for jerk reduction
2019-09-02 14:51:18 +02:00
Julian Kent
865157228f
Add collision prevention velocity limitations also based on max accel/jerk
2019-09-02 14:51:18 +02:00
Beat Küng
f0ee0b5d49
MixingOutput: make scheduling configurable
...
And make sure fmu calls MixingOutput::updateSubscriptions on startup even
if no mixer is loaded, so that it gets scheduled.
2019-08-31 10:05:00 -04:00
Beat Küng
a2ebbe9066
pwm_limit: rename to output_limit
...
As there is nothing pwm-specific about it.
2019-08-31 10:05:00 -04:00