82
EZMotion User/Programming Guide
www.controltechniques.com
Revision: A8
= 3471 - 1375 - 4096 + 0
= -2000 revs
-2000 revs is exactly the result that we wanted! Notice that even though P
A
rolled over when it reached 0, we can still calculate the
correct position since we know that the application is running in Two-Sided Mode.
If the motor moves an additional 200 revs in the negative direction, P
M
will be P
MH
- 2200 (because we already moved -2000
before) or P
M
= -2200. P
A
would be P
AH
- 2200 + Max Encoder Resolution or P
A
= 3271. Notice that with P
A
= 3271 we no longer
match the conditions of Calculation #2, but now instead match those of Calculation #1. Therefore, P
M
is calculated as follows:
P
M
= P
A
- P
AH
+ P
MH
= 3271 - 1375 + 0
= 1896 revs
Note that this value is NOT correct. The desired result of the calculations is -2200. This is because after 2048 revs in either given
direction from the home position, we have exceeded half of the absolute resolution of the encoder in that direction.
We could test the same scenario in the positive direction. If the motor starts from the original home position and moves 2200 revs in
the positive direction. P
M
at that point would be P
MH
+ 2200 or P
M
= 2200. If we power the system down and then back up, we find
P
A
= P
AH
+ 2200 = 3575. In this case, we match the conditions for Calculation #2 and therefore use it to calculate P
M
.
P
M
= P
A
- P
AH
- Max Enc Reso P
MH
= 3575 - 1375 - 4096 + 0
= -1896 revs
Again, -1896 is NOT the correct position since we expected to get 2200 revs instead.
So you can see that when using Two-Sided Mode, as long as the motor does not move more than 2048 revolutions in either direction
from the home position, EZMotion can correctly calculate the absolute machine position on power up.
It should be noted that there is a different set of calculations used to find P
M
when P
AR
is < E
half
. These calculations are as follows:
Calculation #3:
Used when P
AR
< E
half
AND P
A
< P
AR
P
M
= Max Enc Resolution - P
AH
+ P
A
+ P
MH
and
Calculation #4:
Used when P
AR
< E
half
AND P
A
> P
AR
P
M
= P
A
- P
AH
+ P
MH
8.4.5
Reasons for Re-Homing
Once an absolute home routine has been executed, either using a Home motion profile or a DefineHome, the system can
automatically calculate its position after a download or power-cycle without the need to re-home the machine. Under normal
circumstances, the system should never need to be homed again.
However, it is important to note that there are a few reasons or actions that could require the system to be re-homed. These are as
follows:
1.
Flash Upgrade
If EZMotion is flash upgraded, the contents of NVM is lost and hence, the system needs to be re-homed to re-learn the absolute
home position of the machine. The absolute home position is not stored as part of the user configuration, so downloading the
previous user configuration will not re-load the absolute home position.
2.
UndefineHome or MasterAxis.UndefineHome
The UndefineHome function (for the motor or follower axis) and the MasterAxis.UndefineHome function (for the master axis) are
used to tell the system to no longer use the previously defined Absolute Home Position. Additionally, the AbsolutePosnValid and
AbsoluteHomeDefined signals will deactivate when the UndefineHome is used. The UndefineHome and MasterAxis.UndefineHome
functions by themselves do not cause a new absolute home routine to be performed. The user must initiate a new Home motion
profile or use the DefineHome to re-home the system. When the UndefineHome or MasterAxis.UndefineHome functions are
activated, they do not set the previously stored values of for the absolute home position to zero. The previously stored values will
remain in the absolute home position registers until another absolute home routine is performed.
3.
Exceeding the range of the absolute encoder
Absolute Encoders fall into two categories called Single-Turn Absolute and Multi-Turn Absolute.
Single-Turn Absolute
encoders are only absolute within a single revolution of the motor. Once the motor turns more than a single
revolution, the absolute position provided on power-up could now be off by one or more revolutions. For example:
A Single-Turn Absolute encoder reads a value of 0.25 revolutions on power up. If the device moves 0.5 revolutions in the positive
direction, the position feedback should read 0.75 revolutions. If the system is powered down and back up, the encoder would still
read 0.75 revolutions, just as it should. Now, if the system is powered-down, then moved one full revolution in the positive
direction, the position feedback should be 1.75 revolutions. However, since the device is only a single-turn absolute device, the
encoder would read 0.75 revolutions on power up. Therefore, the encoder cannot differentiate between 0.75, 1.75, 2.75, and so
on. The encoder is only absolute within a single revolution.
Multi-Turn Absolute
encoders are absolute for more than a single revolution, and up to some maximum number of revolutions
defined by the design of the encoder. For example a multi-turn encoder contains 12 bits of encoder turns information which
equates to 2^12 revolutions or 4096 revolutions absolute. This means the absolute encoder position can range from 0 to 4096
revolutions and still know exactly where it is through a power cycle. This is sufficient for most applications, however multi-turn
Содержание EZMotion
Страница 2: ......
Страница 12: ...x EZMotion User Programming Guide www controltechniques com Revision A8 ...
Страница 18: ...6 EZMotion User Programming Guide www controltechniques com Revision A8 ...
Страница 36: ...24 EZMotion User Programming Guide www controltechniques com Revision A8 ...
Страница 158: ...146 EZMotion User Programming Guide www controltechniques com Revision A8 ...
Страница 186: ...174 EZMotion User Programming Guide www controltechniques com Revision A8 ...
Страница 266: ...256 EZMotion User Programming Guide www controltechniques com Revision A8 ...
Страница 267: ......