Azarakhsh Keipour
f3e21ddc7a
Omni Pos-Ctrl: Reduced jerking when a large command is given in offboard
...
- OMNI_ATT_MODE = 2 uses OMNI_DFC_MAX_THR parameter to limit the horizontal commanded thrust now
- Other modes are not affected
2020-08-03 22:22:03 -04:00
Azarakhsh Keipour
431a0cb11e
Omni Pos-Ctrl: Added a parameter for the attitude change rate (OMNI_ATT_MODE=6)
2020-07-28 21:30:23 -04:00
Azarakhsh Keipour
948e75c230
Omni Pos-Ctrl: Slow attitude change works now.
2020-07-28 20:46:23 -04:00
Azarakhsh Keipour
2d101c5998
Omni Pos-Ctrl: Fixed a compilation issue for pixracer)
2020-07-28 19:38:56 -04:00
Azarakhsh Keipour
1ccd452de6
(WIP) Omni Pos-Ctrl: Added slow attitude change OMNI_ATT_MODE = 6 (disabled for now)
2020-07-28 18:59:07 -04:00
Azarakhsh Keipour
a7920aa09f
Omni Pos-Ctrl: Wind estimation is only OMNI_ATT_MODE = 5 now for both tilt and roll/pitch estimation
2020-07-26 01:48:17 -04:00
Azarakhsh Keipour
45af173da1
Omni Params: Attitude setpoint params moved from attitude controller to position controller
2020-07-26 01:46:20 -04:00
Azarakhsh Keipour
3124e76aaa
Omni Pos-Ctrl: Added (unfiltered) roll and pitch angle estimation mode
2020-07-26 01:23:53 -04:00
Azarakhsh Keipour
0630abd01a
Omni Pos-Ctrl: Added (unfiltered) tilt angle and direction estimation mode
2020-07-26 00:55:45 -04:00
Azarakhsh Keipour
0e65bfffa4
Omni Pos-Ctrl: OMNI_PROJ_AXES works for OMNI_ATT_MODE = 1
2020-07-23 06:29:57 -04:00
Azarakhsh Keipour
d77f74bb53
Omni Pos-Ctrl: Roll/Pitch airmode implemented for Omni vehicles
...
- For MC_AIRMODE = 1
2020-07-21 08:15:17 -04:00
Azarakhsh Keipour
7a07f41b65
Omni Pos-Ctrl: Added the OMNI_PROJ_AXES parameter
2020-07-13 19:35:08 -04:00
Azarakhsh Keipour
68005486a1
Omni Pos-Ctrl: Thrust projected on current/commanded axes based on input
2020-07-13 19:06:10 -04:00
Azarakhsh Keipour
2ee4eaf4a4
Omni Att-Ctrl: Desired tilt/roll/pitch params passed to attitude controller
...
- OMNI_ATT_TLT_ANG default set to 0 degrees
2020-07-13 17:45:08 -04:00
Azarakhsh Keipour
651c75558e
Omni Pos-Ctrl: Added desired roll/pitch attitude setpoint generation
2020-07-13 14:06:28 -04:00
Azarakhsh Keipour
03e7435fbe
Omni Att-Ctrl: New parameters for fixed tilt and fixed roll/pitch
...
- OMNI_ATT_TLT_ANG
- OMNI_ATT_TLT_DIR
- OMNI_ATT_ROLL
- OMNI_ATT_PITCH
2020-07-13 13:48:44 -04:00
Azarakhsh Keipour
725fff3052
Omni Pos-Ctrl: Current attitude passed to attitude generation methods
2020-07-13 13:37:21 -04:00
Azarakhsh Keipour
f18f92a505
Omni Pos-Ctrl: Fixed-tilt attitude generation strategy implemented
...
- Currently receiving hardcoded tilt angle and direction
2020-07-13 12:47:45 -04:00
Azarakhsh Keipour
4d3c915183
MultiRotor Mixer: Fix a styling issue for readability
2020-07-13 12:21:04 -04:00
Azarakhsh Keipour
69fe37e6be
Omni Mixer: The mixer for 6-DoF vehicles is refactored to the MultirotorMixer now
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
81d554ef71
Omni Pos-Ctrl: The maximum dfc thrust is defined as a parameter
...
- The parameter is shared with the manual mode's maximum horizontal thrust (renamed from OMNI_MAX_HOR_THR to OMNI_DFC_MAX_THR) defined in the mc_att_control module
- The definition for the OMNI_ATT_MODE moved from mc_pos_control module to mc_att_control
- The thrustToAttitude function now has additional omni_dfc_max_thrust parameter
- Test modules are fixed to call the new thrustToAttitude function appropriately
- The code is tested in Gazebo for both manual and (semi-)autonomous modes
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
a655425849
Omni: Set the default OMNI_MAX_HOR_THR to 0.15
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
0cdaf4a801
Omni Pos-Ctrl: Minimum-tilt attitude setpoint for omni-directional vehicles implemented
...
- The goal is to use all the possible (set by the user) horizontal thrust first and then tilt if necessary, thus achieving minimum possible tilt.
- This is an implementation of the following paper for OMNI_ATT_MODE = 1:
"A Daisy-Chain Control Design for a Multirotor UAV with Direct Force Capabilities", M. Hamza and E.N. Johnson, 2017 AIAA GNC Conference
- Still need to define a parameter for the maximum direct force
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
494595111b
Omni Att-Ctrl: Added a new parameter for controlling the maximum horizontal thrust
...
- OMNI_MAX_HOR_THR parameter specifies the maximum horizontal thrust compared to the maximum possible thrust generated by the vehicle for an omnidirectional multirotor
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
3c2087a69d
Omni MC: Changed the parameter name MC_OMNI_MODE to OMNI_ATT_MODE
...
- To be more descriptive and similar to other (future) OMNI_ parameters
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
3ae19f254c
Omni Att-Ctrl: Manual mode works smoother now and based on the MC_OMNI_MODE parameter
...
- Some observations:
- It's still not as smooth as expected (or maybe I'm not a good pilot)
- Acceleration on the body X axis feels lower than the body Y axis (no idea why)
- Flight tested in Gazebo sim in both Manual and Autonomous modes
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
8fd875f8c7
Omni Pos-Ctrl: Refactoring of the attitude set point generation for omni-directional modes
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
db6b09adf0
Omni Pos-Ctrl: The attitude setpoint is generated based on the MC_OMNI_MODE parameter now
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
252284d89b
Omni Att-Ctrl: Added attitude controller for omni vehicles 'Manual' mode
...
- Still the control feels weird and need more refining
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
d6c27c6f37
Omni Pos-Ctrl: Defined MC_OMNI_MODE PX4 parameter in the position controller
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
1882ff6b4b
Omni Pos-Ctrl: Attitude setpoint generation for omni vehicles completed
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
bc489492d4
Omni Pos-Ctrl: (WIP) Continue code for attitude setpoint generation for omni vehicles
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
8bfdf29055
Tilt-Hex Pos-Ctrl: (WIP) Started code for attitude setpoint generation for omni vehicles
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
400f8ea4be
Bug Fix(es): 3D-thrust ranges fixed to -1..1 and manual z maps to negative z-thrust now
...
- The range for 3D-thrust in the 6-DOF multirotor mixer is changed to -1 to 1 now (fixed from 0 to 1)
- The Z thrust in the 6-DOF multirotor mixer is mapped to the Z-thrust command now (fixed from thrust command)
- The manual Z command in the rate controller maps to the negative Z-thrust (fixed from positive Z)
- The variable _thrust_body_sp in the rate controller renamed to _thrust_sp to be compatible with the older variable removed in the last commit
- The code tested in TakeOff, Manual, Hold, Position and Land modes on both tilted hex and iris
Accepting and working with 3D thrust commands now
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
3a321302f0
(WIP) MC-Att-Ctrl: Added 3d thrust set point to the 6-Dof attitude and rate controllers
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
0f40eb953d
Bug Fix: The absolute value of Z thrust is used in the 6-Dof mixer now
...
- Tilt-Hex flies like a normal hex but with the new 6-dof mixer now (with some jitters)
- Some minor parameter changes in the hexa_x_tilt definition to make the simulated flight smoother
2020-01-21 18:23:07 -05:00
Azarakhsh Keipour
a878d6823d
Mixer: Added 3D thrust capability to the multirotor and 6-dof mixers
...
- Added 3D thrust definitions to actuator controls and multirotor motor limits messages
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
d7f61e41d8
Mixer 6-DoF: Airmode and saturation enabled
...
- More info at https://github.com/Auterion/Flight_Control_Prototyping_Scripts/tree/master/control_allocation
- The drone is still not flying stably, has vibration and flies away.
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
0d7d567c4b
Mixer 6DoF (WIP): Added a special S mixer for 6-DoF multirotors
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
1af1b40733
Mixer Generation: Generate normalized 6-DoF mixer matrices
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
c53923d1d3
Mixer Generation: Generate mixers for a new MultirotorMixer6dof class for 6-DoF vehicles
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
4bcf796a89
Added mixer and gazebo model for the tilted-arm hexarotor
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
6b8fbc3c45
Hex TOML: Changed to reflect the omni-8 for now
2020-01-21 18:23:06 -05:00
Azarakhsh Keipour
e49fb5bf50
Tilt-Hex: Completed mixer definitions (for now)
2020-01-21 18:23:06 -05:00
Daniel Agar
cf195b0755
commander: safety button disarm require land detector
...
- landed, maybe_landed, or ground_contact required before the safety
button is able to disarm
- this reduces the risk of a faulty safety button triggering in regular
flight
2020-01-21 23:35:25 +01:00
Daniel Agar
4f868fc565
commander: use arm_disarm() helper for safety button disarm
2020-01-21 23:35:25 +01:00
Daniel Agar
350268ee68
navigator: mission WORK_ITEM_TYPE_MOVE_TO_LAND altitude isn't relative
2020-01-21 23:27:22 +01:00
Roman Bapst
fa83f3799a
navigator: set acceptance radius even for IDLE position setpoint
2020-01-21 11:14:43 -05:00
kamilritz
04e09d772e
Add missing mag calibration biases
2020-01-21 13:36:08 +03:00
kamilritz
a3d2254e44
Move mag downsampling to ECL lib
2020-01-21 13:36:08 +03:00