Commit Graph

9683 Commits

Author SHA1 Message Date
Lorenz Meier 3ca474f045 Ground rover: Use standard scheduling setup 2017-08-02 21:18:35 +02:00
Lorenz Meier d8cc38728d Multicopter attitude controller: Run at maximum priority.
This allows for a quicker update from sensors if the estimator runs at the default priority of the estimator class. If there is no direct sensor pass-through then it will wait for an estimator update.
2017-08-02 21:18:35 +02:00
Lorenz Meier 8dd96e960d Fixed wing attitude controller: Run at maximum priority.
This ensures attitude control runs first before any other system component.
2017-08-02 21:18:35 +02:00
Lorenz Meier c94e54bbab Commander: Handle HITL state in all places consistently 2017-08-02 15:12:25 +02:00
Lorenz Meier 9d49690f17 GPS simulation: Manage delays correctly
The GPS simulation now mimicks the real driver more closely and should provide even GPS delays. The delays themselves are set by the simulator, and default to 120 ms for Gazebo
2017-08-02 13:06:59 +02:00
Julien Lecoeur 2c0539ae9c Move selected power source to inst 0 only if nb bricks > 1
When trying to move the selected power source to the first publication instance
on systems where there is only one power source, the compiler issued the warning
```
../src/modules/sensors/sensors.cpp:512:54: error: array subscript is outside array bounds [-Werror=array-bounds]
         tmp_h = _battery_pub[_battery_pub_intance0ndx];
```
because it could not verify that _battery_pub_intance0ndx would always be 0.

Wrap the block between `#if BOARD_NUMBER_BRICKS > 1 [...] #endif`
to ensure no out of bound subscript and to remove the warning.

Remove unused _battery_pub_intance0ndx variable when nb bricks = 1
2017-08-01 12:59:40 -10:00
Daniel Agar 9fb5c4f0e9 navigator land abort use reposition (#7574) 2017-08-01 18:59:12 -04:00
Vicente Monge c5e2745a19 Fixes for manual bridge generation
Fix for some forgot .cxx extensions
Fix for 'print' python 2 3 compatibility
Fix for topic ID type change
2017-08-01 22:32:43 +02:00
Mark Charlebois 131496ce79 Reverted change to stack size for mavlink module
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois e933d4667f Fixed code format
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois 0f758fc50a Fixed copyright on microRTPS_client_dummy.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois be090c0109 Fix GENERATE_RTPS_BRIDGE logic
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois f3e2648747 Use dummy bridge stub if fastrtpsgen not found
If the build config specifies RTPS topics to import/export and fastrtpsgen is not installed
on the build machine, then a dummy stub is used for the RTPS bridge.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois d24503242e Extracted non-template code from template
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois 049c769293 Converted cxx to cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Mark Charlebois b313bfdaa9 Only run fastrtpsgen if needed
If no RTPS import or export messages defined, then don't call fastrtpsgen

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2017-08-01 22:32:43 +02:00
Vicente Monge c85039e413 Fixing rebase conflicts 2017-08-01 22:32:43 +02:00
Lorenz Meier 1c0dd8ba49 Simulator: Add scaling API to adjust for slow simulators
The simulation engine had the ability to pause already and properly handled load spikes, however, it was not hardened against constant drift. This addition enables it to run at a constant slower-than-realtime rate successfully.
2017-08-01 19:50:35 +02:00
Lorenz Meier afb40a761d Simulator: Compensate scale error, not just message drops. This makes the whole simulation a lot more stable 2017-08-01 19:50:35 +02:00
Dennis Mannhart a95f02b4a1 land-detector description fix 2017-08-01 19:31:34 +02:00
Dennis Mannhart f26972704e style fix 2017-08-01 19:31:34 +02:00
Dennis Mannhart e6f7af2dcf landdetector + mc_pos_control cherry-pick fix 2017-08-01 19:31:34 +02:00
Dennis Mannhart 69ecfef8a4 landdetector: consider 8 second maybe_landed case only if no rotation present 2017-08-01 19:31:34 +02:00
Dennis Mannhart ec04577e3a mc_pos_control: consider landing if not auto takeoff and valid 2017-08-01 19:31:34 +02:00
Dennis Mannhart 4692ccf287 mc_pos_control: ignore maybe_landed and ground_contact for takeoff setpoint 2017-08-01 19:31:34 +02:00
Dennis Mannhart 03d86054a4 landdetector: decrease land detection to 0.3 2017-08-01 19:31:34 +02:00
Dennis Mannhart 10c41e2624 land xy max: set it back to 1.5 2017-08-01 19:31:34 +02:00
Dennis Mannhart 50ef2d0e52 landdetector: adjust time to 3 stage detection 2017-08-01 19:31:34 +02:00
Dennis Mannhart 9baf41bef1 landdetector: check horizontal movement as criteria to enter ground contact 2017-08-01 19:31:34 +02:00
Dennis Mannhart bc46f13d90 landdetector: use control mode, add minimum speed to detect hit-ground 2017-08-01 19:31:34 +02:00
Dennis Mannhart 549d8da6ee landdetector: hit ground logic 2017-08-01 19:31:34 +02:00
Dennis Mannhart 363ed43d38 mc_pos_control: remove additional land-ground contact logic 2017-08-01 19:31:34 +02:00
Dennis Mannhart 2405abd859 mc landdetector description 2017-08-01 19:31:34 +02:00
Dennis Mannhart 4e204e00cb landdetector: maybe_landed for rover 2017-08-01 19:31:34 +02:00
Dennis Mannhart 8f7ebc1f3a mc landdetector: simplify return 2017-08-01 19:31:34 +02:00
Dennis Mannhart 8a76bd07d0 mc_pos_control: change if to else if 2017-08-01 19:31:34 +02:00
Dennis Mannhart f75dd37326 landdetector: delete or for ground_contact detection 2017-08-01 19:31:34 +02:00
Dennis Mannhart 2890af7305 mc_pos_control: set thrust to zero once maybe_landed is reached 2017-08-01 19:31:34 +02:00
Dennis Mannhart 411ceaa6b3 multicopter landdetector: delete PX4_INFO 2017-08-01 19:31:34 +02:00
Dennis Mannhart 97b5cc77b8 landdetector: reduce maybe_landed trigger time to 1s 2017-08-01 19:31:34 +02:00
Dennis Mannhart f8e9f380d0 landdetector: add additional landdetection state 2017-08-01 19:31:34 +02:00
Lorenz Meier 576ad4b521 Sensors update: use correct constants 2017-08-01 12:46:59 +02:00
Lorenz Meier f4eaea99c5 Temp cal: Use correct constants 2017-08-01 12:46:59 +02:00
Paul Riseborough 08059caf89 EKF: Enable compensation for static pressure positional error (#7264)
* msg: add reporting of multi rotor drag fusion

* ekf2: add reporting of multi rotor drag fusion

* ekf2: Add parameters required to tune multi-rotor wind estimation

* ekf2: Add correction for static pressure position error

* ekf2: Use correct air density for position error corrections

* ekf2: fix parameter documentation error

* ekf2: Add separate forward and reverse position error correction factors

* ekf2: Fix formatting and parameter descriptions

* ekf2: Improve comments
2017-08-01 07:29:08 +10:00
ChristophTobler 02ea10ed99 range finder: reject if min/max value 2017-07-31 17:33:02 +02:00
Daniel Agar d5a890041b commander RTL failsafe should be sticky 2017-07-30 01:51:27 +02:00
Beat Küng 007b6dd8d7 commander: make sure the power_button_state topic is advertised on startup
Otherwise the publication from IRQ context won't work
2017-07-29 23:10:47 +02:00
Beat Küng 8923664f30 param: seek to the beginning of the file before re-trying a failed export attempt 2017-07-29 23:10:47 +02:00
Beat Küng 931ef189b5 param: grab the shutdown lock while writing params to the file 2017-07-29 23:10:47 +02:00
Beat Küng 2815c62acf fix power button shutdown: use an orb topic instead of a work queue call
px4_shutdown_request() was called from the power button IRQ callback, which
invoked a work queue callback. But on NuttX, the work queue uses a
semaphore, and thus it cannot be called from IRQ context.
This patch switches to publishing an uORB msg instead, which is handled in
the commander main thread.

To increase failure resistance, we could subscribe to the same topic in
another module for redundancy, in case commander runs wild.
2017-07-29 23:10:47 +02:00