WOLFRAM SYSTEM MODELER
QuadrotorBodyModel for the mass properties of the quadrotor base body |
![]() |
SystemModel["Aircraft.Physical.RotaryWing.MultiRotor.Parts.Bodies.QuadrotorBody"]
QuadrotorBody is the main body of the quadrotor that contains the mass and inertia of a quadrotor. It can move in six degrees of freedom, which include three attitude angular motions (roll, pitch and yaw) and three positional changes (longitudinal, lateral and vertical).
The QuadrotorBody consists of the quadrotor's mass and inertia characteristics, as well as the arms connecting each propulsion system to the quadrotor's center of mass. Additionally, it includes a (CAD) model of the quadrotor for visualizing it in animations. The connectors of the propulsion frame are linked to the propulsion system in order to mount forces, moments and rotational speed to the quadrotor body.
The mass of the quadrotor consists of two parts: the central mass and the mass associated with the four propulsion systems of the body. Thus, the variable bodyCenter represents the mass located in the center of the quadrotor, while body1, body2, body3 and body4 represent the mass of the four propulsion systems. It is assumed that the arms themselves have no mass. The numbering with respect to the body reference frame is illustrated in Figure 1. The total mass of the drone, represented by "droneMass," is calculated by adding the masses of the "bodyCenter," "body1," "body2," "body3" and "body4. The mass and inertia properties of the propulsion systems are the same in all four bodies and can be set at the top level.
The arm length parameter determines the distance between the center of the mass of the quadrotor and the center of the mass of each propulsion system.
The propulsion connector serves as a mounting point for the motor and propeller, connecting them to the DC motor and propeller through the frame connector to support torque generation and the rotation of the propeller within the Quadrotor model.
By default, the Modelica Standard Library FixedShape primitives are used to visualize different components with simple box and cylinder shapes with the dimensions given in the Geometry parameters and by estimating them for certain components. A CAD model of the quadrotor case (chassis) is used for animation, and one can replace them with another CAD file with the .obj extend. It can be used by setting CADshapes as true and entering the path of the .obj file to CADpath field. This automatically disables the default animation in every component. The rotation and translation between the CAD object of the chassis and the propeller can be set up by modifying the r_Shape and lengthDirection parameters.
This model contains a frame connected to the quadrotor body case (chassis) center of the mass and four other frames connected to the propulsion system in which the forces and torques of each propulsion system are mounted.
quadrotorMass |
Value: body1.m + body2.m + body3.m + body4.m + bodyCenter.m Type: Mass (kg) Description: Total mass of the quadrotor |
---|---|
centralMass |
Value: 0.38 Type: Mass (kg) Description: Mass of rigid body (bodyCenter.m) |
propulsionMass |
Value: 0.01 Type: Mass (kg) Description: Mass of each propulsion system |
IxxC |
Value: 0.01 Type: Inertia (kg⋅m²) Description: Moment of inertia of the central mass of the quadrotor around x axis |
IyyC |
Value: 0.01 Type: Inertia (kg⋅m²) Description: Moment of inertia of the central mass of the quadrotor around y axis |
IzzC |
Value: 0.01 Type: Inertia (kg⋅m²) Description: Moment of inertia of the central mass of the quadrotor around z axis |
IxxP |
Value: 0.001 Type: Inertia (kg⋅m²) Description: Moment of inertia of each propulsion system around x axis |
IyyP |
Value: 0.001 Type: Inertia (kg⋅m²) Description: Moment of inertia of each propulsion system around y axis |
IzzP |
Value: 0.001 Type: Inertia (kg⋅m²) Description: Moment of inertia of each propulsion system around z axis |
armLength |
Value: 0.192 Type: Real Description: Arm length of the quadrotor |
CADpath |
Value: "modelica://Aircraft/ResourcesRotarywing/CAD/Body.obj" Type: String Description: Path for CAD file |
![]() |
propulsion1 |
Type: Frame_a Description: First propulsion system reference frame |
---|---|---|
![]() |
propulsion3 |
Type: Frame_a Description: Third propulsion system reference frame |
![]() |
propulsion2 |
Type: Frame_a Description: Second propulsion system reference frame |
![]() |
center |
Type: Frame_b Description: Center of the quadrotor |
![]() |
propulsion4 |
Type: Frame_a Description: Fourth propulsion system reference frame |
![]() |
arm1 |
Type: FixedTranslation Description: Arm connecting the body center to the first propulsion system |
---|---|---|
![]() |
arm3 |
Type: FixedTranslation Description: Arm connecting the body center to the third propulsion system |
![]() |
arm2 |
Type: FixedTranslation Description: Arm connecting the body center to the second propulsion system |
![]() |
arm4 |
Type: FixedTranslation Description: Arm connecting the body center to the fourth propulsion system |
![]() |
body2 |
Type: Body Description: Second propulsion system body |
![]() |
body3 |
Type: Body Description: Third propulsion system body |
![]() |
body1 |
Type: Body Description: First propulsion system body |
![]() |
body4 |
Type: Body Description: Fourth propulsion system body |
![]() |
bodyCenter |
Type: Body Description: Quadrotor central body |
![]() |
cadShape |
Type: FixedShape Description: CAD shape of quadrotor |
![]() |
Aircraft.Physical.RotaryWing.MultiRotor Interface for the complete quadrotor model |