Simatic S7-PDIAG For S7-300 and S7-400 Configuring Process Diagnostics
Simatic S7-PDIAG For S7-300 and S7-400 Configuring Process Diagnostics
Preface, Contents
Product Overview
1
Installation and License
Management
2
Modifying Times
15
Editing Attributes
16
20
Glossary
Index
Edition 07/2005
A5E00473485-01
Safety Guidelines
This manual contains notices you have to observe in order to ensure your personal safety, as well as to
prevent damage to property. The notices referring to your personal safety are highlighted in the manual
by a safety alert symbol, notices referring to property damage only have no safety alert symbol. The
notices shown below are graded according to the degree of danger.
Danger
! indicates that death or severe personal injury will result if proper precautions are not taken.
Warning
! indicates that death or severe personal injury may result if proper precautions are not taken.
Caution
! with a safety alert symbol indicates that minor personal injury can result if proper precautions are not
taken.
Caution
without a safety alert symbol indicates that property damage can result if proper precautions are not
taken.
Attention
indicates that an unintended result or situation can occur if the corresponding notice is not taken into
account.
If more than one degree of danger is present, the warning notice representing the highest degree of
danger will be used. A notice warning of injury to persons with a safety alert symbol may also include a
warning relating to property damage.
Qualified Personnel
The device/system may only be set up and used in conjunction with this documentation. Commissioning
and operation of a device/system may only be performed by qualified personnel. Within the context of
the safety notices in this documentation qualified persons are defined as persons who are authorized to
commission, ground and label devices, systems and circuits in accordance with established safety
practices and standards.
Prescribed Usage
Note the following:
Warning
! This device and its components may only be used for the applications described in the catalog or the
technical description, and only in connection with devices or components from other manufacturers
which have been approved or recommended by Siemens.
Correct, reliable operation of the product requires proper transport, storage, positioning and assembly
as well as careful operation and maintenance.
Trademarks
All names identified by ® are registered trademarks of the Siemens AG.
The remaining trademarks in this publication may be trademarks whose use by third parties for their
own purposes could violate the rights of the owner.
Disclaimer of Liability
We have reviewed the contents of this publication to ensure consistency with the hardware and
software described. Since variance cannot be precluded entirely, we cannot guarantee full consistency.
However, the information in this publication is reviewed regularly and any necessary corrections are
included in subsequent editions.
Further Support
If you have any technical questions, please get in touch with your Siemens
representative or agent responsible.
You will find your contact person at:
http://www.siemens.com/automation/partner
You will find a guide to the technical documentation offered for the individual
SIMATIC Products and Systems here at:
http://www.siemens.com/simatic-tech-doku-portal
The online catalog and order system is found under:
http://mall.automation.siemens.com/
Training Centers
Siemens offers a number of training courses to familiarize you with the
SIMATIC S7 automation system. Please contact your regional training center or
our central training center in D 90327 Nuremberg, Germany for details:
Telephone: +49 (911) 895-3200.
Internet: http://www.sitrain.com
Technical Support
You can reach the Technical Support for all A&D products
• Via the Web formula for the Support Request
http://www.siemens.com/automation/support-request
• Phone: + 49 180 5050 222
• Fax: + 49 180 5050 223
Additional information about our Technical Support can be found on the Internet
pages http://www.siemens.com/automation/service
Index Index-1
Competitive strength
System and process operators continually need to minimize production costs in
order to remain internationally competitive in industry. Down times in production
systems can lead to loss of production and therefore represent an important cost
factor. Process diagnostics with S7-PDIAG is aimed at the reduction of this cost
factor.
Customer Benefits
You can, of course, recognize process errors without using S7-PDIAG. S7-PDIAG,
however offers more efficient ways and means of designing plant-specific
processes and of configuring special functions for monitoring "neuralgic points" in
your process. The advantages are:
• S7-PDIAG detects process runtime errors at an early stage, and thus
significantly reduces down times and production losses.
• Efficient troubleshooting routines due to detailed error information which is also
available to the machine operator. After an error has occurred in your control
hardware or production system, the SIMATIC system and process diagnostics
functions immediately provide you with corresponding plain text error
messages, including the date and time.
• Several errors occurring in short succession are displayed in the correct time
order. You can also view further details, if available.
• Simple and fast configuration of objects and methods, as well as minimum
programming effort for motion monitoring.
• The system provides detailed information (e.g. b means of a criteria analysis),
and thus supports troubleshooting routines via the operator station (HMI),
without any call for additional programming.
• Consistency between the diagnostics and the user program
1. Error recognition:
The error recognition function is performed on an S7 CPU via the blocks
generated by S7-PDIAG. When an error has occurred, the system reads and
saves the error signal status of the corresponding addresses (initial value
acquisition), and provides this information for subsequent display and analysis.
It also reports the error ID and associated values (e.g. temperature reached) to
connected HMI operator panels as required.
2. Message display:
S7-PDIAG recognizes incoming and outgoing errors and displays them at the
HMI. The two criteria for displaying this information on the HMI are:
- A message window displays the error message in plain text, including the
date and time.
- A detail window provides additional information to the user, i.e. the relevant
signals, including the logic code in LAD or STL. A criteria analysis
determines and indicates the triggering signals.
3. Criteria Analysis:
By means of a criteria analysis based on the initial values, S7-PDIAG in
conjunction with the operator panels can be used to locate the error triggering
address and thus the cause of the process error (with Boolean program logic).
4. Troubleshooting:
Troubleshooting routines can be performed either by user intervention in the
process and/or by manual operator control via the control system (at the
operator panel). Since troubleshooting usually requires operator control of
aggregate motions, a standardized motion screen is implemented to support
such routines. The user can also toggle auto and manual mode at the HMI.
5. Restarting the Process:
Depending on the type of error eliminated, the user can decide to continue
operation directly or initialize the system before he resumes operation.
Error Definition
You specify exactly which error event is to be monitored by means of an error
definition in an address, motion or general monitoring definition. S7-PDIAG also
allows you to monitor all addresses of the type BOOL.
Monitoring Blocks
Based on the error definitions configured, S7-PDIAG generates monitoring function
blocks you need to download to the CPU in order to be able to monitor your
process.
Criteria Analysis
A criteria analysis is performed on the operator panel in order to analyze the error
conditions. A criteria analysis can be performed only for boolean addresses (see
"Readme.wri") and starts at the initial diagnostic address (IDA). Criterial analysis
evaluates the initial values of all networks which determined the value of the initial
diagnostic address. You can then display the states of the addresses (initial
values) which caused the error (for example, limit switch at input I1.1) up to the
result of logic operation in STL, LAD, and FBD directly on the operator panel.
Positive criteria analysis assumes the signal state "1" of the initial diagnostic
address to be correct, while negative criteria analysis assumes that the signal state
"0" is correct.
The criteria analysis is available for all boolean input parameters of a function block
and can thus be performed across the block limits.
Exclusion Addresses
You can create a list of so-called "exclusion addresses" for criteria analysis, which
are defined as "never causing an error". Criteria analysis then hides these
addresses and the subnets in which they are found, if they have been registered as
having the value "0" (this is only possible in conjunction with ProAgent, version 5.0
or higher). This allows a differentiation between auto and manual mode, for
example.
Termination Addresses
You can also define addressees referred to as "termination addresses" in a list.
The system terminates the use of auxiliary networks for criteria analysis when this
termination address is reached.
Configuration
In the first step, you program the PLC functions.
These include:
• Programming control functions under LAD/FBD/STL,
• Defining/programming monitoring function under S7-PDIAG,
• Compilation of the control program and generating diagnostics functions, and
• Download of the blocks to the AS.
In the second step, you configure the HMI function parameters.
These include:
• Selecting the default images provided by ProAgent,
• Selecting the controls whose signals are to be displayed by the HMI system,
• The number of plant units displayed,
• Generating the HMI project and
• Download of the compiled data to the display unit (HMI).
1. The Message Screen displays all queued error messages, including the time
and date,
2. The Diagnostics Detail Screen displays the result of a criteria analysis relevant
to an error message. This analysis determines the error message triggering
signals in the user program and marks the signals that cause the error (criteria
analysis).
3. The Motion Screen displays all executable motions of a unit and options for
operator control of specific aggregates via the arrow keys.
4. The Diagnostics Screen displays the current status of all system units.
These, as well as all further data relevant for process diagnostics are stored in a
common database as shown in the figure below.
This incorporation into the global system significantly reduces expenditure for
programming process diagnostics functions.
The use of your the programming software requires a product-specific license key
(authorization). Starting with S7-PDIAG V5.3, this key is installed using Automation
License Manager (ALM.)
Automation License Manager is a software product of Siemens AG, and is used to
manage the License Keys (technical representative of licenses) of all systems.
Automation License Manager is available on:
• the S7-PDIAG product CD
• the Internet pages of A&D Customer Support of Siemens AG as Web
Download.
Automation License Manager features an integrated Online Help. You can open
this help after you installed ALM by pressing F1, or selecting Help > Help on
License Manager. This help system provides detailed information about the
functionality and handling of Automation License Manager.
Licenses
STEP 7 program packages are legally protected by license agreements. You
purchase a license that entitles you to legally use a product. Representatives of
those legal rights are:
• the CoL (Certificate of License), and
• the License Key.
License Keys
The License Key is the technical representative of a license (electronic license
stamp.)
SIEMENS AG issues a License Key for its software products which are legally
protected by license. The software product can only be used if a valid License Key
is found on the computer, and in compliance with the license agreement an terms
of use associated with this License Key.
Notes
• To get you started with the user interface and functionality of your S7-PDIAG
software, you may be run in demo mode without License Key over a short
period.
• However, the unrestricted use is only permitted and possible with License Key,
in compliance with license agreements.
• If you have not installed the license key, you will be requested to do so at
regular intervals.
License Keys may be stored on the media outlined below, and may be transferred
between those:
• License Key disks
• Local hard disk drives
• Network drives
For further information about the handling of License Keys, refer to the ALM Online
Help.
License categories
The licenses for software products of Siemens AG are distinguished based on the
application-oriented categories outlined below. The behavior of a software is
determined by its License Key category. The category of use is derived from the
relevant CoL.
License Description
category
Notes
• For detailed information about the installation of Automation License Manager,
refer to its current "Readme.wri" file.
• The ALM Online Help contains all necessary information about the functionality
and handling of License Keys.
Notes
• You may use the standard software without a license key over a short period,
in order to obtain an initial overview of its user interface and functionality.
• However, unrestricted use of the software in accordance with the license
agreement license requires installation of the License Key.
• If you have not installed the License Key, you will be asked to do so at regular
intervals.
Notes
• In Windows 2000/XP/Server 2003, License Keys can only be used on a hard
disk drive that is not write protected.
• Floating Licenses may also be used on a network, i.e. "remotely."
Caution
! Always follow the License Key guidelines in the Online Help and readme.wri of
ALM. If ignored, you risk irrevocable loss of your License Keys.
You can open the ALM Online Help either context-sensitive by pressing F1, or by
selecting Help > Help on Automation License Manager.
This help system provides all relevant information about the functionally and
handling of License Keys.
Hardware requirements
• S7-PDIAG requirements in analog to the STEP 7 standard package. Additional
requirements:
• Your S7 CPU must contain SFC17 and SFC18, otherwise S7-PDIAG will be
unable to process Alarm_S, and an error message will appear while
downloading the blocks.
• S7-PDIAG requires additional memory space. Refer to the current readme file.
Software requirements
S7-PDIAG V5.3 runs on a PC/PG under:
• the operating systems Microsoft Windows, Windows 2000, Windows XP,
Windows Server 2003.
• STEP 7 standard software, version 5.3.
The above standard values are determined by the complexity of the monitored
networks and the corresponding monitoring logic.
The above standard values are determined by the complexity of the monitored
networks and the corresponding monitoring logic.
Preparations
Basic requirements is the installation of Windows 2000/XP/Server 2003 and of the
STEP 7 standard software.
Running Setup
Procedure:
1. Open the Windows 2000/XP/Server 2003 "Control Panel". Click "Software" to
open the installation dialog
2. Click "Install"
3. Insert the data medium, then click "Continue." Windows 2000/XP will
automatically locate SETUP.EXE.
4. Follow the instructions of Setup
A message will be displayed on the screen to inform you that Setup has been
completed successfully.
'Details' Window
The 'Details' window of S7-PDIAG is positioned at the bottom edge of the unit
overview.
• The 1:Error tab displays information on errors occurred, e.g. when generating
data,
• The 2:Variables tab is used for editing variables and block parameters.
You can here directly edit the interface of the block selected and define break
points and exclude addresses. Further information can be called by pressing the F1
key.
3.1.2 Units
Units structure the process view according to components which are related to one
another by their technical function. If you have set up your project so that each
block relates to a physical object in the process (for example, a press, a stamp, or
a cover), the units represent your process image. Your program will thus contain a
unit for each of its blocks assigned the diagnostics system attribute.
Units can be monitored by means of error definitions. Blocks assigned the
"S7_pdiag = true" system attribute can always form a unit.
System Structure
Units can also store global data for all nested objects of the hierarchy (e.g.
operating modes and group error bits). A unit may contain error definitions,
motions, and other subunits. Using units, you can combine both individual errors
and motions into a system unit.
Grouping Units
In addition to the default standard group you can group any number of units in up
to 15 different groups. You should, however group the units after you have created
the structure, i.e. after you have completed your program hierarchy.
3.1.3 Motions
A motion is a sequence in the process; for example, a punch moving up and down.
Such motions can be monitored by means of error definitions.
Motions in a process are often defined as follows:
• They have two directions with two or more stable final positions
• They can be moved in the corresponding direction when triggered
For example, a cylinder moves from the current final position to the target final
position when the hydraulic pressure is switched on.
By using UDT_Motion and the LAD networks for motion programming included with
S7-PDIAG, you can display and control motions without the need of further
programming using the motion screens of the display unit.
System Structuring
A plant or machine may contain a large number of motions. It is therefore a good
idea to combine motions with similar functions together in a subsystem, which is
referred to here as a unit.
You can create several error definitions for each motion. A motion can only exist in
units, and represents an actual motion of a physical object in the process (for
example, a punch die moving up and down).
Layout
Motions are represented with other objects in a tree structure in the unit overview.
When you create your instances, the new motions are depicted in the unit
overview.
Motions displayed in the unit overview are output and can be controlled by the user
on the motion screens of the display devices (using ProAgent). This information
may include actual limit position values, for example.
The 'Details' window of S7-PDIAG is positioned at the bottom edge of the Unit
Overview and displays error messages and variables.
Here you can define break points and exclude addresses for your FBs.
1:Error tab
Displays error messages relevant to S7-PDIAG.
2:Variables tab
Displays the interface of the block selected from the tree structure of the unit
overview as well as the corresponding variables and block parameters.
The variables tab is split into two partitions: the left shows the variable overview,
the right shows the variable detail view.
• In the variable overview, you can edit variables and block parameters.
• The variable detail view provides detailed information on declared block
parameters and variables. The display in some columns depends on the object
type to be edited, the selected declaration segment or on the selected
variables. You can here declare break points and exclude addresses for
process diagnostics. You can call further context-sensitive information by
pressing the F1 key.
The initial diagnostic address is the address to which the error definition in the
block is linked. Error tracking starts at this address when a criteria analysis is
performed. The address must either contain an assignment or a "Set" or "Reset"
operation
S7-PDIAG allows you to monitor specific process error events. You may configure
these errors either while you are creating your user program or you do so at a later
stage. Monitoring modes available are:
• Address Monitoring
lets you direct monitoring specifically towards level changes or edge transitions
at certain addresses. The function can be combined with a delay time function.
You can monitor addresses without having to modify your user program.
• Motion Monitoring
lets you monitor the correct execution and speed of physical motions in your
process. The requirement for motion monitoring is that you follow the
programming conventions and adapt your user program.
• Global Monitoring
lets you monitor process errors which are the result of logic operations with
multiple addresses, without the need to modify your user program. S7-PDIAG
will only generate an error message if this logic condition has been met.
Note
If you do not enable error monitoring, the error definition still remains stored in the
database of the project, but no monitoring definition is generated in the error-
detection block on compilation. This means that no errors can be detected or
recorded during the process. In this way, you can temporarily disable error
monitoring.
When initial value acquisition is enabled for an error definition, the function records
all binary states of addresses used to form the monitored address (IDE) during the
cycle in which an error was detected. You can use these to perform a criteria
analysis and thus simplify troubleshooting routines.
Click on the "Initial Value Acquisition" check box to enable this function for an error
definition at the time you declare or modify the definition.
Notes
• You can only enable initial value acquisition if the "Monitoring Active" check
box has also been set for the corresponding error definition.
• On compilation, you can disable the option of generating data for initial value
acquisition for the project via the menu command Options > Customize.
Criteria analysis uses the user program logic to determine the cause of an errors,
is performed on the operator panel and used to track the cause of errors. The
criteria analysis starts at the initial diagnostic address and evaluates the initial
values of all networks which determine the value of the initial diagnostic address.
Positive criteria analysis assumes the signal state "1" of the initial diagnostic
address to be correct, while negative criteria analysis assumes that the signal state
"0" is correct.
Requirement
Errors detected can only be evaluated by means of a criteria analysis if initial value
acquisition is enabled.
Notes
• If you have defined exclusion addresses, the subnets will be ignored ion this
case.
• At the FCs, it is not possible to track errors beyond block boundaries by means
of the criteria analysis. In this case, the call parameters will not be transferred
to these blocks via static data as would be done in the case of FBs and the
corresponding instances. It is therefore not possible to access these data later
and not possible to track these parameters beyond block boundaries during
criteria analysis.
Monitoring Definition
The address monitoring function monitors whether the initial diagnostic address
has acquired a specific level after a certain period of time (monitoring time). If the
result is positive, the error is registered as an incoming error. The error is outgoing
after the address changes its level again.
Depending on whether you select level or edge monitoring, the delay time is
triggered either immediately or not until the next edge transition.
Level Monitoring
The level monitoring function monitors a defined level (0 or 1) at the initial
diagnostic address. An error state occurs if the address has maintained a specified
level for a certain period of time. The user can define this delay time. A level
change within this monitoring time retriggers the delay time.
Monitoring starts at the first cycle (To = startup). The delay time (tdelay) starts both
at T0 and T3. If the length of the defined level signal exceeds the specified delay
time, an ”incoming" error will be reported at T1 and T4. T2 and T5 report "outgoing"
errors.
The figure below shows address monitoring in level monitoring mode.
tVerz tVerz
T0 T1 T2 T3 T4 T5
Edge Monitoring
The edge monitoring function is used to detect defined positive or negative edges
("0 >1" or "1 >0" transitions) at the initial diagnostic address. An error state occurs
if the address maintains an incorrect level during the specified delay time after the
edge transition (for example, level "1" after a positive edge). A level transition
within this monitoring time retriggers the delay time.
Edge and level monitoring are basically the same functions, with the exception that
edge monitoring stores the status of the monitored address at the time To ( =
startup), i.e. the startup point is not interpreted as an edge.
The next (selected) edge transition triggers the delay time (tdelay). An error will
thus not be detected and reported "incoming" until the time T3 starts, rather than at
the time T1 as would be the case when operating in level monitoring mode. The
error is reported "outgoing" at the time T4.
(tVerz) tVerz
T0 T1 T2 T3 T4
Error Status
The address monitoring function will return an error status if the following user-
defined conditions have been met.
Assigning Messages
You should assign messages to your level and edge monitoring definitions. The
operator panel displays these messages after an error has occurred.
Notes
• Make sure to include the LAD networks for motion programming and
UDT_Motion when programming motions in your user program. Maximum
benefits are therefore achieved by using predefined motion monitoring logic for
error monitoring.
• When you set the monitoring time to "0", it will be ignored and you therefore
generate less code. This also implies that you can no longer use the Modify
Times Online/Offline menu command.
Action monitoring represents one of the four motion monitoring modes. In this
monitoring mode, the function checks whether the target final position (Target final
position) has been reached within a certain time (Action time) after a control
command was output (Trigger).
• The point at which the process is monitored is the target final position, i.e. the
complete run sequence of a motion is monitored during the process.
• The monitoring logic is already defined. You only have to add the trigger and
the action time.
• An error state occurs if the trigger for the specified action time has been
activated and the target final position (initial diagnostic address) has not been
reached.
Action monitoring is based on the <target final position>.
Notes
• Make sure that you include the LAD networks for motion programming and
UDT_Motion when programming motions in your user program. Maximum
benefits are achieved by using the predefined motion monitoring logic for error
monitoring.
• When you set the monitoring time to "0", it will be ignored and you therefore
generate less code.
• In error definitions, times can now be modified by means of a variable of data
type TIME in addition to being entered a fixed values.
Startup monitoring is one of the four motion monitoring modes. It is used to check
whether an object moves out of the actual final position (Actual final position) within
a certain time (Startup time) after a control command (Trigger) was output.
• The point at which the process is monitored is the current final position. The
reaction of a motion to a control command is therefore being monitored. This
means that this function detects an error at an earlier stage than the action
monitoring function. This is particularly useful when operating with slow
processes.
• The monitoring logic is predefined. You merely have to add the trigger and
startup time parameters.
• The error state occurs if specified startup time has been triggered and the
actual final position (initial diagnostic address) signal is still active.
Startup monitoring is based on the <actual final position> as initial diagnostic
address.
Notes
• Make sure to include the Ladder networks for motion programming and
UDT_Motion when programming motions in your user program. Maximum
benefits are achieved by using the predefined motion monitoring logic for error
monitoring.
• When you set the monitoring time to "0", it will be ignored and you therefore
generate less code.
• In error definitions, times can now be modified by means of a variable of data
type TIME in addition to being entered a fixed values.
Notes
• Make sure to include the Ladder networks for motion programming and
UDT_Motion when programming motions in your user program. Maximum
benefits are achieved by using the predefined motion monitoring logic for error
monitoring.
• Input of times is optional for motion monitoring definitions. If you set the
monitoring time of "0", it will be ignored and you therefore generate less code.
• In error definitions, times can now be modified by means of a variable of data
type TIME in addition to being entered a fixed values.
Interlock monitoring is one of the four motion monitoring modes. It checks whether
the interlock condition (Executability) has been met after a motion control
command (Trigger) was output and a certain time (Interlock time) has expired.
• The point at which the process is monitored is the executability. This
monitoring function checks whether the interlock condition is met after the
motion has been triggered and the interlock time has expired.
• The monitoring logic is predefined. You merely have to add the trigger and the
interlock time.
• An error state occurs if the specified interlock time has been triggered and the
interlock condition (initial diagnostic address) is still inactive.
Interlock monitoring is based on the <executability> as initial diagnostic address.
Notes
• Make sure to include the Ladder networks for motion programming and
UDT_Motion when programming motions in your user program. Maximum
benefits are achieved by using the predefined motion monitoring logic for error
monitoring.
• Entering a time in motion monitoring definitions is optional. If you set the
monitoring time to "0", it will be ignored and you therefore generate less code.
• In error definitions, times can now be modified by means of a variable of data
type TIME in addition to being entered a fixed values.
S7-PDIAG provides the following monitoring times which you can declare via the
dialog boxes as required for your error or monitoring definitions :
• Time in an address monitoring definition.
• Times in the S7-PDIAG language elements for the global monitoring definition.
Note
• If you do not enter a time or a time equal to "0", this implies automatically that
these monitoring functions are excluded from "Online modification". You
cannot modify a monitoring time you have set to "0" via the "Change Times
online" function.
• In error definitions, times can now be modified by means of a variable of data
type TIME in addition to being entered a fixed values.
Processes often involve controlling of procedures which have two stable final
positions and their transfer from one final position move to the other.
For example, a cylinder can be moved from its current final position to the target
final position after switching on the hydraulic pressure. In the same way, a reactor
can be heated up from a current temperature to a higher value once a heating
system is switched on. These procedures can be interpreted as motions.
Error Status
The motion monitoring function will return an error status if the following user-
defined conditions have been met.
Example
The following Figure gives you an overview of how and where the various
monitoring modes start to monitor the motion.
Default conditions:
• There is a motion with two final positions, the current final position (CFP) and
the target final position (TFP).
• Each final position is assigned a position flag (PF) and a safety guard (SG) as
an interlock enable.
• The control signal is to trigger a motion from the current final position (CFP) to
the target final position (TFP). However, this motion may not start until the
safety guard is closed.
Motion Monitoring Sequence:
• The control signal will be set at the time T0. Interlock monitoring starts at this
point. If the interlock condition has been met and the function has recognized
that all protective covers are closed within this time, the motion control trigger
will be output (T1).
• Motion startup monitoring checks to see whether the object leaves the actual
final position (CFP) within the startup time (T2). Monitoring starts once the
interlock condition has been enabled (T1).
• The actual motion is monitored by the action time. After the interlock condition
is enabled (T1), the function checks whether the object reaches the final target
position (T4) within the action time. The completion of the motion is detected
when the object reaches the final target position (T4).
• Reaction monitoring checks whether the target final position remains stable.
The reaction time starts once the position flag (T3) is set or the object leaves
the final target position while the position flag is still set.
Monitoring Logic
The global monitoring lets specify a user-specific monitoring logic in the form of a
logical expression sequence. Using the language elements provided in S7-PDIAG,
the user can create a monitoring logic for complex error monitoring functions. An
error state is detected if the defined conditions are met (if logically TRUE).
The Initial Diagnostic Address merely forms the initial address for criteria analysis.
If this address is to be part of the monitoring definition (i.e.if it is to trigger the
error), you must specify this explicitly.
Error Status
The global monitoring function also returns an error status if user-defined
conditions have been met.
The following generally applies when detecting an error with a defined monitoring
logic:
• The logical result "0" indicates that no error has been detected.
• The logical result ”1" indicates that an error has just been detected.
• An "incoming" error message will always be generated if the result is a logical
"0" to "1" transition.
• An "outgoing" error message will always be generated if the result is a logical
"1" to "0" transition.
Assigning Messages
You should assign an error message in your error definitions that is displayed on
the logged on display devices after an error has occurred, i.e. if the monitoring
logic is true.
5.2 AND
Syntax: A1 AND A2
The logic AND operation links the two expressions A1 and A2 to form a new
expression A0, i.e. the expression A0 = TRUE if A1 AND A2 = TRUE. The result is
also an expression and can be used for further logic operations.
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A2
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
Examples:
• I1.0 AND I1.1
• "MotorOn" AND "Enable"
• ("MotorOn" AND "Enable") AND "Automatic"
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A2
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
Note
If several expressions are logically linked using an AND operation, these
expressions are still processed, even if one of the expressions is FALSE and the
results of the expression is FALSE.
5.3 ONDT
T T
A1
A0
Examples:
• ONDT ("Trigger", 1000)
If "Trigger" is TRUE, the result of this expression is TRUE one second later, if
"Trigger" remains TRUE.
• ONDT (I1.0, T#2s)
When I1.0 = TRUE, the result = TRUE after two seconds, provided I1.0
remains TRUE.
ONDT actually represents a positive level monitoring function which can logically
linked in further operations.
Note
• The expression A1 should not contain any of the following qualifiers:
• ONDT
• EP
• EN
• SRT
5.4 EN
Syntax: EN (A1)
The EN instruction (negative edge) saves the result of the last (positive or
negative) edge at expression A1. The EN instruction forms the expression A0 from
the expression A1 according to the following syntax:
• A0 = TRUE after a negative edge (transition TRUE to FALSE) at A1.
• A0 = FALSE after a positive edge (transition FALSE to TRUE) at A1.
• A0 = FALSE until the occurrence of the first negative edge at A1.
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
EN thus evaluates whether the logic result of the input expression has caused a
TRUE to FALSE transition. The result is TRUE when the TRUE to FALSE transition
is detected. The result remains TRUE until the input expression is TRUE again.
Examples:
• EN(I1.0)
• EN("Trigger")
This is useful if you do not want to detect an edge transition until the monitoring
definition has started, and thus skip the initial state. In this case the value of the
input expression is evaluated on startup. If the input expression is already FALSE
at this point, it is ignored.
Note
The expression A1 should not contain any of the following qualifiers:
• ONDT
• EN
• EP
• SRT
5.5 EP
Syntax: EP (A1)
The EP instruction (positive edge) saves the result of the last (positive or negative)
edge at expression A1. The EP instruction forms the expression A0 from the
expression A1 according to the following syntax:
• A0 = TRUE after a positive edge (FALSE to TRUE transition) at A1.
• A0 = FALSE after a negative edge (TRUE to FALSE transition) at A1.
• A0 = FALSE until the occurrence of the first positive edge at A1.
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
EP thus evaluates whether the logic result of the input expression has triggered a
FALSE to TRUE transition. The result is TRUE when the FALSE to TRUE transition
is recognized. The result remains TRUE until the input expression is FALSE again.
Examples:
• EP(I1.0)
• EP("Trigger")
This is useful if you do not want to detect an edge change until the monitoring
definition has started and thus skip the initial state. In this case the value of the
input expression is evaluated on startup. If the input expression is already TRUE at
this point, it is ignored.
Note
The expression A1 should not contain any of the following qualifiers:
• ONDT
• EN
• EP
• SRT
5.6 NOT
Syntax: NOT A1
The NOT instruction forms the expression A0 by inverting the expression A1. If A1
= TRUE, then A0 = FALSE. If A1 = FALSE, then A0 = TRUE. The NOT instruction
inverts the logic result of the operation.
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
Examples:
• NOT I1.0
• NOT( "Trigger1" AND "Trigger2")
5.7 OR
Syntax: A1 OR A2
The OR instruction is a logical link of two expressions A1 and A2 to form a new
expression A0, i.e. the expression A0 = TRUE if at least one of the two expressions
A1 OR A2 is TRUE. The result is also an expression and can be used in further
logical operations.
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A2
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
Examples:
• I1.0 OR I1.1
• "MotorOn" OR "Enable"
• ("MotorOn" OR "Enable") AND "Automatic"
Note
If several expressions are logically linked by an OR instruction, these expressions
are still processed, even if one of the expressions is TRUE and the result of the
operation is therefore TRUE.
5.8 SRT
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A2
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
SRT in general:
T T
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9 T10T11
A2
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9 T10T11
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9 T10T11
The SRT instruction monitors the status between two expressions. A positive
transition at expression 1 triggers the delay time. A positive transition at expression
2 stops the delay time. If the delay time expires before it is stopped by a transition
at expression 2, the logical status of the resultant expression is set to "1". The
resultant expression maintains the same value until the next positive transition at
expression 1 or expression 2. If the logical level of both expressions changes
within the same cycle, the result is FALSE since expression 2 is of higher priority.
Examples:
• SRT(I1.0, I1.1, 1000)
• SRT( "Trigger1", "Trigger2", 2000)
Note
The expressions A1 and A2 should not contain any of the following qualifiers:
• ONDT
• EN
• EP
• SRT
5.9 XOR
Syntax: A1 XOR A2
The XOR instruction logically links two expressions A1 and A2 to form a new
expression A0, the expression A0 = TRUE if A1 or A2 = TRUE. The result is also
an expression and can be used for further logical operations.
A1
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A2
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
A0
T0 T1 T2 T3 T4 T5 T6 T7 T8 T9
Examples:
• I1.0 XOR I1.1
• "MotorOn" XOR "Enable"
• ("MotorOn" XOR "Enable") XOR "Automatic"
5.10 Separators
You must separate the individual language elements by using separators. If you
put a separator in quotation marks ("..."), the character will not be evaluated as a
separator.
The following characters are interpreted as separators:
• Space
• TAB
• RETURN/ENTER
• Brackets
5.11 Brackets
Brackets determine the processing sequence.
Brackets can also be used as separators.
5.12 Addresses
You can use all binary S7 addresses. Symbolic names must be enclosed in
quotation marks.
5.13 Timers
The qualifiers ONDT and SRT supply a time. The unit of the time value is
automatically interpreted in milliseconds (ms) if you enter a numeric value. You can
enter a value either in S7-Time format (T#...) or in accordance with the IEC
standard (7h5m6s). The resolution depends on the AS you are using.
In addition to the entry as a fixed value, timers can also be controlled via the
variable data type TIME as of S7-PDIAG V5.1.
Permissible Programming:
A I 0.0
R M 50.0
S M 50.1
NOT
= Q1.0 => IDA
Impermissible Programming:
A I 0.0
NOT
= Q1.0 => IDA
Or:
A I 0.0
NOT
R M 50.0
S M 50.1
= Q1.0 => IDA
Examples of Expressions:
• I1.0
This is the simplest case of an expression, namely a single address.
• I1.0 AND I1.1
The two addresses I1.0 and I1.1 are logically linked by AND.
• (I1.0 AND I1.1) OR (I1.2 XOR I1.3)
The logic operations in brackets are executed first and then the two results are
logically linked by OR.
• ONDT(NOT I1.0, 1000)
This expression comprises a Boolean expression and a time.
The following section shows you the valid syntax for expressions and Boolean
expressions. The syntax for addresses and timers corresponds to the standard
syntax in STEP 7. You should adhere to this syntax when you enter your
monitoring logic:
Syntax of expressions:
Expression:= Address or
(expression) or
NOT expression or
expression OR expression or
expression AND expression or
expression XOR expression or
EP (Boolean expression) or
EN (Boolean expression) or
ONDT (Boolean expression, time) or
SRT (Boolean expression, Boolean expression, time)
Notes
• If the result of logic operation for the whole expression is TRUE, the error is
registered as "incoming." If the result of the whole expression is FALSE, the
error is registered as "outgoing."
• Note that the maximum number of addresses may not exceed 64.
Qualifier Priority
() 1
EP, EN, ONDT, SRT 2
NOT 3
AND 4
XOR 5
OR 6
If qualifiers have the same priority, the monitoring logic is processed from left to
right.
Note
• If several expressions are logically linked by AND, these expressions are still
processed, even if one of the expressions is FALSE and results in the whole
expression is thus FALSE.
• If several expressions are logically linked by OR, these expressions are still
processed, even if one of the expressions is TRUE and results in the whole
expression being TRUE.
Note
Always use S7-PDIAG language elements and arrange them according to the
proper syntax. Otherwise, an error will be displayed both when you enter the
language elements and when you attempt to compile the monitoring logic.
UDT_Motion
The data structure of the UDT_Motion forms the interface to the display units
(HMI). The display devices recognize this data structure and can thus directly
access specific data. "ZEn06_01_S7PDIAG_drill" automatically determines the
reference.
The display devices can recognize whether or not a motion is currently active or
not, based on the data provided. The operator panels can also be used to control
motions by setting specific bits in manual mode, provided this operating mode has
been selected. The example "ZEn06_01_S7PDIAG_drill" included uses the data
structure of UDT_Motion in FB100.
What is a UDT?
A UDT is a userdefined data type which can be saved as a block. This means that
you can create one UDT and then use it many times:
• as "standard" data type on the one hand,
• as template for generating blocks of the same data structure on the other.
Note
Please ensure that you have set this option under "Options > Customize".
Note
The "auto" and manual" variables are usually fetched from the corresponding
UDT_Unit. To keep matters as simple as possible, we have ignored this feature in
our examples.
VERSION : 0.0
Notes
• The associated value SD_1 represents the value specified in the error
definition.
• The USER_OPD parameter is currently not used.
Run Sequence
The system ignores the run sequence of the various networks when using auxiliary
networks.
Example:
A M0.0
A I1.0
= M1.1 //M1.1 has the value of cycle n-1
A I1.1
= M 0.0 //M0.0 has the value of cycle n
Use the LAD networks for motion programming in FB100 of the project
"ZEn06_01_S7PDIAG_drill" supplied with S7-PDIAG as well as UDT_Motion in
order to avoid motion configuration errors.
If you use the UDT_Motion and the Ladder networks supplied for your motion
programming, all the data required for a motion are generated for the display
directly in the user program, without the need for further configuration.
Depending on the display device (HMI), you can use the hotkeys on the side of the
operator panel for operator control of motions.
Network 1
In network 1, the final position can be determined via a limit switch, a light barrier,
or a combination of data. The status of the final positions is output on the motion
screen, which also visualizes limit switch "Ea.b".
Ea.b #z.Final_Position[0]
Network 2
In this network, the system checks the safety conditions (interlocks) of the motions
towards direction 1. In the example, the opposite direction of the motion is used; in
this case, the trigger for the output is inverted.
#z.Control2 #z.Interlock1
Network 3
In this network, the system checks the interlocks for operator control of motion
towards direction 1.
This network may or may not be used, depending on whether there are differences
in the interlock between the operating modes. Depending on the application used,
network 1 can also include the interlocks for automatic operation and network 2 the
interlocks for operator control (programmed manual mode). In the example, the
same interlocks apply as in network 1.
#z.Interlock1 #z.Manual_Interlock1
Network 4:
In this network, the executability is formed. This supports controlled manual mode.
The network shows that motion is enabled towards direction 1.
#z.Manual_Inte
hand rlock1 #z.Final_Position[0] #z.Executability1
auto #z.Interlock1
Network 5:
Here the trigger is formed which is to initiate the motion towards direction 1.
The lowest branch in this network represents auto mode. Due to the set process
sequence, the variable #z.Automatic_Trigger1" is set at another location in the user
program in order to initiate a motion.
The two upper branches in the network represent operator control of the motion via
the motion screen, using the hotkeys. The #z.Manual_Enable1" parameter
determines whether the motion is visualized on the display device or not.
"Ix1.y1" and "#z.Display_order[0]" would switch if the motion were first in the
sequence and the hotkey Ix1.y1" were pressed. The same applies to all other
hotkeys. In this example, only two hotkeys are used.
#z.Display_Or
Ex2.y2 der[1]
#z.Automatic_Tri
gger1 auto
Network 6
This network is only required if you are using reaction monitoring.
The position flag is set when the motion has reached the final position and the
trigger is still active. The trigger is then cleared in the next network. Reaction
monitoring will be enabled as soon as the position flag is set.
Note
Reaction monitoring is enabled only if the motion has already been triggered once,
in order to avoid initialization problems.
#z.Final_ #z.Position_
Position[0] #z.Control1 Flag[0]
S
Network 7:
In this network, the motion trigger is formed for all operating modes. In this
example, the motion is only controlled if both the executability and the trigger for
this direction are set.
Network 8:
The "Moving_Status" bit is used to indicate on the display unit whether the motion
is actually executed or not.
This can be determined implicitly by triggering the output, as shown in the
example, or by measuring the motion directly in the process.
#z.Moving_
#z.Control1 Status1
Network 9
This network is only required if you are using reaction monitoring.
The position flag is reset when the motion is triggered in the opposite direction.
#z.Final_
Ea.b Position[0]
Network 1
The final position can be determined via a limit switch, a light barrier or a
combination of data. The status of the final positions is displayed on the motion
screen.
In this example, the limit switch Ia.b is visualized.
#z.Position_
#z.Control2 Flag[0]
R
Networks 2, 3 and 4
These networks form the conditions for execution and also contain the auto and
manual mode interlock definitions. This supports controlled manual mode, and the
networks show that motion is enabled towards direction 1.
You can add further interlock conditions in these networks.
• Interlock monitoring:
The interlock monitoring function is appended to the "Executability" signal. This
functions, in combination with a criteria analysis, enables you to determine the
missing signal which is preventing the motion.
Monitoring logic (without time factor):
#z.Trigger1 AND NOT #z.Executability1
Monitoring logic (with time factor):
ONDT (#z.Trigger1, ?) AND NOT #z.Executability1
Monitoring logic (with time factor):
ONDT (#z.Trigger1, ?) AND NOT #z.Executability1
#z.Moving_ #z.Final_
hand Status2 Position[0] #z.Executability1
#z.Moving_
auto Status2
Networks 5 and 6
Forms the trigger which is to initiate the motion towards direction 1.
The upper branch in the network shows key operated motions via the motion
screen. When the key is pressed, the display device sets the "Manual_Operation"
bit.
The lowest branch of this network represents auto mode motion: Due to the
process sequence, the variable "#z.Automatic_Trigger1" will be set at another
location of the control program.
#z.Manual_Operati #z.Final_
hand on1 Position[0] #z.Trigger1
#z.Automatic_
auto Trigger1
Networks 7 and 8
These networks form the motion trigger for all operating modes.
In this example, the motion is only controlled if both the executability and the
trigger for this direction are set.
#z.Moving_
Status1
#z.Executability1 #z.Trigger1
A UDT (User Data Type) is a userdefined data type which can be saved as a block.
This means that you can create one UDT and then use it many times:
• as "standard" data type on the one hand,
• as template for generating blocks of the same data structure on the other.
The data structures for S7-PDIAG process diagnostics are defined by the following
UDTs:
UDT_Unit:
The UDT_Unit comprises the information required in order for the operator panel
(HMI) to assign an alarm message to the faulty program location. The UDT_Unit
contains definitions for the following:
• Group error detection and group error acknowledgement
• for 16 modes, two of which are defined by default, namely the "Manual" and
"Auto" modes. The user can define the remaining 14 operating modes as
required.
UDT_S_Unit:
The UDT_S_Unit comprises the group error address and the group error
acknowledgement.
This feature saves memory space and you do not need to "loop" the process unit
mode definition to all subunits.
UDT_Motion:
The UDT_Motion represents a standardized interface between S7-PDIAG and the
display devices (operator panels) and contains all parameters for:
• Displaying motions on the motion screens of the operator panels (HMI), without
the need for additional configuration, and
• For manually moving these objects via the motion screen of the operator panel.
Note
Prerequisite is the use of LAD networks for motion programming, included in
FB100 of the sample project "S7_DIAG".
6.7.2 UDT_Unit
The UDT_Unit contains the information required by the HMI to associate an error
alarm with the faulty program location. The UDT_Unit contains defines:
• group error detection and group error acknowledgement
• 16 modes, with two default definitions of "Manual" and "Auto". You can define
the remaining 14 operating modes to suit your requirements.
Use UDT_Unit only once for each process unit (FB). All of the components
subordinate to this process unit should refer to the operating mode of the higher-
level unit.
Example: A press production line may contain many presses. They operate
relatively independently and in different modes (manual, automatic). Each of the
presses can be seen as a process unit, which contains further units (for example,
the stamp, the protective cover, etc.). However, it is useful to control these
subordinate units separately when they operate in different modes. For this reason,
the subordinate units and their corresponding process units are set to the same
operating mode.
6.7.5 UDT_S_Unit
UDT_S_Unit only contains the group error address and the group error
acknowledgement.
This saves memory space, and the process unit mode definition does not need to
be "looped through" to all subunits.
The UDT_S is characterized by the "S7_pdiag_s" attribute, and this attribute is set
"TRUE".
The following table shows the data structure of the UDT_S_Unit. You may not
modify the default structure.
6.7.8 UDT_Motion
Note
Prerequisite for motion programming is the use of the LAD Networks for Motion
Programming in FB 100 of the sample project "ZEn06_01_S7PDIAG_drill" which is
supplied in the S7-PDIAG software package.
You should use the UDT_Motion each time you program a motion. The
UDT_Motion represents the data interface between the currently active user
program, S7-PDIAG, and the display devices.
The UDT_Motion contains all the parameters necessary for motion monitoring and
control and can be inserted in the variable declaration table of a function block
(FB):
• In the areas: "in", "out" and "stat".
If you use the UDT_Motion and the Ladder networks supplied for motion
programming, all data required for a motion are generated for the display directly in
the user program, without the need for further configuration.
Requirement
Prerequisite is, however that you have used UDT_Motion for programming motions
and have thus created a standardized interface for the motion screen. Motions are
output on the operator panel in a semi-graphic format. The figure below shows a
screenshot of UDT_Motion elements on the display unit.
1. Select the monitoring mode and the IDA and declare error definitions:
Prerequisite:
Use of UDTs and LAD
networks for motion
programming.
Notes
New monitoring definitions are found under the "Standard Group" directory in the
unit overview of S7-PDIAG.
This function is only available as of STEP 7 V5.1+SP3.
Procedure:
1. Open the "Address Monitoring" dialog box as follows:
- Select the unit from the unit overview under which you want to insert the
monitoring definition and then call the menu command Insert >
Monitoring Definition. Select address monitoring in the next dialog box
"Process Monitoring Definitions" and click on "New".
or
- select the initial diagnostics address at a block in the LAD/STL/FBD editor
and right-click to open the "Process Monitoring Definitions" dialog box.
Select "Address Monitoring" from the "Templates" list box and click on
"New".
or
- in the symbol table, select the symbolic address for which you want to
create a monitoring definition and right-click to open the "Process
Monitoring Definitions" dialog box. Select "Address Monitoring" from the
"Templates" list box and click on "New".
2. In the "Definition" tab, choose either to create a level monitoring or an edge
monitoring definition. You can specify a delay time for the level or edge trigger
and enable the monitoring definition as well as initial value acquisition.
3. Specify the general information on the monitoring definition in the "General"
tab.
4. Define the message which is to be sent to the display device after an error has
occurred.
5. Confirm your entries with "OK" or "Save".
6. You can call further information on the input of data at this dialog box via the F1
key.
Note
If you have initially created a monitoring definition for a FB for which an instance
DB already existed, you must delete and recreate it in order to enable the
diagnostic functions for the instance DB.
Procedure:
1. Open the "Process Monitoring Definitions" dialog box by selecting a motion in
the unit overview and then selecting the menu command Insert > Monitoring
Definition. You can set any of the following default motion monitoring
definitions:
- S7-PDIAG: Action Monitoring Definitions
- S7-PDIAG: Startup Monitoring Definitions
- S7-PDIAG: Reaction Monitoring Definitions
- S7-PDIAG: Interlock Monitoring Definitions
or:
Select the initial diagnostic address in a block in the LAD/STL/FBD Editor and
open the "Process Monitoring Definitions" dialog box via the menu command
Edit > Special Object Properties > Monitoring or right-click. Select the
required monitoring definition from the Templates" list box and click the "New"
button.
or:
1. in the symbol table, select the symbolic address for which you want to create a
monitoring definition and right-click to open the "Process Monitoring
Definitions" dialog box.
2. Edit the default monitoring logic in the "Definition" tab according to your
specific monitoring type. You can enable monitoring and initial value
acquisition.
3. Specify the general information on the monitoring definition in the "General"
tab.
4. Define the message which is to be sent to the display device once the error
has occurred.
5. Confirm your entries with "OK" or "Save".
6. You can call further information on the input of data at this dialog box via the F1
key.
Notes
• When programming motions in your user program, we recommend you revert
to the LAD Networks for Motion Programming and to UDT_Motion, both of
which are provided by S7-PDIAG. If you do so, you can use the default motion
monitoring logic and thus gain maximum benefits.
• If you have initially created a monitoring definition for a FB for which an
instance DB already existed, you must delete and recreate it in order to enable
the diagnostic functions for the instance DB.
Procedure:
1. Open the "Global Monitoring" dialog box as follows:
- Select a unit from the unit overview and call menu command Insert >
Monitoring. In the next dialog box "Process Monitoring Definitions, select
global monitoring from the "Templates" list box and then click on "New".
or
- In the LAD/STL/FBD editor, select the Initial Diagnostics Address in a block
and use the menu command or right-click to open the "Process Monitoring
Definitions" dialog box. Select "Global Monitoring" from the "Templates" list
box and click on "New".
or
- in the symbol table, select the symbolic address for which you want to
create a global monitoring definition and right-click to open the Process
Monitoring Definitions" dialog box. Select the monitoring mode required
from the upper list box and then click on "New".
2. Enter the monitoring logic in the "Definition" tab. Please adhere to the
information in Language Elements of S7-PDIAG. You can also enable
monitoring and Initial Value Acquisition.
3. Specify the general information on the monitoring definition in the "General"
tab.
4. Define the message which is to be sent to the display device once the error
has occurred.
5. Confirm your entries with "OK" or "Save".
6. You can call further information on the input of data at this dialog box via the F1
key.
Note
If you have initially created a monitoring definition for a FB for which an instance
DB already existed, you must delete and recreate it in order to enable the
diagnostic functions for the instance DB.
Note
Do not enter more than 64 addresses in your monitoring logic for a general
monitoring definition.
Procedure:
1. Select the Initial Diagnostics Address and call the "Global Monitoring" dialog
box, by:
- calling menu command Insert > Monitoring in the unit overview a then
selecting "Global Monitoring" in the next dialog. Select the corresponding
IDA and then click on "New" if you want to create a new global monitoring
definition, or select an existing global monitoring definition under "Existing
Monitoring Definitions" and then click on "Edit".
or:
- Select the initial diagnostic address in a block in the LAD/STL/FBD Editor
and open the "Process Monitoring Definitions" dialog box via the menu
command Edit > Special Object Properties > Monitoring or right-click.
From there, you can reach the "General Monitoring" dialog box by clicking
on "New" or "Edit".
2. Enter your monitoring logic in the "Monitoring" input box of the "Definition" tab,
or edit the displayed monitoring logic. To do this, use the language elements of
S7-PDIAG.
3. Confirm your entries with "OK" after you have configured the monitoring logic.
Procedure:
1. Open the monitoring definition in which you want to enter or edit a message
text.
2. You can enter the message text in the lower half of the dialog box.
Options available:
- Select the required priority class (1 to 16) for the message. The message
priority indicates the importance of a message. Priority class 1 is the
lowest. By assigning a priority, you can influence the format and order in
which an error message is displayed on the operator panel.
- Select the "Message Configuration" option if you want to define a user-
specific message. In the "Text" input box, enter a message text with a
max.string length of 254 characters.
- Select the "Symbolic name" option if you want to set the name of the initial
diagnostics address from the symbol table as message.
Note
The symbolic name will now be used as message text. However, if you modify the
symbolic name at a later time, this will have no effect on the message text.
- Select the "Symbol Comment" option if the symbol comment for the initial
diagnostic address from the symbol table is to be used as the message.
Note
The symbol comment will now be used as message text. However, if you modify
the symbol comment at a later time, this will have no effect on the message text.
Formal addresses in the symbol comment will not be replaced.
- Click the "Configure" button if you want more configuration options for the
message. In this case you can define, for example different display
devices, as well as the format of the displayed message.
3. Set the "With Acknowledgement" check box if errors are to be acknowledged
by the operator. In this case the operator acknowledges the message by
pressing a key on the operator panel.
4. Confirm your entries with "OK" or "Save" after you have defined your message
as required.
Formal Addresses
The system provides several formal addresses which will be replaced either when
it compiles the error definitions or displays the message.
Please note:
• Formal addresses are replaced in the specific language used.
• The last component of the name is always used for units and motions. This
means that the name is composed of the element located between the end and
the first dot on the way to the beginning of the name.
Example:
Name Result
Drilling_Machine.Feed Feed
Drilling_Machine.Drilling_Machine.Feed Drilling_Machine.Feed
Note
More than one formal address within the opening and closing characters ($$) is
not permitted.
Note
To ensure the inclusion of associated values in your compilation, set the "Include
associated values" check box on the "Compile" tab ("Customize" dialog box.).
To open this dialog box, select the Options > Customize > Compile command.
Procedure:
1. Select the Process Diagnostics > Compile Completely menu command.
2. The "Compile" dialog box is then opened during the initial compilation run. You
will be prompted to check the compilation settings before you start an initial
compilation. Click on "OK".
3. In the "Defaults" tab of the next dialog box, enter the number of the monitoring
blocks for error recognition and initial-value/status acquisition.
4. In order to call a user block you have programmed, enable the "Enable call"
check box and enter its ID.
5. In order to use group priority, enable the "save" check box and enter the
corresponding memory word.
6. Start compilation by clicking on "OK".
During the compilation run, the progress is shown in a progress bar. If the
compilation run was unsuccessful, an error message is displayed.
Notes
• If the compilation run was unsuccessful, a list of the error definitions which
have caused the errors is output.
• In order to avoid inconsistency, it is mandatory to update all ProTool/ProAgent
configuration data.
• Please note that when you recompile all monitoring units, the time required
may increase accordingly.
Procedure:
1. Select the menu command Process Diagnostics > Compile.
2. The "Compile" dialog box is then opened during the initial compilation run. You
will be prompted to check the compilation settings before you start an initial
compilation. Click on "OK".
3. In the "Defaults" tab of the next dialog box, enter the number of the monitoring
blocks for error recognition and initial-value/status acquisition.
4. In order to call a user block you have programmed, enable the "Enable call"
check box and enter its ID.
5. In order to use group priority, enable the "save" check box and enter the
corresponding memory word.
6. Start compilation with "OK."
During the compilation run, the progress is shown in a progress bar. If the
compilation run was unsuccessful, an error message is displayed.
Notes
• If the compilation run was unsuccessful, a list of the error definitions which
have caused the errors is output.
• If you use the Process Diagnostics > Compile menu command to compile
the current changes, warnings may be displayed which are not displayed
during the next generation run. This always occurs if it was possible to create
the monitoring blocks despite the warnings. In order to view all the warnings
once again and thus to verify the complete program, you should perform a full
compilation via the Process Diagnostics > Compile Completely menu
command.
• After the compilation, a message displays the recompiled groups.
Procedure:
1. In SIMATIC Manager, open OB1 of the corresponding S7-PDIAG project with
double-click.
2. Ad the following call for the error detection blocks:
CALL FBxy, DBxy
PDIAGZyklus:= #OB1_SCAN_1
Note:
Adapt the FB and DB numbers (here: xy) according to your block numbers.
3. Download OB1 to the PLC via the menu command PLC > Download.
Note
• It is best to add the call for the error detection blocks at the end of OB1, since
all addresses have already been updated at this point in the cycle.
• If you have created multiple groups in your program, you only need to add the
CALL for the standard group (FBxy, DBxy) error detection blocks to OB1. The
CALLS for error detection of the groups you created are automatically added to
the error detection FB of the standard groups.
Procedure:
1. Select the menu command PLC > Download in S7-PDIAG or click the
corresponding toolbar button.
2. You can also download the tasks to the AS via SIMATIC Manager.
Notes
• After you have initially downloaded the blocks to the CPU, you must also
download the calling block (for example, OB1) in order to enable processing of
the monitoring blocks. You can also download these data via SIMATIC
Manager.
• All monitoring blocks will be embedded in one cycle, provided your CPU
supports this action.
Procedure:
1. Switch to online mode in the SIMATIC Manager.
Result: The online project window pops up.
2. Select the corresponding S7-PDIAG program.
3. Call the function "CPU Messages" via menu command PLC > CPU Messages
....
4. In the next "Settings" dialog window, enable the check box under "A", in order
to be able to view Alarm_S messages. Close the dialog window.
5. After you have customized your error message display in "CPU Messages",
you can trigger a process error in order to view the corresponding messages.
Before you can program process diagnostics for the operator panel (HMI), you
need to implement the corresponding images in your S7-PDIAG project.
Further information is found in the documentation of your display device (HMI).
Executability
In order to enable runtime for this sample program on the PLC, input byte "0" and
output byte "1" must be interconnected to digital modules. If your system is only
equipped with a CPU but not with digital modules, insert OB122 (I/Q access error)
and monitor your parameters via "Status/Control variable".
Programming FB10
Open FB10 in SIMATIC Manager with double-click. Edit the statement list under
"LAD/STL/FBD" as follows:
1. In the first network, enter:
Network name: Logic operation Q1.0 in FB 10
Program: A I 0.0
A I 0.1
A I 0.2
A I 0.3
= Q 1.0
2. Save the block via the file menu command File > Save.
Introduction
After you have programmed the block for your sample program, you can proceed
to create an address monitoring definition for this block.
Procedure
1. If not already open, double-click on FB10 to open it in SIMATIC Manager. The
"LAD/STL/FBD" Editor opens.
2. Output Q1.0 of the example is to be monitored. Address monitoring is therefore
to be added for this output. Position the cursor on the instruction line "= Q 1.0"
and call Edit > Special Object Properties > Monitoring to open the "Process
Monitoring Definitions" dialog box.
3. In the "Templates" box, select "S7-PDIAG: Address Monitoring" and the click
on "New".
Result: The "S7-PDIAG: Address Monitoring" dialog box displays the
"Definitions" tab. The initial diagnostics address displayed is taken from the
statement list, i.e."Q1.0".
4. In order to assign this error message the corresponding message text, enter "Q
1.0 = Level 1 in FB10" in the "Message" group box .
5. Exit the tab with "OK". You have now configured an address monitoring
definition for Q1.0 at level 1. This configuration is now displayed in the
"Existing Monitoring Definitions" box of the "Process Monitoring Definitions"
dialog box also.
6. Click on "Close" to exit the "Process Monitoring Definitions" dialog box.
7. Save the block via the menu command File > Save, for the newly created error
definition to be saved in the block and then exit the LAD/STL/FBD Editor.
8. Insert the following call for FB 10 at the end of OB 1 in the "BspPDIAG" project:
- CALL FB 10, DB 10
9. Click "Yes" In the subsequent dialog box to create the instance DB which does
not yet exist (in this case: DB 10).
Result: The DB 10 was created with the S7-PDIAG-relevant data and has also
retained the attribute "S7_pdiag = true".
10. Save the block and its new error definition via menu command File > Save and
exit the LAD/STL/FBD Editor.
Introduction
In order to enable the monitoring blocks you generated, you must download them
to your PLC and add a call for these blocks in OB1, or at the appropriate point in
your user program.
Requirement
You have generated the monitoring blocks for your entire user program.
Note
FB 44 contains the error detection. If an error is detected in FB44 it will
automatically call FB45, which is responsible for the acquisition of initial values and
of the status.
Introduction
The steps below show you how to generate monitoring blocks from your error
definitions.
Procedure
1. In SIMATIC Manager, select the "Blocks" container and open S7-PDIAG via
the menu command Options > Configure Process Monitoring.
Result: The unit overview of S7-PDIAG displays the PDIAG-relevant units; in
this case FB10 and DB10.
2. In S7-PDIAG, call menu command Process Diagnostics > Compile. If you
are initially compiling these data, you will be prompted to check the compilation
settings. Confirm this message with "OK".
3. In the "Defaults" tab of the next "Settings" dialog box that you can also call via
menu command Options > Settings, set the error ID "44" for the error
detection blocks to be compiled, and the ID "45" for initial value/status
acquisition blocks.
4. Exit the dialog box with "OK". A progress bar is displayed and the monitoring
blocks are generated. If an error occurs during compilation, a message will
appear on the screen.
Result: SIMATIC Manager displays the generated monitoring blocks and the
corresponding SFCs required.
Requirements
In order to view the messages without using an OP, call the "CPU Message"
function included in the standard software package. Proceed as follows:
1. Switch to online mode in SIMATIC Manager.
Result: The online project window pops up.
2. Select the program example "BspPDIAG".
3. Call the "CPU Message" function via the menu command PLC > CPU
Messages ....
4. In the next dialog box "Customize", enable the check box below "A" in order to
enable you to view the Alarm_S messages. Close the dialog box.
Now that you have customized your error message display under "CPU message",
you can go ahead and trigger a process error.
Requirement
In order to configure process diagnostics under ProTool, you must have
successfully generated the monitoring blocks for your user program, as described
at the start of this chapter.
Operator Panel
The following description shows the OP25 as an example of a display device in all
the figures. The procedure is identical for all display devices.
Introduction
Before you can program process diagnostics for the OP (HMI), you first need to
implement the corresponding images into your S7-PDIAG project.
IN our example we only need the diagnostics screens, and you can therefore
import the default configuration and diagnostics screen files supplied with the
software package to your sample project. Otherwise you will have to copy and
paste the diagnostic screens, as described in the manual.
Procedure
Integrate the diagnostic screens as follows:
1. If you have not already done so, start SIMATIC Manager and call menu
command File > Open.
2. In the "Open" dialog box, select the "Projects" option. Select the "BspPDIAG"
project from the list.
3. Similarly, open the "ProAgent" project.
if this project does not appear in your table, click on "Find" and open the
"ProAgent" project via the ProTool directory "Default\ProAgent".
The "ProAgent" project contains default projects for various types of operator
panels.
4. For our example we only need the diagnostics screens. You can therefore
import the default configuration and diagnostics screen files directly to your
sample project.
5. Drag and drop the "ProAgentPCmedium" configuration file to the "BspPDIAG"
project or save via File > Save as to the "BspPDIAG" project.
Introduction
The next step is to start ProTool and customize your settings. Of particular
importance is that you select the network parameters, the CPU and the units.
Introduction
After you have completed the configuration, all that is left to do is to save, compile
and start the user program. You can initiate these steps all at once by starting
ProTool RT.
Note
If you do not want to use the same PC that you used for the configuration as the
operator panel in this example, you must download the compiled program to the
operator panel and then start it there.
Procedure
Proceed as follows:
1. Click on the symbol
2. Answer the compiler prompt with Yes.
3. Result: ProTool synchronizes its data to the STEP 7 database. This routine
copies the diagnostic data and ALARM_S message texts from the database to
the ProTool configuration.
The save, compile and download sequence is now running. The status window
meanwhile displays various messages on its "Compile" tab, e.g. ProTool
messages during compilation.
4. ProTool RT starts up and you can now begin process diagnostics.
Introduction
Now that you created a configuration for the OP and downloaded it to your
operator panel as described in the previous chapters, you can go on to perform a
process diagnostics run.
Requirements
Before you can perform process diagnostics on the OP, you must have completed
all the steps described in the previous sections:
• the control program must have been downloaded to the CPU and
• the configuration data must be in the operating unit.
Message Screen
The message screen is blank at first because there have not been any errors so
far.
1. Now simulate an error in FB10 as you have done previously.
An error message is output on the message screen of the OP:
2. Click on ACK to hide the message window.
Of course, although you have now acknowledged the message, you still have
to react to the error itself. Until you clear the error, the small window containing
the error character will keep flashing.
Detail Screen
The detail screen specifies the error triggering signals.
The signals that triggered the alarm message are identified by a lightning symbol.
The address monitoring function we have defined in the Getting Started with S7-
PDIAG chapter monitors output Q1.0. The error message will be triggered if
Q1.0 = 1. This is the case in the current situation.
You can see the cause in the central area of the detail screen:
The status of all inputs I 0.0, I0.1, I0.2 and I0.3 is "1". According to the assignment,
the status at output Q1.0 was therefore also set to "1". In order to eliminate this
error, at least one of the inputs must be reset to "0".
LAD Display
Click again on the corresponding button. This will move you cyclically to the next
display:
The display will appear as a ladder diagram in the central area of the detail screen.
Conclusion
You have now learned how to simulate an error, monitor its error message on the
PC and locate the cause of error.
Requirements
You first need to enable the display of columns "R, O, M, C and CC" via the "View”
menu command in order to configure monitoring definitions in the symbol table.
The addresses to be monitored can then be defined in column "R".
Procedure
1. Set the check box in column "R" for the address to be monitored.
2. You can select the monitoring definitions in the selection dialog that appears
next. Select the appropriate template, for example address monitoring and
click on ”New”.
3. You can now configure the monitoring definition and enter the message text.
Note
• Disable initial value acquisition.
• The "Initial Diagnostic Address" box shows the symbol of the monitored
address.
• Addresses no longer used in the user program can also be monitored.
Example:
"Valve 1"
"Valve"
EN ENO
"Command Close
open" Valve_open "valve open"
When you monitor the "Interlock_Open" input and an error occurs, the status of the
"Reservoir full" and "Close lid” addresses will be saved as a result of the enabled
initial value acquisition function.
Note
S7-PDIAG offers formal parameters for displaying the name of the instance (e.g.
valve 1) and the name of the station ( = name of the higher-ranking block). This
feature allows you to display both the error and its location in the error message.
Example:
In this network, it is possible either to monitor each gate contact individually or the
"Open Gate” group signal. S7-PDIAG can save the initial values after the
monitoring function has been triggered, i.e. the status of the addresses used in the
network, while ProAgent determines the triggering address by means of criteria
analysis. This feature reduces programming work drastically down to configuring
only a small number of monitored addresses.
Level 0 is monitored in this case, since the level of the limit switch signal is ”0”
when the protective guard is open (quiescent current principle). The triggering
address is determined by means of initial value acquisition and a criteria analysis.
The expression @ErrOpSym1@ determines that the triggering address appears in
the error message line. For example, if gate 2 has been opened, this message text
would be output: "Protective guard open Gate 2”.
Note
• You can configure monitoring definitions in blocks only if you set the "Address
identifier" and "Process Diagnostics Address (S7-PDIAG)" check boxes in the
"View" tab, under the Options > Customize menu command in the
LAD/STL/FBD Editor. For monitoring blocks to be represented in color, the
check boxes ”Address identifier” and ”Process Diagnostic Address”
(S7-PDIAG) in the "View" tab under the Options > Customize menu
command in the LAD/STL/FBD Editor have to be checked.
• Before you configure a monitoring definition for an address, you first need to
select this address in the LAD/STL/FBD Editor. There you can right-click on
the "Special object properties” line to open the context sensitive "Monitoring"
menu command and then call the selection dialog of S7-PDIAG.
• When monitoring an address that belongs to an assignment (coil in the
function chart, initial value acquisition must be enabled in order to allow
ProAgent to locate the triggering signal in the network by means of criteria
analysis).
Note
Note that you are only storing a message template, and not the entire message
within a template. This is why no message number is assigned in a template.
However, you can configure the message text for your monitoring definition in the
template.
Proceed as follows:
1. Select the menu command Options > Templates in S7-PDIAG.
2. In the "Templates" or "Existing Monitoring Definitions" tab of the next dialog
box, select the appropriate monitoring definition and click on "New".
Note: Existing monitoring definitions are only displayed if you have set an
initial diagnostics address.
3. The "Template (...)" dialog box opens. Make your entries in the "General" and
"Definition" tabs.
4. Click on "Save" to save your template.
5. Your template will be inserted in the "Template" dialog box, including the name
of the monitoring type. Error definitions previously generated on the basis of
the template will not be affected if you modify the template at a later time.
6. You can use this template for all new monitoring definitions; select it and click
on "New".
Proceed as follows:
1. Select the error definition you want to copy from the unit overview.
2. Copy the error definition as follows:
- Select the menu command Edit > Copy, or
- right-click and select "Copy" from the pop-up menu.
Note
After copying, the error definition is located in the clipboard and can be pasted via
the menu command Edit > Paste.
Proceed as follows:
1. Select the required object in the hierarchy into which you want to paste the
error definition from the clipboard.
2. Paste the error definition as follows:
- Select the menu command Edit > Paste, or
- Right-click and select "Paste" in the pop-up menu.
Note
You can copy and paste error definitions only within the same hierarchical object.
Note
• When you delete a monitoring definition in a function block, the monitoring
definition in the corresponding instance data block is not deleted. In the same
way, if you delete the monitoring definition in the instance data block, it is not
deleted in the function block. You should therefore always delete both
monitoring definitions (in the function block and in the instance data block), so
that no new monitoring definition is generated the next time the blocks are
compiled, and to avoid monitoring definitions remaining in instance data blocks
when no monitoring definitions exist in the corresponding function blocks.
• Error definitions can also be deleted if S7-PDIAG is not installed.
Proceed as follows:
1. Open the monitoring definition you want to change as follows:
- Select the monitoring definition in the unit overview. Open the
corresponding dialog box via right-click or call the menu command
Edit > Object Properties
or:
- Select the initial diagnostic address at a block via the LAD/STL/FBD Editor
and open the "Process Monitoring Definitions" dialog box via menu
command Edit > Special Object Properties > Monitoring or right-click.
Highlight the monitoring definition to be modified and click on "Edit".
or
- Open the ”Diagnostics” tab in the LAD/STL/FBD Editor in a block and
select the corresponding monitoring in the first column. Then open the
context menu via a right-mouse click and select the menu command
Object Properties or edit the boxes in the table.
or:
- in the symbol table, select the symbolic address for which you want to
create a monitoring definition and right-click to open the Process
Monitoring Definitions" dialog box. Select the monitoring definition you
want to modify and click the "Edit" button.
2. You can edit the general information on the monitoring definition in the
"General" tab.
3. You can edit the exact definition in the "Definition" tab and the type of
monitoring definition (depending on the monitoring logic), and you can modify
the delay time and enable or disable monitoring and initial value acquisition .
You can also edit the message which is to appear on the operator panel after
an error has occurred.
4. Click on "OK" or "Save" to confirm your entries and save the changes.
5. You can call further information on the input of data at this dialog box via the F1
key.
Note
In order to apply your changes to monitoring definitions to the process monitoring
function as well, you must generate the monitoring blocks once again. Exception: If
you have modified only the message text for the specified error event you do not
need to recompile the monitoring blocks.
Note
You should not group the units until you have completed your program hierarchy in
the structuring phase.
Procedure:
1. In S7-PDIAG, select the Options > Group Units menu command.
2. The next dialog box displays the default group (0) under "Group". The left-hand
list box displays the units belonging to the standard group.
3. Click on ”New" to create a new group. The dialog box "Group definitions"
opens.
4. Enter a name for the new group to be created as well as the ID for the
monitoring blocks for error recognition and initialvalue acquisition. Exit the
dialog box by clicking on ”OK".
Result: You have created a group that is displayed under "Group" in the
"Group Units" dialog box.
5. In the "Group Units" dialog box, select the units required from the default group
and move them to the new group by clicking the corresponding buttons
(Æ, All >). You can also use the "*" and "All" buttons to return units to the
default group.
6. In order to change the group defaults for the selected group again click on the
”Edit" command button.
7. You can use the ”Delete" command button to delete the selected group, with
the exception of the permanently available standard group. The units assigned
to this group will be returned to the standard group.
8. After you have made all settings, exit the dialog box with ”OK".
Result: In the unit overview of S7-PDIAG, the new group is identified by a small
numeral on a red background.
Note
• When you have created groups and then copy the corresponding blocks, the
copy does not include the group information. The group information is neither
included if you select and copy all blocks from the ”Blocks" directory.
• Group information is only included if you copy the complete "Blocks" directory,
since this contains the relevant data.
Proceed as follows:
1. In the unit overview select the instance error definition for which you want to
have the corresponding monitoring type displayed or which you want to edit.
or
in the search result list of the "Find in - ...” dialog box, select the instance error
definition whose corresponding monitoring type you want to view or edit.
2. Use the Edit > Monitoring Type menu command or the context-sensitive
menu (right-click) to have the monitoring type belonging to the selected
instance error definition displayed and edit it.
3. Save your changes by clicking on OK.
Result: Changes become effective after the next compilation. All accessible
instance error definitions belonging to the monitoring type will be overwritten
accordingly.
Note
Already edited or modified elements of instance error definitions will not be
overwritten when you recompile the data. If you want to overwrite all instance error
definitions, set the appropriate option in the "Options > Customize > Compile”
dialog box.
Notes
• When you add or delete error definitions or edit existing error definitions, a
message is displayed after the generation run informing you whether and if so
which data have to be updated for the display devices (HMI).
• This form of saving diagnostic-relevant network data is particularly suitable for
the commissioning phases. After you have completed commissioning, we
recommend you save diagnostic-relevant network data to the display device
(HMI) with respect to performance and the memory resources.
• The functions described above are not supported by ProTool/ProAgent earlier
than V5.2+SP2.
Procedure:
1. Select the menu command Process Diagnostics > Generate Instances. The
"Generate Instances" dialog box opens.
2. A progress bar in this window shows the progress when you generate the
instances.
Note
If the generation of instance-specific monitoring definitions was unsuccessful, a
message list opens to display the errors.
Proceed as follows:
1. Call the menu command Options > Customize to open the "Customize" dialog
box.
2. Select the option you want to preset as a message text in the "General" tab.
3. Confirm with "OK."
Requirements:
The monitoring definition to be modified:
• Has already been implemented in the S7-PDIAG monitoring blocks during a
previous compilation, and the blocks have been downloaded to the CPU
• Is active
• Contains a monitoring time which is unequal to "0."
Procedure:
1. Select the compiled monitoring definition and click on menu command Edit >
Modify Times Online or the corresponding toolbar button.
or:
- Modify the times online from the LAD/STL/FBD Editor, if you are working
online. Open the block linked to the monitoring definition and position the
cursor on the initial diagnostic address. Select the context-sensitive menu
command Special Object Properties > Monitoring. Select a monitoring
function in the next dialog box and click on "Modify Time".
2. The selected monitoring definition is displayed in the next dialog box. However,
you can only change the monitoring time.
3. Enter the new monitoring time and click on "Download". The modified
monitoring times will be downloaded to the online blocks in the CPU.
Note
Your online data in the CPU are now inconsistent with offline data. In order to re-
establish data consistency after you have modified the monitoring time online,
update your offline data.
If the menu command or the toolbar button are disabled, this may be due to the
following:
• You have selected a monitoring definition with an inconsistent online and
offline database. In this case, once again download the monitoring blocks to
the CPU and retry.
• You attempted to select an error definition in a function block.
• You attempted to change a monitoring function for which no monitoring time is
defined.
• You are working on a project under S7-PDIAG Version 3.0. You must
recompile this project in order to convert the monitoring blocks to V5.0, which
you can then edit via Modify Times.
Requirements:
The monitoring definition to be modified:
• was implemented by a previous compilation in the S7-PDIAG monitoring
blocks
• is active
• contains a monitoring time unequal to "0."
Procedure:
1. Select the compiled monitoring definition and click the menu command
Edit > Modify Times Offline or use the corresponding toolbar button.
or:
- Modify times offline from the LAD/STL/FBD Editor, if you are working
offline. Open the block linked to the monitoring definition and position the
cursor on the initial diagnostic address.
Select the menu command Special Object Properties > Monitoring via
the context-sensitive menu. Select a monitoring function in the next dialog
box and then click on "Modify Time".
2. The next dialog box displays the monitoring definition. However, you can only
change the monitoring time.
3. Enter the new monitoring time and click on "OK" to write your changes to the
offline database of S7-PDIAG.
Note
Your online data in the CPU are now inconsistent with offline data. If you want to
make re-establish data consistency after you have modified the monitoring time
offline, you once again need to download the modified monitoring definitions to the
CPU.
4. Download the modified monitoring definitions to the CPU via the menu
command PLC > Download.
If the menu command or the toolbar button are disabled, this may be due to the
following:
• You have selected a monitoring definition with inconsistent online and offline
database. In this case, download the monitoring blocks to the CPU and retry.
• You attempted to select an error definition at a function block.
• You have attempted to change a monitoring function for which no monitoring
time is defined.
• You are working on a project under S7-PDIAG Version 3.0. You must
recompile this project in order to convert the monitoring blocks to V5.0, which
you can then edit via Modify Times.
Proceed as follows:
1. Select the unit or motion whose attributes you want to display or edit on the
left-hand side of the unit overview.
2. Open the "Properties" dialog box as follows:
- Select the menu command Edit > Object Properties, or
- Right-click and select the "Object Properties" command.
3. In the "Properties" dialog box, you can view the properties of the unit in the
"General" and "Attributes" tabs.
4. Modify the attribute values as required.
5. Confirm your changes with "OK."
Note
You can find a description of the various attributes in the online help by pressing
F1 or by clicking the "Help" button in the "Attributes" tab of the "Properties" dialog
box.
Proceed as follows:
1. Select the motion whose attributes you want to display or edit on the left-hand
side of the unit overview.
2. Open the "Motion Screen" dialog box as follows:
- Call menu command Edit > Motion Screen, or
- right-click and select the command "Motion Screen".
3. Modify the attribute values you require.
4. Confirm your changes with "OK."
Notes
• You can find a description of the various attributes by calling the online help via
the "Motion Screen" or F1 key, or by clicking on "Help".
• The "Properties" dialog box can be opened via the menu command Edit >
Object Properties.
Proceed as follows:
1. If you want to print a hardcopy of all generated data, select the top object from
the unit overview and call menu command Process Diagnostics > Print in
S7-PDIAG.
2. You can decide to print only the units or monitoring definitions selected from
the unit overview of S7-PDIAG. Select an object (for example, a unit or a
motion) or a specific error definition you want to print.
3. Call the menu command Process Diagnostics > Print or click the
corresponding toolbar button to open the "Print" dialog box.
4. Set your print options.
5. Start printing with "OK".
Result:
The data for the object or error definition are printed on the default printer. If the
hardcopy consists of more than one page, two periods are printed after the page
number in the bottom right corner of the page. The last page does not have these
periods, indicating that no more pages are to follow.
Notes
• You can set up the printer and the paper format (landscape or portrait)via the
menu command Process Diagnostics > Print Setup.
• You can select the page layout for the printout (A4, A5, Letter, etc.) using the
menu command Process Diagnostics > Page Layout.
• You can display the print preview via the menu command Process
Diagnostics > Print Preview.
• You can set central headers and footers for your document in SIMATIC
Manager.
Proceed as follows:
1. Select the required print job.
2. Select the menu command Process Diagnostics > Print Preview. The image
is then displayed in the print preview.
Note
If the hardcopy consists of more than one page, two periods are printed after the
page number in the bottom right corner of the page. The last page does not have
these periods, indicating that no more pages are to follow.
Proceed as follows:
1. Select the menu command Process Diagnostics > Page Layout to open the
"Page Layout" dialog box.
2. Here, you specify the required page layout for your printout.
3. Confirm your entries with "OK."
Notes
• The print settings of the SIMATIC Manager are used in S7-PDIAG.
• Changes to the print settings in S7-PDIAG are not saved in the session
memory.
• If you set a page format with margin (for example, A4 Margin), the hardcopy
has a left margin that you can use to punch holes for binding.
• Call the menu command Process Diagnostics > Print Preview to check your
settings.
• You can set global headers and footers for your document in SIMATIC
Manager.
CSV format
You can open *.csv files in Microsoft Excel, for example. A semicolon is separates
the listed elements. Diagnostic data are output in the specific language.
We have discontinued further development of the CSV format as of S7-PDIAG
V5.0.
XML format
As of S7-PDIAG V5.1, the new XML format has been added to the old CSV format.
This XML format also contains new attributes and structure information. Attributes
are always named in English language and their values are always output in all
languages available.
Advantages
• Using these exported data and the message log generated during the process,
you can calculate down times and error frequency within your system, for
example.
• Export data are also useful for determining the relationship between a specified
message ID and the actual message.
• Other optional packages such as S7-GRAPH can also enter their messages
into this export file.
Procedure:
1. Call menu command Process Diagnostics > Export to open the ”Export”
dialog box.
2. Enter the name of the export file and format "*.csv" or *.xml". XML format is
default.
3. Start the export with ”Save.”
The diagnostic data will now be exported to the selected ASCII file. You can
generate those data using your own tool in order to create a basis for error
statistics, for example.
Requirements
We shall presume the existence of the following software and hardware
components for programming and debugging the "Drill press" sample project:
• PG/PC with STEP 7 standard software and optional S7-PDIAG software
package
• MPI connection to the S7-300 or S7-400 PLC, with 16 digital inputs and 8
digital outputs,
• or alternatively to the PLC: The optional S7 software package "PLC
Simulation"
• In order to familiarize yourself with the complete range of functions, you also
require a display device with the process diagnostics package ProAgent.
Initial state
The initial state of the drill is defined as follows:
• Drill drive motor and coolant pump not in operation.
• Drill feed/drill in upper position.
• No workpiece mounted.
Determining Units
In this example there is exactly one system unit, namely the drill.
Since the drill does not have an operating mode selection switch, the UDT_S_Unit
is used for this system unit.
Determining Motions
As shown in the diagram, there are two motions:
• Feed
• Clamp
Defining I/Os
List the corresponding I/Os for the drill press in a table.
If you decide to refer to symbolic programming, include the symbolic names for
your absolute I/O addresses (e.g. Input I0.4 "ClampingTension_OK" ) and
explanatory comments (e.g. "Message: Tensioning setpoint for workpiece not
reached") in your list.
We shall presume in our example that the switches and contactors of the drill press
will be controlled via the I/Os of the digital I/O module of an S7300 PLC. The I/O
module used is equipped with 8 inputs and 8 outputs. The default I/O addresses of
the module at slot 4 are: I0.0 to I0.7 and Q0.0 to Q0.7.
The table below lists the corresponding I/O for the drill press.
Using FB100
Below you can see the calling interface of motion FB100:
Interlock1/2 Interlocks which, if not fulfilled, prevent the motion from moving in the respective
direction.
Note: take the different operating modes into consideration. You can also insert
the corresponding different network branches and interconnect them to this
input.
Trigger1/2 Trigger which ensures that the motion can be moved in the required direction.
Note: The motion block already contains the logic for operator control of a
motion via the motion screens of the operator panel. This means that you only
need to interconnect the trigger here, for example, for automatic operation.
FinalPosition1/2 Input showing that the motion has reached or left the respective final position.
Note: If you set the option "Preset Final Positions" when you compile the
program in S7-PDIAG, the system automatically enters the final position
identifiers for the motion screen of the display device.
Control1/2 Triggers the outputs for the respective direction of the motion.
Preparations
In order for the example to run correctly, you require input bytes 0 and 1 and output
0 in your controller. First switch the controller to STOP.
• If you are working without a display device, you can display the messages
generated by S7-PDIAG on your PG/PC via the menu command PLC > CPU
Messages. In this case, enter a check mark in column "A" and select
"Foreground".
In this case, however, you cannot display the unit overview, the motion screen,
and the criteria analysis. Instead, you can open FB1 and monitor it online.
• If you are working with a display device, create a new project and insert your
CPU and the relevant display device.
• Doubleclick the network symbol to check that both the CPU and the display
device are connected to a common network. Then copy the sample program
into the program below your CPU.
• Download the sample program to the CPU and, if necessary, to the
configuration for the display device.
Procedure
The error messages that occur will guide you through the example.
You will see how S7-PDIAG and ProAgent help you to "Run" the drill and offer you
support when errors occur.
Now select the message screen on the display device, or disable the function
"CPU Messages".
The system reports the outgoing error message, indicates that output Q0.5
"ClampUp" is set and that the clamp will be driven towards "Up" direction
subsequently.
• This message is output after one minute:
"ClampUp: Final position not reached:"
This means that the final position showing the open clamp was not reached.
You will see that the trigger for the motion is flashing in the motion screen, but the
final position has not yet been reached. Now set input I1.1 Is_Open" to 1." The
message disappears and the motion screen displays the final position reached.
The initial settings of the drill are now complete.
Drilling Sequence
How you can "simulate" the complete drill sequence.
Set input I0.7 "Start_Button" to On."
• This message will be output:
"Close clamp interlock".
• The criteria analyse returns the following result:
A I0.1 WorkpieceDa Feedback: Workpiece present in clamp
As there is no workpiece in the clamping device, clamping cannot take place.
Simulate the insertion of a workpiece by setting input I1.0 "Workpiece_Present".
The clamp now closes. The system sets output Q0.4 "Is_Closed" and at the same
time switches on the drill by setting Q0.0 "Drill_Motor_On".
• After the specified time of one minute has expired, the following error message
appears:
"Clamp has not reached final position".
Now first reset the final position I1.1 "Is_Up" and set the final position I1.2
"Is_Closed".
• Now this message will be output:
"Interlock drill feed down".
• The criteria analysis returns the following result:
AN I0.1 DrillStandstill Feedback: Drill not rotating
Now simulate rotary motion of the drill motor by resetting input I0.1
"Drill_Standstill". Please note that a negative logic will be displayed due to the "UN"
identifier.
The drill feed now moves down and drilling takes place. Output Q0.2
"Drill_Feed_Down" indicates this motion.
• After the 1-minute monitoring time, this message is output:
"Drill feed down: Final position not reached".
First reset the final position I0.3 "Is_Up" and then set the final position I0.2
"Is_Down".
Now the drill feed moves "Up" again. Output Q0.3 "Drill_Feed_Up" indicates this
motion.
• After the 1-minute monitoring time, this message is output:
"Drill feed up: Final position not reached".
First reset the final position I0.2 "Is_Down" and then set the final position I0.3
"Is_Up".
Finally all that is left to do is to open the clamp again.
• However, you are first shown this message:
"Open clamp interlock".
• The criteria analysis returns the following result:
A I0.1 DrillStandstill Feedback: Drill not rotating
Now acknowledge this message again.
The system now sets output Q0.5: "Release_Clamp".
• After the 1-minute monitoring time, this message is output:
"Open clamp: Final position not reached".
Now first reset the final position I1.2 "Is_Closed" and set the final position I1.1
"Is_Open".
The drilling is now completed and you can remove the workpiece by resetting input
I1.0 "WorkpieceDa". On the motion screen you can now see that the left triangle of
the "Clamping" motion is no longer filled, indicating that this motion can now no
longer be executed. As soon as you insert a workpiece, the clamp can be used
again.
Summary
With a relatively small time spent for programming under S7-PDIAG and ProAgent
you will receive automatically generated motion screens and detailed error
information. This enables you to reduce the down times of your automation solution
and contributes to increased productivity.
Action Monitoring
Action monitoring is one of the four motion monitoring modes. In this mode, the
function checks whether the target final position) has been reached within a certain
time (Action time) after a control command was output (Trigger).
Action Time
The action time is the time within which a motion must be completed.
Address Monitoring
The address monitoring function is directly interconnected with an address known
as the initial diagnostic address.
The address monitoring function can be used to detect whether the initial
diagnostic address has reached a defined level on expiration of a certain
(monitoring) time. If this is the case, the error is registered as an incoming error,
and as outgoing error when the address level changes again.
Depending on whether you select level or edge monitoring, the delay time is
triggered either instantaneously, or by the next active edge.
You can define the position and format of the associated value in the message text
by creating a description block for the associated value in the following syntax:
@1<element type><format definition>@
The associated value is inserted at the description block position in the message
text.
Element type of associated values:
Assigns a definite data type to an associated value.
Note
To ensure that the associated values are included during compilation, the "Include
associated values" check box in the "Compile" tab ("Customize" dialog box) must
be selected.
To open this dialog box, select the Options > Customize > Compile menu
command.
Auxiliary Networks
Auxiliary networks generated by S7-PDIAG describe the auxiliary logic you are
using. This auxiliary logic is used to analyze a relevant network. S7-PDIAG uses
auxiliary networks for criteria analysis.
Note
• Subnets will be ignored when exclusion addresses are defined
• At FCs, criteria analysis can not track data beyond block boundaries. Call
parameters are not transferred to FCs blocks using static data, as in the case
of FBs and corresponding instances. It is thus not possible to access those
data at a later time, or track those parameters beyond block boundaries in a
criteria analysis.
Details
Opens a window for the display of error messages and address information, for
editing symbols, controlling addresses, comparing blocks, and for editing error
definitions for process diagnostics.
Error Definition
An error definition provides a precise description of the error in the monitored
process. Error definitions can be appended to addresses in the LAD/STL/FBD
Editor which contain an assignment, a set or reset instruction, the FB and FC calls.
Please note:
• Formal addresses are replaced in the specific language used.
• The last component of the name is always used for units and motions. This
means that the name is composed of the element located between the end and
the first dot on the way to the beginning of the name.
Example:
Name Result
Drilling_Machine.Feed Feed
Drilling_Machine.Drilling_Machine.Feed Drilling_Machine.Feed
Note
More than one formal address within the opening and closing characters ($$) is
not permitted.
Note
To ensure the inclusion of associated values in your compilation, set the "Include
associated values" check box on the "Compile" tab ("Customize" dialog box.).
To open this dialog box, select the Options > Customize > Compile command.
Note
All monitoring functions of projects created in S7-PDIAG Version 3.0 are implicitly
assigned priority class "1."
Executability
Executability means the execution of the motion is enabled. It is defined as
"Executability1/Executability2" when using UDT_Motion.
Generating Instances
A function block may be assigned one or several instance data blocks. Each error
definition at the FB requires one error definition per instance DB in order to monitor
all of the instances.
The error definition configured only once in the function block and applies to all
instances, i.e. by their generation, the instances are assigned the necessary
instance-specific error definitions. You can then assign instance-specific values (for
example, with different delay times) to those error definitions.
If you edit the error definition of an instance, this error definition will not be
overwritten at the FB in the next compilation.
You should observe three groups here. When you edit a value in one of the groups
outlined below in the instance, the group type is no longer updated.
• Group 1: name, author, comment
• Group 2: message-specific information, including the message text
• Group 3: monitoring logic, time, criteria analysis and actual value acquisition
If you delete the error definition of an instance, the error definition is created again
on compilation.
Formal parameters are replaced by the relevant actual parameters when the
instances are generated.
Group Error
A group error message is routed from an error-triggering subunit to the highest unit
in the unit overview of S7-PDIAG, and is displayed on the HMI.
Hotkeys
The hotkeys are assigned directly to the digital inputs of the controller (for example,
as hardware wiring or via a DP interface) via the digital outputs of the HMI. They
allow immediate and direct operator intervention in the motion on the motion
screen of the HMI.
Important Note
The motion name will be replaced in the message text by the formal address
$$m$$. However, if you work with standard blocks, the name of the standard block
replaces the motion name, but not the name of the actual UDT_Motion. In this
case, use the formal address "$$u$$" in the message text.
Example:
In the example, FB100 represents a motion block in which the UDT_Motion has
been implemented as local instance type named "motion".
Assuming you are going to use formal address $$m$$ in the message text of the
monitoring functions in FB 100, this would lead in all applications to the name
"motion." In this case, you should use "$$u$$", for this would then lead correctly to
"Clamp" or "Feed".
Interlock Monitoring
Interlock monitoring is one of the four types of motion monitoring. The function
checks whether the interlock condition (Executability) has been met after a motion
control command Trigger) was output and a certain time (interlock time) has
expired.
Interlock Time
The interlock time is the time within which the interlock conditions must be fulfilled.
Modifying Times
If an existing monitoring definition contains a monitoring time unequal to 0, you can
modify it using the "Change Times" function, without having to create new
monitoring blocks. The function is available in online and offline mode, and lets you
determine the suitable monitoring time step- by-step.
Monitoring Blocks
Monitoring blocks are used for error detection, and for the acquisition of initial
values and status data generated based on the error definitions created in
S7-PDIAG. After their downloaded to the user program, the monitoring blocks
execute process diagnostics functions.
Monitoring Definition
S7-PDIAG supports various process monitoring functions you can create using the
error definitions.
These include:
• Address monitoring
• Global monitoring
• Action Monitoring
• Startup Monitoring
• Reaction monitoring and
• Interlock monitoring
Monitoring Logic
The monitoring logic is defined using the language elements of S7-PDIAG, and is
used to monitor your process.
S7-PDIAG provides monitoring logic templates for address and motion monitoring
which you can adapt to suit your requirements.
For general monitoring functions, you can program your own monitoring logic using
the language elements provided in S7-PDIAG.
Motion (Definition)
A motion represents a process sequence, for example a die moving up and down.
Motions can be monitored by means of error definitions.
When using UDT_Motion and the LAD networks for motion programming included
with S7-PDIAG, you can visualize and control motions without the need of further
programming on the motion screens of the HMI.
Note
In this case, the initial diagnostic address represents the final position.
Note
In this case, the initial diagnostic address represents the actual final position.
Note
In this case, the initial diagnostic address represents the target final position.
Note
In this case, the initial diagnostic address represents the executable function.
Monitoring type
Refers to an error type definition, in contrast to its instance.
Position Flag
A "Position_Flag(n)" position flag is defined when UDT_Motion is being used.
Reaction Monitoring
Reaction monitoring is one of four types of motion monitoring, and is used to
monitor whether a final position is reached within a certain time (Reaction Time)
after passing a position flag, or whether an object has moved out of the final
position by more than the defined time (Reaction Time).
Reaction Time
Represents the time limit to reach the final position, or the maximum time during
which an object may leave the final position.
S7-GRAPH
The S7-GRAPH programming language enhances STEP 7 functionality with
graphic functions for programming sequential control systems.
The S7-GRAPH programming language is a comfortable means of describing
sequential control systems (sequencer programming). The process sequence is
here split into several steps which in particular contain actions for controlling
outputs. The transition to the next step is determined by transitional conditions.
S7-GRAPH is an optional package of STEP 7.
S7-HiGraph
The S7-HiGraph programming language for S7-300 and S7-400 systems enhances
STEP 7 functionality with a system for programming status graphs.
It is a comfortable means of creating non-sequential, asynchronous actions by
means of status diagrams. The system is here organized by function units which
may assume different states and are capable of automatic synchronization by
means of data exchange.
S7-GRAPH is an optional package for STEP 7.
Standard Group
The standard group is created by default. From this group, units can be moved to
other user-defined groups (max. 15.)
When you delete a user-defined group, all its units will be automatically returned to
the standard group.
Startup Monitoring
Startup monitoring is one of the four motion monitoring modes, used to check
whether an object moves out of the actual final position (Actual final position) within
a certain time (Startup time) after a control command (Trigger) was output.
Startup Time
The startup time is the time within which a motion must have been started.
Status
In S7-HiGraph, a status represents an element of a status graph and defines a
logical, mechanical or time-based "state." Each state can be assigned actions, and
is displayed as a circle in S7-HiGraph.
Step
In S7-GRAPH, PLC jobs are divided into separate steps. The steps describe the
actions the PLC performs at a defined plant state.
Templates
In addition to the default monitoring functions supplied with S7-PDIAG, you can
also create user-specific templates for specific monitoring functions. The templates
facilitate project engineering and save time and effort. You can also save
incomplete monitoring logic data to user-defined templates.
Note: only one message class will be created per template, which is why a
message number will not be assigned in a template. You can nevertheless
configure the message text for your monitoring function in the template.
Transition
A transition in S7-GRAPH represents an element of a sequencer which contains
the transitional step conditions.
In S7-HiGraph, a transition represents the status graph element which contains the
transitional conditions.
Trigger
The trigger initiates the motion. When using the UDT_Motions, it is defined for
interlock monitoring as "Trigger1/Trigger2", and as "Control1/Control2" for startup
and action monitoring.
UDT_Motion
UDT_Motion represents a standardized interface between S7-PDIAG and the HMI.
It contains all parameters required
• to display motions on the motion screens of the HMI, without the need of
additional programming, and
• to control of those motions on the motion screen of the HMI.
Note
Prerequisite for motion programming is the use of the LAD Networks for Motion
Programming in FB 100 of the sample project "ZEn06_01_S7PDIAG_drill" which
is supplied in the S7-PDIAG software package.
UDT_Unit
The UDT_Unit contains the information required by the HMI to associate an error
alarm with the faulty program location. The UDT_Unit contains defines:
• group error detection and group error acknowledgement
• 16 modes, with two default definitions of "Manual" and "Auto". You can define
the remaining 14 operating modes to suit your requirements.
UDT_S_Unit
UDT_S_Unit only contains the group error address and the group error
acknowledgement.
This saves memory space, and the process unit mode definition does not need to
be "looped through" to all subunits.
Unit
Units are used to structure the process view based on technically interrelated
components. In a project configuration where each block controls a physical object
in the process (for example, a press, a stamp, or a safety guard), the units
represent an image of your process. A unit exists for each block with diagnostics
function in the user program.
Units can also store data shared by all other units, motions, and function blocks of
the lower hierarchy layers.
A unit may contain error definitions, motions, and nested subunits.
This lets you group single errors and motions in a single technological unit, and
facilitates locating of process errors.
Units are represented alongside with other objects in a tree structure in the unit
overview. Units for a data block, function, or organization block are also visible in
the unit overview on the HMIs.
Unit Overview
The unit overview represents the user interface of S7-PDIAG. The left pane of the
unit overview displays a tree structure of objects such as units and motions. The
right pane displays the monitoring functions and nested units which have been
created for the object selected on the left pane. The output window provides
information and error messages and lets you declare tags and block parameters.
User Block
A user block is a function block with a defined interface such as contained in the
FB 46 supplied with the sample program. Users my program these to define
specific reactions to process errors. The user block is always called when
S7-PDIAG reports an "incoming" or "outgoing" error.
Printing Objects and Error Definitions 17-1 Support of the Instance/Type Concept 6-7
Priority of Language Elements in the Synchronizing Message Texts 7-15
Monitoring Logic 5-14 Synchronizing Message Texts with
Process Diagnostics Changed Symbol Table 7-15
on your OP (HMI) 8-11 System-wide Interaction 1-12
Process Diagnostics with S7-PDIAG 1-2
Process Monitoring 1-5 T
Program Structure of the Drill 19-5
Programming 6-9 Termination Addresses (Definition) 20-14
Programming language 5-1 The Concept of Motion Programming
programming the monitoring logic 7-11 in S7-PDIAG 6-1
Programming the Monitoring Logic 7-11 Timers 5-11
Times 15-1, 15-3
Modify 15-1, 15-2
R
Modifying 15-3
Reaction monitoring 4-4 Troubleshooting at the Display Device
Reaction Monitoring 4-7 (HMI) 1-10
Reference Data Troubleshooting via UDT_Motion 6-23
generated by S7-PDIAG 13-2
Requirements of S7-PDIAG 2-5 U
UDT (User Data Types) 20-14
S
UDT_S_Unit 6-19
S7-PDIAG UDT_Unit 6-17
Guidelines for handling License Keys 2-4 UDT_Unit (User Data Type) 6-16
Installing Automation License Manager UDTs 6-16, 20-14
2-3 Uninstalling S7-PDIAG 2-8
License management 2-1 unit overview 3-1, 3-2
Uninstalling S7-PDIAG 2-8 Unit overview
S7-PDIAG Checks 5-15 virtual view 3-1
S7-PDIAG Documentation 1-14 Unit Overview
S7-PDIAG Export Formats 18-1 real view 3-1
S7-PDIAG Language Elements Units 3-3
Set and Reset Assignments 5-11 Update of Diagnostic-relevant Network
S7-PDIAG User Guide 7-1 Data 13-3
Saving Update/Download of OB1 7-22
Compiling and Starting the User Program user interface 3-1
8-10 Using Auxiliary Networks 6-8
Select Monitoring Mode 7-6 Using LAD Networks 6-9
Selecting the Initial Diagnostic Address 7-4 Using the UDT_Motion 6-20
Selecting the Monitoring Mode 7-6 Using the UDT_S_Unit 6-18
Separators 5-10 Using the UDT_Unit 6-16
Set and Reset Assignments 5-11
set and reset time 5-8 W
Settings 14-1
SRT 5-8, 5-9 When an Error Occurs... 1-6
Starting ProTool and Customizing 8-9 Working with the Example 19-8
startup monitoring 4-4
Startup Monitoring 4-6 X
Support for Programming Error Definitions
XOR 5-10
6-3