This section describes how to select
INV_R and INV_R_SCALE. The first step is to find the motor resistance. This can be
done in three ways:
- Use the motor resistance
value mentioned in the data sheet of the motor. If this is not available,
use one of the other methods listed below.
- Perform a voltage sweep at
the motor terminals, stall the motor at each voltage level, and measure the
motor current. Please note that at least 10 measurements are required at
every voltage level whilst rotating the motor by approximately 30° for each
measurement. This is because it is unknown if the commutator segments are in
contact with the brushes in a particular motor position which renders a
lower, incorrect motor resistance value. If motor resistance from the
motor's data sheet is unavailable, then this method is recommended to
obtain the value of motor resistance. Take the average of all values
to calculate motor resistance.
- Measure the motor resistance
using a digital multimeter. Please note that this process also needs to be
done at every voltage level for 10 measurements each and then averaged out
at the end for the same reason as mentioned above.
Once the motor resistance value is
found, select an appropriate value of INV_R_SCALE and calculate INV_R. The formula
to calculate INV_R is:
Equation 9.
For example, if the motor resistance is 25 Ω, we have the following possible
results based on the choice of INV_R_SCALE:
Table 8-2 Selection Example for
INV_R_SCALE and INV_RBit | INV_R_SCALE value | INV_R_SCALE/Motor Resistance (Actual
Value) | Rounded Value INV_R | Comment |
---|
00b | 2 | 2/25=0.08 | 0 | Do not select, since output is 0. |
01b | 64 | 64/25=2.56 | 3 | Avoid selecting, since low bit
precision. |
10b | 1024 | 1024/25=40.96 | 41 | Can select this value. |
11b | 8192 | 8192/25=327.68 | 328 | Cannot select this value because 328 exceeds the
maximum limit for INV_R (255). |