Skip to content

Commit 002b4d8

Browse files
committed
upgraded to MSL 4.1.0
1 parent 6a9c49f commit 002b4d8

21 files changed

+190
-138
lines changed

DriveControl/Blocks/LimPI.mo

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ block LimPI "limited PI-controller with anti-windup and feedforward"
55
import Modelica.Constants.inf;
66
parameter Boolean useI=true "PI else P" annotation(Evaluate=true);
77
parameter Real k(unit="1")=1 "Gain";
8-
parameter Modelica.SIunits.Time T(min=Modelica.Constants.small)=1
9-
"Time Constant (T>0 required)" annotation(Dialog(enable=useI));
8+
parameter Modelica.Units.SI.Time T(min=Modelica.Constants.small) = 1
9+
"Time Constant (T>0 required)" annotation (Dialog(enable=useI));
1010
parameter Boolean FeedForward=true "Use FeedForward?"
1111
annotation(Dialog(group="FeedForward"), Evaluate=true);
1212
parameter Real kFF(unit="1")=1 "FeedForward gain"

DriveControl/Blocks/P2p.mo

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ block P2p "Movement point-to-point"
99
extent={{-10,-10},{10,10}},
1010
rotation=270,
1111
origin={0,-110})));
12-
parameter Modelica.SIunits.Time t0=0 "Movement starts t0 after start of simulation";
12+
parameter Modelica.Units.SI.Time t0=0
13+
"Movement starts t0 after start of simulation";
1314
parameter Real yIni=0 "Initial position (at start of simulation)";
1415
parameter Real yEnd "Desired end position";
1516
parameter Real vIni(final min=vMin, final max=vMax)=0 "Initial speed [vMin..vMax] 1/s";
@@ -19,10 +20,11 @@ block P2p "Movement point-to-point"
1920
parameter Real aMax(min= small) "Maximum positive acceleration [+small..+inf) 1/s2";
2021
parameter Real aMin(max=-small)=-aMax "Maximum negative acceleration (-inf..-small] 1/s2";
2122
protected
22-
parameter Modelica.SIunits.Time tS(fixed=false) "Start time of simulation";
23-
parameter Modelica.SIunits.Time tA(fixed=false) "Time span of accelecration";
24-
parameter Modelica.SIunits.Time tC(fixed=false) "Time span of constant speed";
25-
parameter Modelica.SIunits.Time tD(fixed=false) "Time span of deceleration";
23+
parameter Modelica.Units.SI.Time tS(fixed=false) "Start time of simulation";
24+
parameter Modelica.Units.SI.Time tA(fixed=false) "Time span of accelecration";
25+
parameter Modelica.Units.SI.Time tC(fixed=false)
26+
"Time span of constant speed";
27+
parameter Modelica.Units.SI.Time tD(fixed=false) "Time span of deceleration";
2628
parameter Real y0 = yIni + vIni*t0 "Position when movement starts";
2729
parameter Real vLim(fixed=false) "Speed limit depending on direction of movement";
2830
parameter Real aA = if yEnd>y0 then aMax elseif yEnd<y0 then aMin else 0 "Acceleration";

DriveControl/Blocks/PositionController.mo

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ block PositionController "Position controller"
1212
k=kTune*data.kpP));
1313
parameter Real kFF_Speed=0 "Feed-forward of speed"
1414
annotation(Dialog(group="Advanced"));
15-
parameter Modelica.SIunits.Angle phi0=0 "Initial position"
16-
annotation(Dialog(group="Advanced"));
15+
parameter Modelica.Units.SI.Angle phi0=0 "Initial position"
16+
annotation (Dialog(group="Advanced"));
1717
Modelica.Blocks.Continuous.Der w
1818
annotation (Placement(transformation(extent={{-40,-60},{-20,-40}})));
1919
equation

DriveControl/Blocks/SlewRateLimiter.mo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ block SlewRateLimiter "Limits the slew rate of a signal"
77
"Maximum rising slew rate [+small..+inf) 1/s";
88
parameter Real Falling(max=-small) = -Rising
99
"Maximum falling slew rate (-inf..-small] 1/s";
10-
parameter Modelica.SIunits.Time Td(min=small) = 1e-6
10+
parameter Modelica.Units.SI.Time Td(min=small) = 1e-6
1111
"Derivative time constant";
1212
parameter Modelica.Blocks.Types.Init initType=Modelica.Blocks.Types.Init.SteadyState
1313
"Type of initialization (SteadyState implies y = u)"

DriveControl/Blocks/SpeedController.mo

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@ block SpeedController "Speed controller"
1313
k=kTune*data.kpW));
1414
parameter Real kFF_Acceleration=0 "Feed-forward of acceleration"
1515
annotation(Dialog(group="Advanced"));
16-
parameter Modelica.SIunits.AngularVelocity w0=0 "Initial speed"
17-
annotation(Dialog(group="Advanced"));
18-
parameter Modelica.SIunits.Time Td=1e-6 "Derivative time constant of slewRateLimiter"
19-
annotation(Dialog(group="Advanced"));
16+
parameter Modelica.Units.SI.AngularVelocity w0=0 "Initial speed"
17+
annotation (Dialog(group="Advanced"));
18+
parameter Modelica.Units.SI.Time Td=1e-6
19+
"Derivative time constant of slewRateLimiter"
20+
annotation (Dialog(group="Advanced"));
2021
SlewRateLimiter slewRateLimiter(
2122
Rising=data.aMax,
2223
Falling=-data.aMax,

DriveControl/Blocks/SpeedDependentTorque.mo

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,15 @@ within DriveControl.Blocks;
22
block SpeedDependentTorque "Load torque dependent on speed"
33
extends Modelica.Blocks.Interfaces.SISO;
44
parameter DriveControl.Types.SpeedDependency speedDependency=DriveControl.Types.SpeedDependency.Linear "Speed dependency of torque";
5-
parameter Modelica.SIunits.Torque tauN "Nominal torque at nominal speed";
6-
parameter Modelica.SIunits.AngularVelocity wN(displayUnit="rpm")=1 "Nominal speed"
7-
annotation(Dialog(enable=(speedDependency==DriveControl.Types.SpeedDependency.Linear or speedDependency==DriveControl.Types.SpeedDependency.Quadratic)));
8-
parameter Modelica.SIunits.AngularVelocity w0(displayUnit="rpm")=1e-3 "Minimum speed for regularization"
9-
annotation(Dialog(enable=speedDependency==DriveControl.Types.SpeedDependency.Constant, tab="Advanced"));
10-
parameter Modelica.SIunits.Time startTime=0 "Start time";
5+
parameter Modelica.Units.SI.Torque tauN "Nominal torque at nominal speed";
6+
parameter Modelica.Units.SI.AngularVelocity wN(displayUnit="rpm") = 1
7+
"Nominal speed" annotation (Dialog(enable=(speedDependency == DriveControl.Types.SpeedDependency.Linear
8+
or speedDependency == DriveControl.Types.SpeedDependency.Quadratic)));
9+
parameter Modelica.Units.SI.AngularVelocity w0(displayUnit="rpm") = 1e-3
10+
"Minimum speed for regularization" annotation (Dialog(enable=
11+
speedDependency == DriveControl.Types.SpeedDependency.Constant, tab=
12+
"Advanced"));
13+
parameter Modelica.Units.SI.Time startTime=0 "Start time";
1114
equation
1215
y = (if time<startTime then 0 else 1)*tauN*(
1316
if speedDependency==DriveControl.Types.SpeedDependency.Quadratic then smooth(1, if u>=0 then (u/wN)^2 else -(u/wN)^2)

DriveControl/Components/DcDcHbridge.mo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ model DcDcHbridge "DC/DC H-bridge"
66
Modelica.Electrical.PowerConverters.DCDC.Control.SignalPWM signalPWM(
77
useConstantDutyCycle=false, f=data.fS)
88
annotation (Placement(transformation(extent={{-10,10},{10,30}})));
9-
Modelica.Electrical.PowerConverters.DCDC.Control.VoltageToDutyCycle
9+
ObsoleteModelica4.Electrical.PowerConverters.DCDC.Control.VoltageToDutyCycle
1010
voltageToDutyCycle(vMax=data.VMax) annotation (Placement(transformation(
1111
extent={{-10,-10},{10,10}},
1212
rotation=90,

DriveControl/Components/IdealDcDcInverter.mo

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
within DriveControl.Components;
22
model IdealDcDcInverter "Ideal DC/DC inverter"
33
extends DriveControl.Interfaces.PartialDcDcInverter;
4-
parameter Modelica.SIunits.Time Ti=1e-6 "Integral time constant of power balance";
4+
parameter Modelica.Units.SI.Time Ti=1e-6
5+
"Integral time constant of power balance";
56
Modelica.Electrical.Analog.Sensors.PowerSensor powerSensor1 annotation (
67
Placement(transformation(
78
extent={{-10,-10},{10,10}},

DriveControl/Components/IdealMotor.mo

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ model IdealMotor "Ideal DC motor"
1010
annotation (Placement(transformation(extent={{10,-10},{-10,10}},
1111
rotation=0,
1212
origin={20,30})));
13-
Modelica.Electrical.Analog.Basic.EMF emf(final useSupport=true, k=data.kPhi)
13+
Modelica.Electrical.Analog.Basic.RotationalEMF emf(final useSupport=true, k=
14+
data.kPhi)
1415
annotation (Placement(transformation(extent={{0,-10},{20,10}})));
1516
equation
1617
connect(ra.n, la.p)

DriveControl/Components/Load.mo

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,16 @@ within DriveControl.Components;
22
model Load "Mechanical load model"
33
extends Modelica.Mechanics.Rotational.Interfaces.PartialOneFlangeAndSupport;
44
parameter DriveControl.Types.SpeedDependency speedDependency=DriveControl.Types.SpeedDependency.Linear "Speed dependency of torque";
5-
parameter Modelica.SIunits.Torque tauN "Nominal torque at nominal speed";
6-
parameter Modelica.SIunits.AngularVelocity wN(displayUnit="rpm")=1 "Nominal speed"
7-
annotation(Dialog(enable=(speedDependency==DriveControl.Types.SpeedDependency.Linear or speedDependency==DriveControl.Types.SpeedDependency.Quadratic)));
8-
parameter Modelica.SIunits.AngularVelocity w0(displayUnit="rpm")=1e-3 "Minimum speed for regularization"
9-
annotation(Dialog(enable=speedDependency==DriveControl.Types.SpeedDependency.Constant, tab="Advanced"));
10-
parameter Modelica.SIunits.Time startTime=0 "Start time";
11-
parameter Modelica.SIunits.Inertia JL "Moment of inertia";
5+
parameter Modelica.Units.SI.Torque tauN "Nominal torque at nominal speed";
6+
parameter Modelica.Units.SI.AngularVelocity wN(displayUnit="rpm") = 1
7+
"Nominal speed" annotation (Dialog(enable=(speedDependency == DriveControl.Types.SpeedDependency.Linear
8+
or speedDependency == DriveControl.Types.SpeedDependency.Quadratic)));
9+
parameter Modelica.Units.SI.AngularVelocity w0(displayUnit="rpm") = 1e-3
10+
"Minimum speed for regularization" annotation (Dialog(enable=
11+
speedDependency == DriveControl.Types.SpeedDependency.Constant, tab=
12+
"Advanced"));
13+
parameter Modelica.Units.SI.Time startTime=0 "Start time";
14+
parameter Modelica.Units.SI.Inertia JL "Moment of inertia";
1215
Blocks.SpeedDependentTorque speedDependentTorque(
1316
final speedDependency=speedDependency,
1417
final tauN=-tauN,

0 commit comments

Comments
 (0)