SIMATIC
Windows Automation Center RTX
WinAC RTX V4.0
User Manual
A5E00299242-01
Copyright and Safety Notification
This manual contains notices that you should observe to ensure your own personal safety, as well as to protect the
product and connected equipment. These notices are highlighted in the manual by a warning triangle and are marked
as follows according to the level of danger:
Danger
Indicates an imminently hazardous situation that, if not avoided, will result in death or serious injury.
Warning
Indicates a pot entially hazardous situation that, if not avoided, c oul d resul t in death or severe injury.
Caution
Used with the safety alert symbol indic ates a potentially hazardous situation that, if not avoi ded, may result in
minor or moderate injury.
Caution
Used without the safety alert symbol indicates a potentially hazardous situation that, if not avoided, may result
in property damage.
Notice
NOTICE used without the safety alert sym bol indicates a potential situation that, if not avoided, may result in an
undesirable res ult or state.
Qualified Personnel
The device/system may only be set up and operated in conjunction with this manual. Only qualified personnel should
be allowed to install and work on this equipment. Qualified persons are defined as persons who are authorized to
commission, to ground, and to tag circuits, equipment, and systems in accordance with established safety practices
and standards.
Correct Usage
Note the following:
Caution
This device and its components may only be used for the applications described in the catalog or
the technical descriptions and only in connection with devices or components from other
manufacturers that have been approved or recommended by Siemens.
This product can only function correctly and safely if it is transported, stored, set up, and installed
correctly, and operated and maintained as recommended.
Trademarks
Siemens® and SIMATIC® are registered trademarks of SIEMENS AG.
STEP 7™ and S7™are trademarks of SIEMENS AG.
Microsoft ®, Windows ®, Windows XP Professional ®, Windows 2000 ®, and Internet Explorer ® are registered trademarks of
Microsoft Corporat i on.
Adobe ® and Acrobat ® are registered trademarks of Adobe Systems Incorporated.
RTX™ is a trademark of Venturcom, Inc.
Copyright Siemens Energy & Automation, Inc., 2003
All rights reserved
The reproduction, t ransm ission or use of t his docum ent or its
contents is not permitted without express written authority.
Offenders will be liable for damages. All rights, including rights
created by pat ent grant or regist ration of a utility model or
design, are reserved.
Siemens AG
Bereich Automatisierungs- und Antriebstechnik
Geschaeftsgebiet I ndustrie-Automatisierungss ystem e
Postfach 4848, D-90327 Nuernberg
Disclaimer of Liability
We have checked the contents of this manual for agreement with
the hardware and software desc ribed. B ecause deviations cannot
be precluded enti rel y, we cannot guarantee ful l agreement.
However, the data in t his manual are reviewed regularly and any
necessary c orrections included in subsequent editions. Suggest i ons
for improvement are welcom ed.
© Siemens AG 2003
Technical data subject to change.
iii
Preface
The Windows Logic Controller with Real-Time Extensions (WinLC RTX) provides the functionality of
a programmable logic controller (PLC) in a real-time, PC-based environment. WinLC RTX uses the
Venturcom Real-Time Extensions (RTX) to Windows and is fully code-compatible with the SIMATIC
product family. You can use many of the SIMATIC products, such as WinCC, with WinLC RTX.
WinLC RTX uses a PROFIBUS-DP network to control the distributed I/O, such as an ET 200M
device. WinLC RTX uses S7 communications (such as PROFIBUS, Industrial Ethernet, or MPI) for
connecting to STEP 7 or other programming software on another computer.
Audience
This manual is intended for engineers, programmers, and maintenance personnel who have a
general knowledge of programmable logic controllers.
Scope
This document describes the features and the operation of WinAC RTX version 4.0.
Other Manuals
You can find additional information in the online help for STEP 7, and in the following manuals:
Programming with STEP 7 Manual. This manual provides basic information on designing
and programming a WinLC RTX control program. Use this manual when creating a user
program with the STEP 7 automation software.
System Software for S7-300/400 System and Standard Functions Reference Manual.
WinLC RTX includes integrated system functions and organization blocks, which you can
use when programming. This manual provides y ou with descriptions of the system functions,
organization blocks, and loadable standard functions.
Working with STEP 7 Getting Started Manual. This manual explains the usage and the
functions of the STEP 7 automation software. This manual provides you with an overview of
the procedures used to configure WinLC RTX and to develop control programs.
To find these and other manuals, select the Start > Simatic > Documen tat io n menu command
from the Start menu of the computer where STEP 7 and SIMATIC NET are installed.
Preface
iv
Additional Assistance
For assistance in answering technical questions, for training on this product, or for ordering, contact
your Siemens distributor or sales office.
To contact Customer Service for Siemens in North America and in South America:
Telephone: +1 (423) 262-2522
Fax: +1 (423) 262-2289
Email: simatic.hotline@sea.siemens.com
To contact Customer Service for Siemens in Europe and in Africa:
Telephone: +49 (0) 180 5050 222
Fax: +49 (0) 180 5050 223
Email: adsupport@siemens.com
To contact Customer Service for Siemens in Asia and in the Pacific region:
Telepho ne: +8 6 1064 757 5 75
Fax: +86 1064 747 474
Email: adsupport.asia@siemens.com
For information about Venturcom Real-Time Extensions (RTX):
Internet: http://www.vci.com
v
Contents
Product Overview ............................................................................................... 1
Introduction to PC-Based Control.................................................................................1
Introducing the "Soft PLC": WinLC RTX ...................................................................................1
Introduction to the Control Panel..................................................................................2
WinLC RTX Features...................................................................................................3
System Requirements..................................................................................................4
Using Help ...................................................................................................................5
Accessing Help from the Control Panel ....................................................................................5
Using the Table of Contents......................................................................................................6
Using the Index .........................................................................................................................6
Using Full-Text Search..............................................................................................................6
Printing Help Topics ..................................................................................................................6
Changing the Language of a Help Topic ..................................................................................6
Differences between WinLC RTX and WinLC Basis.....................................................7
Installation........................................................................................................... 9
Overview of the Installation Tasks................................................................................9
Installing SIMATIC NET and the CP Card ....................................................................9
Commissioning the CP Card...................................................................................................10
Testing the CP Card................................................................................................................11
Troubleshooting the CP Card..................................................................................................11
Installing the Venturcom RTX Extensions .................................................................12
Step 1: Install the Venturcom RTX Extensions .......................................................................12
Step 2: Verify that the Venturcom RTX Extensions Are Operational......................................13
Step 3: Install the WinAC RTX Software.................................................................................13
Installing the WinAC RTX Software............................................................................14
Authorizing the WinAC RTX Software ........................................................................15
Installing the Authorization for the First Time..........................................................................15
Adding an Authorization at a Later Date .................................................................................15
Removing an Authorization .....................................................................................................16
Running the WinLC Controller without the Authorization........................................................16
Recovering the Authorization in Case of a Defective Hard Drive ...........................................16
Uninstalling the WinAC RTX Software........................................................................16
Getting Started.................................................................................................. 17
Getting Started Overview ...........................................................................................17
Prerequisites ...........................................................................................................................17
Understanding the Concepts......................................................................................18
What Is a PC Station? .............................................................................................................18
What Is an Index? ...................................................................................................................20
What Is a Submodule? ............................................................................................................21
What Is an IF Slot?..................................................................................................................23
Contents
vi
Configuring the CP Card as a Submodule..................................................................24
Use Case: Designating a CP Card as a Submodule ..............................................................24
Testing the Submodule CP Card ............................................................................................26
Configuring the Controller in STEP 7..........................................................................28
Use Case: Connecting STEP 7 to WinLC RTX.......................................................................28
Use Case: Hardware Configuration in STEP 7.......................................................................30
Controller Operations ...................................................................................... 33
Starting and Shutting Down the Controller .................................................................33
Starting WinLC RTX................................................................................................................33
Shutting Down WinLC RTX.....................................................................................................33
Closing the Control Panel .......................................................................................................33
Changin g the Operatin g Mode of the Controlle r.........................................................34
Relating the Mode Buttons and Status Indicators to the Operating Mode of the Controller...34
Using the Mode Buttons to Control Access to the Controller..................................................35
Resetting the Memory Areas: MRES Command (CPU Menu)....................................36
Using the Status Indicators ........................................................................................37
Corrective Action If the STOP Indicator is Flashing Slowly ....................................................38
Corrective Action If All Status Indicators Are Flashing............................................................38
Usin g the Tuning Panel..............................................................................................39
Using the Diagnostic Buffer........................................................................................42
Sorting Events (upper pan e l) ..................................................................................................43
Choosing Format (lower panel)...............................................................................................43
Saving the Diagnostic Buffer...................................................................................................43
Displaying Help .......................................................................................................................43
Archiving and Restoring Control Programs.................................................................44
Creating an Archive File..........................................................................................................44
Restoring an Archive File........................................................................................................44
WinLC RTX Operation When Windows Crashes........................................................45
Storing Retentive Data...............................................................................................46
Storing Information About the Controller.................................................................................46
Restoring Memory Areas on Start Up.....................................................................................48
Using SFCs to Retain Data.....................................................................................................50
Uninterruptible Power Supply (UPS).......................................................................................50
Customizing and Security Options .............................................................................51
Customizing Options...............................................................................................................51
Selecting the Language ..........................................................................................................51
Selecting the Autostart Feature...............................................................................................52
Setting the Security Options....................................................................................................52
Changing the Password..........................................................................................................53
Startu p Options fo r th e Controlle r...............................................................................54
Starting the Control ler at PC Boot...........................................................................................54
Setting the Restart Method .....................................................................................................55
Contents
vii
STEP 7 Operations...........................................................................................57
Using STEP 7 with the Controller...............................................................................57
Accessing WinLC RTX from STEP 7..........................................................................57
Configuring the Operational Parameters....................................................................58
Configuring the Operational Parameters for WinLC RTX.......................................................58
Configur ing the Start up Ch arac teristic s ..................................................................................60
Configur ing the Cloc k Memory................................................................................................60
Configur ing the Sc an C ycle.....................................................................................................61
Configur ing Rete nti ve Mem or y Areas.....................................................................................62
Configur ing the Time-of-Day Interrupt.....................................................................................63
Configur ing the Interru pts........................................................................................................64
Configuring a Cyclic Interrupt..................................................................................................65
Config uring the I/O Addresses ...................................................................................66
Assigning Addresses for the DP I/O........................................................................................66
Accessing the Data in the DP I/O Modules.............................................................................69
Specifying the Diagnostic Addresses for the DP I/O Modules................................................71
Isochronous Mode for a Constant Bus Cycle.........................................................................72
STEP 7 Components .................................................................................................73
Logic Blocks Supported by WinLC RTX .................................................................................73
Peer-to-Peer Communication Functions.................................................................................75
PROFIBUS DPV1....................................................................................................................76
Organization Blocks (OBs)......................................................................................................77
System Functions (SFCs) .......................................................................................................81
System Function Blocks (SFBs)..............................................................................................85
System Clock ..........................................................................................................................86
Tuning the Performance of the Controller......................................................87
Scan Cycle for a PC-Based Controller.......................................................................87
Tasks Performed during the Scan Cycle ................................................................................87
Methods for Managing the Performance of WinLC RTX.........................................................89
What Causes Jitter?...................................................................................................90
Priority Settings for Different Applications Can Cause Jitter...................................................90
Priorities among the WinLC Threads Can Cause Jitter..........................................................92
The Sleep Interval Forced by the Execution Monitor Can Cause Jitter..................................92
Adjusting the Priority of the Controller........................................................................94
Real-Time Subsystem Priorities..............................................................................................94
Managing the Sleep Time ..........................................................................................95
Sleep Management Techni ques .............................................................................................95
Adjusting the Minimum Sleep Time and Cycle Time............................................................100
Using SFC47 to Add Sleep Time in the Control Program.....................................................103
Adjusting the Sleep-Monitoring Algorithm of the Execution Monitor.....................................104
Example: Avoiding Jitter in the Start Time of an OB.............................................................108
Contents
viii
Reference Information ...................................................................................113
Technical Data.........................................................................................................113
Order Number .......................................................................................................................113
Features................................................................................................................................113
Technical Specifications........................................................................................................114
Execution Times ......................................................................................................117
Execution Times of Instructions............................................................................................117
Execution Times of the DP Instructions................................................................................119
Troubleshooting .......................................................................................................120
Additional Requirements for Venturcom RTX.......................................................................120
Troubleshooting Network Problems......................................................................................122
Checking the Configuration of the CP Card..........................................................................123
Improving the Performance of the CP 5613 Card.................................................................124
Responding to Diagnostic Events.........................................................................................125
System Status List (SSL)......................................................................................................126
Terminology.............................................................................................................134
1
Product Overview
Introduction to PC-Based Control
WinAC RTX includes WinLC RTX and SIMATIC Computing for process control and operator access.
WinLC RTX provides the PC-based solution for your process automation needs: a PC-based
controller that uses a PROFIBUS-DP network to connect to distributed (remote) I/O.
SIMATIC Computing provides an OPC server and other controls that allow yo u to link other
Windows applications to your process data. Refer to the SIMATIC Computing User Manual for
more information.
As shown in the following figure, you can use other SIMATIC products, such as STEP 7, ProTool Pro or
WinCC, wi th WinAC RTX.
Introducing the "Soft PLC": WinLC RTX
WinLC RTX is a programmable "soft logic" controller – a software version of an S7 controller – that runs on
a standard com puter (PC), using the Windows 2000 Pr of es s ional Mu ltiLan guage or W indows XP
Professional operating system.
WinLC RTX supports multiple networks and
connects to the distributed I/O, such as
ET 200M, by means of CP cards (CP 5613
V3 or CP 5613 V6 or later) that you install in
your computer.
As part of the SIMATIC family of automation
products, WinLC RTX can also communicate
with STEP 7 or other SIM A T I C products,
such as WinCC, ProTool Pro, or other
SIMATIC S7 controllers, including
WinLC RTX V4.0 or later, over PROFIBUS,
Ethernet, or MPI networks. This allows you
to use WinLC RTX in a typical factory
automation configuration:
Product Overview
2
Introduction to the Control Panel
The control panel corresponds to the faceplate of the S7 controllers. It
enables you to start or shut down the controller and to perform other
controller operations.
The control panel contains the following elements for working with the
controller:
Three mode buttons for changing the operating mode of the
controller
(The mode buttons are similar to the keyswitch on a hardware S7
controller)
Status indicators for the controller
An MRES button for resetting the memory areas
Menus for controller operations
An icon is displayed in the Windows taskbar whenever the controller is
operating. When the controller is operating and the control panel is closed,
you can double-click this icon to open the control panel. Opening or closing
the control panel does not influence the state of the controller. The status of
the operator switches and the LEDs are stored in the controller.
Product Overview
3
WinLC RTX Features
WinLC RTX is a software version of an S7 controller that adds real-time control provided by a real-time
subsystem (RTSS) for the Windows operating system. It executes S7 user programs like other S7
controllers and allows for easy integration with STEP 7 and standard Windows applications. WinLC RTX is
divided into two separate processes: one process runs in the real-time subsystem and one runs in the
Windows environment.
One process runs in the real-time subsystem and executes the WinLC RTX control program, giving
process control the highest priority.
The other process runs in the Windows environment and handles other operations, such as
communication and interfaces to Windows systems and applications.
WinLC RTX uses real-time extensions (RTX) to provide the following features:
Deterministic operation ensures that response is predictable and reduces "jitter" because program
execution occurs entirely in the real-time subsystem.
The control process is protected from hard disk crash and Windows system failure. WinLC RTX is
notified of all Windows shutdowns (including the "blue screen") in order to programmatically shut
down in an orderl y fashi on.
You can configure Windows to reboot automatically after a system failure. This option is accessed
by the Startup and Recovery button under the Advanced tab of System Properties in the Control
Panel.
WinLC RTX provides the following features:
Implements a comprehensive subset of the S7 logic blocks of SIMATIC controllers: Organization
Block (OB), System Function Block (SFB), and System Function (SFC)
Uses PROFIBUS-DP as its I/O subsystem, supporting DPV0 and DPV1 slaves (PROFIBUS DPV1
provides enhanced alarm and status reporting, in order to communicate with intelligent slave
devices)
Uses S7 communication services, offering compatibility with SIMATIC applications such as STEP 7
and WinCC (for tasks such as programming, debugging, or monitoring)
Supports up to 4 separate PROFIBUS-DP subnets for controlling distributed I/O
Supports the routing of S7 communications through the submodule CP cards of WinLC RTX,
allowing STEP 7 on one subnet to connect to an S7 station (such as an S7-400 controller) on a
different subnet
Provides ability to archive and restore control programs
Allows you to control the operational mode of WinLC RTX and to view status information from the
control pan el
Provides a tuning panel for optimizing system performance
Allows peer-to-peer communications between controllers (hardware or software) on the network
Supports an isochronous mode, which allows WinLC RTX to operate in constant bus cycle mode to
help eliminate jitter
Note: WinLC RTX allows you to use isochronous mode on more than one PROFIBUS-DP subnet;
however, your computer must not share the interrupt (IRQ) of the PCI slots used by the CP cards
with the Windows operating system. For example, the SINUMERIK PCU 50 provides two PCI slots
that can be used for isochronous mode on two different PROFIBUS-DP subnets.
Product Overview
4
System Requirements
To use WinAC RTX, your personal computer (PC) must meet the following criteria:
Operating
System
Microsoft Windows 2000 Professional Service Pack 3 or Microsoft
Windows XP Professional Service Pack 1
Note: You must have administrative (ADMIN) privileges to start
WinLC RTX.
Venturcom RTX version 5.1.2 or greater (included with WinAC RTX)
Note: Some hardware configurations do not support installation or
operation of Venturcom RTX. Computers known to not support
Venturcom RTX include Compaq AP400, Dell 7000 portables, HP
Kayak, and Alpha systems.
Processor and
memory
Pentium uniprocessor or multiprocessor system:
800 MHz or faster, single or dual processor
128 Mbytes or more of RAM
BIOS must support plug-and-play (ACPI, Advanced Configuration and
Power Interface)
Hard drive A hard drive with 125 Mbytes of free space
The setup program uses additional free space on drive C:
At least 1 Mbyte for the WinLC Setup program
At least 1 Mbyte for the SIMATIC Computing Setup program
(Setup files are deleted when the installation is complete)
Operator
interface
A color monitor, keyboard, and mouse or other pointing device (optional) that
are supported by Windows
Network interface At least one PCI slot with an installed Siemens CP card (CP 5613 V3 or
CP 5613 V6 or later) connected to a PROFIBUS-DP network for distributed I/O
communication
Siemens
software
Communications software
For Windows 2000: SIMATIC NET CD 7/2001 (SP5 or later)
For Windows XP: SIMATIC NET CD 11/2002
Note: The SIMATIC NET software must be installed before you install
WinAC RTX.
Programming and configuration software
STEP 7 V5.2 or later
Product Overview
5
Using Help
The online help system provides information about the control panel and the controller. This topic
provides inform ation about us ing on lin e hel p:
Accessing Help from the Control Panel
Using the Table of Contents
Using the Index
Using Full-Text Search
Printing Help Topics
Changing the Language of a Help Topic
Accessing Help from the Control Panel
To access online help from the control panel, use one of the following methods:
Click one of the following entries on the Help menu:
Help on Panel:
The Help > Help on Panel command opens the initial page of the online help for the control
panel when it is not connected to a controller. The table of contents is in the left navigation
pane.
Help on Controller (available when panel is connected to a controller):
The Help > Help on Controller command displays the initial page of the online help for the
controller that is connected to the control panel. It describes controller and control panel
operations. The table of contents is in the left navigation pane.
Introduction (available when panel is connected to a controller):
The Help > Introduction command displays a topic that provides an introduction to the
controller and the tasks you can perform with it.
Getting Started (available when panel is connected to a controller):
The Help > Getting Started command displays a topic that helps you get started when you
begin using the control panel to work with the controller for the first time.
Click the Help button in a dialog or message box.
Press the F1 key to view context-sensitive help on the currently selected item (for example, a
window, dialog, or menu).
Product Overview
6
Using the Table of Contents
The table of contents is in the left navigation pane of the browser; you can navigate to any topic by clicking
the mouse:
Click a book to open it and display the books and topics that it contains.
Click the book again to close it.
Click any topic within the table of contents to display that topic.
The topic you are currently viewing is highlighted in the table of contents.
The table of contents can be either hidden or displayed:
Click the "x" in the left navigation pane to close the table of contents.
Select the Contents tab or the "Show" link in a topic to display it. (The "Show" link appears only
when you have displayed a context-sensitive topic from the application.)
Using the Index
You can use the index to find information about a specific subject. Use one of the following methods to
access the index:
Select the Index tab in the navigation pane. (If the Index tab is not visible, click the "Show" link at
the top of the topic. The "Show" link appears only when you have displayed a context-sensitive
topic from the application.)
Click the Index button in any help topic.
Using Full-Text Search
The help system also provides full-text search capabilities. You can use the search field that is displayed
above the topic, or select the Search tab from the navigation pane. (If the Search field and Search tab are
not visible, click the "Show" link at the top of the topic. The "Show" link appears only when you have
display ed a context-sensitive topic from the application.)
You can use the Boolean operators AND, OR, and NOT and parentheses in your search expression.
Wildcards ("*") are not supported.
Printing Help Topics
To print a single topic that is displayed in your browser, right-click in the topic pane and select Print from
the context menu. Select the print options of your choice.
To print the all or part of the online manual that corresponds to the help system, click the PDF icon on the
help system navigation bar: . The help system opens the PDF file in a separate window. Use the File >
Print menu command from Adobe Acrobat Reader to print all of the online manual or selected pages.
Changing the Language of a Help Topic
The browser contains language buttons for each of the supported languages. To see the current help topic
in another language, click the language button of your choice. The current topic is displayed in the
language you selected, but the contents, index, and search features of the online help system remain in the
original language. This may be helpful if a topic is unclear and you want to read it in another language.
If you select a language that you did not install, the online help system cannot display the topic in that
language and displays a "Page not found" error. Changing the language of an online help topic does not
change the language of the control panel.
Product Overview
7
Differences between WinLC RTX and WinLC Basi s
Some of the operations of WinLC RTX differ from WinLC Basis:
WinLC RTX provides a way to shut your process down in an orderly manner in the case of a
Windows system failure.
WinLC RTX provides deterministic operation, ensuring predictable response time and reduced
"jitter".
WinLC RTX provides superior timing resolution in microseconds; WinLC Basis provides timing
resolution in milliseconds. For example, the lapse time in SFC78 and the sleep time in SFC47 have
a higher resolution in WinLC RTX.
WinLC RTX supports an isochronous mode (constant bus cycle time).
WinLC RTX and WinLC Basis differ in how the blocks of the control program are stored in the memory of
your computer:
WinLC RTX uses only the non-paged RAM memory. All blocks of the control program and all of the
process data must fit in the available non-paged memory that is also shared with other applications
(such as device drivers) that are running on the computer.
WinLC Basis runs in virtual memory that may be swapped to disk by the Windows operating
system.
Caution
Downloading a control program that is too large for the memory of the computer can lock
up the computer or cause the operation of WinLC RTX to become unstable. Non-
responsive or non-deterministic operations can cause damage to equipment and/or
injury to personnel.
Although STEP 7 and WinLC RTX do not limit the number of blocks or the size of the
control program, your computer does have a limit, based on the available disk space and
RAM memory. The limit for the size of the control program and number of blocks for your
computer can only be determined by testing a configured system against the
requirements of your control application.
9
Installation
Overview of the Installation Tasks
You must install the following products in order to complete the installation of WinAC RTX:
Communications processor (CP) card and SIMATIC NET software
Venturcom RTX extensions
WinAC RTX software
WinAC RTX Authorization
You must install the SIMATIC NET software before installing the Venturcom RTX and WinAC RTX
components.
Note: WinLC RTX allows you to use isochronous mode on more than one PROFIBUS-DP
subnet; however, your computer must not share the interrupt (IRQ) of the PCI slots used by
the CP cards with the Windows operating system. For example, the SINUMERIK PCU 50
provides two PCI slots that can be used for isochronous mode on two different PROFIBUS-
DP subnets.
Installi ng SIMATIC NET and the CP Card
WinAC RTX V4 supports the following Siemens CP cards for communicating with the distributed I/O over a
PROFIBUS-DP subnet: CP 5613 V3 or CP 5613 V6 or later
You can install up to 4 CP cards in your computer. For specific installation instructions, refer to the
documentation for your CP card.
WinAC RTX V4 requires the following SIMATIC NET software:
For Windows 2000: SIMATIC NET CD 7/2001 (SP5 or later)
For Windows XP: SIMATIC NET CD 11/2002
The SIMATIC NET software installs components that are used by WinAC RTX.
Installation
10
Commissioning the CP Card
When the SIMATIC NET software detects a new CP card in your computer, the Commissioning Wizard
automatically appears. With this wizard, you can configure device drivers for the CP card and specify how
the card is going to be used (in Configured mode or PG/PC Interface mode).
Note: If the CP card is to be used as a submodule of WinLC RTX, you must select Configured
mode. Selecting Configured mode enters the CP card in a slot (index) in the PC Station.
In the Commissioning
W izard, you assign a nam e
and an index to each CP
card. You can also sp ec ify
important parameters such
as baud rate and network
protocol (bus).
In the Commissioning
Wizard, make sure the field
“Use module for productive
operation in configured PC
station” is selected. This sets
the mode of the CP card so
that it can be used for
controller communications.
As you go through the Commissioning Wizard, use the following checklist to ensure that your CP card is
configured correctly for use with WinLC RTX.
Select the “Use module for productive operation in configured PC station” option.
Set the Bus profile to DP.
If you are not using OPC, clear the "SIMATIC NET OPC Server in configured PC station"
field and select the "Do not use a symbol file" field.
The Configuration Console appears automatically when you finish commissioning the CP card. You can
use this console to check the configuration of the CP card. WinLC RTX supports CP 5613 V3 or CP 5613
V6 or later.
Note: For some operations, such as isochronous mode, you must set the CP card to Interrupt
mode. See the following topic: Improving the Performance of the CP 5613 Card.
Installation
11
Testing the CP Card
You can verify that the CP card is installed correctly or to determine which CP card in which PCI slot is
associated with a given index. This test is especially important if you have installed more than one CP card
in your c om puter.
You use the Station Configuration Editor to check the configuration of the CP card:
1. Double-click the icon in the Windows taskbar to open the Station Configuration Editor.
2. Select the CP card in the Station Configuration Editor.
3. Click the Ring ON button.
The LEDs on the CP card at the back of your computer flash in an alternating pattern so you can
verify that you have configured the correct CP card. The computer also emits an audible beep if
the CP card is functioning.
4. Click the Ring OFF button to end the test of the CP card.
This test is especially useful if you have installed more than one CP card in the PC station and need to
verify the index location for a specific card.
Troubleshooting the CP Card
After testing the CP card, you can make changes if necessary.
You can use the Configuration Console to review or to modify the configuration settings for the CP card.
You can also improve the performance of the CP 5613 card by changing the IRQ settings.
These tasks are described in detail in the Troubleshooting section of the Reference Information.
Installation
12
Installing the Venturcom RTX Extensions
To install WinAC RTX, you must complete the following tasks:
Install the appropriate SIMATIC NET software for your operating system.
License the Ve nturc om RTX extensions.
Verify that the Venturcom RTX extensions are working.
Install the WinAC RTX software.
Note: You must have Windows administrator (ADMIN) privileges to install the Venturcom RTX
extensions and the WinAC RTX software.
The Setup program starts automatically. If the Setup program does not automatically start, browse the CD
and double-c lic k on the Setup.exe program.
After you select the
language for the
Setup program, the
Setup program
displa ys a dialog
that guides you
through the
installation tasks.
Step 1: Install the Venturcom RTX Extensions
Clicking the circle under Step 1 starts the Install Wizard for installing the Venturcom RTX extensions. The
Install Wizard prompts you to license the Venturcom RTX extensions. Enter the Venturcom PAC number
(part of the WinAC RTX package).
Note: If y ou have previously installed Venturcom RTX Version 5.1.2 or later, the installation
software detects its presence and the first circle is inactive.
Installation
13
Step 2: Verify that the Venturcom RTX Extensions Are Operational
The Install Wizard restarts your computer after installing the RTX extensions. Click the circle under Step 2
to verify that the RTX extensions are working. The Install Wizard displays the following instructions:
1. Select the Windows Start > Settings > Control Panel menu command to display the Windows
Control Panel.
2. Double-click the RTX Properties icon to display the RTX Properties dialog.
3. Click the Control tab to view the status of the RTX extensions. The Status field lists the state of the
RTX extensions (either running or stopped).
4. Click the Start RTX button to start the RTX extensions. Wait a few seconds to see that the status of
the RTX extensions changes from Stopped to Running.
Caution
Clicking the Stop RTX button before the RTX extensions have completely switched to
Running can cause the computer to become unresponsive. If this happens, you must
restart your computer to recover.
Always wait a few seconds until the requested action is complete and the display shows
current status before clicking the Start RTX or Stop RTX buttons.
5. Wait a few seconds and then click the Stop RTX button. Verify that the RTX extensions in the
Status field change to Stopped. If the Start and Stop buttons work correctly, your RTX extensions
are installed and functioning. However, this procedure verifies only a minimum level of platform
suitability for RTX.
6. If the RTX extensions are working correctly , close the RTX Properties dialog.
For uniprocessor (single processor) computers, Venturcom provides a Platform Evaluator tool that
measures the suitability of the platform for real-time control with the Venturcom RTX extension. Some
hardware, such as video cards and network cards, can add considerable jitter or interrupt latency (time-lag
between an interrupt and the handling of the interrupt) to an RTX application. The Platform Evaluator
measures timer response latencies, thread switch times, and other aspects that can affect performance
and allows various loads to be placed on the hardware while gathering these statistics. If your control
application is highly time-critical, run the Venturcom Platform Evaluator in addition to performing the basic
verification tasks of the Installation Wizard.
Note: The Platform Evaluator works only for uniprocessor systems.
Another consideration is whether your computer can be configured to provide a non-shared interrupt (IRQ)
for the CP card. Running the CP card with a shared IRQ configures the CP card to operate in Polled mode.
In order to run the CP card in Interrupt mode, you must configure your computer to provide a non-shared
IRQ. In order to use an isochronous DP cycle for communicating with the distributed I/O requires, the CP
card must run in Interrupt mode.
Running the CP card in Interrupt mode is also more efficient than running in Polled mode. If your
application is highly time-critical, refer to the section on improving the performance of the CP card.
Step 3: Install the WinAC RTX Softwa re
When you have completed the verification of the RTX extensions on your platform, you are ready to install
the components of WinAC RTX.
Installation
14
Installing the WinAC RTX Software
The WinAC RTX software includes a Setup program that guides you step by step through the installation
procedure. The Setup program begins when you click the circle under Step 3 of the setup screen. If the
Setup program does not start automatically, double-click the Setup.exe file on the CD.
Note: You must have Windows administrator (ADMIN) privileges to install the WinAC RTX
software.
If you select the "Run automatic authorization" checkbox in the Target Drive dialog, the Setup program
checks to see whether an authorization is installed on the hard disk.
If no authorization is found, a message notifies you that the software can be used only with an
authorization. You can run the authorization program immediately or you can continue the installation and
execute the authorization later.
Follow the
instructions of the
Setup wizard. From
the list of WinAC RTX
components, select
the components to be
installed.
If you get messages
from SIMATIC NET
that say the CP card
is configured for use
with SIMAT IC NET
and STEP 7, click
OK. This is a normal
part of the installation
process.
After installing the components WinAC RTX, the Setup wizard prompts you to insert the WinAC RTX
authorization diskette in drive A.
The Setup program notifies you that the installation is complete.
Installation
15
Authorizing the WinAC RTX Software
The WinAC RTX software requires a product-specific authorization (or license for use). There are separate
authorization diskettes for each of the SIMATIC automation software products. You must install the
authorization for each product.
Caution
If improperly transferred or removed, the authorization for the WinAC RTX software may
be irretrievably lost.
The Readme file on the authorization diskette contains guidelines for installing,
transferring, and removing the authorization for the WinAC RTX software. If you do not
follow these guidelines, the authorization for the WinAC RTX software may be
irretrievably lost.
Read the information in the Readme file on the authorization diskette, and follow the
guidelines in regard to transferring and removing the authorization.
Installing the Authorization for the First Time
When you install the software for the first time, a message prompts you to install the authorization. Use the
following steps to install the authorization for the WinAC RTX software:
1. When prompted, insert the authorization diskette in a drive.
2. Acknowledge the prompt.
The authorization is transferred to a physical drive, and your computer registers the fact that the
authori zat ion has been ins t all ed.
Note: Always enter drive C as the destinat ion dri ve for the auth or izat ion for WinAC RTX.
Adding an Authorization at a Later Date
If you attempt to start the WinAC RTX software and no authorization is found, a prompt appears on the
screen. If you want to install the authorization, you can do so using the AuthorsW program. The AuthorsW
program allows you to display, install, and remove authorizations. To authorize the WinAC RTX software,
follow these steps:
1. Select the Start > Simatic > AuthorsW > AuthorsW m enu command.
2. Select the Move Authorization tab from the AuthorsW dialog to display the authorizations available.
3. Select the authorization for WinAC RTX 4.0 from the list of available products on the authorization
diskette.
4. Click the right arrow to transfer the authorization from the diskette to your hard drive.
If AuthorsW is not installed on your computer, insert the WinAC RTX installation CD. When the Welcome
screen appears, click the circle for Step 3. When the Setup Components dialog appears, select the
AuthorsW checkbox. After the installation is complete, select the AuthorsW program from the Start menu
as described above.
Installation
16
Removing an Authorization
If you need to repeat the authorization (for example, if you want to reformat the drive on which the
authorization is located), you must first remove the authorization. You need the original authorization
diskette to do this.
Use the following steps to transfer the authorization back to the authorization diskette:
1. Insert the original authorization diskette in your floppy disk drive.
2. Select the Start > Simatic > AuthorsW > AuthorsW menu command.
3. From the list of all authorizations on drive C, select the authorization to be removed.
4. Select the Authorizatio n > Tran sfer menu command.
5. In the dialog box, enter the target floppy drive to which the authorization will be transferred and
confirm the dialog box.
6. The window with the list of authorizations remaining on the drive is then displayed. Close the
AuthorsW program if you do not want to remove any more authorizations.
You can then use the diskette again to install an authorization.
Running the WinLC Controller without the Authorization
If you remove (or accidentally delete) the authorization for the software, the WinLC RTX controller
continues to operate; however, a notification message appears every six minutes to alert you that the
authorization is missing.
If you install an authorization while the WinLC RTX controller is running, you must also change the
operating mode of the controller before the authorization takes effect.
Recovering the Authorization in Case of a Defective Hard Drive
If a fault occurs with the authorization file on your hard disk or on the authorization diskette, contact your
local Siemens representative.
Uninstalli ng the WinAC RTX Software
Use the following procedure to remove the WinAC RTX software from your computer:
1. Double-click the Add/Remove Programs icon in the Windows Control Panel.
2. Select the WinAC RTX component entry in the displayed list of installed software. Click
Add/Remove to uninstall the software. Each component of WinAC RTX is listed separately.
If the Remove Shared File dialog boxes appear, click No if you are unsure how to respond.
17
Getting Started
Getting Started Overview
The Getting Started section helps you to establish communications between the WinLC RTX
controller, STEP 7, and the distributed (DP) I/O by performing the following tasks:
Use the Station Configuration Editor to designate the CP card as a submodule of
WinLC RTX
Use STEP 7 to configure the controller and CP cards and to download the system blocks
The Getting Started section also helps you understand the basic concepts for setting up
WinLC RTX: PC station, Index, Submodule, and Interface (IF) Slot.
To establish communications for the WinLC RTX controller, you must perform the tasks shown in the
following figure. (Click on one of the numbered sections to see a use case describing that task.)
Prerequisites
Before you can get started, you must install the following components:
SIMATIC Communications Processor (CP) card, such as a CP 5613
SIMATIC NET communications software
WinLC RTX software
STEP 7 programming software
Note: STEP 7 can be installed either on the same computer as WinLC RTX or on a remote
computer.
Getting Started
18
Understanding the Concepts
What Is a PC Station?
The PC station functions as a software-based virtual rack for creating a PC-based automation
system. You create the PC station in the Station Configuration Editor when you install the SIMATIC
NET software. When you install WinLC RTX, it automatically appears in a slot (index) of this virtual
rack in the Station Configuration Editor. When you install and commission a CP card (set for
Configured mode), it also appears in a slot (index), but is not yet configured as a submodule of
WinLC RTX.
The PC-based controller (WinLC RTX) is similar to an S7-400 hardware controller. The following figure
shows a communication model for a hardware controller.
The hardware controller consists of modules that are
inserted into a rack. These modules communicate over
the backplane of the rack.
STEP 7 communicates with the controller (in this
example, an S7-400 CPU module) over an MPI
subnet, using a CP card that is installed in the
computer.
The controller communicates with other modules,
such as a CP module) over the backplane of the
rack.
The CP module communicates with the
distributed I/O over a PROFIBUS-DP subnet.
For this example, the S7-400 controller has a
communications submodule that allows the controller to
communicate with distributed I/O over a PROFIBUS-DP
subnet.
Getting Started
19
WinLC RTX communicates very much like the hardware controller.
Because WinLC RTX is located on your
computer, WinLC RTX uses one or more
CP cards (CP 5613 V3 or CP 5613 V6 or later)
for communicating to the distributed (DP) I/O
remotely through the PROFIBUS-DP network.
You use the Station Configuration Edi tor to
configure the CP cards as submodules.
WinLC RTX and any CP card that is not
configured as a submodule
commun icate over a software
"backplane."
If STEP 7 is installed on the same
computer as WinLC RTX, STEP 7
communicates over the software
"backplane."
WinLC RTX uses a submodule CP card
to communicate with the DP I/O.
STEP 7 on a remote computer uses a
CP card to communicate with
WinLC RTX. In this example, the local
CP card uses the software "backplane"
to communicate with WinLC RTX.
STEP 7 on a PROFIBUS-DP subnet
can communicate with WinLC RTX
through the submodule CP card.
Configuring the "Hardware" of the PC-Based Controller
In the same way that you use STEP 7 to create the control program and system blocks for a hardware
controller, you must use the Hardware Configuration tool of STEP 7 to configure the components that you
installed in the PC station. When you download the system blocks to WinLC RTX, the name of the PC
station is renamed to the name as configured by STEP 7.
After you conf igur e your P C station b oth in the St ati o n Config ur at ion Ed itor and i n ST EP 7, you can
download your control program to the PC station.
Note: To use the CP card for communicating both with STEP 7 and with the distributed I/O may
require an additional software license. See your Siemens sales representative or distributor for
more information.
Getting Started
20
What Is an Index?
An index is a numbered slot in the virtual rack of the PC station. The PC Station provides slots for
the SIMATIC components of a PC-based automation solution, including not only WinLC RTX and
CP cards, but also SIMATIC HMI and SIMATIC NET OPC.
Each slot in the PC station is assigned a number or index. When you install a SIMATIC component,
such as WinLC RTX or the CP card, the component is inserted in an index line in the Station
Configuration Editor. The Station Configuration Editor shows the configuration of your PC station.
Note: You install a CP card in a physical location (one of the PCI slots) in your computer. There is
no implied or required correspondence between this physical location and the index of the CP card
in the Station Configuration Editor.
The index number for a CP card in a PC station is its virtual slot on the virtual rack. This can be any index
number you choose. It does not have to be the same as the hardware slot number for the CP card. The
index number in the Station Configuration Editor, however, must be the same as the slot number in the
STEP 7 Hardware Configuration tool for the same component.
Getting Started
21
What Is a Submodule?
In order for WinLC RTX to communicate with the DP I/O devices on the PROFIBUS-DP network,
you must designate a PROFIBUS CP card to be a submodule for the controller. With this
submodule approach, WinLC RTX has full control over the CP card, providing optimum performance
and determinism for operating the I/O. WinLC RTX supports up to four submodules.
You can configure up to four CP 5613 cards as submodules for WinLC RTX. CP 5613 cards can be
inserted in any of the four IF slots.
To configure the CP card as a submodule, you move the CP card from an index in the PC station to
an IF slot in the controller.
After you have configured the CP card as a component of the PC station, you can use it only for SIMATIC
communications (such as MPI, TCP/IP, Industrial Ethernet, or PROFIBUS) with STEP 7, SIMATIC HMI, or
other SIMATIC controllers. For example, you can download a program from STEP 7 to WinLC RTX.
However, the CP card cannot communicate with the distributed (DP) I/O on the PROFIBUS-DP network
until y ou designate it as a submodule of the controller.
Configuring a CP card as a submodule of
WinLC RTX is like installing a CP submodule
into a slot of an S7-400 CPU.
Designating the CP card as a submodule of
WinLC RTX not only allows WinLC RTX to
use that CP card for SIMATIC
communications when WinLC RTX is active,
but also allows WinLC RTX to use that CP
card for communicating with the DP I/O.
In order for a submodule CP card to be used for SIMATIC communications with an application other than
WinLC RTX (on the PC Station), the second application must be a configured part of the PC Station.
Notice
Any change to the configuration of a submodule causes WinLC RTX to delete the control
program. You must then download a new control program and configuration.
For example: Moving the submodule CP card to a different slot, WinLC RTX recognizes
that the hardware configuration has changed and deletes the control program, even if you
had reconfigured the CP card for the same IF slot in the configuration of the PC station.
You must still reload the control program from STEP 7.
Getting Started
22
The figure shows the
diff erenc e between the CP
card as a component of
the PC station and the CP
card as a submodule of
WinLC RTX.
With the CP card
configur ed as a
component of the PC
station, WinLC RTX can
comm unic ate with STEP 7
on a remote computer, but
cannot communicate with
the DP I/O.
With the CP card
configur ed as a
submodule, WinLC RTX
can communicate with
both STEP 7 on a remote
computer (using SIMATIC
communications) and with
the DP I/O on the
PROFIBUS-DP subnet.
Getting Started
23
What Is an IF Slot?
WinLC RTX provides four interface (IF) slots for designating CP cards as submodules. WinLC RTX
must have exclusive control of any CP card that you move to an IF slot. This allows the controller to
communicate with the distributed (DP) I/O.
To use the DP network to communicate with I/O, you must configure the CP card to be a submodule of
WinLC RTX. You use the WinLC RTX Properties dialog to move the CP card to one of four interface slots,
IF1 through IF4.
The IF slot number of the
subm odule is ind epe nd ent of
the PCI hardware slot for the
CP card. However, the IF slot
number for the CP card
submodule in the Station
Configuration Editor must
match the IF slot number in the
STEP 7 Hardware
Configuration tool.
You first install both the CP
card and WinLC RTX in the PC
station. You then move the CP
card into one of the IF slots for
WinLC RTX.
For more information, refer to
the following topic: Use Case:
Designating a CP Card as a
Submodule
Getting Started
24
Configuri ng the CP Card as a Submodule
Use Case: Designating a CP Card as a Submodule
Goal: To move the CP card from the index in the PC station into an IF slot of the controller so that
WinLC RTX can communicate with DP I/O over the PROFIBUS network and to verify that
configuration.
Prerequisite: Both WinLC RTX and the CP card be assigned indices in the virtual rack of the PC
station.
Software Tool: You use the Station Configuration Editor of SIMATIC NET to move the CP card
from the virtual rack to the submodule slot of WinLC RTX.
Next Step: You configure WinLC RTX and all other components of the PC station in STEP 7.
To configure your CP card as a submodule, follow these steps:
1. Double-click the computer icon on the Windows
taskbar. The Station Configuration Editor appears. The
components screen should show the WinLC RTX station
and the CP card.
2. Select WinLC RTX and click the Edit button to display
the Edit Component dialog. You use this dialog to
change the module name and index number for the
WinLC RTX controller.
3. Click the Properties button to display the WinLC RTX
Properties dialog.
In the SubModule tab, the four submodule interfaces are listed
(IF1 to IF4).
1. Click an empty slot to highlight the IF slot.
2. Click the Add button to display the list of configured
modules in the PC station.
3. Select the CP card that you want to configure as a
submodule, and click OK.
The CP card moves from the virtual rack of the PC station to the
submodule slot of the WinLC RTX controller. (This configuration
may take several seconds.)
Getting Started
25
Note: If you need to move the CP card back to the Station Configuration Editor, select the IF slot in
the WinLC Properties dialog and click the Delete button. Removing the CP card from the IF slot
starts The SIMATIC NET commissioning wizard.
You can select an occupied interface slot (IF slot) and click the Edit button to change the interface
slot assignment for a configured CP card, or to change its name.
Notice
Any change to the configuration of a submodule causes WinLC RTX to delete the control
program. You must then download a new control program and configuration.
For example: Moving the submodule CP card to a different slot, WinLC RTX recognizes that
the hardware configuration has changed and deletes the control program, even if you had
reconfigured the CP card for the same IF slot in the configuration of the PC station. You
must still reload the control program from STEP 7.
Getting Started
26
Testing the Submodule CP Card
Goal: To verify that the submodule CP card is configured correctly.
This test is especially important if you have installed more than one CP card in your computer.
Prerequisite: You must start the WinLC RTX controller.
Software Tool: You use the Station Configuration Editor of SIMATIC NET.
After you start WinLC RTX, you can check the operation of the submodule CP card:
1. Double-click the computer icon on the Windows taskbar. The Station Configuration Editor
appears.
2. Select the WinLC RTX station and click the Edit button to display the Edit Component dialog.
3. Click the Properties button to display the WinLC Properties dialog.
4. Select the interface slot (IF slot) containing the CP card to be tested.
5. Click the Ring ON button.
The LEDs on the CP card at the back of your computer flash in an alternating pattern so you can
verify that you have configured the correct CP card. The computer also emits an audible beep if
the CP card is functioning.
6. Click the Ring OFF button to end the test of the CP card.
Getting Started
27
Viewing the Diagnostics for the CP Card
You can select an occupied
interface slot (IF slot) and click
the Diagnostics button to display
to view communication
information for a CP card. The
Submodule Network Diagnostics
dialog displays the current
version of the selected CP card
and the bus parameters.
You can also see a display of all
of the nodes on the
communication network, and the
status of each one. You must
click the Update button to build
this display, because querying
each node puts an additional
load on the communication
network.
For some operations, such as
isochronous mode, you must set
the CP card to Interrupt mode.
See the following topic:
Improving the Performance of the
CP 5613 Card.
Getting Started
28
Configuri ng the Control l er in STEP 7
Use Case: Connecting STEP 7 to WinLC RTX
WinLC RTX uses two different network protocols:
Comm unic ations with ST EP 7, SI MAT IC HMI prod uc ts, and peer-to- p eer communications
with other controllers
PROFIBUS-DP for communicating with the I/O devices on the DP subnet
In order for WinLC RTX to function as an S7 controller, it must be able to communicate both with
STEP 7 and with the distributed (DP) I/O.
The following figure shows how WinLC RTX communicates with distributed I/O over PROFIBUS-DP and
with STEP 7 over MPI.
Configuring Communications between STEP 7 and WinLC RTX
As shown in the following figure, you set the PG/PC interface to the appropriate access point to configure
STEP 7 for communicating with WinLC RTX:
For a SIMATIC PC Station within the STEP 7 project, select the PC Internal access point.
For a programming device (PG or PC) somewhere on the network (with no Station Manager),
select the access point for the CP card in the programming device.
Getting Started
29
STEP 7 on the same computer or on a PC
Station within the same STEP 7 project STEP 7 on a different computer and not part
of the STEP 7 project
Set the PG/PC Interface in STEP 7 to PC
Internal. Set the S7ONLINE access point to the CP card
that is used for S7 communications. The figure
below shows an access point for a PROFIBUS
network.
WinLC RTX can also use the S7 communication protocols (MPI, TCP/IP, Industrial Ethernet, or
PROFIBUS) for peer-to-peer communication with other controllers.
Configuring Communications between WinLC RTX and the DP I/O
To configure WinLC RTX for communicating with the DP I/O, you must designate one or more of the CP
cards as submodules of WinLC RTX. Configuring a CP card as a submodule of WinLC RTX allows
WinLC RTX to use the CP card for communicating over both MPI and PROFIBUS-DP subnets.
Notice
Do not assign a submodule CP card for direct use by applications other than WinLC RTX.
For example: if you designated a CP card as a WinLC RTX submodule, do not assign
S7ONLINE to any parameter setting for that CP card.
Failure to observe this restriction may result in an inability to configure the CP card when
WinLC RTX is downloaded.
Getting Started
30
Use Case: Hardware Configuration in STEP 7
Goal: To configure the PC station in STEP 7 and to create the system blocks for WinLC RTX.
Prerequisite: You must have installed both WinLC RTX and STEP 7.
Software Tool: You use STEP 7 to create and download the configuration and the system blocks.
Next Step: You have finished with the configuration tasks and are ready to design and test your
control progr am.
You configure the WinLC RTX project in STEP 7 as you would for any S7 hardware controller. Refer to the
STEP 7 help system and documentation for detailed information.
Using SIMATIC Manager
Create the project and PC station:
1. Select the File > New menu command to
create a new projec t.
2. Select the Insert > Station > SIMATIC PC
Station to insert a PC station into the project.
3. Change the name of the PC station to match
the name of the target PC station that you
configured with the Station Configuration
Editor on the target computer.
4. O pen the PC Stat ion folder and double- cl ic k
the Configuration icon to invoke the Hardware
Configuration application.
Using the Hardware Configuration application
Drag components from the Hardware Catalog to
specify the hardware and software configuration for
the PC station.
Insert the WinLC RTX controller (part number
6ES7 611-4SB00-0YB7) in the same index as for the
target PC station that you configured with the Station
Configuration Editor on the target computer.
Verify that the name of the WinLC RTX controller
matches the name of the WinLC RTX controller that
you configured in the target PC station.
Insert the submodule CP cards for the WinLC RTX
controller. The WinLC RTX folder in the Hardware
Catalog lists the CP card types that are available.
The submodule CP cards do not have to have the same name as in the PC Station
configuration. However, this is recommended. They must have the same type and interface
(IF) number as specified in the PC Station.
Getting Started
31
Configure the distributed (DP) I/O for each of the submodule DP networks.
Optional: Insert any CP cards that are not used as submodules for the WinLC RTX controller.
These are the CP cards installed in the virtual rack of the PC station.
Optional: In sert any HMI devices.
Optional: Configure WinLC RTX for peer-to-peer communications:
1. Select the controller name in the SIMATIC Manager.
2. Double-click the Connections icon in the right-hand pane.
3. Use NET-PRO to describe the network.
After you have configured WinLC RTX, you can use SIMATIC Manager to develop and to download your
control program.
Caution
Downloading a control program that is too large for the memory of the computer can lock
up the computer or cause the operation of WinLC RTX to become unstable. Non-
responsive or non-deterministic operations can cause damage to equipment and/or
injury to personnel.
Although STEP 7 and WinLC RTX do not limit the number of blocks or the size of the
control program, your computer does have a limit, based on the available disk space and
RAM memory. The limit for the size of the control program and number of blocks for your
computer can only be determined by testing a configured system against the
requirements of your control application.
After you have downloaded your program to WinLC RTX, you can start the controller and use STEP 7 to
monitor and modify the process variables.
Notice
Any change to the configuration of a submodule causes WinLC RTX to delete the control
program. You must then download a new control program and configuration.
For example: Moving the submodule CP card to a different slot, WinLC RTX recognizes
that the hardware configuration has changed and deletes the control program, even if you
had reconfigured the CP card for the same IF slot in the configuration of the PC station.
You must still reload the control program from STEP 7.
33
Controller Operations
Starting and Shutting Down the Controller
The controller operates independently from the control panel:
Closing the panel does not shut down WinLC RTX.
Shutting down WinLC RTX does not close the panel.
The following settings affect the starting or shutting down of the controller:
Selecting the Autostart option
Configuring the controller for start at PC boot
Starting WinLC RTX
You must have administrative (ADMIN) privileges to start WinLC RTX.
If the control panel is not open, use one of the following methods to start the control panel and WinLC RTX:
Select the Start > Simatic > PC Based Control menu command. Then select the name of your
WinLC RTX controller. (After you have downloaded the control program to your WinLC RTX, the
name in the menu matches the name in STEP 7.)
Double-click the desktop icon for WinLC RTX:
If the control panel is open, but WinLC RTX is shut down, select the CPU > Start Controller menu
command.
Shutting Down WinLC RTX
Select the CPU > Shut Down Controller menu command to shut down the WinLC RTX controller. This
action does not close the control panel. This command is only available from the control panel when the
controller is operating. After you shut down the controller, you can still change customization options.
An icon is displayed in the Windows taskbar whenever the controller is operating. When the controller is
operating and the control panel is closed, you can double-click this icon to open the control panel.
Note: To shut down the Venturcom RTX extensions after you shut down WinLC RTX, you must
either reboot your computer or else manually stop a WinAC service that is still running. Use the
Start > Control Panel > Services menu command to display the Windows Services dialog, and
then stop the SIMATIC WinAC FeatureServer service. You can then use the RTX Properties dialog
to stop the RTX extensions.
Closing the Control Panel
Select the File > Exit menu command to close the control panel.
Note: Closing the control panel does not shut down the controller.
Controller Operations
34
Changing the Operating Mode of the Controller
The control panel provides mode buttons that allow you to change the operating mode of
WinLC RTX between RUN mode and STOP mode. Like the other S7 controllers, WinLC RTX also
provides a RUN-P option that allows STEP 7 to interact with the controller in RUN mode. By clicking
the appropriate mode button (or selecting the appropriate command from the CPU menu), you
change the operating mode of the controller either to RUN mode (choosing either the RUN or RUN-
P options) or to STOP mode.
The mode buttons correspond to the keyswitch positions of an S7 hardware controller:
RUN-P: The controller executes the control program. You can use STEP 7 to interact with
the control program and to change the operating mode of the controller.
RUN: The controller executes the control program. You can use STEP 7 to monitor the
control program, but you cannot use STEP 7 to change the variables, reset the memory
(MRES), or change the operating mode of the controller.
STOP: The controller does not execute the control program. Outputs are set to their safe
states. You can use STEP 7 to modify the control program and to reset the memory
(MRES), but you cannot use STEP 7 to change the operating mode of the controller.
Relating the Mode Buttons and Status Indicators to the Operating Mode of the
Controller
The mode buttons on the control panel function like
the manual keyswitch on a hardware S7 controller.
For a hardware controller: The keyswitch
does not change position if you use STEP 7 to
change the operating mode, or if the controller
automatically changes mode (for example,
encounters an error condition that causes the
controller to change from RUN mode to STOP
mode).
For WinLC RTX: The mode buttons (RUN-P,
RUN, STOP) do not change if you use STEP 7
to change the operating mode, or if the
controller automatically changes mode.
For both a hardware controller and WinLC RTX, the
RUN and STOP status indicators show the current
operating mode of the controller. If the status indicator
shows a different operating mode than the selected
mode button, the controller has changed operating
mode, possibly due to some error in the program or
because you used STEP 7 to change the operating
mode.
Controller Operations
35
Using the Mode Buttons to Control Access to the Controller
You can use the mode button to allow or to prohibit access to the controller. As shown in the following
table, the setting of the mode button limits the type of actions that can be performed.
Mode Button Description
RUN–P Allowed:
Uploading a program from the controller to your computer
Downloading a program to the controller
Downloading individual blocks to the controller
Using STEP 7 to modify program variables and to change the operating mode of
the controller
Performing a memory reset from either WinLC RTX or STEP 7
The controller automatically goes to STOP mode when you reset the memory
from WinLC RTX. To perform a memory reset from STEP 7, you must first
change the controller to STOP mode.
Not Allowed:
Archiving and restoring a control program
RUN Allowed:
Uploading a program from the controller to your computer
Using STEP 7 programming software to monitor but not to modify variables
Using STEP 7 to change the operating mode
Performing a memory reset from WinLC RTX
The controller automatically goes to STOP mode when you reset the memory
from WinLC RTX.
Not Allowed:
Downloading a control program or individual blocks to the controller
Using STEP 7 to modify variables in the program
Archiving and restoring a control program
Performing a memory reset from STEP 7
STOP Allowed:
Uploading a program from the controller to your computer or programming device
Downloading a program or individual blocks to the controller
Performing a memory reset from either WinLC RTX or STEP 7
Archiving and restoring a control program
Not Allowed:
Using STEP 7 to change the operating mode
Controller Operations
36
Resetting the Memory Areas : MRES Command (CPU Menu)
The MRES (memory reset) command functions like a master reset of the controller by resetting the
controller to its initial (default) state. The MRES command deletes the control program and the
system data (configuration), and also disconnects any online communications (such as STEP 7,
WinCC, PROFIBUS, or peer-to-peer).
Use one of the following methods to reset the memory:
Click the MRES button on the control panel
Select the CPU > MRES menu command
Press the ALT+C+M keys
You can also use STEP 7 to perform a memory reset. However, you must use the mode buttons to
change the controller to STOP or RUN-P mode before you can reset the memory from STEP 7.
The MRES command changes the controller to STOP mode, if necessary, and then performs the following
tasks:
Deletes the entire control program from both the work memory area and the load memory area.
This includes OBs, DBs, FCs, FBs, and the system data.
Resets the memory areas (I, Q, M, T, and C) to 0.
Restores the default system configuration (for example, the size of the process-image areas, and
the size of the diagnostic buffer).
Deletes all active communications jobs (such as TIS) and all open communications.
The MRES command does not affect the submodule network addresses and does not affect the contents
of the diagnostic buffer.
The STOP indicator flashes while the memory reset is in progress. After the memory has been reset, the
diagnostics buffer is resized to its default size. Input (I) and output (Q) memory areas are also resized to
their default sizes. After a memory reset, you may need to reconfigure these values to your own
specifications.
You typically perform an MRES before downloading a new program to the controller. You must perform an
MRES if the STOP indicator on the control panel is flashing slowly to alert you to one of the following
conditions:
Errors were detected in the work memory area, such as the size of the user program exceeds the
work memory area
A power cycle followed a defective state of the controller
Controller Operations
37
Using the Status Indicators
You can use status indicators on the control panel to determine the current operating mode or to
troubleshoot an error condition. These indicators correspond to the LED indicators on a hardware
S7 PLC.
You cannot change the status of the controller by clicking the status indicators.
If the control program reaches a break point set by the STEP 7 Program Editor, both the RUN and STOP
indicators turn on while the breakpoint is active: the RUN indicator flashes, and the STOP indicator is on.
During a change from STOP mode to RUN mode, the RUN indicator flashes, and the STOP indicator is on.
When the STOP indicator turns off, the outputs are enabled.
The table below describes the different status indicators for the control panel:
Indicator Description
ON Power supply. Always on for the controller.
BATF Battery fault. Always off for the controller.
INTF This indicator lights up (solid) to show error conditions within the controller, such as
programming errors, arithmetic errors, timer errors, and counter errors.
If the control program handles the error by executing OB80, OB121, or OB122, the
INTF indicator goes off after 3 seconds if there is no subsequent error condition.
EXTF This indicator lights up (solid) to show error conditions that exist outside of the
controller, such as hardware faults, parameter assignment errors, communication
errors, and I/O fault errors.
BUSF1
BUSF2
BUSF3
BUSF4
These indicators light up (flashing) to identify fault conditions in the communication
with the distribut ed I/O.
The number of the BUSF indicator corresponds to the IF number of the submodule
that has a fault condition.
RUN
STOP Lights up (solid) to show the operating mode (RUN or STOP). When RUN is flashing
and STOP is lighted (solid):
The controller is executing a mode change from STOP to RUN/RUN-P. (Run
light blinks with 2 Hz.)
The control program has reached a breakpoint. (Run light blinks with 0.5 Hz.)
Note: The RUN and STOP indicators show the actual operating mode of the
controller. The RUN, RUN-P, and STOP mode buttons show the selected mode
(similar to the keyswitch position on a hardware PLC), which can differ from the
operating mode. For example: Changing the operating mode with STEP 7 causes the
status indicators to change, but the mode buttons do not change.
Controller Operations
38
Corrective Action If the STOP Indicator is Flashing Slowly
If the STOP indicator flashes slowly, the controller is requesting that you perform a memory reset (MRES).
To recover from this condition, you must use the MRES command to reset the controller.
Corrective Action If All Status Indicators Are Flashing
If all of the status indicators are flashing at the same time, the controller is in a defective state and has
encountered an error condition that cannot be fixed by resetting the memory with the MRES command. To
recover from this condition, you must perform the following tasks:
1. Shut down the controller.
2. Restart the controller. The STOP indicator flashes with the RUN indicator off.
3. Use the MRES command to reset the memory.
4. Use STEP 7 to download the control program and system configuration, or to restore an archived
control progr am.
Controller Operations
39
Using the Tuning Panel
You can use the tuning panel to view and adjust the current performance of the controller. The
tuning panel displays information about the scan cycle, such as the execution time and the sleep
time. By adjusting these values, you can tune the performance of the controller.
Note: The tuning panel is designed for adjusting the parameters and verifying the
performance for WinLC RTX. Because the tuning panel causes an additional load on the
computer resources, do not leave the tuning panel open during normal operation of
WinLC RTX.
To open or close the tuning panel, select the CPU > Tuning Panel menu command. WinLC RTX opens the
tuning panel, as show n belo w.
Values other than the minimum cycle time are unique to WinLC RTX and are not stored in the system
configuration. Using the tuning panel to enter a value for minimum cycle time does not change the
configuration of the controller.
Changing the controller from STOP mode to RUN mode resets the minimum scan cycle time parameter to
the value that you configured in STEP 7.
Controller Operations
40
To make any changes made with the tuning panel permanent, you must use the STEP 7 Hardware
Configuration tool.
Warning
Variation in the execution time or response time of the control program could potentially
create a situation where the equipment or application being controlled can operate
erratically and possibly cause damage to equipment or injury to personnel.
If the controller does not provide sufficient sleep time for the other applications to run,
the computer can become unresponsive to operator input, or the controller and other
applications can operate erratically. In addition, the execution of the control program can
experience non-deterministic behavior (jitter) such that execution times can vary and
start events can be delayed.
Always provide an external emergency stop circuit. In addition, always tune the sleep
time and manage the performance of the controller so that your control program
executes consistently.
Controller Operations
41
The tuning panel contains the following functional areas:
Area Description
Cycl e Time This area provides a histogram of execution times of the scan cycle over a 60-ms
range. This histogram tracks minimum (shortest) and maxi mum (longest) scan
times, as well as the percentage of scans that fall in various ranges of scan times.
To delete the historical data and start a new histogram, click Clear. A STOP-to-
RUN transition also resets the Cycle Time display, as does closing and reopening
the tuning panel.
Timing This read-only field displays the following information about the scan cycle:
Execution Time displays the execution time for the last (most current) scan, the
average scan cy cle time, the shortest (minimum) scan cycle time, and the longest
(maximum) scan cycle time.
Sleep Time displays the amount of sleep time for the last (most current) scan.
Priority Use this slider to set the priority level for the execution of WinLC RTX relative to
other applications running on your computer.
Because WinLC RTX runs at a higher priority than any Windows application, you
change the priority for WinLC RTX only if you are running other RTX applications.
Setting the priority higher means that the operating system responds to
WinLC RTX before executing lower-priority tasks. This results in less jitter in the
start times and execution time of the OBs in your program.
Timing
Adjustment Use these fields to tune the scan cycle by entering values for the minimum sleep
time and the minimum cycle time. These parameters determine the amount of
sleep time that is added at the end of the free cycle.
Click the Set button to apply these values. Click the Restore button to reset the
values to thos e cur rent l y being us ed b y the contro ller. Af ter you apply new values,
the panel stores these values for the controller and you can monitor the effect on
the execution of your control program.
To ensure that the minimum cycle time controls the sleep time for the controller,
you must configure the scan cycle monitoring time and minimum scan cycle time
parameters on the Cycle/Clock Memory tab of the Properties dialog box in STEP 7.
Set the minimum scan cycle time to a value less than the value for scan cycle
monitoring time. (The default scan cycle time is 6 seconds.)
OB
Execution Use these fields to adjust the execution monitor that enforces a maximum
execution load for the controller. These parameters determine the forced sleep
intervals within the execution of the control program.
In order for the execution time limit parameter on the tuning panel to control the
sleep time, set the execution time limit to a value that is less than the minimum
scan cycle time that you configured in STEP 7.
Controller Operations
42
Using the Diagnostic Buffer
Select the CPU > Diagnostic Buffer menu command to display the SIMATIC Diagnostic Buffer.
The Diagnos tic Buffer allows you to vie w system diagn o stic infor mation without us ing the SI MATIC STEP 7
programming software and consists of an upper panel that displays an event list, a lower panel that
displays specific event details, and controls for using the Diagnostic Buffer.
The diagnostic buffer is implemented as a ring buffer that contains single event entries. The events are
displayed in descending order by time, with the most recent event at the top. If the ring buffer is full, a new
event overwrites the oldest entry in the buffer.
The Diagnostic Buffer displays the following information:
Event List (upper panel): A list of all the events in the diagnostic buffer. The following information is shown
for each diagnostic event:
The number of the entry
The date and time of the diagnostic event
A brief description of the event
Event ID (between the upper and the lower panels): Displays the ID number of a selected event.
Event Details (lower panel): Displays the event details in either text or hexadecimal format.
If you have chosen Text format, the following details about a selected event appear in the lower panel:
A brief description.
Additional information, depending on the event, such as the address of the instruction that caused
the diagnostic event and the mode transition that was caused by the event.
The event state (incoming or outgoing).
Controller Operations
43
If a single parameter of text cannot be identified, the diagnostic buffer displays the string "###". If no text
exists for new modules or new events, the event numbers and the single parameters are displayed as
hexadecimal values.
If you have chosen Hexadecimal format, the hexadecimal values of the selected event appear in the lower
panel.
Sorting Events (upper panel)
You can sort the events listed in the upper panel by clicking the specific column:
Number (determined by time and date)
Event descr ipt ion
Choosing Format (lower panel)
You can display the diagnostic information in the lower panel in text or hexadecimal (Hex) format. In Hex
format, the hexadecimal values of the 20 bytes of the selected event are displayed. To select the format:
Click Text to display the event details in text format.
Click Hex to display the hexadecimal values of the event.
Saving the Diagnostic Buffer
To save a text file containing the event list and the detailed information for every event, click the Save
button. The text file contains the information either in text or in hexadecimal format.
Displaying Help
To display help on the diagnostic buffer, click the Help button. To display help on a specific event:
Select the event in the upper panel.
Click the Help on Event button.
Controller Operations
44
Ar chiving and Restoring Contr ol Progr ams
You can save the configuration and control program to an archive file (*.wld). You can use this
archive file like the removable memory cartridge of a hardware PLC. The archive file allows you to
easily restore the configuration and control program for the controller.
Note: A project or program from a previous release of WinLC RTX must be updated to a
WinLC RTX V4 project. Use STEP 7 to create a new project and to create a new
configuration for the WinLC RTX V4 controller and any submodules.
You cannot archive or restore a file when the controller is in RUN or RUN-P mode or shut down.
Saving the configuration of the controller and the control program to an archive file makes it easy to restore
the controller after a memory reset. However, the archive file does not function like the EEPROM cartridge
of the hardware PLC in that the controller does not automatically restore the archive file after a memory
reset (MRES). You must manually restore the archive file.
Creating an Archive File
An Archive file stores the current control program, the current system configuration, and the initial values of
the DBs. The Archive file does not store the configuration of the PC station.
To create an Archive file, select the File > Archive menu command. This command displays the Archive
Active File dialog box, which allows you to give a name to the file. The controller then creates the archive
file with the extension .wld.
You can also use the SIMATIC Manager of STEP 7 to create an Archive file. Select the File > Memory
Card File > New menu command.
Restoring an Archive File
When you restore an archive file, you reload the configuration and the control program for the controller.
You can only restore archive files of extension .wld.
Before you can restore an archive file, you must set the controller to STOP mode. Use the following
procedure to load an archived configuration and control program:
1. Click the STOP button to place the controller in STOP mode.
2. Select the File > Restore menu command.
3. Select the specific archive file to restore and click OK.
Controller Operations
45
WinLC RTX Operation When Windows Crashes
WinLC RTX supports OB84 (CPU Hardware Fault), which allows you to initiate orderly shutdown of your
process in case Windows detects an unrecoverable fault ("blue screen") or STOP error while WinLC RTX is
operating. If WinLC RTX can still operate after Windows has initiated the system shutdown procedure, and
the memory used by the real-time subsystem is not corrupted, one of the following occurs:
If WinLC RTX is in RUN mode and the user program includes OB84, WinLC RTX starts OB84 and
continues in RUN mode until the user program calls SFC46 (STP) to place the controller in STOP
mode. Windows does not complete its system shutdown until after WinLC RTX transitions to STOP
mode.
If WinLC RTX is in RUN mode and the user program does not include OB84, WinLC RTX
transitions to STOP mode and then Windows completes its system shutdown.
If WinLC RTX is in STOP mode, Windows completes its system shutdown.
If Windows is configured to reboot automatically after a STOP error occurs, WinLC RTX automatically
restarts if it is configured to start after a reboot. (To configure automatic reboot for Windows, select the
menu command Start > Settings > Control Panel and double-click System. In the System Properties
dialog box, select the Advanced tab, click Startup and Recovery, then select the "automatically reboot"
checkbox.)
When WinLC RTX is restarted, it uses the program as it was last downloaded and executes OB100 (not
OB102) if it is present. OB100 is always executed after a Windows failure, even if OB102 "Cold start" is
configured in the STEP 7 Hardware Configuration. Event 1382 (hex) is used to start OB100. The
current/last startup type is shown in the diagnostic buffer as "automatic warm reboot after non-backup
power on with system memory reset".
You can program OB100 to respond to event 1382. For more information, refer to the System Softw are for
S7-300/400 System and Standard Functions Reference Manual. To view this manual from a computer
where ST EP 7 is instal le d, s elect the Start > Simatic > Documentation > English menu command, and
double-click "STEP 7 - System and Standard Functions for S7-300 and S7-400."
The following restrictions apply when Windows is shutting down:
The WinLC RTX control panel is unavailable.
Some system functions are disabled, including SFC22, SFC23, SFC82, SFC83, and SFC84.
Block operations fail, returning an error code.
Communication with external CP cards is unavailable.
Comm unic ation with Windows app lic at ions is un avai la ble.
Events in the diagnostic buffer that occurred after the last disk update are lost.
Alarm messages may not be sent.
Communication with external systems (such as HMI devices or programming devices) is only
available if the network is connected to a configured submodule of WinLC RTX.
Cycling the power to the computer initializes all of the program variables to their default values and
empties the diagnostic buffer.
Controller Operations
46
Storing Retenti ve Data
Storing Information Abou t the Controller
WinLC RTX stores the following operational information in the active file on your hard disk:
Load memory stores the system data (configuration of the controller) and the initial values
of the blocks of the control program.
WinLC RTX stores the state of the controller, which includes the last transition of the
operating mode (STOP, RUN, or STARTUP) for the controller and the setting for the mode
button (STOP, RUN, or RUN-P).
As part of the shutdown process, WinLC RTX creates the power-down state of the
controller. The power-down state includes the contents of the diagnostic buffer, the current
values for the retentive memory areas of the controller (such as timers, counters and
M memory), and the current values for the data blocks (Work memory).
W inLC RTX updates these areas dur ing oper ati on and us es this infor mation when starting up t he
controller.
Load Memory
When you download the control program from STEP 7, WinLC RTX saves the blocks of the control
program (program blocks and system data) in the Load memory area. These blo cks include the initial
values for the process variables used by the control program.
SFC82 (CREA_DBL) allows y ou to create new blocks in Load memory during the execution of the control
program. You can use SFC84 (WRIT_DBL) to modify these blocks. The blocks created by these SFC82
are stored in the Load memory at the time that SFC82 runs.
Note: Data blocks (DBs) created by SFC22 (CREAT_DB) are not saved in the Load memory
These DBs are stored only in the Work memory.
Retentive Data
When you configure WinLC RTX in STEP 7, you can determine the ranges of retentive data for the timers
(T memory), counters (C memory), and M memory . All data blocks (DBs) in Work memory are retentive.
WinLC RTX saves the retentive memory areas as part of the power-down state. If the power-down state
was saved and the controller performs a warm restart (OB100), WinLC RTX restores the retentive memory
areas, including the values of the DBs stored in Work memory.
State of the Controller
WinLC RTX stores the current operational status of the controller and updates the status on the following
events:
Whenever the controller changes operating mode (RUN to STOP, STOP to STARTUP, or
STARTUP to RUN), WinLC RTX updates the state of the controller to show the latest transition.
Whenever the mode button on the control panel changes (STOP, RUN or RUN-P), WinLC RTX
updates the state of the mode button to show the latest action.
Controller Operations
47
Power-Down State
Under normal circumstances, WinLC RTX saves the current state of the controller and the retentive data,
including the DBs from Work memory, when you shut down the controller. (The shutdown process can be
initiated by the CPU > Shut Down Controller menu command or by shutting down Windows 2000 or
Windows XP, either by user action or by UPS signal.) WinLC RTX stores the following information from the
Wor k me mory:
Values for the retentive data in the S7 memory areas (such as T, C, M, and DB)
Diagnostic buf f er
Note: The power-down state (which includes the diagnostic buffer) is not saved in cases when
WinLC RTX terminates abnormally, such as when the computer loses power (either by turning off
the power or by power failure), or when WinLC RTX is not able to write to the hard disk, such as
follo wing a Windows crash ("Blue Sc r een ") .
The power-down state is saved at the time WinLC RTX shuts down. After WinLC RTX starts up, the power-
down state is loaded into WinLC RTX and then is deleted (to avoid problems in case of an abnormal
termination of the controller).
Shutting Down the Controller Saves the Retentive Data
The following table shows the actions that cause WinLC RTX to save the retentive data.
Retentive Data Action That Causes WinLC RTX to Save This
Data
Load memory (blocks and initial values of
the control program, DBs, and system data) Downloading the control program from STEP 7
State of the controller Changing the operating mode (RUN to STOP, or
STOP to RUN), either from STEP 7 or from the
control pan el
Successfully shutting down WinLC RTX
Power-down state Successfully shutting down WinLC RTX
Wor k me mory Successfully shutting down WinLC RTX
Retentive memory areas (T, C, M, and DBs) Successfully shutting down WinLC RTX
Diagnostics buffer Successfully shutting down WinLC RTX
Controller Operations
48
Restoring Memory Areas on Start Up
When starting the controller, WinLC RTX searches the active file for the power-down state to
determine whether the controller had been shut down correctly and performs the following tasks:
WinLC RTX restores the downloaded blocks of the control program from the Load memory.
If WinLC RTX finds the power-down state (showing that the controller had been shut down
properly and successfully), WinLC RTX updates the Work memory from the power-down
state and loads the current values (at the time that the controller was shut down) for the
retentive data.
If WinLC RTX does not find the power-down state (showing that the controller had not been
shut down correctly), WinLC RTX restores the Work memory to its initial state from Load
memory (as downloaded from STEP 7).
WinLC RTX restores state of the controller, based on the saved operating mode and the
Autostart configuration, and resets the mode button setting on the control panel.
If WinLC RTX cannot read some element of the Load memory, state of the controller, or the power-
down state), WinLC RTX starts an unconfigured (empty) controller.
Restoring Memory Followi ng a Successful Shutdown of the Controller
If the power-down status was successfully saved when shutting down the controller, WinLC RTX restores
the operational data for the controller:
WinLC RTX uses the data stored in the power-down state to restore the controller. This includes
the retentive S7 memory areas, the current values of the process blocks (Work memory), and the
contents of the diagnostic buffer.
Note: If you configured the controller for a cold restart (OB102), WinLC RTX resets the process
variables and S7 memory areas to the initial values from the Load memory.
Based on the Autostart settings, WinLC RTX restores the state of the controller to either STOP
mode or RUN mode. In case of a Windows crash or "Blue Screen," WinLC RTX will restore the
state of the controller before the Windows crash occurred. Although the controller performed a
"normal" RUN-to-STOP transition, WinLC RTX is unable to save the state of the controller during a
Windows crash.
Note: If the controller was configured for Autostart, WinLC RTX generates a startup event that
identifies the type of startup: buffered or unbuffered. (An unbuffered startup is like reloading the
control program from an EPROM file.) You can program OB100 to read this start event. For an
unbuffered startup, the variable OB100_STOP at address LW6 is set to W#16#4309.
WinLC RTX restores the mode button to the setting when the state of the controller was last saved.
After restoring and starting the controller, WinLC RTX deletes the Power-Down Status from the retentive
memory area.
Controller Operations
49
Restoring Memory if the Controller Was Not Shut Dow n Properly
If the controller was not shut down properly, WinLC RTX does not create the power-down state.
Note: If the power-down state was not created, the diagnostic buffer is not saved. When you restart
the controller, the diagnostic buffer will be empty.
If the power-down state was not saved when shutting down the controller, WinLC RTX performs the
following tasks when restarting the controller:
WinLC RTX reads the Load memory and restores the system configuration, the process variables
and S7 memory areas to the initial values configured in STEP 7.
WinLC RTX reads the state of the controller and performs an unbuffered startup. (An unbuffered
startup is like reloading the control program from an EPROM file. WinLC RTX generates a startup
event that you can program the OB100 to read.) Based on the Autostart settings, WinLC RTX sets
the controller to either STOP mode or RUN mode.
WinLC RTX restores the mode button to the setting when the controller was shut down.
Encountering Problems When Starting the Controller
If WinLC RTX cannot read (or encounters an error) some element of the retentive memory area (Load
memory, state of the controller, or power-down state), WinLC RTX starts with an unconfigured (empty)
controller. In this case, the controller is set to STOP mode with the mode button set to STOP, and the
system data and control program are deleted.
Possible causes for this problem include a hardware error in your computer, or a partial block in the
Load memory area caused by an error that occurred when WinLC RTX was writing a block to the Load
memory.
To recover from this condition, you must reload your control program and system data from STEP 7.
Note: The mode button of the controller is set to STOP mode. You can download the control
program and system data from a remote computer, but you cannot use the remote computer to set
the controller to RUN mode. You must go to the local computer for WinLC RTX and set the mode
button to RUN or RUN-P in order to place the controller in RUN mode.
Starting the Controller Aft er a Wi ndows Crash
When restarting a controller that was in RUN mode and was configured for Autostart, WinLC RTX starts the
controller in RUN mode. If OB84 (CPU Hardware Fault) had responded to a Windows crash and had
placed the controller in STOP mode before shutting down, WinLC RTX still starts the controller in RUN
mode because WinLC RTX cannot update the state setting for the controller during the shut-down
process.
If you do not want the controller to restart in RUN mode after a Windows crash, you must include code in
the startup OB (OB100 or OB102) to place the controller in STOP mode when restarted.
Controller Operations
50
Using SFCs to Retain Data
You can use SFC82 (CREA_DBL), SFC83 (READ_DBL), and SFC84 (WRIT_DBL) to save data at
significant events in your process. For example, you may want to store the recipe values into Load
memory when changing a recipe without downloading new blocks for the control program.
SFC82 and SFC84 modify the data for the control program that is stored in the Load memory.
Saving the blocks to Load memory (instead of keeping the values in Work memory) ensures that
these blocks are available even if WinLC RTX cannot save the power-down state when shutting
down the controller.
SFC82 (CREA_DBL), SFC83 (READ_DBL), and SFC84 (WRIT_DBL) create and update blocks that are
stored as part of your control program in Load memory. The blocks are created or modified in Load
mem or y when your control progr am executes these SFCs .
SFC82, SFC83, and SFC84 are asynchronous SFCs that run in the background.
Note: If you call SFC82, SFC83, or SFC84 from the startup OB (OB100 or OB102), WinLC RTX
executes these SFCs synchronously. This differs from the operation of a hardware PLC.
Like the other asynchronous SFCs, SFC82, SFC83, and SFC84 are typically long-running SFCs that can
require a relatively long time to complete. (The time for the SFC call itself will be short, but the actual
operatio n for the SFC will be execut ing in the bac kground.) In order to use as ynchr onous SF Cs , you must
allow sufficient sleep time to allow WinLC RTX to process the SFCs without encountering jitter.
Note: Do not use a polling loop that looks for the completion of an asynchronous SFC, especially
for SFC82, SFC83 , or SFC84. Because the asynchronous SFC is bein g exec ut ed in the
background, having your control program loop until the SFC finishes will extend the execution of
the OB that is performing the polling loop and can cause jitter.
Caution
Whenever your control program calls SFC82, SFC83, or SFC84, the SFC reads or writes
data to the disk. If you call these SFCs every scan (such as from OB1) or from a cyclical
OB that is executing rapidly, the constant reading or writing to the disk can cause the disk
to fail or can add jitter.
You should only call SFC82, SFC83, or SFC84 to record a significant process event,
such as a change of recipe.
Uninterruptible Power Supply (UPS)
You can use a UPS system to provide emergency power for your computer. The UPS system can
help ensure that WinLC RTX shuts down correctly and saves the power-down state in case of a
power failure.
Refer to the manufacturer's documentation for your computer and your UPS system.
Microsoft Windows 2000 and Windows XP provides a dialog for configuring the UPS for your computer:
1. Select the Start > Settings > Control Panel to display the control panel.
2. Double-click the Power Options icon to display the Power Options Properties dialog.
3. Click the UPS tab and configure the parameters for your UPS system.
4. Click Apply or OK to set the UPS properties.
Controller Operations
51
Customizing and Security Options
Customizing Options
To open the Customize dialog box, select the CPU > Options > Customize menu command. The tabs of
the dialog box allow you to customize the control panel as follows:
General
Always On Top displays the control panel on top of all other open windows.
Language
Deutsch changes the display language of the control panel to German.
English changes the display language of the control panel to English.
Français changes the display language of the control panel to French.
AutoStart
Autostart CPU sets the autostart feature that defines whether the controller starts up in STOP or
RUN mode after being shut down.
Selecting the Language
You can change the display language for the control panel menus and online help.
To change the display language, follow these steps:
1. Select the C PU > Options > Customize menu command to display the Customize dialog.
2. In the Customize dialog, select the Language tab.
3. Select the language for WinAC RTX applications.
4. Click Apply to change the language.
5. Click OK to close the Customize dialog.
The control panel automatically changes to the selected language.
Controller Operations
52
Selecting the Autostart Feature
The control panel includes an Autostart feature that defines whether the controller starts up in STOP or
RUN mode if WinLC RTX is configured to start at PC boot. (If WinLC RTX is configured for a manual start,
then the controller always starts in STOP mode.) The following table lists the parameters that the Autostart
feature uses to determine the operating mode of the controller.
Mode at Shutdown Autostart Mode on Restart
STOP No STOP mode
Yes STOP mode
RUN No STOP mode
Yes RUN mode
Note: If WinLC RTX was in RUN mode but was terminated abnormally because of a situation such
as power loss or Windows failure, then WinLC RTX always starts in STOP mode even if the
Autostart feature was selected.
Use the following procedure to enable the Autostart feature:
1. Select the C PU > Options > Customize menu command to display the Customize dialog.
2. In the Customize dialog, select the Autostart tab and select the Autostart CPU option for the
Startup Mode.
3. Click Apply to enable the Autostart feature.
4. Click OK to close the Customize dialog.
Setting the Security Options
Select the CPU > Opti on s > Secu r ity menu command to change security options. The control panel
displays the Access Verification dialog. You must enter your password in this dialog in order to make any
changes to the security settings for the controller.
Note: The default password is an empty field containing no characters. To enter the default
password, press the Enter key.
Security Level
The Security dialog allows you to set levels of password security that limit access to the controller. The
following security access options are provided:
Password: When you select Password, certain control panel operations, such as changing the
operating mode, archiving and restoring a control program, and opening the tuning panel, require
that the user enter a password.
Confirmation: When you select Confirmation, operating mode changes require that the user
acknowledge a confirmation dialog box.
None: When you select None, no confirmation or password is required.
Controller Operations
53
Password Prompt Interval
You can set the Password Prompt Interval to a time interval of your choice, from 0 to a maximum of 23
hours, 59 minutes. After you have entered your password, you are not prompted for it again until this time
interval has expired. The default setting of 0 means that you must enter a password for each protected
operation.
Shutting down and starting the controller does not affect the expiration of the Password Prompt Interval;
however, it is reset whenever you shut down the control panel. The next time you start the control panel
and access a password-protected function, you will be prompted for password entry.
Change Password
Click the Change Password button to display the Change Password dialog.
Note: If y ou create a password, but set the security level to None (disabling the password), you still
need to enter the configured password in the Access Verification dialog before you can access the
Security dialog box again.
Warning
Running the controller without confirmation or password protection increases the risk
that an operator may change the controller mode inadvertently, which could cause the
process or equipment to operate unpredictably, resulting in potential damage to
equipment and/or death or serious injury to personnel.
Exercise caution to ensure that you do not inadvertently change the operating mode, or
permit unauthorized persons to access the machine or process. Always install a physical
emergency stop circuit for your machine or process.
Changing the Password
The Change Password dialog allows you to change the current password.
Note: The default password is an empty field containing no characters. To enter the default
password, press the Enter key.
Use the following procedure to change the password:
1. In the Old Password field, enter the old password.
2. In the New Password field, enter the new password (maximum length 12 characters).
3. In the Confirm New Password field, enter the new password again.
4. Click OK to apply all the changes made in this dialog, or click Cancel to reject all changes.
To subsequently access the security options, you must enter the password at the Access Verification
dialog.
Controller Operations
54
Startup Options for the Controller
Starting the Controller at PC Boot
By default, you must start the controller manually after the computer reboots. You can, however, register
the controller to start automatically after a reboot.
If you register the controller to start at PC reboot, you can also use the Autostart feature to configure the
controller to start in RUN mode. Otherwise, the controller always starts in STOP mode..
Registering the Controller for Start at PC Boot
To register the controller to start automatically, follow these steps:
1. Shut down the controller.
2. Select the CPU > Register Controller for Start at PC Boot menu command.
WinLC RTX will now start automatically whenever you start your computer.
Unregistering the Controller for Start at PC Boot
To unregister the controller for starting automatically, follow these steps:
1. Shut down the controller.
2. Select the CPU > Unregister Controller for Start at PC Boot menu command.
WinLC RTX will now not start automatically whenever you start your computer. To start WinLC RTX, you
must manually start the controller.
Controller Operations
55
Setting the Restart Method
The restart method determines which startup OB is executed whenever the controller changes from
STOP mode to RUN mode. The startup OB allows you to initialize your control program and
variables. WinLC RTX supports two restart methods:
Warm restart: The controller executes OB100 before starting the free cycle (OB1).
A warm restart deletes the peripheral I/O (PII and PIQ), deletes the non-retentive memory
bits (M), timers (T) and counters (C), and changes the peripheral outputs to a pre-defined
safe state (default is 0). A warm restart saves the retentive memory bits, timers, counters
and data blocks (DBs).
Cold restart: The controller executes OB102 before starting the free cycle (OB1).
Like a warm restart, a cold restart deletes the peripheral I/O (PII and PIQ), deletes the non-
retentive memory bits (M), timers (T) and counters (C), and changes the peripheral outputs
to a pre-defined safe state (default is 0). A cold restart does not save the retentive memory
bits, timers, counters and data blocks (DBs), but sets these areas to their default (initial)
values.
You use STEP 7 to configure the default restart method for the controller. The default restart
method is stored in the configuration (system data) for the controller that you download with your
control progr am.
Whenever you click (using the left mouse button) the RUN or RUN-P mode button on the panel to change
from STOP mode to RUN mode, WinLC RTX uses the default restart method and executes the startup OB
that you configured.
To override the default restart method and select a different restart method, use one of the following
options for changing WinLC RTX from STOP mode to RUN mode:
Using the CPU menu (selecting either the C PU > RUN or CPU > RUN-P menu command) to
change the controller from STOP to RUN mode
Right-clicking (using the right mouse button) to select the RUN or RUN-P mode button
Both of these actions display the Restart Method dialog that allows you to select either a warm or cold
restart.
Note: If y ou have configured the confirmation security option, you must acknowledge a
confirmation dialog before the control panel displays the Restart Method dialog.
If you have configured the password security option and the password prompt interval is either 0 or
has expired, the control panel displays the Access Verification dialog for you to enter the password.
After verifying successful password entry, the control panel displays the Restart Method dialog.
After executing OB100 or OB102, WinLC RTX executes the free cycle (OB1).
57
STEP 7 Operations
Using STEP 7 with the Controller
STEP 7 provides programming and configuration tools for working with WinLC RTX. You define the
WinLC RTX configuration through the Hardware Configuration tool of STEP 7, as well as in the Station
Configuration Editor. You can develop a control program using any of the STEP 7 control programming
languages , and do wn lo ad it to WinLC RTX once you have establis h ed a con nec ti on. You also us e STEP 7
to configure operational parameters and I/O addresses for the controller.
Accessing WinLC RTX from STEP 7
To access WinLC RTX from the STEP 7 programming software, follow these steps:
1. Using the SIMATIC Manager, open the project for WinLC RTX.
2. Select the View > Online menu command to change to the "Standard Hierarchy, Online" view.
STEP 7 establishes an online connection to WinLC RTX.
STEP 7 Operations
58
Configuri ng the Oper ational Parameters
Configuring the Operational Parameters for WinLC RTX
STEP 7 provides a Hardware Configuration tool for configuring the operational characteristics for
WinLC RTX. This configuration is then stored in various SDBs in the System Data container.
After you download the System Data, WinLC RTX uses the configured parameters for the following events:
Whenever you start up the controller
On the transition to RUN mode (if you modified the hardware configuration online while WinLC RTX
was in STOP mode)
You use the Properties dialog to configure the operational parameters.
STEP 7 Operations
59
The parameters that you can access from the Properties dialog are described below:
Parameter Description
General Provides information about WinLC RTX
Startup Defines the operational characteristics of WinLC RTX for powering on or
going to RUN mode
Cycle/Clock Me mory Cycle: defines any constraints on the scan cycle (such as the minimum and
maximum scan cycle time, the size of the process image, and program
requirements relating to I/O access error reporting.)
Clock Memory: defines a memory byte to function as a "clock memory"-
each bit of this byte toggles on and off at a different frequency
Clocked Interrupts Configures the clocked interrupts (OB61 and OB62)
Time-of-Day
Interrupt Configures the operation of the time-of-day interrupts (OB10)
Interrupts Defines the priority class for the hardware interrupts (OB40), the time-delay
interrupts (OB20), the DPV1 interrupts (OB55 to OB57), and the
asynchronous error interrupts (OB82, OB83, OB85, and OB86)
Retentive Memory Defines the memory areas (M, T, and C) to be retained following a power
failure or a transition from STOP mode to RUN mode
Cyclic Interrupt Defines the operation of the cyclic interrupts (OB32 to OB36)
Diagnostics/Clock Defines the reporting of diagnostic errors and the synchronization and the
correction factor for the WinLC RTX clock
Memory Defines the amount of local data (L memory) for each priority class and the
maximum number of communication jobs that can be outstanding at one
time.
Accessing O perational Parameters
To configure any of these operational parameters in STEP 7, open the SIMATIC Manager and follow these
steps:
1. In the SIMATIC Manager, select the PC station.
2. Click the Configuration icon.
3. Right-click the WinLC icon in the Hardware Configuration rack and select Object Properties.
4. Click the tab with the name of the parameter that you want to configure (such as Cyclic Interrupt)
and enter the appro pria te v alu es in the dialog.
5. Click OK to confirm your configuration.
STEP 7 Operations
60
Configuring the Startup Characteristics
You can use the Startup tab of the STEP 7 Hardware Configuration tool to configure WinLC RTX to
perform certain tasks before going to RUN mode. The table below lists the parameters for configuring the
startup characteristics.
Parameter Description Range Default
Startup when ex pected /
actual configuration differ Startup is allowed even if I/O is not
configur ed properly Yes/No Yes
Startup after Power On Specifies what type of restart to
perform if you have selected the
autostart feature
Warm restart
Cold restart Warm
restart
Finished message by
modules Specifies ho w long WinLC RTX
waits for configured S7 I/O modules
to respond with a ready message
1 to 650
(100 ms intervals) 650
(65 s)
Transfer of parameters to
modules Specifies ho w long WinLC RTX
waits for transfer of parameters to
S7 I/O modules following a ready
message
1 to 650
(100 ms intervals) 100
(10 s)
You can also change the restart method from the WinLC RTX control panel for a particular change to RUN
or RUN-P mode.
Configuring the Clock Memory
You can use the Cy cle/Clock Memory tab of the STEP 7 Hardware Configuration to configure a byte of the
bit memory (M) area to function as a "clock memory." The following table lists the parameters and ranges
for configuring a clock memory.
Parameter Description Range Default
Clock
Memory Enables the clock memory (if enabled, you
must enter a memory byte address) Yes or No No
Memory
Byte Defines a memory byte (MB) to function as a
clock memo ry 0 to MB2047 Disabled
When this byte has been configured as clock
memory, the bits turn on and off (with a duty cycle
of 1:1) at fixed frequencies. (The eight bits in the
byte yield eight different, fixed frequencies.)
The figure shows the frequencies of the different
bits for the byte used as clock memory.
STEP 7 Operations
61
Configuring the Scan Cycle
You can use the Cycle/Clock Memory tab in the Hardware Configuration tool of STEP 7 to configure certain
aspects of the scan cycle. The table below lists the parameters for configuring the scan cycle.
Note: The minimum cycle time of WinLC RTX includes both the time required for executing the
control program and the sleep time (which allows your computer to perform other tasks).
WinLC RTX monitors the execution time of the scan cycle. If the scan cycle (execution time of the control
program plus the sleep time) exceeds the scan cycle monitoring time (watchdog), WinLC RTX starts an
error OB. The scan cycle monitoring time must be greater than the maximum execution time for the scan
cycle plus the configured sleep time.
Parameter Description
Update OB1
process image
cyclically
Indicates whether to update the process images as part of execution of OB1.
Range: Selected / Unselected
Default: Se lected
Scan cycle
monitoring time Defines the maximum time for the scan cycle. (The value for the scan cycle
includes both the execution time of the control program and the sleep time of the
controller.)
This value must be larger than the value for the minimum scan cycle time.
The following list gives a few examples of events that could cause the controller
to exceed the limit on maximum cycle time:
Starting oth er PC applicatio ns
Processing an increasing number of interrupts in the program
PC blocked by high-priority drivers or by continuous hardware activities
Process ing an err or in the control progr am
Range: 1 to 6000 ms
Default: 6000 ms
Minimum scan
cycle time Defines the minimum time for the scan cycle. (This value includes both the
execution time of the control program and the sleep time of the controller.)
The minimum scan time allows you to determine the percentage of processing
time of your computer to dedicate to the controller. For example: if you entered a
minimum scan time that is twice as long as the actual execution time of the user
program, 50% of the processing time would be dedicated to WinLC RTX and
50% could be used by another application (based on process priority).
Range: 0 to 5999 ms
Default:0 ms
STEP 7 Operations
62
Parameter Description
Size of proc ess
image input
area
Defines the overall size of the process image input area
Range: 0 to 8192 bytes
Default: 512 b ytes
Size of proc ess
image output
area
Defines the overall size of the process image output area
Range: 0 to 8192 bytes
Default: 512 b ytes
OB85 Call Up Specifies handling of I/O access errors during process image reading or writing.
The choices are:
Do not call OB85 (Never)
Call OB85 when module first fails and again when module returns to
normal operation (Coming/Going)
Call OB85 on every access while the module is failed (Always)
Range: Never, Coming/Going, Always
Default: Always
Configuring Retentive Memory Areas
You can use the Retentive Memory tab of the STEP 7 Hardware Configuration tool to configure the
following areas of memory to be retained in the event of loss of power or on a transition from STOP mode
to RUN mode:
Number of Memory bytes: up to 2048 bytes (from MB0 to MB2047)
Number of S7 timers: up to 512 timers (from T 0 to T 511)
Number of S7 counters: up to 512 counters (from C 0 to C 511)
In the event of an abnormal shutdown while the controller is running, the current values for these areas, as
well as the DBs, are lost. Otherwise, the values are retained according to the configured parameters shown
in the table below.
Note: DBs that were created by SFC22 (CREATE_DB) are not retained following a cold restart. All
other DBs are retentive following a normal shutdown.
The table below lists the parameters for configuring the retentive memory areas:
Parameter Description Range Default
Memory Bytes Enters the number of memory bytes to be retained
(starting from MB0) 0 to 2048 16
S7 Timers Enters the number of S7 timers to be retained
(starting from T 0) 0 to 512 0
S7 Counters Enters the number of S7 counters to be retained
(starting from C 0) 0 to 512 8
STEP 7 Operations
63
Configuring the Time-of-Day Interrupt
WinLC RTX supports one time-of-day interrupt (OB10). To configure OB10, use the Time-of-Day tab in the
Hardware Configuration tool of STEP 7. The table below lists the parameters for the time-of-day interrupt.
Parameter Description Range Default
Active Determines whether OB10 is automatically
activate d foll o wing a warm restart Yes/No No
Execution Selects the frequency for executing OB10 None
Once
Once per minute
Hourly
Daily
Weekly
Monthly
End of the
month
Yearly
None
Start
Date/Time Determines the starting date and time for
executing OB10
Date: day.m onth. year
Time: hours:minutes:seconds (24-hour format)
Any valid time
and date 01.01.94
00:00:00
STEP 7 Operations
64
Configuring the Interrupts
Use the Interrupts tab in the Hardware Configuration tool of STEP 7 to configure the priority class for the
interrupt OBs supported by WinLC RTX. You deselect an OB by configuring it with a priority class of 0.
The table below lists the parameters for the different interrupts:
Parameter Description Range Default
Hardware
Interrupts:
OB40
Defines the priority class
and process im age
segment for the hardware
interrupt OB
Priority class: 2 to 24
PI partition: None, 1 to
15
Priorit y Class : 16
PI partition: None
Tim e-Delay
Interrupt:
OB20
Defines the priority class
and process im age
segment for the time-delay
interrupt OB
Priority class: 2 to 24
PI partition: None, 1 to
15
Priority Class: 3
PI partition: None
DPV1 Interrupts:
OB55, OB56,
OB57
Defines the priority class for
the DPV1 interrupt OBs Priority class: 2 to 24 Priority Class: 2
Asynchronous
Error Interrupts:
OB82, OB83,
OB85, and OB86
Defines the priority class for
the asynchronous error
interrupts
Priority class: 24 to 26 Priorit y Class : 25
STEP 7 Operations
65
Configuring a Cyclic Interrupt
WinLC RTX supports cyclic interrupts OB32 to OB36. You can use the Cy clic Interrupts tab in the
Hardware Configuration tool of STEP 7 to configure a time interval for executing a cyclic interrupt OB. The
table below lists the parameters for the cyclic interrupt. To deselect a cyclic OB, configure the priority class
to 0.
Parameter Description Range Default
Priority Determines the priority class of the cyclic
interrupt Priority class:
2 to 24 OB32: 9
OB33: 10
OB34: 11
OB35: 12
OB36: 13
Execution Determines the time interval (in milliseconds)
for executing the cyclic interrupt 0 to 60000 OB32: 1000
OB33: 500
OB34: 200
OB35: 100
OB36: 50
Phase Offset Defines an amount of time (in milliseconds)
that the start of a cyclic interrupt can be
delayed in order to allow another cyclic
interrupt to finish
0 to 59999 0
Process
Image Defines the process image segment to be
updated automatically when the OB runs. None, or
1 to 15 None
Based on the time interval that you configure, WinLC RTX starts the execution of the cyclic interrupt OB at
the appropriate time. The optimum time interval for your application depends on the processing speed of
your computer and the execution time of the cyclic OB. Jitter can cause an occasional overrun in the start
event for a cyclic OB, which might cause WinLC RTX to go to STOP mode. Other factors that affect the
execution of the OB include the following situations:
The program in the OB takes longer to execute than the interval allows. If the execution of the
program consistently overruns the start event of the cyclic OB, WinLC RTX can go to STOP mode
(unless OB80 is loaded).
Programs in other priority classes frequently interrupt or take longer to execute, which causes the
controller to not execute the cyclic OB at the scheduled time. If this occasionally causes an
overrun, WinLC RTX starts the cyclic OB as soon as the first OB finishes.
STEP 7 performs some task or function that causes the controller not to execute the cyclic OB at
the scheduled time.
The sleep time of the WinLC RTX scan cycle does not affect the execution of a cyclic interrupt OB:
WinLC RTX attempts to execute the OB at the appropriate interval regardless of the amount of sleep time
that you configure for the scan. WinLC RTX provides several types of free cycle sleep management for
managing sleep time. If a cyclic interrupt OB runs too frequently or requires too much of the time allotted for
the total scan, it could cause the watchdog timer to time out (calling OB80 or going to STOP mode).
STEP 7 Operations
66
Configuring the I/O Addresses
Assigning Addresses for the DP I/O
You use the Hardware Configuration tool of the STEP 7 programming software to specify elements
and addresses for the PROFIBUS-DP configuration. You configure the following addresses for each
DP slave device on the network:
Node address and diagnostic address for each node of the network
Logical address range for the data of the I/O modules on each node
You must download the PROFIBUS-DP configuration to WinLC RTX before you attempt to operate
the PROFIBU S net work.
Each node of the DP network has a unique node address. The DP master uses this node address to
communicate with its DP slaves. The control program generally does not use the node address to
reference a data for the slave device. Your control program uses the logical address of the I/O and the
diagnostic address for the DP slave that you configured in STEP 7. Like the other S7 controllers,
WinLC RTX provides memory areas for accessing the inputs and outputs:
Peripheral input area (PI) and peripheral output area (PQ): When you configure the DP I/O in
STEP 7, you assign a range of the PI or PQ memory for each I/O module. You also assign a
diagnostic address for the I/O modules in the PI memory. The amount of the PI and PQ memory is
determined by your DP I/O configuration, but the maximum amount of peripheral I/O memory
(PI + PQ) is 16 Kbytes (16384 bytes).
Process-image input area (I) and process-image output area (Q): When you configure the
operational parameters for WinLC RTX in STEP 7, you determine the size of the I and Q memory
areas. You can configure a maximum of 8 Kbytes (8192 bytes) for both I and Q memory (up to
8 Kbytes for I memory, and up to 8 Kbytes for Q memory ). As part of the scan cycle, WinLC RTX
reads the PI memory into the corresponding I memory locations and writes the Q memory to the
corres pondi ng PQ m emory locations.
STEP 7 Operations
67
Your control
program can
access the
process image
(reading from
I memo ry and
writing to
Q memor y) .
These values
are updated
every scan.
You can also
access the
peripheral I/O
directly (reading
from PI memory
and writing to
PQ memory) by
using the Load
(L) and Transfer
(T) commands or
by using SFC 14
(DPRD_DAT)
and SFC15
(DPWR_DAT).
STEP 7 Operations
68
The following table provides an overview of the addresses that can be assigned to the DP I/O.
Address Areas Size
Process-image areas
I and Q
Inputs: 0 to 8192 bytes (configurable)
Addressed as IB0 through IBn, where n is the configured input
process image size minus 1.
Outputs: 0 to 8192 bytes (configurable)
Addressed as QB0 through QBm, where m is the configured output
process image size minus 1
Total amount for the
distributed I/O
(accessed by Load and
Transfer instructions)
16384 bytes
This memory can be any mixture of peripheral inputs (PI) and
peripheral outputs (PQ), based on the configuration of the distributed
I/O (for both digital and analog I/O). However, the PI and PQ areas
together cannot exceed the 16384-byte maximum size.
Note: The diagnostic address for a slave device is configured
in the PI memory.
Addressed as:
Inputs: PIB0 to PIBn, where n is the configured input size minus 1.
Outputs: PQB0 to PQBm, where m is the configured output size
minus 1
Total amount for
consistent data (access ed
by SFC14 and SFC15)
Up to 16384 bytes each for inputs and outputs
Maximum size per SFC14
or SFC15 244 bytes
Maximum Input/Output
data for one node Up to 244 bytes
STEP 7 Operations
69
Accessing the Data in the DP I/O Modules
During the configuration of WinLC RTX, you allocate a logical address in the Input (I) or Output (Q) area for
the data of each I/O module of the DP network. You use these addresses to access the data for the I/O
module. WinLC RTX also uses the lowest logical base address for a module for reporting the module
events to the control program.
The following table lists the methods for accessing the distributed I/O:
To access data as bytes, words, or double words (that is, as 1 byte, 2 bytes, or 4 bytes), use the
Load (L) and Transfer (T) instructions (for statement list) or the Assign Value (MOVE) instruction
(for ladder logic) to read and write the distributed inputs and outputs. You can access the I/O data
either from the process image (I) area or from the peripheral image (PI) area.
To access data that has consistency of 3 bytes or more than 4 bytes (up to 244 bytes), use SFC14
(DPRD_DAT) and SFC15 (DPWR_DAT). SFC14 and SFC15 always access the peripheral image
of the I/O module. Both SFC14 and SFC15 also allow you to access 1 byte, 2 bytes, and 4 bytes of
data.
Type of Access Method
Accessing data in byte, word (2-
byte), or double-word (4-byte) units
Data integrity is 2 bytes for
accessi ng words, and 4 bytes for
accessing double words.
Use the following instructions:
The Load instruction reads 1, 2, or 4 bytes of inputs
from the I or PI area.
The Transfer instruction writes 1, 2, or 4 bytes of
outputs to the Q or PQ area.
Accessing consistent data from a
single I/O module in units other than
1 byte, 2 bytes and 4 bytes
Use the following SFCs:
SFC14 copies all bytes from the inputs of a module
to the I, Q, M, D or L area.
SFC15 writes all bytes from the I, Q, M, D, or L
area to the outputs of a module.
STEP 7 Operations
70
As shown in the following figures, your control program can access up to 16384 bytes (each) of inputs and
outputs by using the Load (L) and Transfer (T) instructions (for statement list) or the Assign Value (MOVE)
instruction (for ladder logic).
Note: You may access any byte of the Process Image (I or Q) area, whether the byte is assigned
to physical I/O or not; however, you may only access addresses actually assigned to physical I/O
when accessing the Peripheral Image (PI or PQ) or when using SFC14 or SFC15.
SFC14 and SFC15 can access blocks of data up to 244 bytes:
SFC14 copies the complete block of data from the module's inputs to any of the specified memory
areas.
SFC15 writes the complete block of data from any of the specified memory areas to the module's
outputs.
STEP 7 Operations
71
Cross-Module Access Errors
Unlike hardware PLCs, WinLC does not allow a Load (L) or Transfer (T) instruction to access bytes of more
than one module. Consider a configuration of two output modules, each containing five bytes. Module 1 is
addressed from 10 to 14, and Module 2 is addressed from 15 to 19. OB1 contains the instructions shown
below:
L5
T PAW 14
In this example, OB122 is called because of an attempt to access by tes across a module boundary. A word
instruction at address 14 attempts to access address 14 and 15, which is prevented because the
addresses are not in the same module.
A dditional Information
For information about the Load (L) and Transfer (T) instructions, see the online help for the STEP 7
programming software and the Statement List (STL) for S7-300 and S7-400 Programming Reference
Manual. If you are programming in ladder logic, see the Assign Value instruction (MOVE) in the Ladder
Logic (LAD) for S7-300 and S7-400 Programming Reference Manual.
For information about SFC14 (DPRD_DAT) and SFC15 (DPWR_DAT), see the System Software for S7-
300 and S7-400 Sy stem and Standard Func tio ns Refer ence Manu al. To view this manual from a computer
where STEP 7 is installed, select the menu command Start > Simatic > Documentation > English, and
double-click "STEP 7 - System and Standard Functions for S7-300 and S7-400".
Specifying the Diagnostic Addresses for the DP I/O Modules
During the configuration of WinLC RTX, you allocate a diagnostic address in the peripheral input (PI) area
for each node of the DP network. You use the diagnostic address as a parameter for an SFC that accesses
the diagnostic data for a node (for example, the LADDR parameter of SFC13). Additionally, this address is
used by WinLC RTX to report node state changes (in OB86) to the control program.
Note: STEP 7 documentation sometimes refers to the diagnostic address for a node as the logical
base address of the slave or station, as opposed to the logical base address of a module.
As you use the STEP 7 Har d ware
Configuration tool to configure
WinLC RTX and the PROFIBUS-
DP network, these diagnostic
addresses are assigned above the
process-image input (I) memory
area. See the figure bel o w.
If you do not enter a specific
address, STEP 7 allocates
IB16383 for the first DP slave,
PIB16382 for the second, and so
forth.
For more information about configuring the DP diagnostic addresses, see the online help for the STEP 7
programming software.
STEP 7 Operations
72
Isochronous Mode for a Constant Bus Cycle
WinLC RTX allows you can operate the DP Master in an isochronous mode to maintain a constant bus
cycle time.
Note: WinLC RTX allows you to use isochronous mode on more than one PROFIBUS-DP subnet;
however, your computer must not share the interrupt (IRQ) of the PCI slots used by the CP cards
with the Windows operating system. For example, the SINUMERIK PCU 50 provides two PCI slots
that can be used for isochronous mode on two different PROFIBUS-DP subnets.
To implement an isochronous DP cycle, you assign a synchronous interrupt OB (OB61, OB62, OB63, or
OB64) with an associated process image partition to the DP master for synchronous update.
Each isochronous DP cycle contains the following elements:
A global control command (Send Authorization) notifies the slave devices of the start of the bus
cycle.
The cyclic inputs and outputs are updated.
Any acyclic
operations are
performed.
A variable delay
allows the next
DP cycle to start
on the next
mu ltiple of the
configured cycle
time.
During the bus cycle, two events signal the control program:
At the end of the I/O update, an interrupt schedules the synchronous OB for execution.
At the start of the succeeding cycle (when the Send Authorization command is being transmitted to
the slave devices), an event signals WinLC RTX that further execution of SFC126 and SFC127
should return an error.
Between the two events (between the interrupt and the transmission of the global control command), the
synchronous OB can call SFC126 and SFC127 to execute the sy nchronous updating of the process image
partition that was assigned to the synchronous OB. If these SFC calls execute without error, the I/O update
is synchronized to the process image partition update and occurs at a constant interval between updates.
You configur e the DP bus c ycle whe n you co nf igure ne twor k properties for the DP m aster.
System Requirements for an Isochronous DP Cycle
For an isochronous DP cycle, you must have a CP 5613 card, revision 6 or higher operating in interrupt
mode.
STEP 7 Operations
73
STEP 7 Components
Logic Blocks Supported by W i nLC RTX
Like the other S7 PLCs, WinLC RTX provides several types of logic blocks for processing the user
program: organization blocks (OBs), system functions (SFCs), and system function blocks (SFBs). These
blocks are an integral part of WinLC RTX.
WinLC RTX supports the following STEP 7 logic blocks. For more information, see the online help for
STEP 7 or refer to the System Software for S7-300/400 System and Standard Functions Reference
Manual. To view this manual from a computer where STEP 7 is installed, select the menu command Start
> Simatic > Documentation > English, and double-click "STEP 7 - System and Standard Functions for
S7-300 and S7-400".
Organization Blocks (OBs) System Functions (SFCs) System Function Blocks (SFBs)
OB1 SFC0 to SFC6 SFB0 to SFB5
OB10 SFC11 to SFC15 SFB8 and SFB9
OB20 SFC17 to SFC24 SFB12 and SFB13
OB32 to OB36 SFC26 to SFC34 SFB14 and SFB15
OB40 SFC36 to SFC44 SFB22 and SFB23
OB55 to OB57 SFC46 and SFC47 SFB32
OB61 and OB62 SFC49 to SFC52 SFB52 to SFB54
OB80 SFC54 to SFC59 SFB56001 and SFB65002
OB82 to OB86 SFC62
OB100 SFC64
OB102 SFC78 to SFC80
OB121 and OB122 SFC82 to SFC84
SFC126 and SFC127
Note for SFC22 and SFC23
SFC22 and SFC23 return error code 8092 in the event of a Windows operating system failure ("blue
screen"). Applications that need to continue operating after a Windows failure can check for this error code.
STEP 7 Operations
74
Notes for SFC82, SFC83, and SFC84
In contrast to the S7-300, WinLC RTX supports an asynchronous interface for SFC82 to SFC84. WinLC
RTX allows both the first call (with REQ = 1) and the second call (with REQ = 0) in STARTUP so the action
can be completed in STARTUP.
The normal STEP 7 error codes apply for SFC82, SFC83, and SFC84, with the following additional
considerations:
WinLC RTX has a limit of 32 outstanding SFC82, SFC83, and SFC84 jobs. If this limit is exceeded,
these SFCs return error code 80C3.
SFC82, SFC83, and SFC84 return error code 8092 in the event of a Windows operating system
failure ("blue screen"). Applications that need to continue operating after a Windows failure should
check for this error code.
Additional S7 Blocks
In addition to these system blocks, you can use these other S7 blocks to create the control program:
Function (FC): WinLC RTX supports up to 65,536 FCs (FC0 to FC65535). Each FC can contain up
to 65,570 bytes.
Function block (FB): WinLC RTX supports up to 65,536 FBs (FB0 to FB65535). Each FB can
contain up to 65,570 bytes.
Data block (DB): WinLC RTX supports up to 65,535 DBs (DB1 to DB65535). (DB0 is reserved.)
Each DB can contain up to 65,534 bytes.
The number and size of FCs, FBs, OBs, and DBs are also limited by the amount of available system
memory.
For more information about the instruction list supported by WinLC RTX, see the sections on technical
data, organization blocks, system functions, system function blocks, execution times of instructions and
execution times of DP instructions.
STEP 7 Operations
75
Peer-to-Peer Communication Functions
Like other S7 controllers, WinLC RTX provides peer-to-peer communications between controllers on the
network. The controllers can be either hardware or software logic controllers. The table below lists the
SFBs and SFCs that WinLC RTX supports for peer-to-peer communications:
SFB/SFC Designation Description
SFB8
SFB9 USEND
URCV Exchange data using a send and a receive SFB
SFB12
SFB13 BSEND
BRCV Exchange blocks of data of variable length between a send
SFB and a rece ive SF B
SFB14
SFB15 GET
PUT Read data from a remote device
Write data to a remote device
SFB22
SFB23 STATUS
USTATUS Specific query of the status of a remote device
Receive status messages from a remote devices
SFC62 CONTROL Query the status of a connection
For more information on these functions, refer to the System Software for S7-30 0/ 400 Sy s tem and
Standard Functions Reference Manual. To view this manual from a computer where STEP 7 is installed,
select the menu command Start > Simatic > Documentation > English, and double-click "STEP 7 -
System and Standard Functions for S7-300 and S7-400".
STEP 7 Operations
76
PROFIBUS DPV1
DPV1 extensions to PROFIBUS-DP allow the enhanced communication required by complex slave
devices. This enhanced communication includes acyclic data exchange, alarm and status messaging, and
the transmission of complex data types. WinLC RTX provides support for the following DPV1 functionality:
DP-Norm, DP-S7, DPV1, and DPV1 S7-compliant slaves
Alarm and status OBs for processing DPV1-defined events, including:
– OB40 (process alarm)
– OB55 (status alarm)
– OB56 (update alarm)
– OB57 (manufacturer-specified alarm)
– OB82 (diagnostic alarm)
– OB83 (module pull/plug alarm)
New data set read and write function blocks:
– SFB52 (RDREC, Read Data Set)
– SFB53 (WRREC, Write Data Set)
– Execution of SFB54 (RALRM, read alarm data) in the context of the triggering alarm
Station and interface address
Buffering of alarms received in DP mode CLEAR
For WinLC RTX to support DPV1, configure the CP card to be a DP Master. To select DP Master, follow
these steps from the SIMATIC Manager:
1. Open the Hardware Configuration for your PC Station.
2. Double-click your CP card in the corresponding submodule slot of your WinLC RTX.
3. Select the Operating Mode tab of the CP card Properties dialog.
4. Select DP Master and set the DP mode to DPV1.
STEP 7 Operations
77
Organization Blocks (OBs)
Organization blocks (OBs) are the interface between the operating system of the controller and the control
program. You can use OBs to execute specific components of the user program for the following events:
When the controller starts and restarts
Cyclically or at a specific time interval
At certain times or on certain days
After running for a specified period of time
When errors occur
When a hardware interrupt occurs
The control program in an OB can contain up to 65,570 bytes.
OBs are processed according to the priority assigned to them. A higher number indicates a higher priority
class. The table below lists the OBs that are supported by WinLC RTX.
OB Description Priority Class
OB1 Main program cycle 1 (lowest)
OB10 Time-of-day interrupt 2 to 24
OB20 Time-dela y inter rupt 2 to 24
OB32 to OB36 Cyclic interrupts 2 to 24
OB40 Hardware interrupt 2 to 24
OB61 and OB62 Synchronous cycle interrupts 25 (default)
OB80 Ti me error 26
OB82 Diagnostic int err upt 24 to 26 (or 28)*
OB83 Module remove/insert interrupt 24 to 26 (or 28)*
OB84 CPU hardware fault 26 (or 28)*
OB85 P r iority class error 24 to 26 (or 28)*
OB86 Rack failure 24 to 26 (or 28)*
OB100 Warm restart 27
OB102 Cold restart 27
OB121 Programming error
OB122 I/O access error
Priority class of the OB where the
error occurred
* Priority class 28 during STARTUP, user-configurable priority class (from 24 to 26) in RUN mode.
STEP 7 Operations
78
OBs for the Main Program Cycl e, Cold Restart, and Warm Restart
The table below shows OBs for the main program cycle and cold and warm restarts. WinLC RTX provides
OB1 (main program cycle) for continuously executing the user program. On the transition from STOP mode
to RUN mode (or RUN-P mode), WinLC RTX executes OB100 (warm restart) or OB102 (cold restart),
based either on the hardware configuration for WinLC RTX or which restart option was selected from a
dialog box displayed by the WinLC RTX control panel. After OB100 (or OB102) has been successfully
executed, WinLC RTX executes OB1.
Organization Block (OB) Start Event (in Hex) Priority Class
Main program cycle OB1 1101, 1103, 1104 1
Warm restart OB100 1381, 1382 27
Cold restart OB102 1385, 1386 27
Interrupt OBs
WinLC RTX provides a variety of OBs that interrupt the execution of OB1. The table below lists the different
interrupt OBs that are supported by WinLC RTX. These interrupts occur according to the type and
configuration of the OB.
The priority class determines whether the controller suspends the execution of the user program (or other
OB) and executes the interrupting OB. You can change the priority class for the interrupt OBs.
Interrupts Start Event (in Hex) Default Priority Class
Time-of-Day Interrupt OB10 1111 (OB10) 2
Time-Delay Interrupt
Range: 1 ms to 60000 ms OB20 1101 (OB20) 3
Cyclic Interrupt
Range: 1 ms to 60000 ms
The practical minimum time is based
on the performance of the computer
and the size of the user program.
OB32
OB33
OB34
OB35
OB36
1133
1134
1135
1136
1137
9
10
11
12
13
Hardware interrupt OB40 1141 (channel1) 16
If WinLC RTX has been configured to execute a particular interrupt OB, but that OB has not been
downloaded, WinLC RTX reacts in the following manner:
If OB10, OB20, OB40, OB55, OB56, or OB57 is missing and OB85 has not been downloaded,
WinLC RTX changes operating mode (from RUN to STOP).
WinLC RTX remains in RUN mode if a cyclic interrupt OB (OB32 to OB36) is missing. If these OBs
cannot be executed at the specified time and OB80 has not been downloaded, WinLC RTX
changes from RUN mode to STOP mode.
Note: If you schedule a cyclic interrupt OB (OB32 to OB36) to be executed at a specific interval,
make certain that the program can be executed within the time frame and also that your control
program can process the OB within the allotted time.
STEP 7 Operations
79
Error OBs
WinLC RTX provides a variety of error OBs. Some of these error OBs have the configured (the user-
assigned) priority class, while others (OB121 and OB122) inherit the priority class of the block where the
error occurred.
The local variables for OB121 and OB122 contain the following information that can be used by the
program to respond to the error:
The type of block (byte 4) and the number (bytes 8 and 9) where the error occurred
The address within the block (bytes 10 and 11) where the error occurred
If the start event occurs for a particular error OB that has not been downloaded, WinLC RTX changes
operating mode from RUN to STOP.
STEP 7 Operations
80
WinLC RTX supports the following error OBs:
Error or Fault Start Event (in Hex) Default
Priority Class
Time error OB80 3501, 3502, 3505, 3507 26
Diagnostic Interrupt OB82 3842, 3942 26
Insert/remove module interrupt OB83 3861, 3863, 3864, 3961, 3865 26
CPU hardware fault
(W indows "bl ue scr een ") OB84 3985 26 (or 28)
Priority class error:
Start event occurs for an OB
that has not been
downloaded.
WinLC RTX attempts to
access a module or DP
slave that is defective or not
plugged in.
WinLC RTX attempts to
access a block (such as a
DB) that has not been
downloaded or has been
deleted
OB85 35A1, 35A3, 39B1, 39B2 26
Rack failure (distributed I/O): a
node in the PROFIBUS-DP subnet
has failed or has been restored.
OB86 38C4, 39C4, 38C5, 39C5,
38C7, 38C8 26 (or 28)
Programming error
(For example: the control program
attempts to address a timer that
does not exist.)
OB121 2521, 2522, 2523, 2524, 2525,
2526, 2527, 2528, 2529, 2530,
2531, 2532, 2533, 2534, 2535,
253A; 253C, 253E
I/O access error
(For example: the control program
attempts to access a module that
is defective or is not plugged in.)
OB122 2942, 2943
Same priority
class as the
OB in which
the error
occurred
STEP 7 Operations
81
System Functions (SFCs)
WinLC RTX provides SFCs, which are system functions that perform various tasks. The control program
calls the SFC and passes the required parameters; the SFC performs its task and returns the result.
WinLC RTX allows a maximum of 5 instances of the asynchronous system function SFC51 (index
B1, B3) to be running.
WinLC RTX allows a maximum of 20 asynchronous SFCs from the following set to be running:
SFC11, SFC13, SFC55, SFC56, SFC57, SFC58, and SFC59.
WinLC RTX allows a maximum of 32 asynchronous SFCs in any combination from the following set
to be running: SFC82, SFC83, and SFC84.
SFCs That Can Cause the Scan Cycle to Vary
The following SFCs can cause the scan cycle to vary ("jitter"):
SFC22 (CREAT_DB)
SFC23 (DEL_DB)
SFC52 (WR_USMG)
Execution Times
The following table lists the execution times for the SFCs supported by WinLC RTX. Execution times for
asynchronous SFCs refer to the time for the SFC call, not the time for the job to complete.
Note: The execution times were measured on a SINUMERIK PCU50 1.2 GHz computer. Tuning
settings: 9000 µs execution time limit, 90% maximum execution load, and 1000 µs forced execution
sleep. Actual execution times may vary, depending on your computer.
SFC Name Description Execution
Time
SFC0 SET_CLK Sets the system clock 1.33 µs
SFC1 READ_CLK Reads the system clock 2.17 µs
SFC2 SET_RTM Sets the run-time meter 5.84 µs
SFC3 CTRL_RTM Starts or stops the run-time meter 6.20 µs
SFC4 READ_RTM Reads the run-time meter 0.67 µs
SFC5 GADR_LGC Queries the logical address of a channel 2.34 µs
SFC6 RD_SINFO Reads the start information of an OB 2.18 µs
SFC11 DPSYNC_FR Synchronize groups of DP slaves N/A
SFC12 D_ACT_DP Deactivating and activating of DP slaves N/A
STEP 7 Operations
82
SFC Name Description Execution
Time
SFC13 DPNRM_DG Reads the diagnostic data of a DP slave
DP configuration tested: one ET 200M slave with
one 8-input/8-output module and one 16-output
module
N/A
SFC14 DPRD_DAT Reads the consistent data from a DP slave N/A
SFC15 DPWR_DAT Writes the consistent data to a DP slave N/A
SFC17 ALARM_SQ Generates an acknowledge abl e block-related
message N/A
SFC18 ALARM_S Generates an unac knowledgeable block -related
message N/A
SFC19 ALARM_SC Queries the status for the last message (SFC17
or SFC18) N/A
SFC20 BLKMOVB Copies variables 2.66 µs
SFC21 FILL Initializes a memory area
1 word 2.5 µs
50 words 3.18 µs
100 words 3.84 µs
SFC22 CREAT_DB Creates a data block in work memory 6.79 µs
SFC23 DEL_DB Deletes a data block. WinL C RTX allows an
application to delete a non-sequence relevant
data block .
2.27 µs
SFC24 TEST_DB Provides information about a data block. In
WinLC RTX, SFC24 can return DB length and
write protection flags for non-sequence relevant
data blocks, although it returns error code 80B2
for non-sequence relevant data blocks.
1.18 µs
SFC26 UPDAT_PI Updates the process-image input table
DP configuration tested: one ET 200M slave with
one 8-input/8-output module and one 16-output
module
N/A
SFC27 UPDAT_PO Updates the process-image output table N/A
STEP 7 Operations
83
SFC Name Description Execution
Time
SFC28 SET_TINT Sets the time-of-day interrupt (OB10) 2.84 µs
SFC29 CAN_TINT Cancels the time-of-day interrupt (OB10) 1.65 µs
SFC30 ACT_TINT Activates the time-of-day interrupt (OB10) 1.17 µs
SFC31 QRY_TINT Queries the time-of-day interrupt (OB10) 1.51 µs
SFC32 SRT_DINT Starts the time-delay interrupt (OB20) 12.88 µs
SFC33 CAN_DINT Cancels the time-delay interrupt (OB20) 1.47 µs
SFC34 QRY_DINT Queries the time-delay interrupt (OB20) 1.52 µs
SFC36 MSK_FLT Mask sy nchronous errors 0.99 µs
SFC37 DMSK_FLT Unmask synchronous errors 1.00 µs
SFC38 READ_ERR Read the error register 0.99 µs
SFC39 DIS_IRT Disables the processing of all new interrupts 0.99 µs
SFC40 EN_IRT Enables the processing of new interrupts 1.01 µs
SFC41 DIS_AIRT Disables the processing of new interrupts with
higher priority than the current OB 0.66 µs
SFC42 EN_AIRT Enables the processing of new interrupts with
higher priority than the current OB 1.67 µs
SFC43 RE_TRIGR Retriggers the watchdog timer (monitoring the
cycle time) 8.44 µs
SFC44 REPL_VAL Transfers a value to ACCU1 (accumulator 1) 8.69 µs
SFC46 STP Changes the operating mode to STOP N/A
SFC47 WAIT Delays the execution of the user program by the
specified number of microseconds, rounded up to
the nearest multiple of the HAL timer period.
248 µs
SFC49 LGC_GADR Queries the module slot belonging to a logical
address 1.73 µs
SFC50 RD_LGADR Queries all of the logical addresses of a module 3.99 µs
SFC51 RDSYSST Reads all or part of a system status list 10.65 µs
STEP 7 Operations
84
SFC Name Description Execution
Time
SFC52 WR_UMSG Writes a user element to the diagnostics buffer 8.35 µs
SFC54 RD_PARM Read the defined par ameter 2.67 µs
SFC55 WR_PARM Write the defined parameter 3.02 µs
SFC56 WR_DPARM Write the default parameter 1.69 µs
SFC57 PARM_MOD Assign the parameters to a module 1.68 µs
SFC58 WR_REC Write a data record 3.02 µs
SFC59 RD_REC Read a data record 3.01 µs
SFC62 CONTROL Check status of an SFB instance N/A
SFC64 TIME_TCK Reads the time from the system clock 5.3 µs
SFC78 OB_RT Reports OB run-time information, with resolution
to the nearest multiple of the HAL timer period. N/A
SFC79 SET Set a range of outputs 1.18 µs
SFC80 RESET Reset a range of outputs 1.17 µs
SFC82 CREA_DBL Creates a block in load memory N/A
SFC83 READ_DBL Copies data from a block in load memory N/A
SFC84 WRIT_DBL Writes to Load Memory blocks so data is saved
immediately. Load memory blocks that are used
to recover from an abnormal termination can be
updated while the progr am is running. Use
SFC84 only for larger segments of a database,
not for frequent variable processing.
N/A
SFC126 SYNC_PI Synchronous update of process image partition of
inputs N/A
SFC127 SYNC_PO Synchronous update of process image partition of
outputs N/A
STEP 7 Operations
85
System Function Blocks (SFBs)
System Function Blocks are logic blocks (similar to SFCs) that perform basic tasks when called by the user
program. The table below lists the execution times of the SFBs that are supported by WinLC RTX. You
must provide a data block (DB) when you call an SFB.
Note: The execution times were measured on a SINUMERIK PCU50 1.2 GHz computer. Tuning
settings: 9000 µs execution time limit, 90% maximum execution load, and 1000 µs forced execution
sleep. Actual execution times may vary, depending on your computer.
SFB Name Description Execution Time
SFB0 CTU Provides a count-up counter 1.51 µs
SFB1 CTD Provides a count-down counter 1.51 µs
SFB2 CTUD Provides a count-up/down counter 11.88 µs
SFB3 TP Generates a pulse 6.01 µs
SFB4 TON G enerates an on- de lay tim er 4.99 µs
SFB5 TOF Generates an of f - dela y timer 4.98 µs
SFB8 USEND Sends a data packet of CPU-specific length
(two-way) N/A
SFB9 URCV Receives a data packet of CPU-specific
length (two-way) N/A
SFB12 BSEND Sends a data block up to 64 Kbytes (two-
way) N/A
SFB13 BRCV Receives a data block up to 64 Kbytes
(two-way) N/A
SFB14 GET Reads data up to a CPU-specific maximum
length (one-way) N/A
SFB15 PUT Writes data up to a CPU-specific maximum
length (one-way) N/A
SFB22 STATUS Query the status of a remote device N/A
SFB23 USTATUS Receive the status from a remote device N/A
SFB32 DRUM Implements a sequencer 10.82 µs
SFB52 RDREC Read dat a set N/A
SFB53 WRREC Write data set N/A
SFB65001 CREA_COM (WinAC ODK) N/A
SFB65002 EXEC_COM (WinAC ODK) N/A
STEP 7 Operations
86
System Clock
Like a hardware S7 controller, WinLC RTX has a "real-time" system clock (based on the hardware clock of
your computer).
Note: Setting the time for WinLC RTX does not affect the time setting for your computer.
To adjust and read the system clock, use the following SFCs.
SFC Name Description
SFC0 SET_CLK
A
llows you to set the time and the date of the system clock. The clock then
runs starting from the set time and set date.
Format: DT#1995-01-15-10:30:30
SFC1 READ_CLK Allows you to read the current date or current time of the system clock of
the controller.
SFC64 TIME_TCK Allows you to read the system time of the controller. The system time is a
"time counter" counting cyclically from 0 to a maximum of 2147483647 ms.
In case of an overflow, the system time is counted again, starting at 0.
The time base (and therefore the accuracy) is 1 ms.
The system time is only influenced by the operating modes of the
controller.
87
Tuning the Performance of the Controller
Scan Cycle for a PC-Based Controller
During one scan cycle, the controller updates the outputs, reads the inputs, executes the control
program, performs communication tasks, and provides time for other applications to run. The
following parameters affect the scan cycle:
Execution Time (in milliseconds) is the actual amount of time used by the controller to
update the I/O and to execute the control program.
Scan Cycle Time (in milliseconds) is the number of milliseconds from the start of one cycle
to the start of the next cycle. This value must be greater than the execution time of the scan
to provide execution time for any application that has a lower priority than WinLC RTX.
Sleep Time (in milliseconds) determines how much time is available during the free cycle
(execution cycle for OB1) to allow higher priority OBs and other applications to use the
resources of the computer.
The Priority for the controller application also affects the scan cycle by determining when the
controller runs or is interrupted by other Windows applications. You must ensure that the sleep time
occurs every 50 milliseconds or less in order for other Windows applications, such as moving the
mouse, to operate smoothly.
The tuning panel allows you to tune and test the performance of the controller by adjusting the parameters
that affect the scan cycle (minimum cycle time, minimum sleep time, and priority) without affecting the
system configuration for the controller. After testing tuning parameters, you use STEP 7 to configure the
minimum scan cycle time for the controller when you create the system (hardware) configuration.
Tasks Performed during the Scan Cycle
After you have used STEP 7 to create and download your control program to the controller, the controller
starts executing the control program when you set the controller to RUN or RUN-P mode. Like any other S7
PLC, the controller executes your control program in a continuously repeated scan cycle.
In one scan, the controller performs the following tasks:
1. The controller writes the status of the OB1-assigned process-image output
table (the Q memory area) to the I/O module outputs. For the first scan, the
controller does not perform this task.
2. The controller reads the states of the I/O module inputs into the OB1-
assigned process-image input table (the I memory area).
3. The controller executes the control program in OB1.
4. OB1 waits until the minimum sleep time requirement is met before starting
another scan. Other OBs can execute at this time.
Tuning the Perf orm anc e of the Contr o ll er
88
Because the PC-based controller shares the resources of your computer with other programs (including the
operating system), you must ensure that the controller provides sufficient time for other Windows
applications to be processed. If the actual execution time for the scan cycle is less than the minimum scan
cycle time that you configured with STEP 7, the controller suspends the free cycle (OB1) until the minimum
scan cycle time is reached before starting the next scan. This waiting period, or sleep time, allows other
applications to use the resources of the computer.
The following figure provides an overview of the tasks that are performed by the controller during different
scan cycles.
Startup On a transition from STOP mode to RUN mode, the controller loads the system
configuration, sets the I/O to the default states, and executes the startup OB (OB100 or
OB102).
The startup cycle is not affected by the minimum cycle time and minimum sleep time or
watchdog parameters; however, it is affected by the execution time limit.
First
Scan
The first scan following the startup OB does not write to the outputs, but starts by
reading the inputs. An OB with a higher priority class can interrupt the free cycle at any
time, even during the sleep time.
In the example above, the controller handles a hardware (I/O) interrupt that occurs
during the sleep time by executing OB40. After OB40 has finished, the controller waits
for the minimum cycle time to start the next scan.
Note: It is possible for the controller to use all of the sleep time for processing
higher-priority OBs. In this case, other Windows applications may not have
sufficient time to run. Refer to the techniques for managing sleep time listed
below.
New
Scan
The new scan starts by writing to the outputs. In the example above, the controller
suspends the execution of OB1 to execute a cyclic OB (OB35), which has a higher S7
priority than OB1. The controller also suspends the execution of OB35 to handle
another I/O interrupt (OB40).
After OB40 finishes, the controller resumes the execution of OB35, and after OB35
finishes, the controller resumes the execution of OB1.
The length of the scan cycle is determined by the execution time of all OBs executed during the scan, the
minimum cycle time, and the minimum sleep time. If the execution time is less than the minimum cycle time
that was configured in the system configuration, the controller suspends the free cycle until the minimum
sleep time is met. During the sleep time, the computer runs any interrupt OBs and other Windows
applications.
Tuning the Perf orm anc e of the Contr o ll er
89
Warning
Variation in the execution time or response time of the control program could potentially
create a situation where the equipment or application being controlled can operate
erratically and possibly cause damage to equipment or injury to personnel.
If the controller does not provide sufficient sleep time for the other applications to run,
the computer can become unresponsive to operator input, or the controller and other
applications can operate erratically. In addition, the execution of the control program can
experience non-deterministic behavior (jitter) such that execution times can vary and
start events can be delayed.
Always provide an external emergency stop circuit. In addition, always tune the sleep
time and manage the performance of the controller so that your control program
executes consistently.
Methods for Managing the Performance of WinLC RTX
While executing the control program, WinLC RTX can experience a variation in the process execution time
or response time that causes the scan times to vary or to exhibit non-deterministic behavior ("jitter"). You
can use the following methods to manage the performance of WinLC RTX:
Adjusting the priority for the controller: Affects when the operating system runs or interrupts the
controller
Adjusting the minimum sleep time and minimum cycle time parameters: Affects the execution of the
free cycle or OB1 (OB priority class 1)
Inserting sleep time into the control program (SFC47 “WAIT”): Affects the execution for the priority
class of the OB that calls SFC47 (and any lower priority class)
Adjusting the sleep-monitoring algorithm of the execution monitor: Affects the execution of all OB
priority classes (if the other mechanisms do not meet the requirements for sleep time)
WinLC RTX provides a tuning panel for monitoring the performance and for modifying the parameters that
affect the scan cycle.
Tuning the Perf orm anc e of the Contr o ll er
90
What Causes Jitter?
Because the PC-based controller must share the computer with other running processes, the
execution of the control program can experience "jitter" when a higher-priority or active process
uses the CPU or system resources of the computer. Jitter is a variation in the process execution
time or response time that causes the scan times to vary or to exhibit non-deterministic behavior.
Jitter occurs when there is a delay in either the start or the finish of an OB. For example: the
execution time can deviate by a few milliseconds between scans, or the start of an interrupt OB can
be delayed. For some control applications, such time lapses do not disturb the proper operation of
the controller, but in a highly time-sensitive process, a jitter of even 1 ms can be significant.
The following settings for WinLC RTX can cause jitter in the execution of the control programs:
Priority settings for different applications
Priorities among the WinLC RTX threads
Execution Monitor (that measures the CPU usage)
The tuning panel of WinLC RTX provides several tools for reducing jitter in the control program.
Jitter can also be caused by other sources than WinLC RTX:
Jitter can be caused by the design of your control program. For example, different branches
in the logic of the control program might cause the execution time to vary.
Jitter can be caused by the computer hardware. For example, jitter can be caused by an
operation with a long DMA cycle, such as a video card using the PCI bus. Jitter can also be
caused by a driver, such as for a CD drive or a diskette drive. Hardware-induced jitter
cannot be managed by software. For a uniprocessor system running WinLC RTX,
Venturcom provides an application to help evaluate the suitability of the computer hardware
for use with the RTX extensions.
Jitter can be caused by an application that was created with the WinAC RTX Open
Development Kit (ODK), such as when a synchronous process takes too long to execute.
Refer to the documentation for WinAC RTX ODK for more information.
Priority Settings for Different Applications Can Cause Jitter
Every application that is running on your computer has one or more threads (or tasks), and each thread
has a priority. The Windows operating system executes the threads with the highest priority first and
executes a lower-priority thread only when all of the higher priority threads are finished or suspended (for
example, to wait for some other activity to complete or to “sleep” for a specified time). Threads with higher
priorities interrupt and suspend the operations of threads with lower priorities. After the higher-priority
thread finishes, the lower-priority thread resumes its operation.
Tuning the Perf orm anc e of the Contr o ll er
91
WinLC RTX operates in a real-time subsystem (RTSS) that provides a range of priorities above the typical
Windows priorities. Although the threads of WinLC RTX have a higher priority than threads for a Windows
application, the operation of WinLC RTX can still be interrupted by another RTX thread that has a higher
RTSS priority.
You must also ensure that WinLC RTX and any other RTX application provide sufficient sleep time to allow
the Windows applications to run.
Jitter can occur when a process of an application with a higher priority interrupts and suspends the
execution of the controller. As shown in the following figure, jitter typically appears in two forms.
The higher priority threads can cause jitter by delaying the start of an OB. This could delay
the start of the free cycle (OB1) or of an interrupt OB (such as OB35 or OB40).
The higher priority application can cause jitter by extending the execution time for an
individual scan.
You can use the tuning panel to increase or decrease the priority for the WinLC RTX threads. The higher
you set the priority for the WinLC RTX threads in relation to the threads of the other applications, the less
jitter you typically encounter. However, you must also ensure that WinLC RTX provides enough sleep time
for the other applications to run.
The tuning panel also provides information that allows you to monitor the amount of jitter in the scan cycle.
For more information about priorities, refer to the following topics:
Adjusting the Priority
Real-Time Subsystem Priorities
Tuning the Performance of the Controller
92
Priorities among the WinLC Threads Can Cause Jitter
In addition to the thread that executes the OBs of the control program, WinLC RTX uses other threads,
including some with higher priority than the OB Execution thread. Some examples of higher-priority threads
are the execution monitor, the start event for an OB, the watchdog events, the timers, the PROFIBUS-DP
driver, and the events for the DP I/O. Any of these higher-priority threads can induce jitter in the execution
of the control program.
The relative priorities (priority classes) of the OBs in the control program itself can also cause jitter. For
example, an error OB delays or interrupts the execution of all lower-priority OBs.
The threads of the interrupt events have a higher priority than the thread for execution the
control program. These threads can cause jitter by interrupting the execution of the control
program.
The OB Execution thread includes the different priority classes for the OBs of the control
program. The interrupt OBs can cause jitter not only by interrupting the free cycle (OB1), but
also by interrupting another interrupt OB with a lower priority class.
The background tasks for WinLC RTX includes the threads used for communicating with
other applications, such as STEP 7. The OB Execution thread and the higher-priority threads
affect the execution of these tasks.
Tuning the Performance of the Controller
93
The Sleep Interval Forced by the Execution Monitor Can Cause Jitter
WinLC RTX must sleep (release the CPU)
periodically in order for the other applications to
run. The free cycle includes a sleep interval
that follows the execution of OB1. However,
this sleep interval can be interrupted by higher-
priority OBs. Also, a scan cycle with a relatively
long execution time could cause other
applications to wait too long to access the
CPU.
To ensure that the controller does not exceed a
specified percentage of CPU usage, an
execution monitor measures the sleep time
within a fixed execution time limit. If the
controller does not sleep for the specified
amount of time within the execution time limit,
the execution monitor forces a sleep interval.
Because the execution monitor runs in a higher priority class than any OB, the controller cannot interrupt
the forced sleep interval. This could delay the start of an interrupt OB, such as OB35, until the end of the
forced sleep interval. This delay in handling an interrupt OB results in jitter.
As a general rule for decreasing jitter, always design your control program to keep the execution time of the
higher-priority OBs as short as possible.
WinLC RTX provides several options for managing the sleep time to avoid the uninterruptible forced sleep
interval:
You can increase the minimum sleep time parameter for managing the sleep time for the free cycle
(priority class 1, or OB1).
You can call SFC47 (WAIT”) to insert an extra, interruptible sleep interval into the control program
for managing the sleep time for an application-defined priority class (priority classes 2 to 24).
You can adjust the sleep-monitoring algorithm for the execution monitor for managing sleep time at
a higher priority class than any OB.
Tuning the Perf orm anc e of the Contr o ll er
94
Adjusting the Priority of the Controller
If other RTSS applications are installed in addition to WinLC RTX, you can adjust the priority of the
controller to improve performance. If not, you do not need to adjust the controller priority.
The priority of the controller determines how WinLC RTX runs in relation to other RTSS applications
that are running on the computer.
Adjusting the priority of the controller can reduce or increase the amount of jitter in the scan time.
The tuning panel allows you to change the priority for the controller application. When you use the
tuning panel to change the priority, the controller automatically ensures that its interrupt activities,
such as those which schedule interrupt OBs, are also set to an appropriate priority.
Note: WinLC RTX does not control priorities in customer software, such as asynchronous
threads in WinAC RTX Open Development Kit (ODK) software, or other applications in the
same environment.
While a PC-based controller must maintain the essential features of a SIMATIC S7 PLC, the PC-based
controller must also allow the other applications to run on the computer. The operating system of the
computer uses a conce pt of execution threads (or tasks) to run or exe c ute the applications. Each
application has one or more threads, and each thread has a priority. The operating system executes the
threads with the highest priority first and executes a lower-priority thread only when all of the higher priority
threads are suspended (for example, to wait for some other activity to complete or to “sleep” for a specified
time). Threads with higher priorities interrupt and suspend the operations of other threads that have lower
priorities. After the higher-priority thread finishes, the lower-priority thread resumes its operation.
To change the priority, follow these steps:
1. Use the Priority slider to choose a priority based on the priority levels for your operating sy stem.
The new priority is displayed as you move the slider.
2. Click Set to set the priority to the new value.
Real-Time Subsystem Priorities
WinLC RTX provides real-time priorities for the most demanding control projects that are absolutely
time-critical. Because WinLC RTX competes only with other RTSS applications, the controller
provides the most deterministic behavior, with a possibility for reducing jitter in the scan cycle to less
than 500 mic ros ec onds.
Because the controller runs with an RTSS priority above the Windows priorities, the sleep time for
the control program determines the amount of time for other Windows activities and applications.
You should provide sleep time that allows other application to run. Use the tuning panel to monitor
the variation in scan times that occurs as the controller executes your control program.
Although the RTSS environment allows priorities from 1 to 127, WinLC RTX only runs up to priority 62.
Another RTSS application thread could have a higher or lower priority than WinLC RTX.
The controller application installs with a default RTX priority of 50, which typically delivers satisfactory
performance. If the controller competes with other RTSS applications for the computer resources, set the
priority for the controller application to run either above or below the priority of the other RTSS applications.
Tuning the Perf orm anc e of the Contr o ll er
95
Managing the Sleep Time
Sleep Management Techniques
During a sleep interval, the controller allows other applications to use the resources of the computer.
By managing the sleep time, y ou can tune the performance of the controller in order to allow all
applications on the computer to run with acceptable performance. You can use a variety of
techniques for managing the sleep intervals for the controller:
Adjusting the minimum sleep time parameter. The minimum sleep time determines the
amount of sleep time that is added during the execution of the free cycle (OB1). This sleep
time affects only OB priority class 1.
Calling SFC47 from your control program. SFC47 inserts a sleep interval into the execution
of your control program. This sleep time affects OB priority classes 2 to 24.
Adjusting the execution monitor. The execution monitor uses a sleep-monitoring algorithm
(based on the execution time limit and the maximum execution load parameters) to force a
sleep interval. The execution monitor runs asynchronously to the scan cycle. This sleep
time affects all OB priority classes.
Contents of this topic:
Managing the Sleep Time of the Controller
Tuning Strate g y
Sample Interaction of the Execution Monitor and the Minimum Sleep Time
Managing the Sleep Time of the Controller
Because the controller shares the resources of your computer with other applications, you must ensure that
the controller sleeps for a sufficient interval to allow the other applications to run.
Notice
The most effective method for granting time to other applications is to set the minimum sleep time
parameter to the largest value that your control application allows. The other methods for managing
the sleep time provide sufficient sleep time for the other applications to run, but may degrade the
performance of the controller.
Tuning the Perf orm anc e of the Contr o ll er
96
The controller provides the following techniques for managing the sleep time:
The controller provides an execution monitor that enforces the maximum execution load on the
resources of the computer. The execution monitor measures the amount of sleep time taken by the
controller within an execution time limit, which is independent from the execution time of the scan
cycle. If necessary , the execution monitor forces a sleep interval to achieve the specified execution
load. This forced sleep interval suspends the execution of any OB and can also delay the start of
an interrupt OB.
The controller provides a minimum sleep time parameter that adds sleep time for the free cycle.
This sleep interval occurs after the execution of OB1. The minimum sleep time affects only priority
class 1. An OB in a higher priority class can interrupt this sleep interval. The controller does not
adjust the minimum sleep time to compensate for the execution time of interrupt OB. However, any
forced sleep interval (generated by the execution monitor) is subtracted from the sleep interval
generated by the minimum sleep time.
The controller supports SFC47 ("WAIT"), which inserts a specified sleep interval for the priority
class of the OB that calls SFC47. This sleep interval the OBs at the same or lower priority class as
the OB that calls SFC47, but an OB in a higher priority class can interrupt this sleep interval. You
can use SFC47 to create sleep time that can be interrupted so that the controller can avoid jitter
when handling any interrupts that are critical for the application.
Tuning Strategy
As you test the performance of the controller during the development phase of your project, consider the
following strategy for adjusting the sleep time:
1. Set the minimum sleep time parameter to 0 and run the control program. This allows you to
determine whether there is unacceptable jitter in the scan cycle.
2. To reduce any unacceptable jitter, first use the tuning panel to increase the minimum sleep time
and observe the effect on cycle time and CPU usage.
3. If the amount of jitter is still unacceptable, review the sections of the control program that are being
affected by the jitter. If possible, have your control program call SFC47 to add sleep time.
4. To further reduce any jitter, increase the execution time limit to the maximum possible execution
time for your control program.
Tuning the Perf orm anc e of the Contr o ll er
97
If the sleep management techniques do not provide adequate improvement in reducing jitter, consider
increasing the priority for the controller. (The priority of the controller is not the same as the priority class of
an OB.)
Sample Interaction of the Execution Monitor and the Minimum Sleep Time
To help explain the tools for managing the sleep time of the controller, the following example shows how
the execution monitor and the minimum sleep time can interact:
The first sample shows the sleep time that would be generated by the execution monitor alone,
with no minimum sleep time added to the free cycle.
The second sample shows how the execution of the free cycle is affected by adding a minimum
sleep time to the scan cycle.
The following example describes the execution of a control program that uses OB1 to start a 1-second
timer, and then check the timer after an elapsed time of 1 second (1000 ms). The controller has been
configured with the following parameters:
Parameter Value
Execution Time OB1 takes 900 ms to execute.
Minimum Sleep Time 0 ms
Minimum Cycle Time 0 ms
Maximum Execution Load 90% (uses the default wake/sleep algorithm)
Execution Time Limit 9 ms (uses the default value)
Forced Execution Sleep 1 ms (uses the default value)
Tuning the Perf orm anc e of the Contr o ll er
98
Sleep Time Generated by the Execution Monitor (Minimum Scan Time = 0)
If you set the minimum sleep time parameter to 0, the controller uses the execution monitor alone to
provide sleep time. The figure shows the operation of the execution monitor, using the default values.
The execution monitor suspends the execution of OB1 for 1 ms after every 9 ms of execution by default in
order to enforce a limit of 90% execution load (CPU usage). For every 1 second of elapsed clock time, the
default execution time for OB1 is 900 ms, with forced sleep intervals totaling 100 ms.
Notice that the sleep time occurs at intervals within the execution of OB1.
Tuning the Perf orm anc e of the Contr o ll er
99
Adding a Minimum Sleep Time for the Free Cycle
This figure shows how changing the minimum sleep time from 0 to 200 affects the execution of OB1. The
execution monitor still forces 100 ms of sleep time to occur during the execution of OB1. With the minimum
scan time parameter set to 200 ms, the controller then sleeps for only another 100 ms, for a combined total
of 200 ms, before starting the next free cycle.
The total scan time
increases to
approximately
1100 ms: the execution
time (900 ms) for OB1,
the forced sleep time
(100 ms), and the
sleep time at the end of
the scan cycle
(100 ms).
Tuning the Perf orm anc e of the Contr o ll er
100
Adjusting the Minimum Sleep Time and Cycle Time
The tuning panel provides the following parameters that allow you to manage the sleep time of the
free cycle (priority class 1, or OB1):
Minimum Cycle Time (in milliseconds) sets the minimum number of milliseconds from the
start of one free cycle to the start of the next free cycle. This value must be greater than the
execution time before it causes any sleep time to occur within the free cycle. You use
STEP 7 to configure the minimum cycle time for the controller when you create the system
(hardware) configuration. You can use the tuning panel to adjust the minimum cycle time,
but any changes are discarded when you shut down the controller. However, you must use
STEP 7 to make the changes permanent.
Minimum Sleep Time (in milliseconds) determines how much sleep time is available during
the free cycle (OB1) for allowing higher priority OBs and other applications to use the
resources of the computer. The controller automatically saves any changes to the minimum
sleep time made with the tuning panel. You do not use STEP 7 to make any change to the
minimum sleep time permanent.
Contents of this topic:
Parameters That Affect the Sleep Time for the Free Cycle
Hints
The execution of the free cycle is affected by both the minimum sleep time and the minimum cycle time
values.
The minimum cycle time by itself results in a fixed scan cycle time with a variable sleep time (if the
minimum cycle time is large enough to accommodate the execution time plus the sleep time).
The minimum sleep time by itself results in a fixed sleep time with a variable scan time, depending
on the length of the execution time.
The minimum sleep time value guarantees that a configured amount of sleep time occurs within each free
cycle, even if the value for the minimum cycle time is too small. The controller releases control of the CPU
for a sleep interval, This sleep interval is the larger of either the configured minimum sleep time value or a
sleep time that is computed from the minimum cycle time parameter.
Warning
If you set the minimum scan time to a value larger than the watchdog time, WinLC RTX
goes to STOP mode during the first scan at the end of the watchdog time interval.
Causing the controller to go to STOP mode unexpectedly can cause process equipment
to function erratically and possibly cause damage to equipment or injury to personnel.
Do not set the minimum scan cycle time to be longer than the scan cycle monitoring time
(the watchdog time) configured in the STEP 7 Hardware Configuration Editor.
Tuning the Perf orm anc e of the Contr o ll er
101
Parameters That Aff ect t he Sleep Time for the Free Cycle
The following figures explain the interaction between the execution time, the minimum sleep time, and the
minimum cycle time parameters.
For the first sample scan shown in the example above, the execution time plus minimum
sleep time is less than the minimum cycle time. In this case, the controller increases the
sleep time until the minimum cycle time is achieved.
For the second sample scan shown in the example above, the execution of OB35 increases
the execution time, and the execution time plus the minimum sleep time is greater than the
minimum cycle time. In this case, the controller waits the minimum sleep time before starting
the next scan.
For the third sample scan shown in the example above, the controller executes both a cy clic
interrupt (OB35) and an I/O interrupt (OB40). The execution time exceeds the minimum cycle
time, and the controller waits the minimum sleep time before executing the next scan.
For the fourth sample scan shown in the example above, the controller executes OB40
during the sleep time after OB1 has finished. In this case, the controller waits until the
minimum cycle time before starting the next scan.
Because the execution of OB40 does not reset the minimum sleep time counter, it is possible
that the controller does not provide sufficient sleep time to allow other Windows applications
to be processed. You must then use other methods for ensuring that the controller provides a
sufficient amount of sleep time.
Tuning the Perf orm anc e of the Contr o ll er
102
Hints
You can use the following techniques to adjust controller performance using the minimum sleep time and
minimum cycle time parameters:
Use the tuning panel to test values for the minimum cycle time. After you have determined the
optimum value for the minimum cycle time, use STEP 7 to update and download the system
configuration for the controller.
Changing the operating mode from STOP to RUN deletes any value entered by the tuning panel
and resets the minimum cycle time to the value stored in the system configuration.
To ensure that the controller executes the scan cycle on a fixed schedule, use the minimum cycle
time parameter.
To ensure that there is always a sleep interval even if the execution time changes, set the minimum
cycle time to 0 (the default value) and modify the minimum sleep time as needed. Modifying the
minimum sleep time is especially useful during the development of your control program.
When you are tuning the operation of the controller, be aware that the following situations can increase the
time required to complete the scan cycle:
The controller executes other OBs (such as OB20 and OB35) with higher priorities than OB1.
You use STEP 7 to monitor and debug the control program.
You use a variable table (VAT) with STEP 7 to display the status of the control program.
An application with a higher priority is running on your computer.
The controller interacts with an HMI interface, such as WinCC, or with the controls supplied by
SIMATIC Computing.
A dditional Methods for Managing the Sleep Time
Using SFC47 to add sleep time in the control program
Adjusting the sleep-monitoring algorithm of the execution monitor
Tuning the Perf orm anc e of the Contr o ll er
103
Using SFC47 to Add Sleep Time in the Control Program
SFC47 (WAIT) inserts sleep time into the execution of the control program, allowing you to manage
the sleep time for a control program by inserting the sleep time in a specific priority class. When you
call SFC47 from your control program, the controller suspends the execution of the OB for a
specified number of microseconds and sleeps. During this sleep period, the controller can interrupt
this sleep period to execute an interrupt OB. Because an OB with a higher priority class can
interrupt the sleep time, your control program to handle higher priority OBs with less chance of jitter.
Typically, you call SFC47 from a cyclic OB (such as OB35) that starts within the execution time limit
of the execution monitor.
For more information, refer to the example: Avoiding Jitter in the Start Time of an OB
To provide greater control over when the sleep time occurs, you can use SFC47 to insert sleep time into
your control program. Calling SFC47 in the control program also allows you to define which OBs are
affected by setting the priority class of the OB that calls SFC47.
As shown in the following figure, you can use SFC47 to insert a sleep interval that can satisfy the execution
monitor and still allow the controller to handle an interrupt OB. By using a cyclic OB (such as OB35) to call
SFC47, you can ensure that the sleep interval occurs within the execution time limit of the execution
monitor.
The sleep time parameter is rounded up to the nearest multiple of the HAL timer period defined in the RTX
properties dialog. For example, if the HAL timer period is 500 microseconds (the default), and the sleep
time parameter is 1200 microseconds, WinLC RTX rounds up the sleep time to 1500 microseconds. To
access the RTX Properties dialog, select the menu command Start > Settings > Control Pa nel and
double-click RTX Properties. The HAL timer period is specified under the Settings tab.
A dditional Methods for Managing the Sleep Time
Adjusting the Minimum Sleep Time and Cycle Time
Adjusting the Sleep-Monitoring Algorithm of the Execution Monitor
Tuning the Perf orm anc e of the Contr o ll er
104
Adjusting the Sleep-Monitoring Algorithm of the Execution Monitor
The execution monitor uses a sleep-monitoring algorithm to ensure that the controller does not
exceed a configurable maximum execution load for the CPU usage within a configurable execution
time limit. If there is sufficient sleep time within the execution time limit, the execution monitor does
not affect the execution of the program. Otherwise, the execution monitor forces a sleep interval.
The default execution load is 90%, and the default execution time limit is 9 ms. For the default
settings, the execution monitor determines that the controller must sleep for at least 1 ms in order to
achieve the exec uti on lo ad with in the ex ec ution t im e limit.
The execution monitor runs asynchronous to the scan cycle and measures the amount of sleep time
that occurs within the execution time limit and enforces a minimum sleep interval.
If the scan cycle (execution time plus sleep time) is shorter than the execution time limit and
the sleep time is greater than or equal to the forced sleep value: The execution monitor
does not force a sleep interval.
If the scan cycle is longer than the execution time limit: The execution monitor forces the
controller to sleep for the required amount of time. Because the execution monitor runs in a
higher priority class than any OB, the controller cannot interrupt the forced sleep interval.
This could delay the start of an interrupt OB, such as OB35 or OB40.
Use the tuning panel to configure the parameters for the sleep-monitoring algorithm of the execution
monitor.
For more information, see the example: Avoiding Jitter in the Start Time of an OB
Contents of this topic:
Operation of the Execution Monitor
Parameters of the Sleep-monitoring Algorithm
Configuring the Parameters of the Sleep-Monitoring Algorithm
Situations That Cause the Execution Monitor to Force a Sleep Interval
In addition to the sleep time that is added to the scan cycle (based on the minimum sleep time and
minimum cycle time parameters), an execution monitor uses a sleep-monitoring algorithm that is based on
a maximum execution load (percentage of CPU usage). For the default execution load (90% CPU usage),
the execution monitor measures the length of time that the controller sleeps during the execution time limit
of 9 ms and ensures that the controller sleeps for at least 1 ms.
By measuring the sleep time, the execution monitor ensures that the controller allows the other applications
to access the computer resources for the specified execution load. The execution monitor also provides the
safety net in cases where there are programming errors (for example, an infinite loop in OB100) that are
not handled with other mechanisms.
The difference between the forced sleep intervals and the minimum sleep time is that the controller can
interrupt the minimum sleep time to handle interrupts (such as OB35 or OB40), but cannot interrupt the
forced sleep intervals.
When the execution monitor forces a sleep interval, the following actions occur:
The controller immediately suspends the execution of the OB for the forced sleep interval. By
forcing a sleep interval, the execution monitor increases the actual time between starting and
finishing the OB being executed.
The controller cannot respond to the start event for any interrupt OB until the end of the forced
sleep interval. Delaying the start of the OB (for example, OB35 or OB40) until the end of the forced
sleep interval creates jitter or latency in the actual start time for the OB.
Tuning the Perf orm anc e of the Contr o ll er
105
Operation of the Execut i on Monitor
The following figure shows how the execution monitor might affect a control program. Because the
execution time for OB1 in this example is greater than the execution time limit, the execution monitor
inserts a 1-ms sleep interval after the first two 9-ms intervals. However, the execution monitor does not
insert a forced sleep interval for the third 9-ms interval because the controller sleeps longer than the
required sleep interval.
Parameters of the Sleep-Monitoring Algorithm
The sleep-monitoring algorithm of the execution monitor uses the following parameters:
Parameter Description
Execution
Time Limit This value defines the interval (in microseconds) that the execution monitor uses to
measure the execution load (CPU usage) caused by the execution of the control
program.
To determine the CPU load caused by the execution of the control program, the
execution monitor measures the time that the controller sleeps during this interval. If
the controller does not sleep time a sufficient amount of time (indicating that the CPU
load exceeds the maximum execution load), the execution monitor forces the
controller to sleep for the remainder of the required sleep time.
The default value is 9000 microseconds (or 9 ms).
Maximum
Execution
Load
This value defines the maximum percentage of CPU usage that is allowed for the
controller during each execution time limit.
The default value is 90%.
Forced
Execution
Sleep
This read-only field shows how much sleep time (in microseconds) is required during
the execution time limit to satisfy the requirement for the maximum execution load.
The forced execution sleep time is a calculated number based on the execution time
limit and the maximum execution load. The execution monitor corrects this value as
required, depending on the capability of the operating system configuration to have
timers operate at the specified intervals. For example, if the HAL timer period (in the
RTX properties dialog) is set to 500 microseconds, you cannot have a forced
execution sleep time of 1200 microseconds. It would be rounded up to 1500
microseconds. To access the RTX Properties dialog, select the menu command
Start > Settings > Control Panel and double-click RTX Properties. The HAL timer
period is specified under the Settings tab.
The default value is 1000 microseconds (or 1 ms).
Tuning the Perf orm anc e of the Contr o ll er
106
The execution monitor uses the execution time limit and the maximum execution load to calculate the
forced execution sleep. For example, the execution monitor uses the 90% usage rate and the 9-ms
execution time limit to calculate a 1-ms sleep interval.
During the interval defined by the execution time limit, the execution monitor measures the actual amount
of time that no OBs are executing (the sleep time).
If the controller sleeps longer than the sleep interval (forced execution sleep time), then the
execution monitor restarts another execution time limit interval and does not affect the control
program.
If the controller sleeps less than the sleep interval (forced execution sleep time), then the execution
monitor blocks the execution of any OBs for the remainder of the sleep interval.
Any control program sleep time imposed because of the sleep-monitoring algorithm is subtracted from the
sleep time configured for the end of the free cycle using the minimum sleep time parameters.
The default value for the “Execution Time Limit” interval is 9000 microseconds (or 9 milliseconds) and the
default value for the “Forced Execution Sleep” interval is 1000 microseconds (or 1 millisecond). This ratio
ensures that the control program execution cannot use more than 90% of the CPU time in any of the worst
case situations described above.
Configuring the Parameters of the Sleep-Monitoring Algorithm
The parameters of the sleep-monitoring algorithm of the execution monitor are configurable from the tuning
panel:
To change the sleep-monitoring parameters, follow these steps:
1. Enter values in the Execution Time Limit and the Max. Execution Load fields. You can change one
of the fields or both.
2. Click Set to set the parameters.
To restore the default sleep-monitoring parameters, follow these steps:
1. Click Standard to display the default parameters.
2. Click Set to set the default parameters.
Changes to the sleep-monitoring parameter take effect when the controller is in RUN/RUN-P mode.
Tuning the Perf orm anc e of the Contr o ll er
107
Situations That Cause the Execution Monitor to Force a Sl eep Interval
The controller must relinquish control of the CPU long enough to satisfy the maximum execution load.
Typically, the sleep time that is added to the end of the scan cycle allows sufficient time for the operating
system to process the other Windows applications. However, some situations may require that the
execution monitor force a sleep interval.
Condition Description
Execution time for the
startup OB (OB100 or
OB102) exceeds 50 ms
During startup, the controller turns the watchdog timer off and cannot
handle a program error, such as a loop in the logic of the OB or an
excessively long initialization routine.
Because the scan cycle does not provide any sleep time for the startup
OB (such as OB100), the forced sleep interval from the execution
monitor keeps your computer from locking up.
Execution time for the
control progr am)
exceeds 50 ms
Whenever the operating system has to wait more than 50 ms to process
the other Windows applications, the performance of those applications
can be noticeably affected. This can be a problem for an OB1 with a
long execution time, especially if other OBs (such as OB35 or OB40)
extend the execution of OB1. Because the sleep time is added at the
end of the scan cycle, the sleep intervals are then spaced too far apart
for the other Windows applications to perform naturally.
The execution monitor ensures that the controller provides adequate
sleep time within the execution time limit.
You can also use SFC47 “WAIT” to insert sleep time into the execution
of the control program. See SFC47: Adding Sleep Time in the Control
Program
Execution time for the
control progr am
exceeds the execution
time limit
The sleep time for the free cycle occurs after OB1 finishes. If the
execution time is longer than the execution time limit, the execution
monitor forces a sleep interval because the controller did not sleep for
the required amount within the execution time limit.
Minimum sleep time is
insufficient for the
maximum execution
load
Even when the scan cycle is less than the execution time, the minimum
sleep time may not provide enough sleep time. In this case, the
controller would exceed the maximum execution load. The execution
monitor forces an additional sleep interval to ensure that the operating
system can run the other applications.
Interrupt OBs reduce
the sleep time To process an interrupt OB (such as OB35, OB40, or OB85), the
controller can interrupt the sleep time for the scan cycle. This reduces
the time that the controller actually sleeps and can cause the controller
to exceed the maximum execution load, which affects the performance
of the other Windows applications.
By forcing a sleep interval, the execution monitor ensures that the other
Windows application can be processed.
Addit ional Methods for Managing Sleep Time
Adjusting the minimum sleep time and minimum cycle time parameters
Inserting sleep time into the control program (SFC47 “WAIT”)
Tuning the Perf orm anc e of the Contr o ll er
108
Example: Avoiding Jitter in the Start Time of an OB
The following example discusses two possible solutions for a program that experiences jitter in the
start of a cyclic interrupt (OB32 to OB36).
Inserting a sleep interval into the execution of your control program. For this solution, you
call SFC47 (“WAIT”) and specify the length of time to sleep. The controller can interrupt this
sleep interval to process other OBs.
Changing the sleep-monitoring algorithm of the execution monitor. For this solution, you use
the tuning panel to change the execution time limit.
Scenario
The following example describes the execution of a control program that consists of OB1 and OB35. OB1
takes 20 ms to execute, and OB35 starts every 100 ms and takes 1 ms to execute. The controller has been
configured with the following parameters:
Parameter Value
Execution Time for the Control Program OB1: 20 ms
OB35: 1 ms
Minimum Sleep Time 10 ms (uses the default value)
Minimum Cycle Time 0 ms (uses the default value)
Maximum Execution Load 90% (uses the default wake/sleep algorithm)
Execution Time Limit 9 ms (uses the default value)
Forced Execution Sleep 1 ms (uses the default value)
The sleep time (10 ms) is added to the scan cycle after OB1 has finished. However, because the execution
time for OB1 (20 ms) exceeds the execution time limit (9 ms), the controller exceeds the configured
maximum execution load (90%) by not sleeping during the execution time limit. Therefore, the sleep-
monitoring algorithm forces the controller to sleep for 1 ms after every 9 ms that OB1 executes. As shown
in the following figure, this forced sleep can cause a variance or jitter of up to 1 ms between time that the
start event and the time that the controller starts to execute OB35. This jitter happens because all controller
operations are suspended during a forced sleep interval. Similarly, OB35 could be suspended for 1
millisecond if the end of the execution time limit interval occurs while OB35 is executing.
Tuning the Performance of the Controller
109
For many applications, a 1-ms jitter might be acceptable. However, you have several options for removing
this jitter:
You can modify the control program to call SFC47 and insert sleep time that can be interrupted by
OB35.
You can adjust the parameters for the sleep-monitoring algorithm to avoid the jitter caused by the
execution monitor.
Solution 1: Insert a sleep interval into the execution of your control program
You could avoid the forced sleep interval by using SFC47 to add a periodic sleep interval that occurs within
the execution time limit (for this example, 9 ms). This sleep interval not only ensures that the sleep-
monitoring algorithm does not force the controller to sleep, but also allows the controller to suspend this
sleep interval and execute any OB that has a higher priority than the OB that called SFC47.
For this example, you can use SFC47 to remove the jitter in OB35:
By ensuring that SFC47 executes at a specified time. The control program calls SFC47 from an OB
(such as OB36) that has a priority greater than OB1.
By ensuring that OB35 executes as scheduled. You configure OB36 to have a lower priority than
OB35.
By ensuring a sufficient sleep interval during the execution time limit. You configure SFC47 to wait
for 3 ms, which ensures a sleep interval of at least 2 ms.
To maintain a 50% ratio for CPU usage (20 ms execution time for OB1 with a 10 ms minimum sleep time),
configure OB36 to run every 6 ms (so that OB1 executes for 6 ms, then sleeps for 3 ms). You can then
change the minimum sleep time to 0 ms, unless you want to decrease the ratio for CPU usage.
To create an OB36 that calls SFC47 to create a 3 ms sleep interval:
1. Using the STEP 7 Program Editor: Create an OB36 for your control program, and enter the
following program:
CALL “WAIT” // SFC47 wait function
WT: 3000 // 3000 microseconds or 3 milliseconds
2. Using the STEP 7 Hardware Configuration tool, configure the priority level and execution time for
OB36:
Open the WinLC Properties dialog box and select the Cyclic Interrupt tab.
Set the priority for OB36 to 2 (or any other priority lower than the priority for OB35).
Configure OB36 to execute every 6 ms (by entering 6 in the Execution field).
The following figure shows how SFC47 affects the execution of the control program. Because OB36
ensures that the controller sleeps at least 1 ms within the 90% wake interval, the execution monitor does
not insert a forced sleep interval. Therefore, OB35 executes without any delay or jitter.
Tuning the Performance of the Controller
110
Solution 2: Change the sleep-monitoring algorithm to eliminate the forced sleep interval
The following figure shows the jitter in the start time of OB35 and also shows the values displayed by the
tuning panel. Notice that the tuning panel shows only the information about OB1. The tuning panel does not
display information about OB35. For this example, the execution time for OB1 is 20 ms. With the minimum
sleep time of 10 ms, the total free cycle time is 30 ms. OB35 and other interrupt OBs can make the total
scan time more than this, depending on how fast the interrupt OBs execute.
Tuning the Perf orm anc e of the Contr o ll er
111
By changing the parameters of the sleep-monitoring algorithm, you can configure the execution monitor to
use the minimum sleep time in the free cycle. For example: if the longest total scan time for this example is
less than 45 ms, change the execution time limit to 45000 microseconds (45 ms):
1. Open the tuning panel.
2. Change the execution time limit to 45000 (microseconds). For this example, do not change the
value for the maximum execution load.
3. Apply the new value.
The following figure shows the effect of the changed execution time limit.
113
Reference Information
Technical Data
Order Number
WinLC RTX is a component of the WinAC RTX package: 6ES7 671-0RC03-0YA0.
Features
WinLC RTX provides the following features:
Accumulators: 4 (ACCU 1 to ACCU 4)
Communications: PROFIBUS-DP master device
Supports an isochronous mode, which allows WinLC RTX to operate in constant bus cycle mode
to help eliminate jitter
Work memory and Load memory: limited by the amount of non-paging memory supported by the
computer (PC) and the operating system, which is less than the physical memory (RAM) in the
computer
Distributed I/O only, no local I/O:
You can configure the size of the process-image I/O areas (I and Q memory areas) to be either 512
bytes or 1024 bytes. These memory areas can be accessed directly by the instructions in the user
program.
Using Load (L) and Transfer (T) instructions (for statement list) or the Assign Value (MOVE)
instruction (for ladder logic) to the peripheral I/O (PI and PQ memory areas), you can access up to
16384 bytes of inputs and 16384 bytes of outputs.
WinLC RTX communicates with the distributed I/O as a PROFIBUS-DP master device. As a master device,
WinLC RTX can communicate with up to 125 slave devices (either S7-DP slaves or other DP slaves).
Reference Information
114
Technical Specifications
The following table lists the technical information about WinLC RTX.
WinLC RTX Description
Wor k me mory
Load memory
Limited by the amount of non-paging memory configured in
Windows. The following factors affect this amount:
Amount of physical memory (RAM) installed in the
computer
Other Windows drivers and RTSS programs being
executed at the same time as WinLC RTX
Virtual memory configuration in Windows (accessed
by the Performance Options button under the
Advanced tab of Sy stem Properties in the Control
Panel)
Accumulators 4 (ACCU 1 to ACCU 4)
Local data 16 Kbytes per priority class (determined by HW Config,
Memory tab)
Clock Real-time system clock, based on the hardware clock of the
computer
I/O (digital and analog) 16384 bytes total I/O, addressable over a range of 0 to 16383
You can freely assign the I/O between digital and analog
inputs and outputs. For example, you can assign all of
16384 bytes to the inputs or all of the 16384 bytes to the
outputs. However, the total amount allocated to all of the
inputs and outputs cannot exceed the maximum of
16384 bytes.
Process image I/O (user
configurable)
Inputs 512 bytes (default) or configurable from 0 bytes to 8192 bytes
I 0.0 to I 8191.7
Outputs 512 bytes (default) or configurable from 0 bytes to 8192 bytes
Q 0.0 to Q 8191.7
Memory bytes 2 Kbytes
Retentive range (configurable) Up to 2048 bytes (MB0 to MB2047)
Preset as retentive 16 bytes (MB0 to MB15)
Reference Information
115
WinLC RTX Description
Counters 512
Retentive range (configurable) C0 to C511
Preset as retentive 8 (C0 to C7)
Tim ers 512
Retentive range (configurable) T0 to T511
Preset as retentive None
Cloc k memory
Bits of the clock memory byte
toggle at specific times and are
accessible from the control
program.
8 bits of clock memory (1 byte)
8 frequencies within 1 byte of M memory: address is
configurable
Address ranges for logic blocks:
FB FB0 to FB65535
FC FC0 to FC65535
DB DB1 to DB65535 (DB0 is reserved)
Number of connections 64
Nesting depth 24 per sequence layer (OB priority class)
At any one time, a priority class can have one OB and up to
two synchronous OBs (OB121 and OB122). The total nesting
depth of 24 applies for all of the OBs being executed in the
priority class.
Total number of blocks that can
be downloaded to WinLC RTX No fixed limit: The number of blocks that can be downloaded
is based on the memory requirements and the number of
blocks in the program
Reference Information
116
Caution
Downloading a control program that is too large for the memory of the computer can lock
up the computer or cause the operation of WinLC RTX to become unstable. Non-
responsive or non-deterministic operations can cause damage to equipment and/or
injury to personnel.
Although STEP 7 and WinLC RTX do not limit the number of blocks or the size of the
control program, your computer does have a limit, based on the available disk space and
RAM memory. The limit for the size of the control program and number of blocks for your
computer can only be determined by testing a configured system against the
requirements of your control application.
The following table lists specific information about the PROFIBUS-DP interface, as supported by
WinLC RTX.
PROFIBUS-DP interface Description
DP address area 16384 bytes (inputs) and 16384 bytes (outputs)
Number of DP slaves supported
for each submodule CP card Dependent on the CP card
CP 5613: 125
Baud rate Up to 12 Mbaud
(9.6 KBPS, 19.2 KBPS, 45.45 (31.25) KBaud, 93.75 KBPS,
187.5 KBPS, 500 KBPS, 1.5 MBPS, 3 MBPS, 6 MBPS,
12 MBPS)
Baud rate search (as a DP slave) Not applicable
Transfer memory (as a DP slave) Not applicable
Maximum distance Dependent on the baud rate
Reference Information
117
Execution Times
Execution Times of Instructions
The execution times listed in the two tables below (execution times for math operations and execution
times for instructions) reflect the average execution times for STEP 7 programs running on WinLC RTX.
Actual execution times may vary, depending on your system.
Note: The execution times were measured on a SINUMERIK PCU50 1.2 GHz computer.
Tuning settings: 9000 microseconds execution time limit; 90% maximum execution load;
1000 microseconds forced execution sleep.
Math Operation Integer Real Double Word
Addition ( + ) 0.09 µs 0.09 µs 0.09 µs
Subtraction ( - ) 0.09 µs 0.09 µs 0.09 µs
Multiplication ( * ) 0.09 µs 0.09 µs 0.12 µs
Division ( / ) 0.12 µs 0.12 µs 0.12 µs
Instructions Direct
Addressing Indirect
Addressing
Boolean Operations:
A, AN, O, ON, X, XN Memory
areas:
I 0.06 µs 0.07 µs
M 0.05 µs 0.08 µs
L 0.67 µs 0.07 µs
DB 0.07 µs 0.07 µs
T 4.5 µs 4.6 µs
C 0.05 µs 0.09 µs
Boolean operations (on the accumulator):
==I, <>I, >I, <I, >=I, <=I 0.05 µs
Operations on the bits of the status word:
A==0, A< >0, A> 0, A< 0, A> =0, A <=0 0.05 µs
Transitional contacts Edge Positive FP 0.11 µs
Edge Negative FN 0.12 µs
Reference Information
118
Instructions Direct
Addressing Indirect
Addressing
Set/Reset operations
(bit operands) Set S 0.08 µs 0.07 µs
Reset R 0.07 µs 0.087 µs
RLO Operations Negate RLO NOT 0.03 µs
Set RLO SET 0.03 µs
Clear RLO CLR 0.02 µs
Save RLO SAVE 0.03 µs
Operations on Timers Pulse Timer SP 4.6 µs 4.7 µs
Reset timer R 0.04 µs 0.07 µs
Extended pu ls e tim er SE 4.7 µs 4.65 µs
On-delay timer SD 4.7 µs 4.64 µs
Retentive on-delay
timer SS 4.7 µs 4.65 µs
Off-delay timer SF 4.7 µs 4.70 µs
Miscellaneous Open DB OPN 0.003 µs
Load L 0.003 µs
Transfer T 0.002 µs
SFC126 SYNC_PI N/A
SFC127 SYN C_PO N/A
Reference Information
119
Execution Times of the DP Instructions
The table below lists the execution times for the SFCs used with the distributed I/O for WinLC RTX.
Note: The execution times were measured on a SINUMERIK PCU50 1.2 GHz computer.
Tuning settings: 9000 microseconds execution time limit; 90% maximum execution load;
1000 microseconds forced execution sleep.
SFC Name Description CP 5613
SFC11 DPSYNC_FR Synchronize groups of DP slaves N/A
SFC13 DPNRM_DG Reads the diagnostic data of a DP slave
DP configuration tested: one ET 200M slave with
one 8-input/8-output module and one 16-output
module
N/A
SFC14 DPRD_DAT Reads the consistent data from a DP slave N/A
SFC15 DPWR_DAT Writes the consistent data to a DP slave N/A
SFC26 UPDAT_PI Updates the process-image input table
DP configuration tested: one ET 200M slave with
one 8-input/8-output module and one 16-output
module
N/A
SFC27 UPDAT_PO Updates the process-image output table N/A
Reference Information
120
Troubleshooting
Additional Requirements for Venturcom RTX
The real-time extensions of Venturcom RTX provide the determinism and performance of a real-
time operating system within the Windows 2000 or Windows XP environment. However, not all
computer configurations (hardware and software) support the installation and operation of
Venturcom RTX version 5.1.2.
When testing the operation of Venturcom RTX and WinLC RTX on your computer, check the
follo wing items:
Venturcom RTX installs and runs. Make certain that you have administrator (ADMIN)
privileges for the computer. Make certain that your computer meets the hardware and
software requirements and supports the correct Hardware Abstraction Layer (HAL) types.
Venturcom RTX allows a free interrupt for the CP card (varies for different manufacturers). If
free interrupt is not available, the CP card operates only in Polled mode and not in Interrupt
mode.
Venturcom RTX is able to operate without interference from hardware components installed
in the computer. Some components (such as the video card) can cause problems that affect
the performance of real-time control with Venturcom RTX.
Reference Information
121
Requirements for Installing Venturcom RTX
Note: You must have administrator (ADMIN) privileges in order to install, uninstall, or use
Venturcom RTX.
The following table lists the software and hardware required or supported by Venturcom RTX.
Computer Hardware Some hardware configurations do not support installation or operation of
Venturcom RTX. The following computers are known to not support
Venturcom RTX:
Compaq AP400
Dell 7000 portables
HP Kayak
Alpha systems.
Operating System Venturcom RTX requires one of the following operating systems:
Microsoft Windows 2000 Professional edition, Service Pack 3
Microsoft Windows XP Professional, Service Pack 1
Additional Software
Requirements
Venturcom RTX requires Internet Explorer 5.01 or higher
HAL Types In order to be installed on a multiprocessor (MP) system, Venturcom RTX
requires either that at least two processors are installed or that the
standard HAL types are loaded. Refer to the release notes for
Venturcom RTX.
To run Venturcom RTX on a multiprocessor system with only one
processor installed, you must change the HAL type:
If the HAL type for the computer is set to either ACPI
Multiprocessor PC or ACPI Uniprocessor PC: Select ACPI PC.
If the HAL type for the computer is set to either MPS
Multiprocessor PC or MPS Uniprocessor PC: Select Standard PC.
You may need to use the Device Driver wizard to change the HAL type.
Running the CP Card in Interrupt Mode
On some computers, Venturcom RTX allows a free interrupt for the CP card. (This varies for different
manufacturers.) If a free interrupt is not available, the CP card operates only in Polled mode and not in
Interrupt mode. This can affect the performance of the CP card.
Refer to the topic on improving the performance of a CP 5613 card.
Some Hardware Configurations Degrade the Performance of Venturcom RTX
On some computers, some components of the computer (such as the video card) can cause problems with
Venturcom RTX that affect the performance of real-time control.
For a uniprocessor system (single processor), you can use the RTX Platform Evaluation utility to determine
if your computer has any hardware installed (such as that video card) that may introduce jitter or latencies.
Reference Information
122
Troubleshooting Network Problems
WinLC RTX helps you diagnose DP network problems. The CPU panel provides two status indicators
(EXT1 and BUSF1) that can be used to diagnose problems with the PROFIBUS-DP network. The table
below describes the activity of the EXTF and BUSF1 indicators to help you determine the type of problem
and a possible solution.
EXTF BUSF1 Description Action
Off Off
No
configuration
Ensure that the DP configuration has been entered into
your STEP 7 project. Download the project's System
Data container to WinLC RTX.
Normal
operation The configured DP slaves are responding. No action is
required.
On Flashing
Station failure
Check to see that the bus cable is connected to
WinLC RTX (the CP card) and that all segments are
correctly terminated at powered nodes.
Check to see that the bus is not interrupted.
At least one of
the DP slaves
could not be
accessed
Wait for WinLC RTX to complete the power-on cycle. If
the indicator continues to flash, check the DP slaves or
evaluate the diagnostic data for the DP slaves.
-- On Bus fault
(hardware
failure)
Check the bus cable for an electrical short, or a broken
wire or connection.
On Off Diagnos tic err or Indicates that a fault condition has not been cleared or
that a DP module with diag nos tic cap abi li t y has initia te d
OB82.
In addition to these visual indicators, y ou can use the Diagnose Hardware feature of the STEP 7
programming software to determine which nodes are experiencing problems and to determine the nature of
the problem.
Reference Information
123
Checking the Configuration of the CP Card
Purpose: To verify the configuration of the CP card.
Tool: You use the Configuration Console of SIMATIC NET.
The Configuration Console allows you to view the list of components in the configured PC station. Use
this dialog to check the configuration of your CP card:
1. Select the Start > SIMATIC > SIMATIC NET > Settings > Configuration Console menu
command to display the Configuration Console. (The Configuration Console appears automatically
when you click Finish in the Commissioning Wizard.)
2. Navigate to the module for your CP card.
3. Select the General icon to display the general module properties sheet.
4. You can modify the name and index for your CP card in the Configuration Console. Remember that
the name and index in the PC station must match the name and index that you configure in
STEP 7.
5. Verify that the CP card is set to Configured mode. If it is not, select "Configured mode" from the list
box for the "Mode of the module" field.
6. If you changed the configuration, click Apply to confirm your changes.
7. Close the Configuration Console.
If you have configuration errors:
Double-click the icon in the Windows taskbar to open the Station Configuration Editor, and click
the Diagnostics tab to review the diagnostic messages.
Check that you have created the submodule correctly.
Reference Information
124
Improving the Performance of the CP 5613 Card
Purpose: To change the configuration of the CP 5613 card. To use isochronous mode, you must
configure the CP 5613 card for Interrupt mode.
Note: WinLC RTX allows you to use isochronous mode on more than one PROFIBUS-DP
subnet; however, your computer must not share the interrupt (IRQ) of the PCI slots used by
the CP cards with the Windows operating system. For example, the SINUMERIK PCU 50
provides two PCI slots that can be used for isochronous mode on two different PROFIBUS-
DP subnets.
Tool: You use the Windows Device Manager.
WinLC RTX accesses the CP 5613 card in either Interrupt mode or Polled mode. Interrupt mode provides
improved performance over Polled mode.
Note: To implement isochronous DP, y ou must configure the CP 5613 card to operate in Interrupt
mode.
In order for WinLC RTX to use the Interrupt mode for accessing the CP 5613, you must configure your
computer so that the CP 5613 card does not share an IRQ with a Windows-controlled device.
Use the following procedure to determine whether the IRQ assignment for the CP 5613 card is shared with
an IRQ assignment for a Windows-controlled device:
1. Right-click the My Computer icon and select the Manage menu command.
2. Click Device Manager, and then select the View > Resources by Type menu command.
3. Expand the Interrupt request (IRQ) folder.
4. Locate the CP5613_5614 entry in the device list. If the IRQ assigned to this entry is assigned to
any other device, the CP 5613 card is sharing an interrupt with that device. If this other device is
Windows-controlled, the CP 5613 card will be operated in Polled mode if it is configured as a
submodule of WinLC RTX. Otherwise, the CP 5613 card operates in Interrupt mode.
To determine whether a device is Windows-controlled (as opposed to being RTX-controlled), use the
follo wing proc ed ur e:
1. Right-click the device entry CP5613_5614 in the Device Manager list, and select Properties.
2. Select the General tab on the Properties dialog, and check the Device type value. If it is RTX
Drivers, the device is RTX-controlled. Otherwise, it is Windows-controlled.
If the CP 5613 card shares the IRQ number with a Windows-controlled device, use one of the following
methods to change the system configuration for your computer and to assign a different IRQ number to the
CP 5613 card:
Use the BIOS setup utility for your computer to assign a unique IRQ to the CP 5613 card.
Install the CP 5613 card in a different PCI expansion slot of your computer. Because the PCI slots
are often assigned different IRQ numbers, installing the card in a different slot may eliminate the
conflict. However, changing the slot may also result in a new conflict.
If the IRQ conflict is due to a built-in device (for example, an Ethernet or SCSI controller), consider
using the BIOS setup utility to disable the conflicting built-in device, if possible. This may require
you to use an equivalent expansion card to replace the functionality for the disabled device.
Using these methods may be an iterative process, and you may find that there is no solution that assigns a
suitable IRQ number to the CP 5613 card. If no configuration can be found which eliminates the IRQ
conflict, you must either select a different PC platform or you must use the polled mode of operation for the
CP 5613 card.
Reference Information
125
Responding to Diagnostic Events
If an error is detected by the controller, the error condition is logged in the diagnostic buffer as a diagnostic
event. The diagnostic events that are typically associated with distributed I/O can cause the controller to
execute the following OBs:
OB40 responds to hardware interrupts (process alarms) generated by an I/O module with
configur ed int er rupt ca pab il it y.
OB82 responds to diagnostic interrupts generated by an I/O module with configured diagnostic
interrupt capability.
OB83 responds to module removal/insertion at a DP Slave, (for example, ET200M), which has
been configured for module pull/plug support.
OB85 responds to a priority class error. There are multiple causes for OB85 relating to the DP I/O
system. If the controller attempts to copy a module's inputs to (or outputs from) the process image
during the I/O cycle, and the module is not operational, then an OB85 is executed.
OB86 responds to a station failure or some other interruption of the physical network (such as a
short circuit).
OB122 responds to an I/O access error by the user program. If OB122 is not programmed, the
controller goes to STOP mode.
You can use SFC39 to SFC42 to disable, delay, or re-enable any of these OBs. If an OB is requested and
the OB has not been downloaded to WinLC RTX, the controller goes to STOP mode.
The local variables for these OBs contain startup information indicating the cause for executing the OB.
The program for the OB can use this information for responding to the event. You can also use SFC13
(DPNRM_DG) to read the diagnostic information from a DP slave.
For information about using OBs and SFC13, refer to the Sy s te m Softw ar e for S7- 300 and S7-4 00 Sy s tem
and Standard Functions Reference Manual. To view this manual from a computer where STEP 7 is
installed, select the menu command Start > Simatic > Document atio n > English, and double-click
"STEP 7 - System and Standard Functions for S7-300 and S7-400".
Reference Information
126
System Status List (SSL)
STEP 7 stores read-only information about the controller in the system status list (SSL) as a set of sublists.
You use SFC51 (RDSYSST) to access the entries in the system status list. You supply the input
parameters SSL_ID and Index to access the records stored in the sublist. SFC51 returns a two-word
header and a sublist or partial sublist. The header provides the following information about the sublist:
The first word defines the length (size in bytes) of a record for the sublist.
The second word defines the number of records contained in the sublist.
The sublist that follows contains all of the information requested. The size of the sublist in bytes is the
record length times the number of records.
For more information about the system status list, see the System Software for S7-300 and S7-400 System
and Standard Functions Reference Manual. To view this manual from a computer where STEP 7 is
installed, select the menu command Start > Simatic > Document atio n > English, and double-click
"STEP 7 - System and Standard Functions for S7-300 and S7-400".
The table below provides an overview of the SSL sublists supported by WinLC RTX, sorted according to
the SSL ID. The SSL_ID and Index are represented as hexadecimal (16#) numbers.
SSL_ID
(hex) Sublist Index
(hex) Record Contents
SSL ID
0000 All available SSL-IDs Examples: Information on all available
SSL IDs
0100 Sublist with all sublist excerpts 00xy List of SSL IDs supported by
WinLC RTX in group 00xy
(Example: 0024, CPU
Operating Stat us )
0200 A sublist excerpt 0xyz SSL ID 0xyz if supported by
WinLC RTX, 0 if not
0300 All available indices for an
SSL_ID 0xyz List of indices corresponding
to SSL ID 0xyz
0F00 Header information only Number of all SSL IDs of the
module
CPU identification WinLC RTX type and version
number
0011 All records of the sublist
0111 One record of the sublist 0001 Identification of the module
0007 Identification of the firmware
0F11 Header information only
Reference Information
127
SSL_ID
(hex) Sublist Index
(hex) Record Contents
CPU characteristics
0012 All characteristics
0112 One group of characteristics 0000 MC7 processing unit
0100 Time system in WinLC RTX
0200 System response
0300 Language description of
WinLC RTX
0F12 Header information only
Memory areas
0013 All memory areas
0113 One memory area 0001 User memory
0002 Load memory integrated
0003 Load memory inserted
0004 Maximum insertable load
memory
0005 Size of backup memor y
0006 Size of PBC memory
assigned on the system-side
(shadow memory)
0F13 Header information only
Reference Information
128
SSL_ID
(hex) Sublist Index
(hex) Record Contents
Operating system areas
0014 All system areas of a module
0114 One system area 0001 Process-image input area
(bytes)
0002 Process-image output area
(bytes)
0003 Memory (bits)
0004 Number of timers
0005 Number of counters
0006 I/O address area (bytes)
0007 Total local data area of CPU
(bytes)
0F14 Header information only
Block types
0015 All block types of a module
0115 One block type 0800 OBs (number and size)
0A00 DBs (number and size)
0B00 SDBs (number and size)
0C00 FCs (number and size)
0E00 FBs (number and size)
0F15 Header information only
Reference Information
129
SSL_ID
(hex) Sublist Index
(hex) Record Contents
Status of the module LEDs
0019 All LEDs
0119 One LED 0002 INTF Internal failure
0003 EXTF External failure
0004 RUN Run
0005 STOP Stop
0006 FRCE Force
0007 CRST Complete restart
000B BUSF1 Bus fault
000C BUSF2 Bus fault
0011 BAF Batt ery fai lure
0012 BUSF3 Bus fault
0013 BUSF4 Bus fault
0F19 Header information only
Interrupt /e rro r as sign ment not applicable not applicable
0021 All possible interrupts
0A21 All assigned interrupts
0F21 Header information only
Interrupt status
0222 One specific interrupt 0001 Event that started OB1
0050 Event that started OB80
Reference Information
130
SSL_ID
(hex) Sublist Index
(hex) Record Contents
Priority class
0023 All priority classes Priority of possible OBs
0123 One specific priority class Priority class
0223 All configured priority classes
0F23 Header information only
Operating status of the CPU
0124 Last executed operating status
transition
0424 Current operating status
0524 Specified operating status 4520 Defective status
5000 STOP status
5010 Startup status
5020 RUN status
5030 HALT status
0F24 Header information only
Communications performance
0131 Parameters of the
communications type specified 0001 Number of connections and
baud rates
0002 Test and startup parameters
0003 Operator interface
parameters
0004 Object management system
(operating system function)
0005 Diagnostics functions and
diagnostics entries
0006 PBC performance parameters
0009 Number of run-time meters
0010 PMC event parameters
0F31 Header information only
Reference Information
131
SSL_ID
(hex) Sublist Index
(hex) Record Contents
Communications status
information
0132 Parameters of the
communications type specified 0001 Number and type of
connections
0002 Number of test jobs set up
0004 CPU protection level
0005 Diagnostics
0006 PBK status data
0008 Time system, correction
factor, run-time meter, date
and time of day
0009 Baud rate (set by means of
the MPI)
000A Baud rate (set by means of
the S7-300 backplane bus)
0010 PMC S7-SCAN Part 1
0F32 Header information only
Diagnostic Station List not applicable not applicable
0033 All entries
0F33 Header information only
Start-up events
0782 Start-up events of all OBs of a
priority class before processing Priority class Event ID, priority class, and
OB number
Reference Information
132
SSL_ID
(hex) Sublist Index
(hex) Record Contents
Module status information
0A91 All DP subsystems and DP
masters
0C91 One module Logical bas e
address
Features and parameters of
the module
0D91 One station Rack, or DP
master system
ID, or DP
master system
ID and station
number
All the modules of a station in
the PROFIBU S-D P ne t wor k
0F91 Header information only
Status information of the
stations in a DP network Status information for the
stations connected to a
PROFIBUS-DP network
0092 Expected status of nodes in a DP
master system 0 / DP master
system ID
0192 Activation status of the stations of
a DP master system ID
0292 Actual status of the nodes in a
subnetwork 0 / DP master
system ID
0692 DP slaves indicating failure of one
or more modules 0 / DP master
system ID
0F92 Header information only
Expanded DP M ast er s ystem
information Status information regarding
synchronicity for the nodes
connected to a PROFIBUS-
DP network.
0095 All DP master systems known to
the CPU 0 / DP master
system ID |
L-Byte=00H
0195 One DP master system
0F95 Header information only
Reference Information
133
SSL_ID
(hex) Sublist Index
(hex) Record Contents
Diagnostics buffer Event information (depend ent
on the event)
00A0 All entries (event information)
01A0 Specified number of entries Number
0FA0 Header information only
Module diagnostics Module-dependent
diagnostics information
00B1 First four diagnostic bytes of one
module (data record 0) Logic al bas e
address
00B3 All diagnostic data of one module
(data record 1) Logical base
address
00B4 Diagnostic data of a DP slave Configured
diagnostic
address
Reference Information
134
Terminology
Cold Restart The controller executes OB102 before starting the free cycle (OB1). Like a warm restart, a
cold restart deletes the peripheral I/O (PI and PQ), deletes the non-retentive memory bits (M), timers (T)
and counters (C), and changes the peripheral outputs to a pre-defined safe state (default is 0). A cold
restart does not save the retentive memory bits, timers, counters and data blocks (DBs), but sets these
areas to their default (initial) values.
Control Program The control program is the application program created with STEP 7 and downloaded to
the controller for execution. The control program includes all organization blocks (such as OB1 or OB35)
and the other logic blocks that they call, including functions (FCs), sy stem functions (SFCs), function blocks
(FBs), and system function blocks (SFBs).
Execution Monitor The execution monitor of the controller measures the time that the controller sleeps
and ensures that the controller does not exceed the maximum execution load. The execution monitor uses
the maximum execution load and the execution time limit to calculate the forced execution sleep time.
Execution Time The execution time is the actual time the controller takes to complete one pass through
the instructions of the user program. This includes executing OB1 and updating the I/O.
Execution Time Limit The execution time limit defines the maximum amount of time allowed for the
controller to execute the control program. The execution monitor uses this value and the maximum
execution load to calculate the forced execution sleep time.
Forced Execution Sleep Time This read-only field shows how much sleep time (in microseconds) is
required during the execution time limit to meet the maximum execution load requirement
Free Cycle The free cycle consists of the basic tasks for priority class 1: writing to the outputs, reading the
inputs, executing OB1, and completing the sleep time requirement before triggering the next free cycle. The
controller executes these tasks at the base, or lowest, internal priority level for executing the OBs. (Priority
level in this context refers to OB priority classes, not the operating system priority level.)
Jitter Jitter is the difference in the actual scan cycle time from the configured minimum scan time.
Maximum Execution Load The maximum execution load is the maximum percentage of CPU usage that
is allocated for the controller. The execution monitor uses this value and the execution time limit to
calculate the forced execution sleep time.
Minimum Cycle Time The minimum cycle time is the minimum number of milliseconds from the start of
one cycle to the start of the next cycle. You enter a value for the minimum cycle time when you use STEP 7
to configure the system data for the controller. You can use the tuning panel to adjust this value as you test
the performance of the controller. After you have tuned the performance of the controller, use STEP 7 to
enter the optimum cycle time value and download the new system data. Any value for the cycle time that
you enter with the tuning panel is overwritten by the value in the system data when the controller changes
from S TOP mode to RUN mode.
Minimum Sleep Time The minimum sleep time is the specific amount of time that the controller must wait
before starting the next scan cycle. You use the tuning panel to configure this parameter. The controller
uses the minimum sleep time and the minimum cycle time parameters to calculate the start of the next
scan cycle.
Organization Block (OB) The OBs represent the interface between the operating system and the user
program. Called by the operating system, they control cyclic and interrupt-driven program execution,
startup behavior of the PLC and error handling.
Priority The priority of an application determines the order in which the operating system executes or
interrupts an application in relation to the other applications that are running on the computer. An
application with a higher priority interrupts and suspends the execution of an application with a lower
priority. After the application with the higher priority finishes, the application with the lower priority resumes.
A higher number indicates a higher priority.
Reference Information
135
Priority Class The priority class determines the order in which the controller executes the individual
sections of the control program. Organization blocks (OBs) are ranked by priority class. Higher priority OBs
interrupt lower priority OBs. The free cycle (OB1) has the lowest priority. You can use STEP 7 to change
the priority class for an OB. A higher number indicates a higher priority class.
Restart Method The restart method determines which startup OB is executed whenever the controller
changes from STOP mode to RUN mode. The startup OB allows you to initialize your control program and
variables. The two restart methods are Cold restart (OB102) and Warm restart (OB100).
Scan Cycle The scan cycle includes writing to the outputs, reading the inputs, executing OB1 and all other
OBs, and completing the sleep time requirement.
Scan Cycle Time The scan cycle time is the time required to execute the complete scan cycle, which
includes the execution of OB1 and the minimum sleep time.
Sleep Time The sleep time is the difference between the execution time of the free cycle and the total scan
time. Sleep time measures the time between the completion of OB1 and the start of the next scan cycle,
and ensures that the next scan cycle does not start until the end of the sleep interval. However, if the start
event for an interrupt OB (such as OB40) occurs during the sleep time, the controller executes that OB.
System Function Block (SFB) An SFB is a function block that is integrated as a part of the operating
system of WinLC RTX and is not downloaded as part of the control program. Like a function block (FB), an
SFB is a block ”with memory." You must also create an instance data block (DB) for the SFB. The instance
DB is then downloaded to WinLC RTX as part of the control program.
System Function (SFC) An SFC is a preprogrammed function that is integrated as a part of the operating
system of WinLC RTX and is not downloaded as part of the control program. You can call the SFC in your
control program. Like a function (FC), an SFC is a block ”without memory."
Wait Time The wait time, or sleep time, is the time that the controller is not using the CPU. During this time,
the operating system can run other applications.
Warm Restart The controller executes OB100 before starting the free cycle (OB1). A warm restart deletes
the peripheral I/O (PII and PIQ), deletes the non-retentive memory bits (M), timers (T) and counters (C),
and changes the peripheral outputs to a pre-defined safe state (default is 0). A warm restart saves the
retentive memory bits, timers, counters and data blocks (DBs).
Index-1
Index
A
Access points, 28
Access verification dialog, 52
Accessing WinLC RTX from STEP 7, 57
Adding blocks to Load memory with SFC82 and
SFC84, 50
Adding sleep time, 103, 104, 108
Addresses, 66, 71
diagnostic, 71
distributed I/O, 66
logical addresses, 66
Adjusting, 100
minimum scan cycle time, 100
minimum sleep time, 100
priority, 87, 94
sleep-monitoring algorithm, 100, 104
Advanced tuning, 39
Alarms, 125
Always on top option, 51
Archiving, 44
Assigning addresses, 66, 69, 71
Assigning names, 9
Asynchronous threads, 94
Authorization, 14, 15
installing, 15
removing, 15
AuthorsW program, 15
Autostart, 48
Autostart CPU, 52
Avoiding jitter, 103, 104, 108
B
Basic tasks, 17
BATF status indicator, 37
Battery fault, 37
Baud rate, 113
Blue screen (unrecoverable fault in Windows), 45
Bus cycle time mode, 72
BUSF1 status indicator, 37, 122
BUSF2 status indicator, 37
C
Change Password dialog, 53
Changing, 34, 94
CPU keyswitch position, 34
mode buttons, 34
operating mode, 34
password, 53
priority, 94
sleep-monitoring algorithm, 104, 108
Checking CP card configuration, 123
Clock, 86
Clock memory, 58, 60
Closing the control panel, 33
Cold restart, 48, 55, 60, 77
retentive memory, 62
Commands
Diagnostic buffer, 42
MRES (memory reset), 36
Options
Customize, 51
Security, 52
Tuning panel, 39
Commissioning wizard, 9
Communication, 1, 17, 21, 23, 28, 75, 76
commissioning the CP card, 9
DPV1 extensions, 76
getting started tasks, 17
peer-to-peer, 75
with I/O devices, 21, 23
Computer requirements, 4
Configuration console, 9, 123
Configured mode, 123
Index
Index-2
Configuring, 17, 24, 30, 58, 71
clock memory, 60
communications, 28
controller communications, 17
CP card as submodule, 21, 23
CP card in PC station, 9
cycle/clock memory, 58
cyclic interrupt, 58, 65
diagnostics/clock, 58
DP addresses, 71
interrupts, 64
memory, 58
operational parameters, 58
PC station, 18
project in STEP 7, 30
retentive memory, 58, 62
scan cycle, 61
startup, 58
startup characteristics, 60
submodule, 24
time-of-day interrupt, 58, 63
Contact information, iii
Context-sensitive help, 5
Control panel
opening and closing, 33
status indicators, 37
Control panel, 2
opening and closing, 33
status indicators, 37
Control program, 30, 36
archiving, 44
changing keyswitch position, 34
deleting, 36
downloading, 30
restoring, 44
Controller, 17, 24, 30, 46, 48, 90
autostart, 52
configuring communications, 17, 28
configuring in PC station, 18
configuring in STEP 7, 30
information, 126
memory reset changes, 36
restart method, 55
scan cycle, 87
setting priority, 90, 94
shutting down, 33, 46, 48
starting, 33, 48, 54
startup, 46
status indicators, 37
submodule, 21, 24
system status list (SSL), 126
Copyright information, ii
Correction factor for clock, 58
CP 5613 card, 30, 119, 124
improving performance, 124
CP Card, 9, 17, 18, 20, 21, 23, 24, 28
changing mode, 123
checking configuration, 123
commissioning, 9
configuring as submodule, 18, 21, 23, 24
configuring in STEP 7, 30
PC station component, 20
CPU indicators, 37
CPU menu
diagnostic buffer, 42
MRES (memory reset), 36
options
customize, 51
security, 52
tuning panel, 39
CPU usage, 39, 90
jitter, 90
Crash operations (OB84), 45
Creating, 44
archive file, 44
password, 52
submodule, 24
Customer service, iii
Index
Index-3
Customize command (CPU menu), 51
Cycle time, 39, 61, 87, 100, 104, 108
Cycle/clock memory, 39, 58, 60, 61
Cyclic interrupt, 58, 65
D
Data retention, 48
Deterministic scan cycle, 94
Device Manager, 124
Diagnosing hardware, 122
Diagnostic addresses for DP I/O, 71
Diagnostic buffer, 42, 46, 125
saving the contents, 46
Diagnostic events, 42, 125
Diagnostic interrupts, 77, 125
Diagnostics/clock, 58
Display language, 51
Distributed I/O, 1, 113
Downloading a control program, 30
DP bus cycle, 72
DP instructions, 119
DP network, 66, 122
assigning addresses, 66
troubleshooting, 122
DPV1 extensions, 76
E
Edit component dialog, 24
Eliminating forced sleep interval, 108
E-mail addresses (Siemens), iii
English language option, 51
Equidistant DP, 72, 124
Error OBs, 77
Errors, 37, 125
Events, diagnostic, 42
Execution, 63, 94
adjusting priorities, 94
OB10, 63
Execution monitor, 39, 87, 90, 95, 100, 104, 108,
133
Execution time, 39, 61, 81, 85, 87, 100, 108, 117,
119, 133
DP instructions, 119
instructions and math operations, 117
SFBs, 85
SFCs, 81
Execution time limit, 104, 133
External power supply, 50
EXTF status indicator, 37
F
Features of WinLC RTX, 3
File menu
Archive command, 44
Restore command, 44
Forced execution sleep time, 95, 104, 108
Format for diagnostic buffer, 42
FRCE status indicator, 37
Free cycle, 87, 90, 100, 104, 108, 133
French language option, 51
Full-text search, 5
G
General module properties dialog, 123
German language option, 51
Getting started, 5, 17
Glossary, 133
H
Hardware abstraction layer (HAL), 120
Hardware configuration, 18, 30, 57, 71
clock memory, 60
cyclic interrupt, 65
interrupts, 64
OBs, 77
operational parameters, 58
retentive memory, 62
scan cycle, 61
startup characteristics, 60
time-of-day interrupt, 63
Hardware interrupts, 64, 77, 125
Index
Index-4
Help menu
Using help, 5
Help on diagnostic buffer, 42
Hotline (Siemens), iii
I
I/O access error, 77, 125
I/O device communication, 21
IF slot, 21, 23, 24
Index (PC station slot), 20, 24
Indicator lights, 37
Inserting sleep time, 103, 104, 108
Installation requirements, 4
Installing, 12, 14, 15
SIMATIC NET, 9
Venturcom RTX, 12
WinAC authorization, 15
WinAC components, 9, 14
WinAC RTX, 14
Instructions, 117, 119
Interface slots, 23
Internet web sites (Siemens), iii
Interrupt mode, 124
Interrupt OBs, 77, 90
Interrupts, 64, 65, 87, 125
INTF status indicator, 37
IRQ, 124
Isochronous Mode, 72, 124
J
Jitter, 39, 90, 94, 95, 103, 104, 108, 133
caused by SFCs, 81
reducing, 39, 94, 95, 103, 104, 108
tuning panel, 39
K
Keyswitch position, 34
L
Language selection, 51
LED indicators, 2, 37
Load memory, 46, 48, 50
Adding blocks with SFC82 and SFC84, 50
Logic blocks, 73
OBs, 77
SFBs, 85
SFCs, 81
Logical address, 69
M
Main program cycle, 77
Managing sleep time, 95
Math operations, 117
Maximum execution load, 39, 95, 104, 108, 133
Memory, 7, 46, 58, 113
configuring, 58
nonretentive, 7
requirements, 4
retentive, 62
saving and restoring, 46
specifications, 113
Memory areas, 36
Minimum scan cycle time, 39, 61, 87, 95, 100,
133
Minimum sleep time, 39, 87, 95, 100, 103, 104,
108, 133
Mode (CP card), 123
Mode Buttons, 34
Module removal/insertion, 125
MPI, 28
MRES, 2, 36, 37
Multiprocessor system, 120
N
Names, 9, 18
assigning, 9
Network, 122
protocols, 28
STEP 7 communications, 28, 30
troubleshooting, 122
Index
Index-5
O
OB1, 55, 87, 90, 100, 104, 108
OB10, 58, 63
OB100, 55, 60, 87, 104
OB100 and OB102, 48, 60
OB102, 55, 60, 104
OB122, 125
OB20, 58, 64, 100
OB32 to OB36, 58, 65, 108
OB35, 58, 65, 87, 90, 100, 104, 108
OB40, 58, 87, 90, 100, 104, 125
OB61, 72, 104
OB62, 72
OB80, 65
OB80 to OB87, 64
OB82, 58, 125
OB83, 58, 125
OB84, 45
OB85, 58, 104, 125
OB86, 58, 125
OBs, 77
execution, 39, 90
supported by WinLC RTX, 73
ON status indicator, 37
Opening the control panel, 33
Operating mode, 34, 52
at startup, 52
RUN, 34
RUN-P, 34
status indicators, 37
STOP, 34
Operating system threads, 94
Operational parameters, 58
Optimizing performance, 39
Order number, 113
Organization blocks, 77
Overview, 1
P
Panel, 2
opening and closing, 33
status indicators, 37
Password, 52, 53
changing, 53
creating, 52
PC station, 9, 18, 24, 30
configuring with SIMATIC NET, 18
configuring with STEP 7, 30
CP card as component, 9
CP card as submodule, 21, 24
PC-based controller, 1
scan cycle, 87
starting, 33
PCI slot, 20
Peer-to-peer communications, 28, 75
Performance, 87, 95, 100, 104
tuning, 39, 87, 95, 100, 104
Personal computer, 4
PG/PC interface, 28
Polled mode, 124
Power failure, 62
Power supply, 50
Power-Down State, 46
Priority, 39, 87, 94, 95, 100, 104, 108, 133
adjusting, 39, 87, 94, 95
cyclic interrupts, 65
interrupt OBs, 64
OBs, 77
setting, 90, 94, 108
Priority class error, 125
Process image partition, 72
Product overview, 1
PROFIBUS-DP, 1, 24, 28, 113
assigning addresses, 66
communicating with I/O, 21
Index
Index-6
PROFIBUS-DP (continued)
CP card submodule, 24
DPV1 extensions, 76
equidistant DP, 72
Isochronous Mode, 72
logical addresses, 69
network troubleshooting, 122
specifications, 113
Programming error, 77
Protocols, 28
R
Rack failure, 77
RAM requirements, 4
RDSYSST, 126
Real-time subsystem priority, 94
Real-time system clock, 86
Recover from a Windows crash, 45
Register Controller for Start at PC Boot
Command (CPU menu), 54
Removing
Authorization, 15
WinAC RTX software, 16
Requirements, 4
Resetting memory areas, 36
Resources (computer), 100
Responding to diagnostic events, 125
Restart, 7, 48, 60
autostart feature, 52
characteristics, 60
retentive memory, 62
selecting method, 55
Restoring, 44
Retentive memory, 58, 62
Ring ON button, 24, 123
RTSS priority, 94
RUN, 34
RUN status indicator, 37
RUN-P, 34
S
Safety notification, ii
Scan cycle, 39, 61, 81, 87, 90, 94, 95, 100, 104,
108, 133
adjusting priorities, 94
configuring, 61
jitter, 90
monitoring, 39
SFCs causing jitter, 81
SDB0, 58
Security, 52
Security command (CPU menu), 52
setting level, 52
Selecting
autostart, 52
language, 51
restart method, 55
Service
starting the controller after reboot, 54
Setting
PG/PC Interface, 28
priority, 94, 108
security options, 52
Setup, 9, 12, 14
Venturcom RTX, 12
SFBs
execution times, 85
peer-to-peer communications, 75
supported by WinLC RTX, 73
SFBs, 85
SFC0, 86
SFC1, 86
SFC11, 119
SFC126, 72, 117
SFC127, 72, 117
SFC13, 119, 125
SFC14, 69, 119
SFC15, 69, 119
SFC22, 62
Index
Index-7
SFC26, 119
SFC27, 119
SFC39, 125
SFC42, 125
SFC47 (WAIT), 87, 95, 100, 103, 104, 108
SFC51, 126
SFC64, 86
SFC82 to SFC84, 48, 50
SFCs, 81
execution times, 81
supported by WinLC RTX, 73
Shutting down, 33, 46, 48, 50
Siemens contact information, iii
SIMATIC NET, 3, 9, 18
Sleep management techniques, 95
Sleep time, 39, 87, 90, 94, 95, 100, 103, 104,
108, 133
Sleep-monitoring algorithm, 87, 95, 100, 104, 108
SMP, 120
Specifications, 113, 120
Start date/time (OB10), 63
Start event, 77
Starting the controller, 33, 46, 54
Startup, 48, 58, 60, 104
autostart, 52
configuring, 58, 60
restart method, 55
Station configuration editor, 18, 20, 23, 24
Station failure, 125
Status indicators, 2, 37
STEP 7
accessing WinLC RTX, 57
configuring PC station, 18
configuring the controller, 57
connecting to WinLC RTX, 28, 30
hardware configuration, 30
STOP, 34, 37
Submodule, 18, 21, 23, 24, 28
CP card, 28
creating, 24
Symmetric multiprocessor, 120
System clock, 86
System function blocks (SFBs), 85
System functions (SFCs), 81
System requirements, 4
System status list, 126
T
Technical specifications, 113, 120
Telephone numbers (Siemens), iii
Terminology, 133
Test for jitter, 90
Threads, 90, 94
Time (system clock), 86
Time error, 77
Time-delay interrupt, 64, 77
Time-of-day interrupt, 58, 63, 77
Timing adjustment, 39
Timing resolution, 7
Transition from STOP to RUN, 46, 48, 62
Troubleshooting, 122
error conditions, 37
network problems, 122
Tuning panel, 39, 87, 90, 94, 100, 104, 108
Tuning performance, 39, 87, 95, 100
U
Unbuffered startup, 48
Uninstalling WinAC RTX, 16
Uninterruptible power supply (UPS), 50
Unrecoverable fault in Windows, 45
Unregister, 54
V
Venturcom RTX, 12, 120
installation, 12
platform evaluator, 12
Index
Index-8
Verifying CP card configuration, 123
Virtual rack, 20
Virtual slot, 20
W
WAIT, 103
Warm restart, 55, 60, 63, 77
Watchdog timer, 61, 65, 100
Web sites (Siemens), iii
WinAC RTX installation, 9, 12, 14, 15
Windows, 45, 51
always on top, 51
blue screen (unrecoverable fault), 45
UPS settings, 50
WinLC RTX
accessing from STEP 7, 57
clock correction factor, 58
communicating with I/O, 21
configuring communications, 28
configuring in PC station, 18
configuring with STEP 7, 57
connecting to STEP 7, 28, 30
control panel, 2
CP card submodule, 21, 24, 28
features, 3, 113
operation when Windows crashes, 45
priorities, 94
process control, 1
properties dialog, 24
registering for start at PC boot, 54
specifications, 113
starting, 54
unregistering for start at PC boot, 54
WinLC RTX differences from WinLC Basis, 7
Work memory, 46, 48
saving and restoring, 46
Response Form
Your comments and recommendations help us to improve the quality and usefulness of our publications.
Please take the first available opportunity to fill out this questionnaire and return it to Siemens.
Name of Product Documentation:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Please give each of the following questions your own personal mark within a range from 1 (very good) to 5
(very poor).
Do the contents meet your requirements?
Is the information you need easy to find?
Is the text easy to understand?
Does the level of technical detail meet your requirements?
Please rate the quality of the graphics and tables.
Additional comments:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Please check any industry that applies to you:
Automotive
Chemical
Electrical Machinery
Food
Instrument and Control
Non-electrical Machinery
Petrochemical
Pharmaceutical
Plastic
Pulp and Paper
Textiles
Transportation
Other ___________________________
Mail your response to:
Siemens Energy & Automation, Inc.
ATTN: Technical Communications M/S 5518
One Internet Plaza
Johnson City TN USA 37604
Include this information:
From
Name: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Job Title: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Company Name _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Street: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
City and State: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Country: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Telephone: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _