compute_torqueΒΆ

DCMotor.compute_torque() None

It computes the driving_torque developed by the DC motor.

The driving torque depends on the two constants no_load_speed and maximum_torque and the two variables angular_speed and pwm of the DCMotor.

The computed torque has the same unit of maximum_torque.

Notes

The computation is based on the following relationship:

\[T \left( \dot{\theta} , T_{max}^D , \dot{\theta}_0^D \right) = T_{max}^D \left( 1 - \frac{\dot{\theta}}{\dot{\theta}_0^D} \right)\]

where:

  • \(T\) is the DC motor developed driving torque driving_torque,

  • \(\dot{\theta}\) is the actual DC motor angular speed angular_speed,

  • \(T_{max}^D\) is the DC motor maximum torque developed by the DC motor keeping into account pwm,

  • \(\dot{\theta}_0^D\) is the DC motor no load angular speed keeping into account pwm.

The maximum torque can be computed as:

\[T_{max}^D \left( D \right) = T_{max} \frac{D \, i_{max} - i_0}{i_{max} - i_0}\]

and the no load angular speed can be computed as:

\[\dot{\theta}_0^D \left( D \right) = D \, \dot{\theta}_0\]

where:

If the pwm is lower than a critical threshold, then the motor cannot develop any torque, so the driving_torque will be null. The critical pwm value can be computed as:

\[D_{lim} = \frac{i_0}{i_{max}}\]