Content Preview
TB301 Using Absolute Encoders
Introduction
Support for absolute encoders was added in CNC12 version 4 06 Absolute encoder support is for Yaskawa drives
connected to an OpticDirect or DriveComm interface on an MPU11 system as well most drives supported by Centroidβs
HICKORY Motion Control board Using absolute encoders requires configuration of the drive as well as CNC12
parameters See TB267 for information on how to configure the Yaskawa drive or TB317 for Estun Summa drives
Prerequisites
β’ For MPU11 systems OpticDirect or DriveComm board with backup battery installed or Yaskawa cable JZSP
CSP12 E installed
β’ For HICKORY No external hardware needed drive backup battery only
Resources
β’ TB267 CNC11 Yaskawa Sigma5 Precision Mode Setup
http //www centroidcnc com/dealersupport/tech_bulletins/uploads/267 pdf
β’ TB317 CNC12 & Hickory Estun Summa Setup & Tuning
https //www centroidcnc com/dealersupport/tech_bulletins/uploads/317 pdf
β’ TB22 Modifying the "HOM" File http //www centroidcnc com/dealersupport/tech_bulletins/uploads/022 pdf
Initial Setup
β’ Configure the Yaskawa drive to use absolute encoders according to TB267 or Estun Summa drive using TB317
β’ Position the axes using jogging or traditional limit switch homing to position the axes where the home position
should be set It is recommended to set this position near to where a machine would home if using limit switch
homing
β’ Set machine parameter 316 Absolute Encoder Bits appropriately For example assume all three axes XYZ
have absolute encoders and P308 Axis 1 X Encoder Index = 7 P309Axis 2 Y Encoder Index = 8 and P310
Axis 3 Z Encoder Index = 9 In this case the correct setting is P316 = 448 2 7 1
+ 2 8 1
+ 2 9 1
Use the table below to calculate the appropriate P316 setting add the values in the β P316 adder β column
according to which axes are using absolute encoders For instance consider a 4 axis machine where Axes 1 and
2 are running on incremental encoders and Axes 3 and 4 on absolute encoders P316 = 256 + 512 = 768
192 168 0 199/public/tech/technical bulletins/TB301 Using Absolute Encoders odt 04/27/2017 Page 1 of 3Axis NumberAxis Encoder indexP316 adder
1764
28128
39256
410512
5111024
6122048
7134096
8148192
TB301 Using Absolute Encoders
β’ Power off the system and then power on again You may see some warning dialogs related to the absolute
encoders If you see one about axis movement like below this is not unexpected during initial setup and can be
safely ignored
However if you see an error dialog as below something is surely wrong See the troubleshooting section
β’ Before homing go to MDI and execute an M26/X/Y/Z As long as parameter 316 is set to mark an axis encoder
as having an absolute encoder then when an M26 is executed the MPU system will save the position in non
volatile memory and will use it as an offset to the home position so that if you power the system down and back
up at this position the DRO would read 0 0000 or very close to that since it probably moved a little after power
was removed
β’ Modify the cncm hom or cnct hom file to use the Q1 word for example
M26/Z Q1
M26/X Q1
M26/Y Q1
The Q1 word basically sets the machine home at the current position This is a minimal example It may be
desirable to issue other commands as part of the homing procedure such as retracting the Z axis Caution If you
forget the Q1 word it will be the same as executing an M26 command while not at the home position and since
there were no M91/M92 commands to home off limit switches the machine positions would be incorrect
β’ Reboot the system After homing check for proper position It is a good idea to make a few checks by moving to
different positions and rebooting the system to verify that after homing the positions are correct
192 168 0 199/public/tech/technical bulletins/TB301 Using Absolute Encoders odt 04/27/2017 Page 2 of 3
TB301 Using Absolute Encoders
Further information
At first power up of CNC12 the debug_dump0 txt file has information related to absolute encoders Here is a
sample that is typical given the example above when there are no problems
absolute encoder 6 on axis 0
Yaskawa 0 multi turn 0 hi 0 lo 1383 full 0x0000000000000567 1383 CPR 32768 Home Offset 2588681
absolute encoder 7 on axis 1
Yaskawa 1 multi turn 22 hi 0 lo 13044 full 0xFFFFFFFFFFF532F4 707852 CPR 32768 Home Offset 2948559
absolute encoder 8 on axis 2
Yaskawa 2 multi turn 4 hi 0 lo 2851 full 0x0000000000020B23 133923 CPR 32768 Home Offset 1933322
Other messages that may appear in this file if parameter 316 is set to mark an encoder as being absolute
include
Yaskawa _ data retrieve not finished
Yaskawa _ data retrieve error
Absolute encoder not mapped to a valid axis
If the messages above are seen in the file then it means that the CNC12 could not properly communicate with
the absolute encoder for that particular axis It could be that the drive was not properly setup
When CNC12 software starts there is a check of absolute encoders The information gathered from these
checks is appended to the absolute encoder log txt file One of the things that is checked is to see if the
position where the machine was powered down saved in the last absolute position txt file has changed
from the power up position If this difference is greater than half a motor encoder turn then a warning dialog will
be displayed If there was an improper shutdown e g the system suddenly lost power or the software was
terminated by task explorer then CNC12 cannot properly record the last position and in these cases the
warning dialog is expected and indicates that the cause may be due to an improper shutdown
Another case where this dialog may be displayed is after a software update and the MPU reboots In this case
the warning should not be ignored The system should be powered cycled Expect the warning to appear again
after the power cycle but this second one can most likely be ignored
Document History
Rev2 Created on 2021 05 28 by #446
Rev1 Created on 2017 04 28 by #123
192 168 0 199/public/tech/technical bulletins/TB301 Using Absolute Encoders odt 04/27/2017 Page 3 of 3