add_worm_gear_mating

add_worm_gear_mating(master: WormGear | WormWheel, slave: WormGear | WormWheel, friction_coefficient: float | int) None

It creates a gear mating between a worm gear and a worm wheel. This mating is used to compose the Powertrain.

The master gear is closest to the motor and transfers a fraction of the driving torque to the slave one, based on the mating efficiency, which depends on the friction_coefficient: the higher the friction_coefficient, the lower the fraction of transferred driving torque.

Parameters

masterWormGear or WormWheel

Driving gear. It must be an instance of WormGear or WormWheel, but different from slave.

slaveWormGear or WormWheel

Driven gear. It must be an instance of WormGear or WormWheel, but different from master.

friction_coefficientfloat or int

Static friction coefficient of the gear mating. It must be a float or an int between 0 and 1.

Raises

TypeError
ValueError

Notes

The gear ratio of the mating can be computed with the following relationship, regardless of master or slave roles:

\[\tau = \frac{n_z}{n_s}\]

where:

  • \(\tau\) is the gear ratio, the ratio between the worm gear angular speed and the worm wheel angular speed,

  • \(n_z\) is the worm wheel number of teeth,

  • \(n_s\) is the worm gear number of starts.

If the WormGear is the master and the WormWheel is the slave, then the gear mating efficiency can be computed with the relationship:

\[\eta = \frac{\cos \alpha - f \, \tan \beta}{\cos \alpha + \frac{f}{\tan \beta}}\]

otherwise, if the WormGear is the slave and the WormWheel is the master, then the gear mating efficiency can be computed with the relationship:

\[\eta = \frac{\cos \alpha - \frac{f}{\tan \beta}}{\cos \alpha + f \, \tan \beta}\]

where:

The mating self-locking condition can be checked as:

\[f > \cos \alpha \, \tan \beta\]