User-defined units
Overview
Settings
The motor controller supports the possibility of setting user-defined units. In this way, the corresponding parameters can be set and read out directly in degrees, mm, etc.
Pole pair count compensation
Differences in the pole pair counts of motors can be compensated. For this purpose, the value in object 2060h must be set to "1". Then the pole pair count automatically enters the subsequent computation so that different motors can be operated on the motor controller without requiring a new configuration.
Factor
There is a factor for the units velocity, acceleration and jerk. It gets either multiplied by the input value or divided by the output value.
Computation formulas for user units
Gear ratio
Feed constant
Position
The current position in user units (6064h) is calculated as follows:
Speed
The speed specifications of the following objects can likewise be specified in user units:
Object | Mode | Meaning |
---|---|---|
606Bh | Profile Velocity Mode | Output value of ramp generator |
60FFh | Profile Velocity Mode | Speed specification |
6099h | Homing mode | Speed for searching the index/switch |
6081h | Profile Position Mode | Target speed |
6082h | Profile Position Mode | End speed |
The internal unit is rounds per second.
The factor n for the speed is calculated by the factor for the numerator (2061h) divided by the factor for the denominator (2062h).
For the input of values it is applied: internal value = nvelocity x input value
For the output values it is applied: output value = internal value / nvelocity
Example |
|
2061h is set to the value "1", 2062h to the value "60". Therefore the user unit is "Rounds per minute" and nvelocity = 1/60. | |
When the 60FFh is set to the value "300", the internal value will get set to 300 r/min x 1/60 = 5 r/s. | |
When the motor turns with a internal speed of 5 r/s the object 606Bh will get filled with a speed of 5 / 1/60 = 300 r/min. |
If object 2061h or 2062h is to be set to "0", the firmware sets the value to "1".
Acceleration
The acceleration can also be output in user units:
Object | Mode | Meaning |
---|---|---|
609Ah | Homing mode | Acceleration |
6083h | Profile Position Mode | Acceleration |
6084h | Profile Position Mode | Deceleration |
60C5h | Profile Velocity Mode | Acceleration |
60C6h | Profile Position Mode | Deceleration |
6085h | "Quick stop active" state (DS402 Power State machine) | Deceleration |
The internal unit for acceleration is rounds per second2.
The factor n for the acceleration is calculated by the factor for the numerator (2063h) divided by the factor for the denominator (2064h).
For the input of values it is applied: internal value = nacceleration x input value
If object 2063h or 2064h is to be set to "0", the firmware sets the value to "1".
Jerk
For the jerk, objects 60A4h:1h to 60A4h:4h can be specified in user units. These objects only affect the Profile Position Mode and Profile Velocity Mode.
The internal unit for jerk is rounds per second3.
The factor n for the acceleration is calculated by the factor for the numerator (2065h) divided by the factor for the denominator (2066h).
For the input of values it is applied: internal value = njerk x input value
If object 2065h or 2066h is to be set to "0", the firmware sets the value to "1".
Positional data
All positional values in the open loop and closed loop mode are specified in the resolution of the virtual position encoder. This is calculated from the encoder cycles (608Fh:1h (Encoder Increments)) per motor revolutions (608Fh:2h (Motor Revolutions)) multiplied by the polarity of the axis in object 607Eh bit 0. If bit 0 in object 607Eh is set to the value "1", this corresponds to a polarity reversal, or the value "-1" in the formula:
If the value of 608Fh:1h or 608Fh:2h are set to "0", the motor controller continues computing internally with a "1". The factory settings are:
- Encoder increments 608Fh:1h = "2000"
- Motor revolutions 608Fh:2h = "1"
- Polarity 607Eh bit 0 = "0" (does not correspond to a polarity reversal)
The resolution of the connected position encoder is set in object 2052h.