Modelica.Mechanics.Translational.Examples.Utilities

Utility classes used by the Example models

Information


Utility models and functions used in the Examples

Extends from Modelica.Icons.Package (Icon for standard packages).

Package Content

NameDescription
Modelica.Mechanics.Translational.Examples.Utilities.GenerateStribeckFrictionTable GenerateStribeckFrictionTable Generate stribeck friction table for example Friction for the SupportFriction


Modelica.Mechanics.Translational.Examples.Utilities.GenerateStribeckFrictionTable

Generate stribeck friction table for example Friction for the SupportFriction

Information


Returns a table with the friction characteristic table[nTable,2] = [0, f1; ....; v_max, fn], where the first column is the velocity v in the range 0..v_max and the second column is the friction force according to the stribeck curve:

  F_Coulomb + F_prop*v + F_Stribeck*exp(-fexp*v);

Inputs

TypeNameDefaultDescription
RealF_prop Velocity dependent friction coefficient [N.s/m]
ForceF_Coulomb Constant friction: Coulomb force [N]
ForceF_Stribeck Stribeck effect [N]
Realfexp Exponential decay [s/m]
Realv_max Generate table from v=0 ... v_max
IntegernTable100Number of table points

Outputs

TypeNameDescription
Realtable[nTable, 2]Friction table

Modelica definition

function GenerateStribeckFrictionTable 
  "Generate stribeck friction table for example Friction for the SupportFriction"
   input Real F_prop(final unit="N.s/m", final min=0) 
    "Velocity dependent friction coefficient";
   input Modelica.SIunits.Force F_Coulomb "Constant friction: Coulomb force";
   input Modelica.SIunits.Force F_Stribeck "Stribeck effect";
   input Real fexp(final unit="s/m", final min=0) "Exponential decay";
   input Real v_max "Generate table from v=0 ... v_max";
   input Integer nTable(min=2)=100 "Number of table points";
   output Real table[nTable,2] "Friction table";
algorithm 
   for i in 1:nTable loop
      table[i,1] :=v_max*(i - 1)/(nTable - 1);
      table[i,2] :=F_Coulomb + F_prop*table[i, 1] +
                   F_Stribeck*exp(-fexp*table[i, 1]);
   end for;
end GenerateStribeckFrictionTable;

Automatically generated Fri Nov 12 16:30:50 2010.