Setting up SigmaLink II Encoders with SigmaWin+ and iCube Engineer
| Version Number | Description |
|---|---|
| 1.0 | Initial Version |
This application note shows how to set up SigmaLink II functionality with SigmaWin+ and use it with iCube Engineer on an iC922x controller
1. Supported Components
| Component Name | Version |
|---|---|
| iC9200 series | ≥ 2024.9 |
| iCube Engineer | ≥ 2024.9 |
| SigmaWin version | >= 7.45 |
|
Sigma-X servopack
|
>= F |
| SigmaLink-II Encoders |
2. Supported Architecture
3. Solution details
Setup Details
A Sigma-X servopack needs to be set up with a Sigma-X motors that have the SigmaLink-II encoder set up. The cable needs to have the stackable connector or be connected through a hub to an additional motor, encoder, etc.
Establish a connection via SigmaWin to the drive.
SigmaLINK II Settings need to be opened, and Self-Configuration needs to be executed. This finds and assigns addresses for all connected SigmaLINK-II encoders/devices.
Execute Self Configuration
The result of the self configuration can be seen.
Once configuration is complete, be sure to Save to Flash Memory. Note the addresses of the motors. These numbers will need to be used to programmatically select the desired motor for use. This is explained in sections below.
Power Cycle the Drive.
The servopack will power up with an A.C9 alarm. This is because a specific encoder has not been selected for use. One can choose the desired encoder/motor by entering the address in parameter 0DA0-1, or wait to make the choice in the project in iC922x.
Application code that will help choose the desired encoder/motor
Make sure that system variable EC_TOPOLOGY_OK is TRUE. This system variable is read from the PLC /Data List table. Read the Drive Parameter 0DA to see which encoder is connected to the servopack. It can be seen that the address is 16 (0x10)
Write the address of the encoder that needs to be associated with the axis using Y_WriteDriveParameter. In this example motor with address 17 (0x11) is chosen.
Writing the value only changes the value of Pn.0DA in memory, and does not write it to EEPROM (permanent memory) . To write the changes to EEPROM, perform a Y_EC_COE_SdoWrite with the following values:
Switch the power cable of the motor to the desired motor.
After the servopack powers back up. Check to make sure that the servopack EtherCAT state is 8 (OP state).
Execute an MC_Reset on the axis to get the device re-synchronized on the EtherCAT network.
The axis with the newly connected motor should now be ready for use.MC_Power will power on the desired motor.