LIBRARY
PlanarMechanics.CentrifugalTest
Centrifugal acceleration test: a body on a rotating arm with an AbsoluteVelocity sensor.
Translates the "AbsoluteAccCentrifugal" test from test_PlanarMechanics.jl. A body of mass 1 is attached via a 10m arm to a revolute joint spinning at w=10 rad/s with no gravity. The sensor measures absolute velocity in the world frame.
Usage
MultibodyComponents.PlanarMechanics.CentrifugalTest()
Behavior
Source
dyad
"""
Centrifugal acceleration test: a body on a rotating arm with an AbsoluteVelocity sensor.
Translates the "AbsoluteAccCentrifugal" test from test_PlanarMechanics.jl.
A body of mass 1 is attached via a 10m arm to a revolute joint spinning at w=10 rad/s
with no gravity. The sensor measures absolute velocity in the world frame.
"""
test component CentrifugalTest
world = World(g = 0) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 90, "y1": 450, "x2": 190, "y2": 550, "rot": 0}
},
"tags": []
}
}
revolute = Revolute() {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 230, "y1": 450, "x2": 330, "y2": 550, "rot": 0}
},
"tags": []
}
}
rod = FixedTranslation(r = [10.0, 0.0]) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 390, "y1": 450, "x2": 490, "y2": 550, "rot": 0}
},
"tags": []
}
}
body = Body(m = 1.0, I = 0.1) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 530, "y1": 450, "x2": 630, "y2": 550, "rot": 0}
},
"tags": []
}
}
abs_v_sensor = AbsoluteVelocity(resolve_in_frame = ResolveInFrame.World()) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 790, "y1": 450, "x2": 890, "y2": 550, "rot": 0}
},
"tags": []
}
}
relations
initial revolute.phi = 0.0
initial revolute.w = 10.0
connect(world.frame_b, revolute.frame_a) {"Dyad": {"edges": [{"S": 1, "M": [], "E": 2}], "renderStyle": "standard"}}
connect(revolute.frame_b, rod.frame_a) {"Dyad": {"edges": [{"S": 1, "M": [], "E": 2}], "renderStyle": "standard"}}
connect(rod.frame_b, body.frame_a)
connect(body.frame_a, abs_v_sensor.frame_a)
metadata {"Dyad": {"tests": {"case1": {"stop": 3}}}}
endFlattened Source
dyad
"""
Centrifugal acceleration test: a body on a rotating arm with an AbsoluteVelocity sensor.
Translates the "AbsoluteAccCentrifugal" test from test_PlanarMechanics.jl.
A body of mass 1 is attached via a 10m arm to a revolute joint spinning at w=10 rad/s
with no gravity. The sensor measures absolute velocity in the world frame.
"""
test component CentrifugalTest
world = World(g = 0) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 90, "y1": 450, "x2": 190, "y2": 550, "rot": 0}
},
"tags": []
}
}
revolute = Revolute() {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 230, "y1": 450, "x2": 330, "y2": 550, "rot": 0}
},
"tags": []
}
}
rod = FixedTranslation(r = [10.0, 0.0]) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 390, "y1": 450, "x2": 490, "y2": 550, "rot": 0}
},
"tags": []
}
}
body = Body(m = 1.0, I = 0.1) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 530, "y1": 450, "x2": 630, "y2": 550, "rot": 0}
},
"tags": []
}
}
abs_v_sensor = AbsoluteVelocity(resolve_in_frame = ResolveInFrame.World()) {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 790, "y1": 450, "x2": 890, "y2": 550, "rot": 0}
},
"tags": []
}
}
relations
initial revolute.phi = 0.0
initial revolute.w = 10.0
connect(world.frame_b, revolute.frame_a) {"Dyad": {"edges": [{"S": 1, "M": [], "E": 2}], "renderStyle": "standard"}}
connect(revolute.frame_b, rod.frame_a) {"Dyad": {"edges": [{"S": 1, "M": [], "E": 2}], "renderStyle": "standard"}}
connect(rod.frame_b, body.frame_a)
connect(body.frame_a, abs_v_sensor.frame_a)
metadata {"Dyad": {"tests": {"case1": {"stop": 3}}}}
endTest Cases
Test Case case1
Related
Examples
Experiments
Analyses
Tests