Sercos- Overview


SERCOS (SErial Real-time COmmunication System) is the international standard for optical communication between motion control units and drive modules. It was developed by the International Electrotechnical Commission (IEC) specifically for motion control and is defined by the IEC 1491 standard. SERCOS supports data rates up to 16 Mbits/sec over a fiber optic ring. Data can be transmitted deterministically in real time based on the loop update rate (cyclic), or at lower bandwidths for less critical operations (non-cyclic). A SERCOS-compatible communication ring must have a single controller (master) and 1 - 254 drive or I/O modules (slaves).

Also, data communication can be performed in either a synchronous or asynchronous manner. The protocol allows the user to configure the communication telegrams to send whatever data is appropriate synchronously. Data that has not been configured to reside in the communication telegrams can be sent or retrieved asynchronously by use of a Service Channel contained within the communication telegrams. Generally, synchronous data is data that is critical to real-time operation (e.g., command and feedback data, status).

SERCOS is a unidirectional serial communications protocol for connecting multiple drives (Slaves) to a motion controller (Master) over a fiber optic ring, in an industrial environment. The control and status information is organized into telegrams, and travels in a serial data stream around the SERCOS ring. All messages are synchronized according to the SERCOS cycle time, the timing of which is configured during initialization by the Master. Each Slave on the ring repeats the telegrams sent to it, sending them to the next device on the ring, and inserting its own telegram into the designated time slot in the serial data stream.

Starting at the output port of the Master, the devices are connected in the ring in a daisy-chain fashion, connecting from the output port of one device to the input port of the next device, and so on, until the ring is closed back at the input port of the Master. Up to 254 drives can be connected on a SERCOS ring, although the systems requirements for update rates and data will usually limit the number of devices to many fewer than that. SERCOS networks can operate at 2, 4, 8 or 16 Mbit/sec. Maximum distances from input port to output port can be 60 meters (plastic fiber) to 250 meters (glass fiber).


Operation Modes

The SERCOS communication interface supports three main operation modes (Torque, Velocity and Position). The operation mode defines the real-time digital messages sent between the controller and the drive(s).

Mode To Drive To Controller
Torque 16 bit Command Torque 32 bit Actual Position
Velocity 32 bit Command Velocity 32 bit Actual Position
Position 32 bit Command Position 32 bit Actual Position

In addition to the main operation modes SERCOS supports several variations. Since the communication interface is determined by the firmware/software in the controller and the firmware/software in the drive, the real-time data is configurable.

Currently the SERCOS/XMP Series firmware/software supports several operation modes. Some operation modes are drive specific while others are drive independent. Motion Engineering is constantly testing and certifying compatibility between our controller and SERCOS-compatible drives.

Most drives support the three main operation modes (Torque, Velocity and Position). Please consult your drive specific documentation regarding supported operation modes and variations.

In all modes, the controller calculates a 32-bit command position every sample. The command position is based on the current command jerk, command acceleration and command velocity.

In Torque mode, the controller sends a 16-bit command torque to the drive. The drive sends a 32-bit actual position back to the controller. Every sample, the controller calculates a new command torque based on the position error and the control algorithm. The controller closes the position and velocity loop and the drive closes the torque loop.

In Velocity mode, the controller sends a 32-bit command velocity to the drive. The drive sends a 32-bit actual position back to the controller. Every sample, the controller calculates a new command velocity based on the position error and the control algorithm. The controller closes the position loop, and the drive closes the velocity and torque loop.

In Position mode, the controller sends a command position to the drive. The drive sends a 32-bit actual position back to the controller. Every sample, the controller calculates a new command position. The drive closes the position, velocity and torque loop.


Closed-Loop Tuning

A general difference between SERCOS digital drives and conventional analog drives is that digital drives have on-board intelligence and can close position or velocity loops within the drive. In all operation modes, "tuning" requires setting parameters in the drive and the controller. Thus, an understanding of both the controller and drive control algorithm is necessary for successful drive tuning.

The controller tuning parameters can be set using Motion Console (for Windows-based systems). For more information on the controller's tuning procedures, please consult the Tuning section in the XMP Motion Controller Hardware Installation manual.

The drive's tuning parameters must be set via IDNs, and the values are determined from information supplied by the drive manufacturer. Please consult the drive-specific documentation for more information on the drive's tuning parameters. While Motion Engineering has considerable experience with the listed drives and can generally offer tuning guidelines for drive parameters, difficult tuning situations may require support from the drive vendor or manufacturer.

In Velocity mode, the controller's CONTROL ALGORITHM output controls the motor's velocity. Therefore, the drive's velocity loop must be tuned and the controller's position loop must be tuned. The tuning procedure is identical to a standard analog output XMP Series controller connected to a velocity-controlled amplifier. Note that the controller's Velocity Feed Forward term is very useful in velocity-controlled systems.

In Position mode, the controller's control algorithm is not used. The drive is responsible for the closed loop control. Therefore, the drive's velocity and position loop must be tuned. The controller's tuning parameters have no effect on the system's response.


Data Transmission

SERCOS supports two types of data transmission, cyclic and non-cyclic.

Cyclic data is the critical real-time synchronized data sent between the Master and the Slaves (drives, I/O modules). In every SERCOS cycle, the Master sends and receives fixed-length messages to the drives and I/O modules. These messages contain the motion control command signal and the feedback response for each drive or the digital I/O commands and responses for each I/O module. The cyclic data is guaranteed to reach each drive and I/O module and return to the Master at a fixed time interval, the SERCOS cycle.

Non-cyclic data is the noncritical asynchronous data. The cyclic fixed-length messages have space (called the Service Channel) reserved for non-cyclic data. In each SERCOS cycle, the Master may transmit two bytes of non-cyclic data through the Service Channel to each Slave. Note that it may require several SERCOS cycles for the Master to complete the transmission of the non-cyclic data to the Slaves. Typically, transmitting non-cyclic data is much slower than cyclic data.

SERCOS cycles are built using telegrams, which in turn contain data records for all of the Slave drives. Cyclic data is transferred in the cyclic data part of the data records. Non-cyclic data is transferred in the Service Channel of data records. Refer to the next figure.