APIs, concepts, guides, and more
|
Optimize homing accuracy using drive-based ASCII commands on Kollmorgen AKD drives, reducing network latencies and allowing extensive customization through various homing methods and configurations.
AKD Drive-based ASCII homing uses preloaded methods available on the drive. This allows for homing to be performed entirely in the drive without network latencies producing more accurate results. Drive homing is the recommended homing strategy.
DRV.OPMODE 2 - Set the drive to Position Operation Mode.
HOME.AUTOMOVE 0 - Make sure that automove is disabled. Unless you would like to trigger homing when amp/axis gets enabled.
Now, since we are running CANopen DS402 or EtherCAT, it is required that we set object/index 0x6060 through CAN/EtherCAT communication.
Index 0x6060 represents Mode of Operation. When homing we must specify the homing mode, and when homing is done we must go back to default mode.
We change the mode by writing to the SDO.
*** If you are not using limit switches skip this section.
In this example we are using: Homing Method 1: Find Limit Input.
The ‘Find Limit Input’ method creates a move to a limit input. This method can be used if you have a positive or negative limit switch available that you want to establish as a home reference point.
AKD Digital Input Parameters:
Check the Kollmorgen AKD User Guide to learn about the different Homing methods.
RMP position units from the AKD will be in counts. For rotary motors, the counts per revolution will be defined by the AKD parameter FB1.PSCALE (primary feedback position scale). The default value is 20, which yields 2^20 counts/revolution.
AKD Homing parameters will be in AKD drive units and are different for rotary and linear motors. Units depend on UNIT.VROTARY or UNIT.VLINEAR which can be:
Rotary: rpm, rps, deg/s, Custom Units/s, rad/s
Linear: counts/s, mm/s, µm/s, Custom Units/s
Similarly, check or confirm UNIT.ACCROTARY and UNIT.ACCLINEAR are set as expected.
AKD Home Parameters:
Check the Kollmorgen AKD User Guide Check the Kollmorgen AKD User Guide for all other Home parameters.
You can monitor the Status Word to determine if/when homing is complete:
Status Word - bit 12 = 1(HIGH), if Homing was attained.
Status Word - bit 13 = 1(HIGH), if there was a Homing error.
If the drive homed properly, it will have set the RMP Actual Position to zero.
Axis.Abort() - Disable the Axis. This will disable the Axis and it will automatically set Command Position equal to the Actual Position. This is a required step before changing the control mode and enabling the Axis.
Restore the mode of operation to the control mode you want to run in. (Only do this when Axis is DISABLED.)
HOME.MODE 0: Home Using Current Position.
HOME.MODE 1: Find limit input.
HOME.MODE 2: Find input limit then find zero angle.
HOME.MODE 3: Find input limit then find index.
HOME.MODE 4: Find home input.
HOME.MODE 5: Find home input then find zero angle.
HOME.MODE 6: Find home input then find index.
HOME.MODE 7: Find zero angle.
HOME.MODE 8: Move until position error exceeded.
HOME.MODE 9: Move until position error exceeded, then find zero angle.
HOME.MODE 10: Move until position error exceeded, then find index.
HOME.MODE 11: Find index signal.
HOME.MODE 12: Home to home-switch, including mechanical stop detection.
HOME.MODE 13: Home to feedback position.
HOME.MODE 12: Home to home-switch for rotary applications.
HOME.MODE 15: Find next feedback zero position.
HOME.MODE 16: Find home input with dual edges.
HOME.MODE 17: Absolute Mode - Calculate and save offset.
HOME.MODE 18: Find home input, then find next feedback zero position.