Hi guys,
- I have kinetix 6000.
- I have a Powerflex 700s with Stegmann opt board
- I have MPL-BxxxP-M motors (Sick stegmann multiturn SRM50 encoder)
- I am brave ! or completely crazy, as you see fit
Powerflex 700s with Stegmann opt board reads position value of a SRS or SRM Sick-stegmann encoder.
Auto tune procedure MEASURE the absolute encoder offset on a PF700s with stegmann board. It doesn't read encoder memory, only position.
On kinetix, with intelligent encoders such as sick-stegmann, motor commutation offset is read from the data blob written on the 1 KB memory of the encoder.
Now I have several working MPL-B3xxP-M motors. And a few ones that need bearings replacement... the plan is to change the bearings, read the new enc absolute offset with the PF700s then convert it to Kinetix format and write it in the encoder memory.
The offset of the encoder will necessarily be different after taking it appart and mounting it back on the motor rotor.
The issue is that I couldn't figure the formula to convert the PF700s encoder Absolute offset to a Kinetix Motor commut offset %.
They are not the same point on the U,V,W trends. Graphically, absolute encoder offset is located when U gets above 0V (0°). The motor commutation offset is when U crosses again U below 0V, 180° electric-wise farther.
Here a table of read (K6K) or measured (PF700s) values of working motors with PF700s and Kinetix 6000 :
K6K firmware : 1.127 / PF700s fw : 5.002
Those motors are all 4 pairs of poles (8 poles total). So 4 electrical cycles are needed to perform a full mecanical revolution (= 1 turn). The offset and commut angle should be for a single electrical cycle and not a wole mecanical revolution.
K6K commut offset unit is %. Scale is 100% = 8192 (or 4096 perhaps) if it matches the scaling used on powerflex drives.
K6K commut offset % shown in drive equals stored hexa value in blob x 10,24 (looks someting like value x 1024 then /100 to me).
Powerflex 700s abs offset is an absolute value.
Monoturn resolver resolution (sin/cos channel) is 1024 sin/cos cycle x 1024 arctan drive interpolation = 1 048 576 point per revolution.
Digital resolution is 32768 point per turn.
Multiturn resolution on SRM50 is +/-2048 turns (4096 turns).
PF700s read the whole absolute digital value (mono * multiturn absolute value).
To get the absolute encoder offset, the PF700s seems to read the position at 0 encoder, then powers the U phase to aligne a pole on the rotor. The rotor is then at 90° electrical angle. The displacement is read from here.
Since the rotor is at 90° angle, and not 0° (absolute encoder position offset) or 180° (motor commutation offset), I could see if a computation is done internally.
Since some companies can service bearing and more on MPL-B P-M series, they KNOW how to do it... but don't talk about it.
Any math geek god lurking nearby and having an idea ?
- I have kinetix 6000.
- I have a Powerflex 700s with Stegmann opt board
- I have MPL-BxxxP-M motors (Sick stegmann multiturn SRM50 encoder)
- I am brave ! or completely crazy, as you see fit
Powerflex 700s with Stegmann opt board reads position value of a SRS or SRM Sick-stegmann encoder.
Auto tune procedure MEASURE the absolute encoder offset on a PF700s with stegmann board. It doesn't read encoder memory, only position.
On kinetix, with intelligent encoders such as sick-stegmann, motor commutation offset is read from the data blob written on the 1 KB memory of the encoder.
Now I have several working MPL-B3xxP-M motors. And a few ones that need bearings replacement... the plan is to change the bearings, read the new enc absolute offset with the PF700s then convert it to Kinetix format and write it in the encoder memory.
The offset of the encoder will necessarily be different after taking it appart and mounting it back on the motor rotor.
The issue is that I couldn't figure the formula to convert the PF700s encoder Absolute offset to a Kinetix Motor commut offset %.
They are not the same point on the U,V,W trends. Graphically, absolute encoder offset is located when U gets above 0V (0°). The motor commutation offset is when U crosses again U below 0V, 180° electric-wise farther.
Here a table of read (K6K) or measured (PF700s) values of working motors with PF700s and Kinetix 6000 :
Code:
Motor K6K commut offset % PF700S abs offset
MPL-B PM_1 10,25 2444
MPL-B PM_2 11,62 2952
MPL-B PM_3 11,82 3076
MPL-B PM_4 14,84 5496
MPL-B PM_5 15,33 5660
MPL-B PM_6 93,46 7780
Those motors are all 4 pairs of poles (8 poles total). So 4 electrical cycles are needed to perform a full mecanical revolution (= 1 turn). The offset and commut angle should be for a single electrical cycle and not a wole mecanical revolution.
K6K commut offset unit is %. Scale is 100% = 8192 (or 4096 perhaps) if it matches the scaling used on powerflex drives.
K6K commut offset % shown in drive equals stored hexa value in blob x 10,24 (looks someting like value x 1024 then /100 to me).
Powerflex 700s abs offset is an absolute value.
Monoturn resolver resolution (sin/cos channel) is 1024 sin/cos cycle x 1024 arctan drive interpolation = 1 048 576 point per revolution.
Digital resolution is 32768 point per turn.
Multiturn resolution on SRM50 is +/-2048 turns (4096 turns).
PF700s read the whole absolute digital value (mono * multiturn absolute value).
To get the absolute encoder offset, the PF700s seems to read the position at 0 encoder, then powers the U phase to aligne a pole on the rotor. The rotor is then at 90° electrical angle. The displacement is read from here.
Since the rotor is at 90° angle, and not 0° (absolute encoder position offset) or 180° (motor commutation offset), I could see if a computation is done internally.
Since some companies can service bearing and more on MPL-B P-M series, they KNOW how to do it... but don't talk about it.
Any math geek god lurking nearby and having an idea ?
Last edited: