This information is part of the Modelica Standard Library maintained by the Modelica Association.

# Spherical

Spherical joint (3 constraints and no potential states, or 3 degrees-of-freedom and 3 states)

CONNECTORS

CLOSE ALL
Name | Type | Description | |
---|---|---|---|

frame_a | Frame_a | Coordinate system fixed to the component with one cut-force and cut-torque | |

frame_b | Frame_b | Coordinate system fixed to the component with one cut-force and cut-torque |

PARAMETERS

Name | Type | Default Value | Description |
---|---|---|---|

animation | Boolean | true | = true, if animation shall be enabled (show sphere) |

sphereDiameter | Distance | world.defaultJointLength | Diameter of sphere representing the spherical joint |

angles_fixed | Boolean | false | = true, if angles_start are used as initial values, else as guess values |

angles_start | Angle[3] | {0,0,0} | Initial values of angles to rotate frame_a around 'sequence_start' axes into frame_b |

sequence_start | RotationSequence | {1,2,3} | Sequence of rotations to rotate frame_a into frame_b at initial time |

w_rel_a_fixed | Boolean | false | = true, if w_rel_a_start are used as initial values, else as guess values |

w_rel_a_start | AngularVelocity[3] | {0,0,0} | Initial values of angular velocity of frame_b with respect to frame_a, resolved in frame_a |

z_rel_a_fixed | Boolean | false | = true, if z_rel_a_start are used as initial values, else as guess values |

z_rel_a_start | AngularAcceleration[3] | {0,0,0} | Initial values of angular acceleration z_rel_a = der(w_rel_a) |

enforceStates | Boolean | false | = true, if relative variables of spherical joint shall be used as states (StateSelect.always) |

useQuaternions | Boolean | true | = true, if quaternions shall be used as states otherwise use 3 angles as states (provided enforceStates=true) |

sequence_angleStates | RotationSequence | {1,2,3} | Sequence of rotations to rotate frame_a into frame_b around the 3 angles used as states |

R_rel_start | Orientation | Frames.axesRotations(sequence_start, angles_start, zeros(3)) | Orientation object from frame_a to frame_b at initial time |

Q_start | Orientation | Modelica.Mechanics.MultiBody.Frames.to_Q(R_rel_start) | Quaternion orientation object from frame_a to frame_b at initial time |

phi_start | Angle[3] | 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 |

USED IN EXAMPLES

Modelica.Mechanics.MultiBody.Examples.Rotational3DEffects.GyroscopicEffects Demonstrates that a cylindrical body can be replaced by Rotor1D model |