|
Summary
|
|
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.
|
|
|
|
|
|