Previous section-----Next section

6.2.5 General Rotational Relationships

If the spatial gear constraints provided by Modeler3D will not serve to model a more abstract rotational relationship, similar constraints can be built up from the basic kinematic constraints. The following example shows how to duplicate the function of the ParallelGears5 constraint with a set of other Modeler3D constraints.
This model consists of one moving body, the gear, and one stationary body, the pinion. The radius 3.0 gear orbits the stationary radius 1.0 pinion. The ParallelGears5 constraint is effectively replaced by the set of the following six constraints.

  • A Parallel2 constraint forces the axes of the two gears to be parallel.
  • A PointOnPlane1 constraint forces the origins of the two gear axes to be adjacent.
  • A RelativeDistance1 constraint holds the gears the correct distance apart.
  • A ProjectedAngle1 constraint sets the relative rotation of the pinion equal to the value of an extra symbol that is added to the model.
  • A ProjectedAngle1 constraint sets the relative rotation of the gear equal to another extra symbol that is added to the model.
  • A general Constraint object relates the two extra symbols that control the relative rotation of the two gears to each other.
  • This combination constrains seven degrees of freedom, but it adds two degrees of freedom by adding two variables to the model. Thus, a total of five degrees of freedom are constrained.

    Here are names for the body numbers.

    Here is the equivalent ParallelGears5 constraint.

    We define a driving constraint to move the gear vertically so as to orbit the pinion.

    SetConstraints must be passed a flat constraint list.

    One initial guess is needed.

    Now run the model at T = 1.0.

    Here is the two-gear model at T = 1.0.

    In general, this method of constraining the relative rotation between two moving bodies can be used to model any type of rotational linkage. The Constraint function that is used to relate the two extra variables can contain an algebraic expression that is arbitrarily complex. This allows abstract or nonlinear relationships to be modeled.