Skip to content
LIBRARY
Sources.Accelerate.md

Sources.Accelerate

Forced movement of a flange according to an acceleration signal.

The input signal a_ref in [m/s²] moves the 1D translational flange with a predefined acceleration. The velocity and position of the flange are determined by integration:

v=fracdsdta=fracdvdta=aref

This component extends from TranslationalComponents.Interfaces.PartialElementaryOneFlangeAndSupport2

Usage

TranslationalComponents.Sources.Accelerate()

Connectors

  • flange - This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange)

  • support - This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange)

  • a_ref - This connector represents a real signal as an input to a component (RealInput)

Variables

NameDescriptionUnits
sDistance between flange and support (= flange.s - support.s)m
vVelocity of flange with respect to supportm/s
aAcceleration of flange with respect to supportm/s2

Behavior

julia
using TranslationalComponents #hide
using ModelingToolkit #hide
@named sys = TranslationalComponents.Sources.Accelerate() #hide
full_equations(sys) #hide
<< @example-block not executed in draft mode >>

Source

dyad
"""
Forced movement of a flange according to an acceleration signal.

The input signal `a_ref` in [m/s²] moves the 1D translational flange with a predefined
acceleration. The velocity and position of the flange are determined by integration:
```math
v = \\frac{ds}{dt}
```
```math
a = \\frac{dv}{dt}
```
```math
a = a_{ref}
```
"""
component Accelerate
  extends TranslationalComponents.Interfaces.PartialElementaryOneFlangeAndSupport2(s(statePriority = 50) = missing initial 0.0)
  "Absolute acceleration of flange as input signal"
  a_ref = RealInput(units = "m/s2") {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
  "Velocity of flange with respect to support"
  variable v::Velocity(statePriority = 50) = initial 0.0
  "Acceleration of flange with respect to support"
  variable a::Acceleration
relations
  v = der(s)
  a = der(v)
  a = a_ref
metadata {
  "Dyad": {"icons": {"default": "dyad://TranslationalComponents/Accelerate.svg"}}
}
end
Flattened Source
dyad
"""
Forced movement of a flange according to an acceleration signal.

The input signal `a_ref` in [m/s²] moves the 1D translational flange with a predefined
acceleration. The velocity and position of the flange are determined by integration:
```math
v = \\frac{ds}{dt}
```
```math
a = \\frac{dv}{dt}
```
```math
a = a_{ref}
```
"""
component Accelerate
  "Flange of component"
  flange = Flange() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
  "Support/housing of component"
  support = Flange() {"Dyad": {"placement": {"icon": {"x1": 450, "y1": 950, "x2": 550, "y2": 1050}}}}
  "Distance between flange and support (= flange.s - support.s)"
  variable s::Length
  "Absolute acceleration of flange as input signal"
  a_ref = RealInput(units = "m/s2") {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
  "Velocity of flange with respect to support"
  variable v::Velocity(statePriority = 50) = initial 0.0
  "Acceleration of flange with respect to support"
  variable a::Acceleration
relations
  s = flange.s - support.s
  support.f = -flange.f
  v = der(s)
  a = der(v)
  a = a_ref
metadata {
  "Dyad": {"icons": {"default": "dyad://TranslationalComponents/Accelerate.svg"}}
}
end


Test Cases

No test cases defined.