105BCommunication processor
12.4 Universal serial interface (USS) communication
S7-1200 Programmable controller
System Manual, 11/2011, A5E02486680-05
569
The USS_PORT function handles the actual communication between the CPU and the
drives via the Point-to-Point (PtP) RS485 communication port. Each call to this function
handles one communication with one drive. Your program must call this function fast enough
to prevent a communication timeout by the drives. You may call this function in a main
program cycle OB or any interrupt OB.
The USS_DRV function block provides your program access to a specified drive on the USS
network. Its inputs and outputs are the status and controls for the drive. If there are 16 drives
on the network, your program must have at least 16 USS_DRV calls, one for each drive.
These blocks should be called at the rate that is required to control the operation of the drive.
Typically, you should call the USS_PORT function from a cyclic interrupt OB. The cycle time
of the cyclic interrupt OB should be set to about half of the minimum call interval (As an
example, 1200 baud communication should use a cyclic time of 350 ms or less).
You may only call the USS_DRV function block from a main program cycle OB.
CAUTION
Only call USS_DRV, USS_RPM, and USS_WPM from a main program cycle OB. The
USS_PORT function can be called from any OB, usually from a cyclic interrupt OB.
Do not use instructions USS_DRV, USS_RPM, or USS_WPM in a higher priority OB than
the corresponding USS_PORT instruction. For example, do not place the USS_PORT in
the main and a USS_RPM in a cyclic interrupt OB. Failure to prevent interruption of
USS_PORT execution may produce unexpected errors.
The USS_RPM and USS_WPM functions read and write the remote drive operating
parameters. These parameters control the internal operation of the drive. See the drive
manual for the definition of these parameters. Your program can contain as many of these
functions as necessary, but only one read or write request can be active per drive, at any
given time. You may only call the USS_RPM and USS_WPM functions from a main program
cycle OB.
Calculating the time required for communicating with the drive
Communications with the drive are asynchronous to the S7-1200 scan cycle. The S7-1200
typically completes several scans before one drive communications transaction is
completed.
The USS_PORT interval is the time required for one drive transaction. The table below
shows the minimum USS_PORT interval for each communication baud rate. Calling the
USS_PORT function more frequently than the USS_PORT interval will not increase the
number of transactions. The drive timeout interval is the amount of time that might be taken
for a transaction, if communications errors caused 3 tries to complete the transaction. By
default, the USS protocol library automatically does up to 2 retries on each transaction.
Table 12- 34 Calculating the time requirements
Baud rate
Calculated minimum USS_PORT call
Interval ( milliseconds )
Drive message interval timeout per
drive ( milliseconds )
1200
790
2370
2400
405
1215