Commit Graph
414 Commits
Author SHA1 Message Date
Julian Oes 61fff54cbe mc_pos_control: copy triplet in one place only 2016-12-15 10:17:03 +01:00
Julian Oes 432824d603 mc_pos_control: move attitude setpoint to function
Again, no functional change, just refactor.
2016-12-15 10:17:03 +01:00
Julian Oes c200e581c3 mc_pos_control: move control into functions
This is only a refactor with no functional change
2016-12-15 10:17:03 +01:00
Dennis Mannhart dd1ca0daa2 correctin from user input to roll and pitch 2016-12-08 15:06:00 +01:00
Dennis Mannhart 6906d966ce manual input mapping to roll and pitch 2016-12-08 15:06:00 +01:00
Dennis Mannhart c2b6381759 adjust to astyle format 2016-12-07 17:32:09 +01:00
Dennis Mannhart 5ed35e9731 added comment why reseting at this point; created variable for horizontal velocity magnitude 2016-12-07 17:32:09 +01:00
Dennis Mannhart 6865a70dea reset position setpoints once altitude condition is reached 2016-12-07 17:32:09 +01:00
Roman aabf753ecb mc_pos_control: do not do tilt compensation when hor velocity is controlled
- fixed a bug where tilt compensation was done also when the horizontal
velocity was controlled. This is not needed because in this case
the controller outputs a 3D thrust vector.

Signed-off-by: Roman <bapstroman@gmail.com>
2016-12-05 16:07:19 +01:00
Julian Oes e416a8cb83 mc_pos_control: fix takeoff bug
This resolves a bug where a takeoff would go sideways instead of
straight up. What happened was that the position setpoint got shifted
around even though there was actually no real setpoint set but only a
setpoint of type IDLE. This then lead to a position setpoint far away
from the takeoff point and therefore scary takeoffs.

This fix prevents the part of the position controller which
moves/integrates the position setpoint from running in the case of an
idle setpoint.

This bug could be reproduced by switching the vehicle to mission mode
without a valid mission, then switch to hold mode, and then send the arm
and takeoff command.
2016-12-02 17:34:00 +01:00
devbharat 4ea72f35ed Disable resetting alt/pos setpoint flags if switching to position control from auto when very close to takeoff setpoint 2016-11-21 09:05:22 +01:00
devbharat dd1821b02e Reset alt/position when entring position control from auto 2016-11-21 09:05:22 +01:00
devbharat 59c1dd7183 Always check reset flags in auto. Only set reset flags to true when required. Do not limit hor/vert setpoint acceleration when setpoints are reset. 2016-11-21 09:05:22 +01:00
Roman a61b1e089c make sure to update the reset counters every time the topic updates
Signed-off-by: Roman <bapstroman@gmail.com>
2016-11-21 07:29:21 +01:00
Roman d4c87d62f1 fixed code style
Signed-off-by: Roman <bapstroman@gmail.com>
2016-11-21 07:29:21 +01:00
tumbili b2410460a5 made position controllers handle estimator state resets 2016-11-21 07:29:21 +01:00
Lorenz Meier 7be71459f5 Offboard control (#5816)
* Fix jmavsim HITL simulation of MAV_CMD_DO_REPOSITION in the case where you have no radio attached to the PX4 and so you have disabled RC link loss for that reason (set NAV_RCL_ACT = 0) but you still want the jmavsimulation to work.  The line of code changed here causes failsafe RTL to kick in without this fix.

* Add altitude hold option using Z position control, while doing velocity control on vx and vy.

* Fix style and rebase issues
2016-11-07 12:09:41 +01:00
Beat Küng c8a79d2443 mc_pos_control_main: remove <functional> include
Avoid including <functional> which can cause problems on NuttX
2016-10-24 10:22:48 +02:00
Julian Oes 032f4df3de mc_pos_control: revert gain change 2016-10-23 16:25:15 +02:00
Julian Oes 72e46e7ed0 mc_pos_control: jump quicker
In SITL, it still takes a while until a vehicle lifts off, so it seems
sensible to raise this jump gain a bit.
2016-10-23 16:25:15 +02:00
Julian Oes ff415a4f1d mc_pos_control: correctly initialize landed state
Since orb_copy is guarded with a orb_check, we ended up not having the
corrent landed state in the beginning which could lead to some
unexpected behaviour on takeoff.
2016-10-23 16:25:15 +02:00
Julian Oes 2fff2ab9ac Add switch for landing gear, pass it to actuators 2016-10-20 23:17:05 +02:00
Lorenz Meier 3696e7722a Code style adjustments 2016-10-19 10:17:41 +02:00
Lorenz Meier a12780c88f Remove attitude setpoint matrix from attitude setpoint topic 2016-10-19 10:17:41 +02:00
Andreas Antener f3b5c243e5 UT: added method to test float values
MC pos control tests: added tests to all configs that include them
2016-10-10 23:05:44 +02:00
Andreas Antener 9a219da9c2 Refactored cross sphere line tracking and added a unittest to verify correct operation 2016-10-10 23:05:44 +02:00
Andreas Antener c2e0246650 MC pos control: realize when we are on the trajectory but passed the target waypoint 2016-10-10 23:05:44 +02:00
Julian Oes 8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Andreas Antener e1e410783a tailsitter: correctly use roll/pitch inputs when optimal recovery is enabled 2016-09-13 14:32:00 +02:00
Mark Whitehorn a054fb1e04 fix altitude setpoint bug (#5409) 2016-09-03 12:33:36 +02:00
Andreas Antener 5eaf104318 fixed optimal recovery condition 2016-08-10 22:47:26 +02:00
Andreas Antener 853a5b77fd disabled attitude setpoint change in MC controller when optimal recovery is active 2016-08-10 22:47:26 +02:00
Andreas Antener 9087ef5990 only recalculate rotation matrix and quaternion when not in velocity control 2016-08-10 22:47:26 +02:00
Andreas Antener ae533b01b6 removed unused code 2016-08-10 22:47:26 +02:00
Daniel Agar 4049ec2e96 mc_pos_control fix and enforce code style 2016-08-07 10:40:17 +02:00
Lorenz Meier c76c8fda04 MC pos control: Drop default position controller gain 2016-08-06 11:50:08 +02:00
Lorenz Meier a38263b8e7 Enforce enough braking power when users set higher horizontal speeds 2016-07-31 17:43:15 +02:00
tumbili 998579befc mc pos control: zero yaw setpoint move rate in attitude setpoint topic
- fixed bug where a non-zero yaw setpoint move rate could make the drone
yaw around in non-manual modes

Signed-off-by: tumbili <roman@px4.io>
2016-06-30 16:42:51 +02:00
Andreas Antener 5dcc62d8f9 allow yaw setpoint offset to be reduced once maxed out 2016-06-30 14:30:59 +02:00
Andreas Daniel Antener 705a08bbbd do not modify attitude setpoint in velocity controlled mode (#4905) 2016-06-25 10:59:50 +02:00
Julian Oes d9d5d9d9e4 mc_pos_control: run the loop without position data
By running the loop in mc_pos_control without successfully polling on
position data, we still copy the manual input over so that
mc_att_control can consume it. This allows to fly in manual mode without
GPS and no position estimate.
2016-06-15 13:34:27 +01:00
Lorenz Meier 1e9fae8301 MC pos control: Be more efficient 2016-05-29 16:27:14 +02:00
Roman Bapst 02ba3317e9 WIP: Manual attitude setpoint for large heading errors (#4564)
* mc pos control: in manual mode calculate attitude setpoint
such that it reflects the users intuition of roll and pitch
for any given heading error

* added some comments on the new manual attitude setpoint generation

* make calculation shorter
2016-05-19 15:28:04 +02:00
Jimmy Johnson 59296e0a49 adding user parameters, simplifying dynamic gps filter, adding yaw smoothing 2016-05-16 15:12:50 -07:00
Jimmy Johnson 38b4278998 minimum follow target alt of 8 m added, protecting against nan values in pos controller, fixing ci build error 2016-05-16 15:11:57 -07:00
Lorenz Meier 623ef6d67c MC pos control: Use default initializers 2016-05-13 10:34:47 +02:00
Daniel Agar 331456f831 mc_pos_control_params.c param metadata 2016-05-11 12:29:54 -04:00
Lorenz Meier c31c29097d Rename params, add transitional support 2016-05-10 09:27:00 +02:00
Adyasha Dash 468b0b25de added different parameters for ascent and descent rates 2016-05-10 09:18:40 +02:00
Lorenz Meier 45a5f2aaa4 MC vel control: Better defaults, better min and max gains 2016-05-04 22:49:36 +02:00