modelSphericalSpring
Spherical joint (3 constraints and no potential states, or 3 degrees-of-freedom and 3 states)
Extends from Modelica.Mechanics.MultiBody.Interfaces.PartialTwoFrames (Base model for components providing two frame connectors + outer world + assert to guarantee that the component is connected).
Information
Attribution Notice
This model is an extension of the Spherical block in the Mechanics.MultiBody.Joints package
of the Modelica Standard Library
Copyright © 1998-2016, Modelica Association and DLR.
Block for modeling a spherical joint with torsional stiffness in each direction. The torsional stiffness of this joint in all three directions is determined by the constant c.
Copyright © 2018
ATA ENGINEERING, INC.
ALL RIGHTS RESERVED
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| SI.TranslationalSpringConstant | c | Spring constants {rx,ry,rz} | |
| Boolean | animation | false | = true, if animation shall be enabled (show sphere) |
| Frames.Orientation | R_rel_start | Frames.axesRotations(sequence_start, angles_start, zeros(3)) | Orientation object from frame_a to frame_b at initial time |
| SI.Angle[3] | phi_start | if sequence_start[1] == sequence_angleStates[1] and sequence_start[2] == sequence_angleStates[2] and sequence_start[3] == sequence_angleStates[3] then angles_start else Frames.axesRotationsAngles(R_rel_start, sequence_angleStates) | Potential angle states at initial time |
| if animation = true | |||
| SI.Distance | sphereDiameter | world.defaultJointLength | Diameter of sphere representing the spherical joint |
| Initialization | |||
| Boolean | angles_fixed | false | = true, if angles_start are used as initial values, else as guess values |
| SI.Angle[3] | angles_start | {0, 0, 0} | Initial values of angles to rotate frame_a around 'sequence_start' axes into frame_b |
| Types.RotationSequence | sequence_start | {1, 2, 3} | Sequence of rotations to rotate frame_a into frame_b at initial time |
| Boolean | w_rel_a_fixed | false | = true, if w_rel_a_start are used as initial values, else as guess values |
| SI.AngularVelocity[3] | w_rel_a_start | {0, 0, 0} | Initial values of angular velocity of frame_b with respect to frame_a, resolved in frame_a |
| Boolean | z_rel_a_fixed | false | = true, if z_rel_a_start are used as initial values, else as guess values |
| SI.AngularAcceleration[3] | z_rel_a_start | {0, 0, 0} | Initial values of angular acceleration z_rel_a = der(w_rel_a) |
| Advanced | |||
| Types.RotationSequence | sequence_angleStates | {1, 2, 3} | Sequence of rotations to rotate frame_a into frame_b around the 3 angles used as states |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Interfaces.Frame_a | frame_a (from PartialTwoFrames) | Coordinate system a fixed to the component with one cut-force and cut-torque | |
| Interfaces.Frame_b | frame_b (from PartialTwoFrames) | Coordinate system b fixed to the component with one cut-force and cut-torque |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Types.Color | sphereColor | Modelica.Mechanics.MultiBody.Types.Defaults.JointColor | Color of sphere representing the spherical joint |
| Types.SpecularCoefficient | specularCoefficient | world.defaultSpecularCoefficient | Reflection of ambient light (= 0: light is completely absorbed) |
| SI.Angle[3] | phi | Dummy or 3 angles to rotate frame_a into frame_b | |
| SI.AngularVelocity[3] | phi_d | = der(phi) | |
| SI.AngularAcceleration[3] | phi_dd | = der(phi_d) | |
| SI.AngularVelocity[3] | w_rel | Dummy or relative angular velocity of frame_b with respect to frame_a, resolved in frame_b |