You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
3.2 KiB
41 lines
3.2 KiB
within AIDAModelica; |
|
|
|
model ComputeDroneAngularsVelocities "[SimuD4 DM] Compute drone angulars velocities" |
|
// CP: 65001 |
|
// SimulationX Version: 3.8.2.45319 |
|
Modelica.Blocks.Interfaces.RealInput Moments[3](quantity = "Mechanics.Rotation.Torque", displayUnit = "Nm") "'input Real' as connector" annotation( |
|
Placement(transformation(extent = {{-120, 20}, {-80, 60}}), iconTransformation(extent = {{-95, -20}, {-55, 20}}))); |
|
Modelica.Blocks.Interfaces.RealOutput DroneAngularVelocities[3](quantity = "Mechanics.Translation.Velocity", displayUnit = "m/s") "'output Real' as connector" annotation( |
|
Placement(transformation(extent = {{90, 30}, {110, 50}}), iconTransformation(extent = {{61.7, -10}, {81.7, 10}}))); |
|
ComputationAngularAccelerationModel computationAngularAccelerationModel1 annotation( |
|
Placement(transformation(extent = {{-40, 35}, {-25, 45}}))); |
|
Modelica.Blocks.Continuous.Integrator integrator1 annotation( |
|
Placement(transformation(extent = {{40, 60}, {60, 80}}))); |
|
Modelica.Blocks.Continuous.Integrator integrator2 annotation( |
|
Placement(transformation(extent = {{40, 30}, {60, 50}}))); |
|
Modelica.Blocks.Continuous.Integrator integrator3 annotation( |
|
Placement(transformation(extent = {{40, 0}, {60, 20}}))); |
|
equation |
|
connect(computationAngularAccelerationModel1.Moments[:], Moments[:]) annotation( |
|
Line(points = {{-40, 40}, {-45, 40}, {-95, 40}, {-100, 40}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
connect(integrator1.u, computationAngularAccelerationModel1.DroneAngularAcceleration[1]) annotation( |
|
Line(points = {{38, 70}, {33, 70}, {-20.3, 70}, {-20.3, 40}, {-25.3, 40}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
connect(integrator2.u, computationAngularAccelerationModel1.DroneAngularAcceleration[2]) annotation( |
|
Line(points = {{38, 40}, {33, 40}, {-20.3, 40}, {-25.3, 40}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
connect(integrator3.u, computationAngularAccelerationModel1.DroneAngularAcceleration[3]) annotation( |
|
Line(points = {{38, 10}, {33, 10}, {-20.3, 10}, {-20.3, 40.3}, {-25.3, 40.3}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
connect(integrator1.y, DroneAngularVelocities[1]) annotation( |
|
Line(points = {{61, 70}, {66, 70}, {95, 70}, {95, 40}, {100, 40}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
connect(integrator2.y, DroneAngularVelocities[2]) annotation( |
|
Line(points = {{61, 40}, {66, 40}, {95, 40}, {100, 40}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
connect(integrator3.y, DroneAngularVelocities[3]) annotation( |
|
Line(points = {{61, 10}, {66, 10}, {95, 10}, {95, 40}, {100, 40}}, color = {0, 0, 127}, thickness = 0.0625)); |
|
annotation( |
|
Moments(flags = 2), |
|
DroneAngularVelocities(flags = 2), |
|
integrator1(u(flags = 2), y(flags = 2)), |
|
integrator2(u(flags = 2), y(flags = 2)), |
|
integrator3(u(flags = 2), y(flags = 2)), |
|
Icon(coordinateSystem(extent = {{-75, -50}, {75, 50}}, initialScale = 0.1), graphics = {Rectangle(fillColor = {255, 255, 255}, fillPattern = FillPattern.Solid, extent = {{-76.7, 50}, {76.7, -50}}), Text(origin = {-13, 4}, extent = {{-13, 4}, {13, -4}}, textString = "%name")}), |
|
experiment(StopTime = 1, StartTime = 0, Interval = 0.001)); |
|
end ComputeDroneAngularsVelocities;
|
|
|