Commit Graph
272 Commits
Author SHA1 Message Date
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
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 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
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
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
Benoit Landry 95faba391a accel control in pos controller 2016-04-22 10:31:52 +02:00
James Goppert f905276958 Added mpc_alt_mode. 2016-04-14 17:52:28 -04:00
Julian Oes 1f44fb1efd commander: internalize system status bools
Most condition bools in the commander are not used anywhere but in the
commander. It therefore makes sense to move them to a different internal
struct and remove them from the vehicle_status message.

Also, the land_detected should be used by all the modules instead of
getting it through the commander and system_status.
2016-04-11 18:01:47 +02:00
Lorenz Meier 737ad045b2 Fix up formatting in mc pos control 2016-03-27 12:10:57 +02:00
Jimmy Johnson 6ff1b2d896 Replacing SETPOINT_TYPE_VELOCITY use with velocity and position valid
booleans in setpoint struct
2016-03-27 12:10:57 +02:00
Jimmy Johnson 3aaad68c76 fixed position tracking overshoot 2016-03-27 12:10:57 +02:00