# Gear Scale

The gear scale parameter is used for converting between physical positions (in mm or degree) to motor steps (or encoder ticks). This article explains how to calculate the value depending on the axis type.

The gear scales of robot axes are defined in the Robot Configuration File, the gear scales of external axes are defined in the Project Configuration File (configured via the CPRog/iRC PC application). If you know a robot type that got the same axis you are using you can copy the value from there.

# Calculating from hardware specification

The following are the general equations for rotational and linear axes. Note the factor 4 which is necessary for stepper motors but may not be needed for other motor types like BLDC (e.g. ReBeL).

```
Gear Ratio x Encoder Ticks x 4 : 360 = Gear Scale
Gear Ratio x Encoder Ticks x 4 : Linear Transmission Ratio = Gear Scale
```

Explanation: Encoder Ticks x 4 gives the steps per full rotation of the motor. Encoder Ticks should be 500 for all igus stepper motors. Multiplied with the gear ratio you get the steps for a full rotation at the gear output. Divide that by 360° to get to steps per degree at the output.

If you are not using gears set the gear ratio to 1 (this is the case for most linear axes). If you are calculating a linear axis use the linear transmission ratio (in mm per revolution) instead of 360 to get steps per mm.

An example for a rotational axis:

```
Gear Ratio: 48
Encoder Ticks: 500
48 x 500 x 4 : 360 = 266.667
```

Another example for a ZLW-1660 linear axis. Find the transmission ratio in the specs: 120 mm/rev

```
Gear Ratio: 1
Encoder Ticks: 500
1 x 500 x 4 : 120 = 16.667
```

# Calculating from relative error

If you do not know the hardware specification you can try to measure the error of a gear scale value, then calculate the correct one from it using cross-multiplication.

- Use the gear scale of a similar axis (warning, if the value is too far off the axis might move faster than expected!)
- Jog the joint manually by a certain distance. Measure the actual distance (in degree or mm) and note the displayed distance.
- Calculate the new gear scale:

`old Gear scale / displayed distance x actual distance = new Gear Scale`