Reference Frame for Forces Going into 6DOF (Euler Angles)

19 Ansichten (letzte 30 Tage)
Matthew
Matthew am 12 Jul. 2023
Kommentiert: Paul am 14 Jul. 2023
I am trying to make a model for a quadcopter using simulink and I am using the 6DOF (Euler Angles) block and I am wondering what goes into the F_xyz (N) input. I curently have 4 forces from each of the 4 motors going into a add block then into the F_xyz (N). These forces are all in the Z direction and I was wondering if what I did is valid. Attached is a picture of the problem area. Do I need to run the forces through a rotation matrix first? I am new to both Simulink and controls...
Thanks

Akzeptierte Antwort

Paul
Paul am 12 Jul. 2023
According to 6DOF (Euler Angles), the force inputs are the components of the net force resolved in Body Coordinates. If the "Z direction" is in the body-fixed frame, then no furher action needed. If the "Z direction" is fixed to each motor, then the model needs to resolve the force vector applied by each motor into Body Coordinates before summing each motor force to get the net force resolved in Body Coordinates.
  7 Kommentare
Sam Chak
Sam Chak am 13 Jul. 2023
I have found an image that shows the forward flight is achieved by tilting the drone through a negative pitch rotation about the y-axis.
Thus, I think there should be a transformation matrix that describes
Paul
Paul am 14 Jul. 2023
More generally, each propeller generates a force vector Fi. Each force vector needs to be resolved in the coordinate frame fixed to the body of the quad copter. These are then summed together to form the F_xyz input to the 6-DOF block. And the units have to be correct.
Each propeller force produces exerts a moment around the quad copter body c.g. For each propeller force, the moment is cross(ri,Fi) where ri is the vector from the body c.g. to the point of application of the propeller force. It would be easiest to carry out the cross products with ri and Fi both resolved in body coordinates. The moment vectors from each propeller are summed to form the M_xyz input to the 6DOF block. And the units have to be correct.
The 6DOF block assumes a rigid body, which the quad copter isn't. But a rigid body approximation may be sufficent, or at least good enough to start, depending on the quad-copter configuration and how those propellers are actuated to control the flight in pitch, yaw, and roll. I don't know anything about quad copters, so don't have any insight here.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Quadcopters and Drones finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by