forked from modelica/ModelicaStandardLibrary
-
Notifications
You must be signed in to change notification settings - Fork 0
/
EddyCurrentBrake.mo
41 lines (41 loc) · 1.84 KB
/
EddyCurrentBrake.mo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
within Modelica.Mechanics.Translational.Examples;
model EddyCurrentBrake "Demonstrate the usage of the translational eddy current brake"
extends Modelica.Icons.Example;
Modelica.Mechanics.Translational.Sources.EddyCurrentForce
eddyCurrentForce(
useExcitationInput=true,
f_nominal=100,
v_nominal=10,
useHeatPort=true,
TRef=293.15,
alpha20(displayUnit="1/K") = Modelica.Electrical.Machines.Thermal.Constants.alpha20Copper)
annotation (Placement(transformation(extent={{-10,-10},{10,10}})));
Modelica.Mechanics.Translational.Components.Mass mass(
m=1,
s(fixed=true, start=0),
v(fixed=true, start=20))
annotation (Placement(transformation(extent={{20,-10},{40,10}})));
Modelica.Thermal.HeatTransfer.Components.HeatCapacitor heatCapacitor(C=1, T(
fixed=true)) annotation (Placement(transformation(
extent={{-10,-10},{10,10}},
rotation=180,
origin={-10,-30})));
Blocks.Sources.Ramp ramp(
height=1,
duration=0.1,
offset=0,
startTime=0.1)
annotation (Placement(transformation(extent={{-50,-10},{-30,10}})));
equation
connect(eddyCurrentForce.flange, mass.flange_a)
annotation (Line(points={{10,0},{20,0}}, color={0,127,0}));
connect(eddyCurrentForce.heatPort, heatCapacitor.port) annotation (Line(
points={{-10,-10},{-10,-15},{-10,-20}}, color={191,0,0}));
connect(ramp.y, eddyCurrentForce.excitation)
annotation (Line(points={{-29,0},{-12,0}}, color={0,0,127}));
annotation (
experiment(StopTime=1.0, Interval=0.001),
Documentation(info="<html>
An eddy current brake reduces the speed of a moving mass. Kinetic energy is converted to thermal energy which leads to a temperature increase of the thermal capacitance of the brake, which can be assumed as adiabatic during the rather short time span of the braking.
</html>"));
end EddyCurrentBrake;