CTC’s EtherCAT master combined with the Kollmorgen AKD servo drive form an unbeatable combination for ease of use and cost/performance.
Auto-Configuration Simplifies Programming Drive Monitoring Using EtherCAT Explorer
When equipped with a model M3-41 EtherCAT Master module, the CTC model 5300 controller will automatically recognize and configure a Kollmorgen AKD drive. This eliminates what can be one of the most time-consuming aspects of setting up an EtherCAT network, greatly simplifying the process of system configuration.
Programming is then a simple matter. In the QuickBuilder programming environment, EtherCAT drives appear identical to locally controlled servo axes, with the same commands being used to set motion parameters and initiate motion.
Part of the QuickBuilder environment is a powerful diagnostic and monitoring tool for EtherCAT networks – the EtherCAT Explorer. For each EtherCAT master present in a controller, the EtherCAT Explorer shows each of the EtherCAT nodes identified by that master, along with any drives or I/O points contained within that node.
Select one of the connected devices in EtherCAT Explorer to see a detailed list of parameters associated with that I/O device. You can also view a log of communications transactions sent across the network. This provides a powerful network diagnostic capability and a detailed window into the functioning of the devices in your system.
EtherCAT Explorer, in the Quickbuilder Programming Environment, provides a detailed view of the Drives and I/O on an EtherCAT network
EtherCAT Explorer, in the QuickBuilder Programming Environment, provides a detailed view of the drives and I/O on an EtherCAT network.
For complete information on how to set up the CTC EtherCAT Master and Kollmorgen AKD, see the CTC EtherCAT Application Guide.
CTC provides specific information for setting up and working with the EtherCAT Master and each supported drive.
Below are some tips specific to Kollmorgen’s AKD servo drive.
EtherCAT Modes: AKD Servo Drive
CSP Inter-
polated Homing Profile
Position Profile
Velocity Regis-
tration
√ N/A √ N/A √
√
Probe1
As noted above, Kollmorgen AKD drives do not support Profile Position mode; Cyclic Sync Position must be used (Kollmorgen V1.8.0.3 and greater support Cyclic Sync Position mode.) With this drive, the EtherCAT Master automatically switches to Cyclic Sync Position mode even if Profile Position mode is selected. Also note that Interpolated Position mode will lag one scan cycle behind in the move operation from that commanded.
Kollmorgen AKD Setup and Power-up
The Kollmorgen drive can take up to 20 seconds to power up and be recognized on the network.
When a configuration file is loaded into the EtherCAT Master, it will retry for the 20-second period prior to aborting, allowing both the controller and the drive to be power cycled at the same time. Combining this with Option Switch #1 (retry override, which continuously scans the network for proper configuration when enabled) will ensure successful power up.
Kollmorgen devices typically must have their addresses set with the EtherCAT configurator and programmed to their individual EEPROMs
Programming in QuickBuilder
The CTC model 5300 controller is programmed in QuickBuilder, a comprehensive graphical programming environment. Servo axes are programmed using Motion Sequence Blocks (MSBs, such as the one circled in red in the illustration), which are automatically downloaded to the appropriate EtherCAT Master module for local execution. This greatly increases performance while still allowing intensive communication with the main controller program.
Flowchart in a QuickBuilder program, showing a Motion Sequence Block named Slide.
With MSBs, you can set parameters such as mode, home position and distance, trigger one or more motions, or establish more complex operating modes. For further information, refer to the QuickBuilder Reference Guide, available for free download from this website.
Example MSB: “Slide”[CycleMoveOut]
//move to the OUT position
move at Speed to Distance using 100,100;
wait for in position;[CycleMoveStart]
// move to the START position
move at Speed to Start using 100,100;
wait for in position;