Modelica_Magnetic.Utilities

Miscellaneous model components for modelling of actuators

Package Content

NameDescription
TemperatureCoefficient  
Modelica_Magnetic.Utilities.TranslatoryStopper TranslatoryStopper Translatory, nonlinear spring/damper combination with free travel for modelling of impact, e.g. at a stopper
Modelica_Magnetic.Utilities.TranslatoryArmature TranslatoryArmature Mass with free travel between two stoppers
Modelica_Magnetic.Utilities.VariableGain VariableGain Gain block with variable gain


Modelica_Magnetic.Utilities.TemperatureCoefficient

Modelica definition

type TemperatureCoefficient = Real (final quantity="TemperatureCoefficient", final unit
      =                                                                                 "1/K");

Modelica_Magnetic.Utilities.TranslatoryStopper Modelica_Magnetic.Utilities.TranslatoryStopper

Translatory, nonlinear spring/damper combination with free travel for modelling of impact, e.g. at a stopper

Modelica_Magnetic.Utilities.TranslatoryStopper

Information


This component is intended for modelling of impact between a stopper and a freely travelling translatory mass. It is similar to Modelica.Mechanics.Translational.ElastoGap, but the force during contact of the impact partners is calculated differently. Kinetic energy is dissipated in a damper only during collision of the two impact partners, but not if they move away from each other. Also, as penetration depth increases, the force increases non-linearly.


Parameters

TypeNameDefaultDescription
Realc1e6Spring stiffness between impact partners [N/m]
Reald2e2Damping coefficient between impact partners [N/ (m/s)]
Lengths_n1e-5Normalized penetration depth of impact partners [m]
Realn1Exponent for force function (n >= 1)

Modelica definition

class TranslatoryStopper 
  "Translatory, nonlinear spring/damper combination with free travel for modelling of impact, e.g. at a stopper" 
  
  extends Modelica.Mechanics.Translational.Interfaces.Compliant;
  parameter Real c(
    final unit="N/m",
    final min=0) = 1e6 "Spring stiffness between impact partners";
  parameter Real d(
    final unit="N/ (m/s)",
    final min=0) = 2e2 "Damping coefficient between impact partners";
  SI.Velocity v_rel "Relative velocity between impact partners";
  Boolean Contact "False, if s_rel > 0";
  parameter SI.Length s_n=1e-5 
    "Normalized penetration depth of impact partners";
  parameter Real n=1 "Exponent for force function (n >= 1)";
  SI.Velocity delta_v "Relative velocity";
equation 
  
  v_rel = der(s_rel);
  Contact = s_rel < 0;
  delta_v = if (v_rel < 0) then v_rel else 0;
  f = if Contact then (c*s_rel + d*delta_v) * (abs(s_rel)/s_n)^n else 0;
end TranslatoryStopper;

Modelica_Magnetic.Utilities.TranslatoryArmature Modelica_Magnetic.Utilities.TranslatoryArmature

Mass with free travel between two stoppers

Modelica_Magnetic.Utilities.TranslatoryArmature

Information


In translatory actuators with limited stroke, the armature with its inertia can travel between two stoppers.


Parameters

TypeNameDefaultDescription
Massm1Armature mass [kg]
Positionx_max10e-3Position of stopper at maximum armature position [m]
Positionx_min0Position of stopper at minimum armature position [m]

Connectors

TypeNameDescription
Flange_aflange_a 
Flange_bflange_b 

Modelica definition

model TranslatoryArmature 
  "Mass with free travel between two stoppers" 
  
  parameter SI.Mass m=1 "Armature mass";
  parameter SI.Position x_max=10e-3 
    "Position of stopper at maximum armature position";
  parameter SI.Position x_min=0 
    "Position of stopper at minimum armature position";
  Modelica.Mechanics.Translational.SlidingMass mass(m=m);
  Modelica.Mechanics.Translational.Interfaces.Flange_a flange_a;
  Modelica.Mechanics.Translational.Interfaces.Flange_b flange_b;
  Modelica.Mechanics.Translational.Fixed limit_xMin(s0=x_min);
  Modelica.Mechanics.Translational.Fixed limit_xMax(s0=x_max);
  Modelica_Magnetic.Utilities.TranslatoryStopper stopper_xMax;
  Modelica_Magnetic.Utilities.TranslatoryStopper stopper_xMin;
  
equation 
  connect(mass.flange_a, stopper_xMin.flange_b);
  connect(limit_xMax.flange_b,stopper_xMax. flange_b);
  connect(stopper_xMax.flange_a, mass.flange_b);
  connect(mass.flange_a, flange_a);
  connect(limit_xMin.flange_b, stopper_xMin.flange_a);
  connect(flange_b, mass.flange_b);
end TranslatoryArmature;

Modelica_Magnetic.Utilities.VariableGain Modelica_Magnetic.Utilities.VariableGain

Gain block with variable gain

Modelica_Magnetic.Utilities.VariableGain

Information


This component is similar to Modelica.Blocks.Math.Gain. However, gain k is not a parameter here and thus has a higher variability. The output y is computed as product of gain k and input u:

    y = k * u;


Connectors

TypeNameDescription
input RealInputuInput signal connector
output RealOutputyOutput signal connector
input RealInputkVariable gain

Modelica definition

block VariableGain "Gain block with variable gain" 
  
public 
  Modelica.Blocks.Interfaces.RealInput u "Input signal connector";
  Modelica.Blocks.Interfaces.RealOutput y "Output signal connector";
  Modelica.Blocks.Interfaces.RealInput k "Variable gain";
equation 
  y = k*u;
end VariableGain;

HTML-documentation generated by Dymola Thu Oct 11 17:08:26 2007.