JVL MAC050 User Manual page 60

Integrated servo motors
Hide thumbs Also See for MAC050:
Table of Contents

Advertisement

2.11
Using external SSI encoder
When the motor starts up during power on or a software reset the SSI encoder is read
4x and the value is decoded from Gray-code to an absolute position with an 25bit accu-
racy (25-bit signed).
This position is scaled to fit motor resolution and then saved in position register P7 (reg-
ister 61) as a 32-bit signed value.
The SSI encoder feature is based on an external encoder resolution of 1024 cnt./rev. (256
pulses/rev.) this value is scaled to fit the motor resolution which is 4096 cnt./rev.
SSI is a serial protocol without any error detection or correcting features so in order to
determine if the correct value is read, the value is read 4 times and the same value need
to be read all 4 times.
If this value has changed during the read cycle, the error register 35 bit 15 is set and also
bit 15 in the SSI control register 178.
If this error condition has happened be sure to clear the error in register 178 before do-
ing a save in flash operation.
2.11.2
Encoder positioning and usage
A new position is calculated based on the encoder position stored in P7 and a previously
saved value (a position sample) in register P6.
This value stores in P6 is a position reference stored when a position reset is done.
The calculation is as follows:
P8 = (P7 - P6) + P5
The P5 value is used when an offset is to be added to the position. So the desired '0' po-
sition is saved into P6 and the actual position (from the encoder) is saved into P7 and then
again P5 is used to offset this position.
Example 1:
The encoder shaft is connected to the motor shaft, meaning that 1 revolution at the ex-
ternal encoder is equal 4096 motor counts.
Motor start up, encoder reading = 12288 (random position)
Motor P_IST = P_SOLL = 12288
This position we want to define as position 0 so we run the position reset procedure
(see Reset position procedure) and store 12288 into P6.
The motor is reset (software reset or power cycle) and the new position is calculated by:
P4 is by default 0, so
P8 = (12288 - 12288)
P8 = 0
This value is transferred to P_IST and P_SOLL, so
P_IST = P_SOLL = P8 = 0.
Now the encoder position 12288 is defined as position 0 in the system.
Example 2:
Let's say that we need to define a fixed position as position = 100 because
we want our motor to be 100 counts from the actual 0-position at exactly this physical
position.
56
JVL A/S - User Manual - Integrated Servo Motors MAC050 - 4500
Only MAC050 to 141-A

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents