AIDA is a study case for model based system engineering, made by MOISE project. This project contains the simulation model of AIDA (made with SimulationX in Modelica)
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

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;