PLC Multiprog
PLC Multiprog
These chapters contain PLC specific descriptions of the subtree 'Physical Hardware', the instance tree and specific
information about downloading and debugging a project. They also describe the PLC specific dialogs for determining the
settings of the configuration, resources and tasks.
PLC help
Subtree 'Physical Hardware'............................................................................................................1
Icons in the subtree 'Physical Hardware'..............................................................................1
Copying elements of the subtree 'Physical Hardware' to the clipboard................................1
Pasting elements in the subtree 'Physical Hardware'...........................................................2
Cutting elements of the subtree 'Physical Hardware'...........................................................2
Changing properties in the subtree 'Physical Hardware'......................................................3
Inserting a configuration.......................................................................................................3
Inserting a resource..............................................................................................................3
Inserting and specifying a task.............................................................................................4
System programs.................................................................................................................5
Associating a program to a task...........................................................................................6
Instance tree......................................................................................................................................7
Icons in the instance tree.....................................................................................................7
Online mode......................................................................................................................................9
Calling worksheets in online mode.......................................................................................9
Switching between online and offline mode.......................................................................10
Text editor in online mode..................................................................................................11
Graphic editor in online mode............................................................................................11
Changing the layout and notation of online values.............................................................12
Viewing the execution order of functions and function blocks............................................13
Viewing feedbacks in FBD networks..................................................................................14
The colors of the editors in online mode............................................................................14
Switching to the address status with powerflow.................................................................14
Forcing and overwriting variables.......................................................................................15
Setting and resetting breakpoints.......................................................................................16
Debugging with set breakpoints.........................................................................................17
Watch window.................................................................................................................................19
Inserting and deleting variables in the watch window........................................................20
Using default values and recipe files in the Watch Window...............................................20
General information about recipe files................................................................................21
Exporting default values from the Watch Window into a recipe file....................................21
Importing default values into the Watch Window from a recipe file....................................22
Changing a single default value in the Watch Window......................................................23
Writing and reading recipes to/from the PLC.....................................................................23
Saving/loading the watch list into/from a file......................................................................24
Logic Analyzer................................................................................................................................27
How to use the Logic Analyzer...........................................................................................27
The Logic Analyzer window................................................................................................28
Adding variables to the Logic Analyzer..............................................................................28
Dialog 'Connected Variables'.............................................................................................29
Adjusting the Logic Analyzer window.................................................................................30
Dialog 'Trigger configuration'..............................................................................................31
Export Logic Analyzer data into a *.csv file........................................................................33
i
PLC help
Downloading – general description
Downloading a project if two or more resources are available............................37
Downloading a bootproject.................................................................................................38
Downloading a bootproject if one resource is available.......................................39
Downloading a bootproject if two or more resources are available.....................40
Downloading the project source.........................................................................................41
Uploading the project source..............................................................................................43
Deleting a project source on the PLC.................................................................................44
Downloading a file of any type...........................................................................................45
I/O configuration.............................................................................................................................47
Editing an I/O configuration................................................................................................47
Editing the data configuration.............................................................................................48
ii
Subtree 'Physical Hardware'
The subtree 'Physical Hardware' contains the configuration elements, i.e. this subtree reflects the
structure of configuration elements determined by the PLC (in accordance to IEC 61131−3).
The subtree 'Physical Hardware' is called by clicking on the tab 'Hardware' at the bottom of the
project tree window as shown in the following figure:
Icon Meaning
Closed folder representing the subtree, a configuration, a resource or a task.
Opened folder. For a resource these elements are the tasks within this resource,
or for a task the program instances associated to this particular task.
Description worksheet, where you can enter some texts describing the
configuration or resource. The name of the worksheet is indicated beside the icon.
Program Instance. This icon is contained in a task folder. It represents the program
instance name, associated to a program. The name of the program has to
correspond to the instance name which has been used in the subtree 'Logical
POUs' of the project tree.
Network variables worksheet containing variables which can be published or
subscribed by/from all resources in the project.
Global variable worksheet which contains the declaration of global variables of the
particular resource.
I/O configuration worksheet which represents the I/O configuration of the particular
resource.
Copying elements of the subtree 'Physical Hardware' to the clipboard
Sometimes it is faster and easier to copy, paste and modify an existing object than to create a new
one.
You can copy configurations, resources, tasks, program instances and variable worksheets to the
clipboard in order to paste it at another position in the project tree.
Copying and pasting objects in the subtree 'Physical Hardware' is only possible if the source
configuration/resource (where you want to copy the object) and the target (where you want to paste
the object) are of the same type.
How to proceed:
1
Subtree 'Physical Hardware' Pasting elements in the subtree 'Physical Hardware'
The element is copied to the clipboard and can be inserted at another position using the
command 'Paste'.
You can paste configurations, resources, tasks, program instances and variable worksheets which
you have copied or cut before to the clipboard using the commands 'Copy' and 'Cut' at another
position in the project tree.
Pasting objects in the subtree 'Physical Hardware' is only possible if the source
configuration/resource (where the object was cut or copied) and the target (where you want to
paste the object) are of the same type.
How to proceed:
The system provides a feature to protect the structure of the subtree 'Physical Hardware' against
unauthorized inserting of objects. Depending on the current security settings you may first have to
log in using the valid password, before you can paste an element. Further information can be found
in the topic Protecting a project using a password.
• Mark the icon where you want to paste the content of the clipboard.
The content of the clipboard is pasted at the desired position in the project tree.
You can cut configurations, resources, tasks, program instances and variable worksheets and
move them to the clipboard.
Cutting and pasting objects in the subtree 'Physical Hardware' is only possible if the source
configuration/resource (where you want to cut the object) and the target (where you want to paste
the object) are of the same type.
How to proceed:
The system provides a feature to protect the structure of the subtree 'Physical Hardware' against
unauthorized inserting and deletion of objects. Depending on the current security settings you may
first have to log in using the valid password, before you can delete an element. Further information
can be found in the topic Protecting a project using a password.
The marked object is copied to the clipboard and can be inserted at another position using
the command 'Paste'.
2
Subtree 'Physical Hardware' Changing properties in the subtree 'Physical Hardware'
You can view or change the properties of all existing configurations, resources, tasks or programs
in the project tree.
How to proceed:
• Press the right mouse button to open the context menu and choose the menu item
'Properties...'.
The dialog 'Properties' appears.
Inserting a configuration
The project tree normally has one configuration, one resource and one task if you create a new
project. You can insert new configurations in the subtree 'Physical Hardware' of the project tree.
The PLC type of the configurations and the processor type of the resources depend on the
connected PLC.
How to proceed:
The system provides a feature to protect the structure of the subtree 'Physical Hardware' against
unauthorized inserting of objects. Depending on the current security settings you may first have to
log in using the valid password, before you can insert a configuration. Further information can be
found in the topic Protecting a project using a password.
• Press the right mouse button to open the context menu and choose the menu item
'Insert...'.
The dialog 'Insert' appears.
Inserting a resource
The project tree normally has one configuration, one resource and one task if you create a new
project. You can insert several resources in the subtree 'Physical Hardware' in the project tree.
The PLC type of the configurations and the processor type of the resources depend on the
connected PLC.
How to proceed:
3
Subtree 'Physical Hardware' Inserting and specifying a task
The system provides a feature to protect the structure of the subtree 'Physical Hardware' against
unauthorized inserting of objects. Depending on the current security settings you may first have to
log in using the valid password, before you can insert a resource. Further information can be found
in the topic Protecting a project using a password.
• Press the right mouse button to open the context menu and choose the menu item
'Insert...'.
The dialog 'Insert' appears.
• Select the menu item 'Settings...' in the context menu of the resource.
The dialog 'Resource settings...' appears.
You can insert either a default task, cyclic tasks, event tasks or system tasks in the subtree
'Physical Hardware'.
All programs which are not associated to a task are not executed.
• Each resource can contain one default task. The default task is the task with the lowest
priority (lower than cyclic tasks) and is not time scheduled. If it has been executed
completely, the system waits for a defined idle time. If then no cyclic task or any other task
with a higher priority has to be processed, the default task is executed again
automatically. This means that the default task is always executed (apart from the
necessary pre−defined idle period between two invocations), as long as no task with a
higher priority runs. Only one default task can be inserted in each resource.
• The cyclic task executes its associated programs in fixed time intervals.
• The event task executes its associated programs every time if an interrupt happens.
• A system task executes the system program (SPG) which has been chosen in the dialog
'Task settings...'. System programs or SPGs are programs which are called automatically
by the PLC system if an error or a change of the operational state of the PLC occurs.
Different types of system programs are available.
Please refer to your PLC system manual to get detailed information about SPGs.
4
Subtree 'Physical Hardware' System programs
How to proceed:
The system provides a feature to protect the structure of the subtree 'Physical Hardware' against
unauthorized inserting of objects. Depending on the current security settings you may first have to
log in using the valid password, before you can insert a task. Further information can be found in
the topic Protecting a project using a password.
• Press the right mouse button to open the context menu and choose the menu item
'Insert...'.
The dialog 'Insert' appears.
System programs
System programs or SPGs are programs which are called automatically by the PLC operating
system if an error or a change of the operational state of the PLC occurs.
SPG Meaning
SPG 0 is executed if a warm start is done.
SPG 1 is executed if a cold start is done.
SPG 2 is executed if the program execution is stopped.
SPG 10 is executed if the execution of a task has not been finished within its watchdog
time.
SPG 11 is executed if a division by zero occurs during the program execution.
SPG 12 is executed if a stack overflow happens. Only executed if the check box 'Stack
check' has been activated in the dialog 'Resource settings...'.
SPG 13 is executed if a firmware POU is called which does not exist.
SPG 14 is executed if an error in the I/O driver occurs while the process is running.
SPG 16 is executed if a floating point error in an arithmetic function occurs.
5
Subtree 'Physical Hardware' Associating a program to a task
Normally the PLC is in the state STOP after a 'Blue Screen' exception. With the
help of the SPG 24 it is possible to implement a different behavior. If e.g. the
PLC program should continue, the function CONTINUE must be implemented in
a program. This self created program has to be associated to the SPG 24.
For detailed information about the 'Blue Screen' support please refer to the PLC
manual.
Associating a program to a task
Having inserted a task you have to associate the program to be executed in the task.
How to proceed:
• Press the right mouse button to open the context menu and choose the menu item
'Insert...'.
The dialog 'Insert' appears.
• Enter the instance name of the program in the field 'Program instance'.
6
Instance tree
The instance tree displays the available tasks and associated programs with all functions and
instantiated function blocks of a resource. Thus, the instance tree represents the project structure
in the PLC. Consequently the instance tree cannot be edited.
The instance tree is called by clicking on the tab 'Instances' at the bottom of the project tree window
as shown in the following figure:
In the sample instance tree shown below one program instance of the program 'FBD' is used in the
task 'T_100ms'. The function block 'TLC' has been instantiated in the program 'FBD'.
For a detailed description of the project tree refer to the related topics in the general help of the
programming system.
Icon Meaning
Closed folder representing the subtree, a configuration, a resource or a task.
Opened folder. The contained elements are visible. For a resource these
elements are the tasks within this resource, or for a task the program instances
associated to this particular task.
Global variable worksheet which contains the declaration of global variables of
the particular resource.
Instance of program. A program always consists of one or several code body
worksheets and a variable declaration worksheet.
7
Instance tree Instance tree
8
Online mode
The online mode is used to check the behavior of POUs and variables to detect programming
errors and to make sure that the PLC program is working correctly. The online mode can be used
while a simulation or a PLC is running. In online mode you can see the current values and states of
variables.
If you detect programming errors in one or several worksheets you can switch one or all
worksheets at the same time to offline mode and edit the worksheets. Using 'Patch POU' you can
compile your changes, download the changes and check in online mode if your corrections work
well.
In online mode a worksheet can be displayed either in variable status or in address status. You can
switch between these display modes.
Normally the variable status is used to check the behavior of variables because an online
worksheet in variable status displays the values stored in the I/O image at the end of a working
cycle.
After switching to address status the online worksheet displays the current values of the
accumulator corresponding to the current moment of the program execution. The address status is
combined with the powerflow display. Powerflow means that you can see which program parts are
actually executed and which are idle. This is e.g. important for debugging worksheets with
conditional jumps.
Watch window
The watch window can be used to collect variables from different worksheets to get an appreciation
about how these variables work together. If a variable is added once to the watch window, the
associated worksheet must not be opened to monitor the current value. Furthermore the watch
window is used to debug elements of user defined data types such as arrays and structures.
Having compiled and downloaded the project to the target it is possible to call the editors in online
mode for debugging the worksheets.
The online mode is also possible for variables grid worksheets. In online mode, the grid contains an
additional column 'Online value'.
To call the worksheets in online mode you have the following possibilities:
By activating this icon or pressing <F10> all worksheets already opened are switched
automatically to online mode. If you open a further worksheet from the project tree or
instance tree, this is also called in online mode. The icon 'Debug on/off' appears pressed if
online mode is switched on. Refer also to the following note.
9
Online mode Switching between online and offline mode
• choose the menu item 'Open instance' in the context menu of a POU in the project tree or
in the context menu of an already opened worksheet. Refer also to the following note.
If already opened function block code bodies or program code bodies are instantiated several times
and you want to debug these worksheets, i.e. calling in online mode by activating the icon 'Debug
on/off', a warning message displays that you have to use the menu item 'Open instance' to call
these worksheets in online mode. In this case choose the menu item 'Open instance' in the context
menu of the corresponding worksheets. Choosing this menu item the dialog 'Open Instance'
appears where you have to choose the desired instance.
If you don't want to display this specific warning message every time when switching to online
mode, change the settings on the page 'Debug' in the dialog 'Options'. The dialog 'Options' is called
by choosing the menu item 'Options' in the submenu 'Extras'.
The dialog 'Open Instance' also appears if online mode is switched on and you want to open a
function block code body or program code body from the project tree, which is instantiated several
times
Since it is possible to open the code body worksheets of announced user libraries in view mode
(i.e. the worksheets can be viewed but not edited) it is also possible, to call them in online mode.
This means, they are treated like "normal" code body worksheets when debugging the project.
Note, that firmware library worksheets cannot be opened (neither in view mode nor in online mode).
Therefore debugging in firmware libraries is impossible.
If you have detected a programming error in any worksheet in online mode you can switch to offline
mode to correct the programming error immediately. Having corrected the error the changes have
to be compiled and sent to the target using 'Patch POU'.
How to proceed:
• Click on the icon 'Debug on/off' in the toolbar to switch all worksheets into offline mode or
online mode (depending on the previous state).
10
Online mode Text editor in online mode
In textual worksheets in online mode a gray line separates the worksheet into two parts. On the left
the online values are displayed and on the right the code body is shown. The following figure
shows an example:
You can change the width of the columns by positioning the mouse pointer on the gray separation
line (when the correct position is reached, the cursor changes to a double line), pressing and
holding the left mouse button while moving the cursor to the left or to the right.
In online mode a worksheet can be displayed either in variable status or in address status. You can
switch between these display modes.
Normally the variable status is used to check the behavior of variables because an online
worksheet in variable status displays the values stored in the I/O image at the end of a working
cycle.
After switching to address status the online worksheet displays the current values of the
accumulator corresponding to the current moment of the program execution. The address status is
combined with the powerflow display. Powerflow means that you can see which program parts are
actually executed and which are idle. This is e.g. important for debugging worksheets with
conditional jumps.
In case of instantiated function blocks the powerflow display and the variable values may be wrong
because the values of the different instances are mixed up.
The graphic editor in online mode is used to debug SFC, LD and FBD worksheets.
11
Online mode Changing the layout and notation of online values
In online mode a worksheet can be displayed either in variable status or in address status. You can
switch between these display modes.
Normally the variable status is used to check the behavior of variables because an online
worksheet in variable status displays the values stored in the I/O image at the end of a working
cycle.
After switching to address status the online worksheet displays the current values of the
accumulator corresponding to the current moment of the program execution. The address status is
combined with the powerflow display. Powerflow means that you can see which program parts are
actually executed and which are idle. This is e.g. important for debugging worksheets with
conditional jumps.
In case of instantiated function blocks the powerflow display and the variable values may be wrong
because the values of the different instances are mixed up.
The programming system offers several possibilities for adjusting the representation of worksheets
and values in online mode:
• Changing the online layout for graphical worksheets (please refer to the first procedure
shown below).
• Switching the notation of online values in all online worksheets (please refer to the second
procedure shown below).
12
Online mode Viewing the execution order of functions and function blocks
How to change the online layout for the active graphical worksheet:
You can change the display of online values in the active graphical worksheet using the dialog
'Online Layout'.
How to switch the value display in all graphical and textual online worksheets:
Additionally it is possible to change the displayed notation of online values in all textual and
graphical worksheets. This is done using the dialog 'Debug: resource_name'.
• In an online worksheet mark any variable and open its context menu.
• In the dialog area 'Value display' select one of the options 'Standard', 'Decimal',
'Hexadecimal' or 'Binary'.
• Confirm the dialog. The notation of the displayed online values is changed in all
worksheets.
You can view the order of execution of the different functions or function blocks in a worksheet. The
displayed execution order is based on the intermediate PLC code which is created while compiling.
It may differ from the actual execution order in the PLC.
How to proceed:
• If the PLC is running and the system is in online mode, switch the worksheet into offline
mode by pressing the icon 'Debug on/off' in the toolbar.
Note: It is not necessary to stop the PLC in order to enable the execution number display.
• Switch to online mode again by pressing the icon 'Debug on/off' in the toolbar.
13
Online mode Viewing feedbacks in FBD networks
When programming in FBD, feedbacks could result. If an FBD object with a higher execution
number is connected to an object with a lower execution number it is called feedback. To check
these feedbacks you have the possibility to view the feedbacks in the graphic editor.
As the execution order corresponds to the intermediate PLC code which is created while compiling,
the execution order and the feedbacks may differ from the actual execution order and feedbacks in
the PLC.
How to proceed:
• If the system is in online mode, switch the worksheet into offline mode by pressing the
icon 'Debug on/off' in the toolbar.
Note: It is not necessary to stop the PLC in order to display the feedbacks.
• Switch to online mode again by pressing the icon 'Debug on/off' in the toolbar.
In every editor in online mode several colors are used. The meaning of these colors is explained in
the following table:
In graphical worksheets the display of online values can be changed choosing the menu item
'Online Layout' in the submenu 'Online'.
In SFC worksheets the name of an action is represented with a red color if the action is active and
if it sets or resets a Boolean variable. If the action is a detail and has its own code body the whole
rectangle is represented in a red color.
Normally the variable status is used to check the behavior of variables because an online
14
Online mode Forcing and overwriting variables
worksheet in variable status displays the values stored in the I/O image at the end of a working
cycle.
After switching to address status the online worksheet displays the current values of the
accumulator corresponding to the current moment of the program execution. The address status is
combined with the powerflow display.
Powerflow means that you can see which program parts are actually executed and which are idle.
This is e.g. important for debugging worksheets with conditional jumps.
It is not possible to switch to the address status without powerflow. The address status and
powerflow can only be used together.
If you have opened a function worksheet in online mode the address status with powerflow is
always switched on.
How to proceed:
• Choose the menu item 'Powerflow' in the submenu 'Online' to switch a worksheet to
address status with powerflow.
Powerflow is represented by three different signs. The meaning of these signs is explained in the
following table:
In this case the online display represents the address status which was last
processed on the PLC. It may differ from the address status of the current
instance.
In online mode variables can be forced or overwritten. Forcing and overwriting means assigning a
new value to a variable.
In the case of overwriting, the new value of the variable is only used for one working cycle. Having
finished this cycle the variable is processed normally.
Using the Watch Window feature "Write recipe" it is possible to overwrite several variables at the
same time. For detailed information please refer to the topic Writing and reading recipes to/from the
PLC.
15
Online mode Setting and resetting breakpoints
Forcing means using the new value for the variable until the forced variable is reset to its normal
value by the user.
The necessary steps for forcing and overwriting are nearly the same.
Be very careful when forcing or overwriting variables while your PLC is running. Forcing and
overwriting variables mean that the PLC program is executed with the values of the forced or
overwritten variable.
Only physical inputs and outputs can be forced.
• Choose the menu item 'Debug dialog...' in the context menu of the variable in your online
worksheet.
The dialog 'Debug: resource_name' appears.
• Enter the desired value for a non−Boolean value or choose 'TRUE' or 'FALSE' for a
Boolean variable.
Note: The dialog remembers the overwrite value which was entered formerly for a
variable. If you call the dialog for the same variable again, this formerly entered value is
displayed automatically in the text field.
• Choose the menu item 'Debug dialog...' in the context menu of the variable in your online
worksheet.
The dialog 'Debug: resource_name' appears.
• In the dialog you can either reset one specific forced variable or all forced variables.
Press the button
'Reset force' to reset the marked variable or
'Reset force list' to reset all forced variables at the same time.
In online mode you can set and reset breakpoints. A breakpoint halts the program execution at the
point where the breakpoint has been set for better debugging. A set breakpoint is represented in
red, a reached breakpoint in orange color.
Be very careful using breakpoints while your PLC is running. Breakpoints mean that the program
execution is halted at the point where the breakpoint has been set.
Breakpoints cannot be set in function block instances. Setting a breakpoint in an instance means
automatically that the program execution is halted each time when the function block is used.
The behavior of the I/O's when reaching a breakpoint depends on the PLC type.
16
Online mode Debugging with set breakpoints
• Choose the menu item 'Debug dialog...' in the context menu of the variable in your
worksheet in online mode.
Or
Double click on a line or an object in your code body worksheet in online mode.
The dialog 'Debug: resource_name' appears.
• Press the button 'Set' to set a breakpoint and confirm the dialog.
In the online worksheet the corresponding variable is now represented in orange color.
If you have set any breakpoints the programming system provides several functions for debugging
your PLC program. These functions are described in the topic Debugging with set breakpoints.
The programming system allows to reset a particular breakpoint or all breakpoints at the same
time.
• Choose the menu item 'Debug dialog...' in the context menu of the variable in your
worksheet in online mode.
The dialog 'Debug: resource_name' appears.
• You can either reset the breakpoint for the marked variable or for all variables:
In the dialog area 'Breakpoint' press the button
'Reset' to reset the breakpoint for the marked object or
'Reset all' to reset all breakpoints at the same time.
The programming system provides a step and trace function which can be used for debugging your
PLC program. These functions allow to continue the program execution line by line after a
breakpoint has been reached.
Stepping means that if a function or a function block call is reached, the call is stepped over, i.e.
the code body of the function or function block is not debugged.
Tracing means that if a function or a function block call is reached, the function or function block
code body is opened for debugging.
Stepping and tracing is only possible if at least one breakpoint has been set. If a breakpoint is
reached, the PLC state changes to HALT [DEBUG] and the control dialog shows the buttons 'Go',
'Step' and 'Trace'.
How to proceed:
• Set the desired breakpoints using the dialog 'Debug: resource_name'. After setting the
breakpoint, the program is halted at this breakpoint.
17
Online mode Debugging with set breakpoints
• Call or activate the resource control dialog by clicking on the icon 'Project Control Dialog'
in the toolbar.
Note: When working with more than one resource, pressing this icon calls the dialog
'Project Control'. From this dialog you have to open the resource control dialog relating to
the resource for which a breakpoint has been set: First connect the desired resource by
marking it in the resource list and clicking 'Connect'. When connected click on 'Control...'
to open the corresponding resource control dialog for the marked resource.
• The resource control dialog shows the PLC state HALT [DEBUG].
The line or the object where the program execution is halted after pressing 'Step' or 'Trace' is
highlighted in orange color. In addition in textual worksheets a yellow arrow is used to highlight the
line where the program execution is halted.
The following figure displays an example for an ST worksheet in online mode with two set
breakpoints (line 4 and line 15) and halted program execution (line 15).
18
Watch window
The watch window can be used to collect variables from different worksheets to get an appreciation
about how these variables work together. If a variable is added once to the watch window, the
associated worksheet must not be opened to monitor the current value. Furthermore the watch
window is used to debug elements of user defined data types such as arrays and structures.
In the watch window you can insert and delete variables. There is no limit for the number of
variables inserted in the watch window. In addition you can use the watch window to force and
overwrite variables. This is performed by marking a variable in the watch list and choosing the
menu item 'Debug dialog...' in the context menu of a variable.
If you are calling the debug dialog out of the Watch Window, it is not possible to set or reset
breakpoints for the marked variable. For that purpose you have to call the debug dialog as it is
described in the topic Setting and resetting breakpoints.
• Writing/reading a recipe to/from the PLC. This feature is called recipe handling and is
described in the topic Using recipes in the Watch Window.
• Importing/exporting default values from/into an ASCII file. The values are displayed in the
Watch Window column 'Default value'. They can be sent to the PLC using the command
'Write recipe' in order to set the PLC to the user−desired state. This feature is described in
detail in the topic Using default values in the Watch Window.
• Saving/loading the whole contents of the current Watch Window view (i.e. the active tab)
into/from a watch list file. Using this feature the user can save the contents of the Watch
Window i.e. a desired PLC state. If desired, the watch list can be reloaded and the PLC
can be set to this state by sending the watch list contents to the PLC using the command
'Write recipe'. This feature is described in detail in the topic Saving and loading the Watch
list into/from a file.
• Choose the menu item 'Watch Window' in the submenu 'View' or click on the icon 'Watch
window' in the toolbar:
Depending on its previous state, the watch window is now visible or hidden.
Note: You can open the Watch Window also by selecting the menu item 'Open Watch
Window...' in the context menu of a variable (only possible in online mode).
• 'Variable': Displays the variable name. User defined data types such as arrays and
structures are marked with a '+'. To display the elements of these data types, click on the
'+' sign.
19
Watch window Inserting and deleting variables in the watch window
• 'Default Value': Displays the default value (if defined). For detailed information click here.
• 'Instance': Displays the instance path where the variable is used. The path always
contains the configuration, resource, task, the associated program name and variable
name.
The watch window allows to manage several pages where every page can be used independently.
The individual pages are called by clicking on the sheet tabs at the bottom of the watch window.
How to display the cross references of a variable shown in the watch window:
It is possible to get direct access to cross references from the watch window. For that purpose just
mark the desired variable in the watch window. The marked variable is automatically marked in the
cross reference window too.
You can either remove a single variable from the watch list or clear the whole list.
• To remove a single variable from the watch list, mark the variable to be deleted and
press the key <DEL>.
Alternatively you can open its context menu using the right mouse button and select the
context menu item 'Delete'.
Note: This is also possible for a single element within an user defined structure or array.
• To remove all variables open the context menu of any variable in the Watch Window and
select the menu item 'Clear'.
20
Watch window General information about recipe files
• You can determine the current values of all variables contained in the watch list by
reading them from the PLC. This is done by executing the context menu item 'Read
recipe'. As a result of this command, the current value of each variable is automatically
entered as default value in the watch list.
Note: Possibly the values are read during several cycles. This means that reading the
values may take several seconds.
For detailed information about reading and writing recipes, please refer to the topic Writing
and reading recipes to/from the PLC.
• You can import a so−called recipe file. A recipe file can either be created by exporting
existing default values using the command 'Export values...' or by editing the ASCII file
manually using an editor. Detailed information about recipe files can be found in the topic
Importing default values from a recipe file.
• You can set single default values using the Watch Window context menu item 'Edit
default value...'. This procedure is described in the topic Changing a single default value.
The following figure shows an example of a short recipe file, composed of 4 variables. For each
variable the line contains the configuration, resource and instance name in which the variable is
used.
VALUE;NAME
30;C_IPC.RES_SIM.T_100ms.PRG_FBD.SIMTEMP_MIN
38;C_IPC.RES_SIM.T_100ms.PRG_FBD.Temp
750;C_IPC.RES_SIM.T_100ms.PRG_FBD.Level
28;C_IPC.RES_SIM.T_100ms.PRG_FBD.CON_STRU_1.Tempold
The variable and instance names are not absolutely necessary because they only serve as
comments, i.e. they tell the user, to which variable the line relates.
A recipe file can either be created by exporting the default values from the Watch Window (see
procedure below) or by typing it using an Excel or ASCII editor.
The Watch Window provides the possibility to import recipe files and therefore to set the default
values (see procedure described below).
2. In the watch list mark each variable to be exported into the recipe file. Only marked
variables are considered when creating the file.
21
Watch window Importing default values into the Watch Window from a recipe file
For marking several variables keep the <Ctrl> key or the <Shift> key pressed while
clicking on the desired variables.
(In the example shown above the variables SIMTEMP_MIN, Temp and Level will be
exported).
3. Press the right mouse button on the marked variable to open the context menu. Select the
menu item 'Export values...'.
The dialog 'Export default values' appears.
4. In the dialog 'Export default values' select the directory in which you want to store the
recipe file. Enter the desired file name or select an already existing file.
5. Click on 'Save' to confirm the dialog and to export the default values with the
corresponding variable names into the selected file.
If a file with the entered name already exists in the selected directory, a message appears, asking
you, whether you want to replace the existing file. Click on 'Yes' to overwrite the existing file or on
'No' to enter a new file name.
2. Make sure, that the file to be imported relates to the current watch list (see note above).
3. In the Watch Window press the right mouse button to open the context menu. Select the
menu item 'Import values...'.
The dialog 'Import default values' appears.
5. Click on 'Open' to confirm the dialog and to load the default values into the Watch
Window. The default values contained in the recipe file are inserted into the watch list (see
not above).
If you want to apply the default values in the PLC, you have to execute the command 'Write recipe'.
22
Watch window Changing a single default value in the Watch Window
2. Click with the right mouse button on the variable for which you want to define a default
value. The variable is marked and the context menu appears.
3. In the context menu select the menu item 'Edit default value...'.
The dialog 'Default value' appears.
If you want to apply the new default value in the PLC, you have to execute the command 'Write
recipe'.
The read values are entered automatically in the watch list columns 'Value' and 'Default values'.
In the same way it is possible to write a recipe, i.e. the sum of all values contained in the current
watch list, to the PLC. As a result, the variables in the PLC are set to the default values, defined in
the watch list.
Reading recipes: Let us assume, that your PLC controls a drilling job, which requires an exact
adjustment of several drilling machines. Let us further assume, that it would be easier for you, to
adjust the drilling machines manually (by moving them) than to calculate the different positions.
Due to the recipe handling of your programming system, this is possible: Just move the drilling
machines to the desired positions and determine the corresponding variable values (e.g. position_x
and position_y) by reading the current recipe from the PLC into the Watch Window.
Using the context menu item 'Export values' you can save these read recipe values into a file and
use them later again.
23
Watch window Saving/loading the watch list into/from a file
Writing recipes: Writing the contents of the watch list directly to the PLC gives you the possibility
of setting the PLC to a desired state. In our example of the drilling machines, this could be
necessary to correct the position of one or several machines. In principle the writing of a recipe is
equal to a collective overwriting of variables.
2. In the Watch Window press the right mouse button to open the context menu. Select the
menu item 'Read recipe'.
Note: It does not matter, which variable is marked when selecting the menu item.
The values of all variables contained in the watch list are read from the PLC and inserted
into the watch list columns 'Value' and 'Default Value'.
♦ or save the whole contents of the active Watch Window tab into a watch list file.
This procedure is described in the topic Saving/loading the watch list into/from a
file.
2. Make sure, that the watch list contains the desired variables and that the required default
values are entered.
If required, import a stored recipe file, or change one or several default values manually.
Both procedures are described in the topic Using default values in the Watch Window.
3. In the Watch Window press the right mouse button to open the context menu. Select the
menu item 'Write recipe'.
Note: It does not matter, which variable is marked when selecting the menu item.
The default values of all variables contained in the watch list are written to the PLC. The
effect of these values can be monitored in the Watch Window.
If the watch list is stored in a file, it can be reloaded into the Watch Window. The saved watch list
can then be written into the PLC using the feature 'Write recipe'. Doing so, the PLC can be set to
the state saved in the Watch Window file.
24
Watch window Saving/loading the watch list into/from a file
2. Make sure, that the Watch Window displays the desired values to be saved. If required
change any default values or read the current values from the PLC using the command
'Read recipe'.
3. Open the context menu of the Watch Window by pressing the right mouse button inside
the window. In the context menu select the menu item 'Save watch list...'.
The dialog 'Save watch list' appears.
4. In the dialog 'Save watch list' select the directory in which you want to store the Watch
Window file. Enter the desired file name or select an already existing file.
5. Click on 'Save' to confirm the dialog and to export the watch list into the selected file.
If a file with the entered name already exists in the selected directory, a message appears, asking
you, whether you want to replace the existing file. Click on 'Yes' to overwrite the existing file or on
'No' to enter a new file name.
How to load a stored watch list file into the Watch Window:
Loading a watch list file into the Watch Window overwrites the currently displayed list. If desired,
save the current watch list using the procedure described above, before loading a file or select
another watch list by clicking on the corresponding sheet tab at the lower window border.
2. Open the context menu of the Watch Window by pressing the right mouse button inside
the window. In the context menu select the menu item 'Load watch list...'.
The dialog 'Load watch list' appears.
3. In the dialog 'Load watch list' select the directory in which the desired Watch Window file
is stored.
5. Click on 'Open' to confirm the dialog and to load the file into the Watch Window.
25
Debugging user defined data types
For debugging user defined data types such as arrays and structures the watch window has to be
used. The first step is to insert the variable (in this case the array or structure) into the watch
window and to open the watch window. The second step is debugging the elements of the array or
structure in the watch window.
User defined data types are marked with a '+' in the watch window. Similar to the usage of node
icons in the project tree, you can display/hide the elements contained in a structure or array by
clicking on that '+' symbol.
How to proceed:
• In the watch window click on the '+' sign associated to the user defined data type you want
to debug.
If you have selected an array in the watch window, the components of the array and their
values are displayed.
If you have selected an array of structure, the components of the array of structure are
displayed.
Example:
• To display the components of the structure, click on the '+' sign associated to a particular
structure.
Example:
The components of the structure are displayed as shown in the following figure. It shows the Watch
window with an opened array of structure.
Having displayed the components of an user defined data type you can use the watch window to
force and overwrite variables and to set and reset breakpoints. This is performed by choosing the
menu item 'Debug dialog...' in the context menu of a variable in the watch window.
26
Logic Analyzer
The Logic Analyzer is a powerful tool for recording values of variables over a certain time interval
which the user has to determine by a entered number of sample cycles.
Using this feature you can check the behavior of your PLC program by recording variables (while
the PLC runs) and displaying them graphically in the Logic Analyzer window. It is possible to
display several curves of variable values together depending on their trigger conditions and other
settings.
All recorded values and settings of the Logic Analyzer are stored automatically with the project.
Additionally it is possible to export the recorded data into an ASCII file with the file extension *.csv.
The system supports the use of the Logic Analyzer with one or several resources. Each resource
gets a separate Logic Analyzer worksheet. A new resource is added or deleted in the Logic
Analyzer window after compiling the project.
Prerequisites:
Before calling the Logic Analyzer make sure that
− the compiled project is downloaded to the PLC.
− the PLC or the simulation is in running state.
− the system is in online mode.
4. Open the Logic Analyzer context menu and select the menu item 'Window Width'.
Set the initial window width in the appearing dialog 'Data Window'. The default value is
200 samples.
The Logic Analyzer starts recording values about the time interval defined in the dialog
'Trigger configuration'.
7. If you want to cancel the recording press the icon 'Stop recording values' in the toolbar.
In a valid record process the recording of values stops automatically at the end of the
27
Logic Analyzer The Logic Analyzer window
9. If you want to delete all curves from the Logic Analyzer, select the menu item 'Clear
Curves' either in the Logic Analyzer context menu or in the submenu 'Online'.
If displayed in the toolbar, you can also use the icon 'Clear Curves'.
10. If you want to capture the visible curves, click on the icon 'Capture Curves' in the toolbar.
11. If you want to export recorded data into a *.csv file, click here for detailed information.
The Logic Analyzer window is a dockable window. 'Dockable' means, that you can detach the
window from the desktop by double clicking on the gray window border. It is then displayed as an
usual window, i.e. you can change the size and move the window to any position on the screen. To
reattach it into the desk, just double click into the blue window title bar.
To open the Logic Analyzer window click on the icon 'Logic Analyzer' in the toolbar.
Depending on its previous state, the Logic Analyzer window is now visible or hidden.
The window is empty after you have opened it for the first time because no variables are added to
the Logic Analyzer.
Open the context menu of the Logic Analyzer with a right mouse click on the bottom bar of the
Logic Analyzer window. The menu items provide all available commands and dialogs of the Logic
Analyzer which are represented as icons in the toolbar too.
• Select the desired variable in any textual or graphical code body worksheet or in a
variable worksheet with a right mouse click. The context menu appears.
28
Logic Analyzer Dialog 'Connected Variables'
Although the Logic Analyzer window can display a maximum of ten curves at the same time, the
number of variables you can add to the variables list is not limited. After adding variables you can
select the variables to be displayed in the dialog 'Connected Variables'.
• or by selecting the menu item 'Insert/Delete variable...' in the Logic Analyzer context
menu,
It is used to manage the variables list of the Logic Analyzer. The dialog contains only variables
which have been added to the Logic Analyzer variables list before. This procedure is described in
the topic Adding variables to the Logic Analyzer.
The dialog provides a checkbox beneath each variable name in the list. If a checkbox is marked,
this means, that the variable is currently displayed in the Logic Analyzer window.
To hide a particular variable just de−activate the checkbox with a left mouse click. Although it is no
longer visible in the Logic Analyzer window, the variable is still contained in the dialog list.
You can display the hidden variable again in the Logic Analyzer window by marking the checkbox
beneath the variable name with a left mouse click.
Removing a variable from the list means, that the variable is deleted in the graphically presentation
as well as in the variable list of the Logic Analyzer.
For that purpose mark the variable to be deleted in the dialog 'Connected Variables' and click on
'Delete'.
29
Logic Analyzer Adjusting the Logic Analyzer window
If you want to reuse the deleted variable, you have to add it once more as described in the topic
Adding variables to the Logic Analyzer.
Clearing the list means deleting all contained variables. To perform this click on the button 'Clear'.
The Logic Analyzer window is then empty and you have to add new variables to the list as
described in the topic Adding variables to the Logic Analyzer.
You can stretch or compress the value axis of each variable in order to zoom in or out. For that
purpose press the left or right mouse button on the desired axis and keep it pressed while adjusting
the axis by moving the mouse.
In addition it is possible to shift the visible range. This is useful if you have zoomed in the axis (by
stretching it) and therefore the required values are shifted out of the visible range. For that purpose
press the right and the left mouse button simultaneously on the desired axis and keep it pressed
while shifting the axis range by moving the mouse.
Shifting the range is only possible if the range is larger than the displayed range.
To get information about exact variable values you can use a horizontal or a vertical cursor line.
For that purpose, move the mouse cursor to the top/bottom boundary (for getting a horizontal line)
or to the left/right boundary (in order to set a vertical line). A double line symbol is added to the
mouse cursor. Click the left mouse button and keep it pressed while dragging the cursor line into
the signal curve.
After the cursor line is moved to the desired point in the window, a little message window appears,
showing you the values at this coordinates.
When using a vertical cursor line, the window shows the values of all variables within the window in
relation to the number of samples. In the following example, the Logic Analyzer contains two
variables: Temp and Level.
If you have set a horizontal line, the window shows the values of all variables in the window without
their relation to the x−axis, as shown in the following figure:
30
Logic Analyzer Dialog 'Trigger configuration'
The Logic Analyzer window can display a maximum of ten curves at the same time. To get a better
survey, each curve can be displayed in another color. The colors can be set in the dialog 'Options'.
Proceed as follows:
3. Mark the curve for which you want to set the color with a left mouse click.
4. Click on the button 'Select color'. The Windows standard color palette appears. Select or
define a color and assign it to the marked curve by clicking on 'OK'.
To open the dialog click on the icon 'Trigger configuration' in the toolbar.
The dialog fields and radio buttons have the following meanings
Dialog area Sampling: The Logic Analyzer records values over a certain time interval. This time
interval is determined by the number of sample cycles.
Pre−recording specifies the number of sampling cycles recorded before the trigger event
cycles: (default value = 0)
Post−recording specifies the number of sampling cycles recorded after the trigger event
cycles: (default value = 200)
1. variable: select a trigger variable from the list box. Depending on the value of this
variable and the condition set in the field 'Operator' (description see below),
the Logic Analyzer starts recording values. If the list box contains no variable,
add one or several variables as explained in the topic 'Adding variables to the
Logic Analyzer'. The format of each displayed variable name is:
task_name.POU_name.variable_name
31
Logic Analyzer Dialog 'Trigger configuration'
Operator: specifies the trigger condition depending on the first and the second variable
value. The description of the available operators is listed in the next table
below. Please observe the following note.
2. variable: choose from the list box a second trigger variable. Depending on the value of
this variable and the condition set in the field 'Operator' (description see
above), the Logic Analyzer starts recording values. It is possible to choose
the same variable as the first variable. In this case the operation relates to
this single variable (for example the operator rising edge). If no variable is
listed in the list box, add one or several variables as explained in the topic
'Adding variables to the Logic Analyzer'. The format of each displayed
variable name is: task_name.POU_name.variable_name
Note: When setting the trigger condition make sure that the selected
variables and the operator are combined in a way which makes it possible
that the trigger condition becomes true. If in any other combination the trigger
condition does not become true, the Logic Analyzer cannot record values
although the message 'recording samples...' is displayed.
Synchronous with The Logic Analyzer records synchronous to the execution of the task selected
task: in this list box. Therefore it is important that the trigger conditions and the
selected task relate to each other. In this list box the first task in the project
tree is set by default.
If you delete/remove a variable as described in topic dialog 'Connected Variables' the next listed
variable moves up.
32
Logic Analyzer Export Logic Analyzer data into a *.csv file
MD Modified
NE Comparison to not equal
RE Rising edge
Export Logic Analyzer data into a *.csv file
It is possible to export the recorded data into an ASCII file with the file extension *.csv, in order to
process the data with another tool.
• After recording the desired data and displaying it in the Logic Analyzer window, call the
dialog 'Export Logic Analyzer Data'.
For that purpose:
− Open either the Logic Analyzer context menu by clicking with the right mouse button on
the gray window border and select the menu item 'Export Data...'.
or
− Open the submenu 'Online' and select 'Logic Analyzer' > 'Export Data...'.
• In the dialog select the directory in which you want to store the export file.
• Enter the desired file name in the dialog field 'File name'.
• Click on 'Save' to confirm the dialog and to export the Logic Analyzer data into the
selected file.
If a file with the entered name already exists in the selected directory, a message appears, asking
you, whether you want to replace the existing file. Click on 'Yes' to overwrite the existing file or on
'No' to enter a new file name.
The following figure shows a part of a sample Logic Analyzer data file. In this example the values
for 'Temp' and 'Level' were recorded.
Cycles;Temp;Level
0;33.000000;700.000000
1;33.000000;700.000000
2;33.000000;700.000000
3;33.000000;700.000000
4;33.000000;700.000000
5;33.000000;700.000000
6;32.000000;675.000000
7;32.000000;675.000000
8;32.000000;675.000000
9;32.000000;675.000000
10;32.000000;675.000000
11;32.000000;675.000000
12;32.000000;675.000000
13;32.000000;675.000000
14;32.000000;675.000000
...
...
33
Downloading – general description
Having compiled your project using 'Make' or 'Rebuild Project' you have to download it to the target
simulation(s) or to the connected PLC(s).
The system recognizes, whether only one or several target resources are available to which the
program has to be downloaded. Depending on the number of resources in the subtree 'Physical
Hardware', different dialogs can be used for downloading as shown in the following figure:
34
Downloading – general description Downloading – general description
Additionally you have the possibility to download the project source or a file of any type individually
to each connected resource, in order to store it or for any other future usage.
If you have patched a POU the new generated code is downloaded automatically. While patching
the POU it is not necessary to stop the program execution on the PLC.
35
Downloading – general description Downloading a project
The path to a target and the target type for the downloading process are set in the dialog 'Resource
settings...'. Choose the menu item 'Settings...' in the context menu of the resource to call the dialog.
You can see to which simulation or port the PLC program is sent.
The system provides the possibility to restrict the right of downloading the code of each resource by
a password. If the password protection is enabled and depending on the security settings for the
resource you want to download, you first have to log in using the valid password. Further
information can be found in the topic Protecting a project using a password.
Downloading a project
The system provides the possibility to restrict the right of downloading the code of each resource by
a password. If the password protection is enabled and depending on the security settings for the
resource you want to download, you first have to log in using the valid password. Further
information can be found in the topic Protecting a project using a password.
Downloading a project means that the whole project with all configuration data is sent to each
connected simulation or PLC. If desired, the OPC data can be included into the download process.
The system recognizes, whether only one or several target resources are available to which the
program should be downloaded. Depending on the number of resources in the subtree 'Physical
Hardware' different dialogs can be used for downloading. The topic Downloading – general
description provides a figure showing the difference.
As shown in the figure provided in the topic Downloading – general description, the steps to
download a project differ, if one or several resources are available, i.e. are inserted in the subtree
'Physical Hardware'.
.When working with one resource, pressing the button 'Project Control Dialog' calls the resource
control dialog 'Resource_name'. In this case it is not necessary to distinguish between different
PLCs, so the project control dialog for controlling several PLCs is not necessary.
If two or more resources are available, the dialog 'Project control' appears, which allows to control
either all PLCs simultaneously or to call the resource control dialog 'Resource_name' for each
single PLC. Please refer to the topic Downloading a project if two or more resources are available.
How to proceed:
• Select the menu item 'Settings...' in the context menu of the resource. The dialog
'Resource settings...' appears. Ensure that the correct simulation or port, to which the
project is to be downloaded, is activated.
36
Downloading – general description Downloading a project if two or more resources are available
The control dialog 'Resource_name' appears directly because only one resource is
available.
• If you want to include the csv−file into the download process, mark the checkbox 'Include
OPC data'. This file contains all variables, which are intended to be monitored using an
OPC Server. By downloading this file with the project, the OPC Server is able to update
the related OPC project automatically. Doing so, it is no more necessary to re−import the
changed project manually into the OPC Server in order to apply the changes.
• In the dialog 'Download resource_name' press the button 'Download' in the 'Project' area
to download the full project including POUs and the configuration data to the target.
The PLC passes into the state 'STOP', which is displayed below the title bar in the control
dialog.
The status bar displays the downloading process.
As shown in the figure provided in the topic Downloading – general description, the steps to
download a project differ, if one or several resources are available, i.e. are inserted in the subtree
'Physical Hardware'.
If two or more resources are available, pressing the button 'Project Control Dialog' calls the dialog
'Project Control' which allows to control either all PLCs simultaneously or to call the resource
control dialog 'Resource_name' for each single PLC.
When working with one resource, pressing the button 'Project Control Dialog' calls directly the
resource control dialog 'Resource_name'. In this case it is not necessary to distinguish between
different PLCs, so the project control dialog for controlling several PLCs is not necessary. Please
refer to the topic Downloading a project if only one resource is connected.
How to proceed:
• In the subtree 'Physical Hardware' select the menu item 'Settings...' in the context menu of
each resource to call the dialog 'Resource settings...'. Ensure that the correct simulation
or port, to which the project is to be downloaded, is activated for each resource.
37
Downloading – general description Downloading a bootproject
The resource list in this dialog contains all available PLC targets inserted in the subtree 'Physical
Hardware'. When working with the dialog, each operation is executed for all marked resources. If
a button is inactive in the project control dialog, this means, that at least one of the marked
resources is not able to execute this command.
• The dialog always starts offline. This means, that no communication connections between
the dialog and the PLCs are established by default.
To establish these connections, mark all desired targets in the resource list with a left
mouse click (for marking all resources use the button 'Select all').
• To initiate the download of the full project including POUs and the configuration data to all
marked resources, click on the button 'Project'.
Depending on the user settings on the page 'Debug' of the dialog 'Options' a message
dialog appears, informing you, that the following download is executed for all marked
resources. To continue the download confirm the message dialog with 'OK'.
• While the program is downloaded, the column 'Status' in the resource list shows
'Download' and the info field displays the progress of the transmission.
• After the download has been completed successfully, you can use the buttons in the
dialog area 'Control' to start the PLCs.
• Pressing the button 'Control...' in the project control dialog calls the control dialog
'Resource_name' for each marked resource.
This resource control dialog allows individual control possibilities for each resource, e.g.
calling the resource specific download dialog, the buttons 'Step' and 'Trace' when
debugging, etc.
Downloading a bootproject
The system provides the possibility to restrict the right of downloading the code of each resource by
a password. If the password protection is enabled and depending on the security settings for the
resource you want to download, you first have to log in using the valid password. Further
information can be found in the topic Protecting a project using a password.
Downloading a bootproject means that a project is sent to each connected simulation or PLC and is
stored in a remanent memory. After power failure or switching on a PLC the bootproject is
processed automatically.
Having downloaded a bootproject it is necessary to activate it. If the bootproject is not activated, it
cannot be executed.
38
Downloading – general description Downloading a bootproject if one resource is available
It is also possible to generate a bootproject offline during the compilation process. If you have
activated the checkbox 'Generate bootproject during compile' in the dialog 'Resource settings...' a
file containing a bootproject is generated while compiling. The file for the bootproject is called
[Link] and is stored in the resource directory. You can copy this file on a floppy disk and boot
your PLC with it. This way it is possible to use the PLC without using the programming system.
The system recognizes, whether you have only one or several target resources available to which
the bootproject should be downloaded. Depending on the number of resources in the subtree
'Physical Hardware' different dialogs can be used for downloading a bootproject. The topic
Downloading – general description provides a figure showing the difference.
As shown in the figure provided in the topic Downloading – general description, the steps to
download a project differ, if one or several resources are available, i.e. are inserted in the subtree
'Physical Hardware'. The same applies to the download of a bootproject.
When working with one resource, pressing the button 'Project Control Dialog' calls the resource
control dialog 'Resource_name'. In this case it is not necessary to distinguish between different
PLCs, so the project control dialog for controlling several PLCs is not necessary.
If two or more resources are available, the dialog 'Project control' appears, which allows to control
either all PLCs simultaneously or to call the resource control dialog 'Resource_name' for each
single PLC. Please refer to the topic Downloading a bootproject if two or more resources are
available.
How to proceed:
• Select the menu item 'Settings...' in the context menu of the resource. The dialog
'Resource settings...' appears. Ensure that the correct simulation or port, to which the
project is to be downloaded, is activated.
The control dialog 'Resource_name' appears directly because only one resource is
available.
• Press the button 'Download' in the 'Bootproject' area to download the bootproject to the
target. The status bar displays the downloading process.
• Press the button 'Stop' and then 'Reset' in the control dialog 'Resource_name' to reset the
PLC.
39
Downloading – general description Downloading a bootproject if two or more resources are available
• Press the button 'Activate' in the 'Bootproject' area of the dialog 'Download' to execute the
bootproject.
As shown in the figure provided in the topic Downloading – general description, the steps to
download a project differ, if one or several resources are available, i.e. are inserted in the subtree
'Physical Hardware'. The same applies to the download of a bootproject.
If two or more resources are available, pressing the button 'Project Control Dialog' calls the the
dialog 'Project Control' which allows to control either all PLCs simultaneously or to call the resource
control dialog 'Resource_name' for each single PLC.
When working with one resource, pressing the button 'Project Control Dialog' calls directly the
resource control dialog 'Resource_name'. In this case it is not necessary to distinguish between
different PLCs, so the project control dialog for controlling several PLCs is not necessary. Please
refer to the topic Downloading a bootproject if only one resource is connected.
How to proceed:
• In the subtree 'Physical Hardware' select the menu item 'Settings...' in the context menu of
each resource to call the dialog 'Resource settings...'. Ensure that the correct simulation
or port, to which the project is to be downloaded, is activated for each resource.
The resource list in this dialog contains all available PLC targets inserted in the subtree 'Physical
Hardware'. When working with the dialog, each operation is executed for all marked resources. If
a button is inactive in the project control dialog, this means, that at least one of the marked
resources is not able to execute this command.
• The dialog always starts offline. This means, that no communication connections between
the dialog and the PLCs are established by default.
To establish these connections, mark all desired targets in the resource list with a left
mouse click (for marking all resources use the button 'Select all').
40
Downloading – general description Downloading the project source
• Click on the button 'More...' in the dialog area 'Download'. The dialog 'Download' appears.
• In the dialog 'Download' click on the button 'Download' to initiate the bootproject download
to all resources marked in the resource list of the project control dialog.
Depending on the user settings on the page 'Debug' of the dialog 'Options' a message
dialog appears, informing you, that the following download is executed for all marked
resources. To continue the download confirm the message dialog with 'OK'.
• While the bootproject is downloaded, the column 'Status' in the resource list shows
'Download' and the info field displays the progress of the transmission.
After the download has been completed successfully, the bootproject has to be activated on each
PLC.
• For that purpose you first have to stop and reset the resources by marking them in the
resource list of the project control dialog and then pressing the buttons 'Stop' and 'Reset'.
• To activate the bootproject on each resource simultaneously first select all resources in
the resource list and then call the dialog 'Download' again by pressing the button 'More...'
in the project control dialog.
In the dialog 'Download' click on the button 'Activate'.
• To activate the bootproject for a single resource, you have to call the control dialog
'Resource_name' for this PLC. For that purpose mark the desired PLC in the resource list
and then click on the button 'Control' in the project control dialog.
In the appearing resource control dialog click on 'Download' to open the dialog 'Download
resource_name' for the current resource.
Press the button 'Activate' in the 'Bootproject' area of the dialog 'Download
resource_name' to execute the bootproject.
• After activating the bootproject you can execute a cold or warm start for the corresponding
PLCs by pressing one of the buttons 'Cold' or 'Warm' in the project control dialog.
Downloading the project source means that the project source is zipped and sent to the PLC. This
zipped project is stored on the PLC as a backup of the current project. If you want to view or edit
the project you can upload it.
The system recognizes, whether only one or several target resources are available to which the
project source should be downloaded. Depending on the number of resources in the subtree
'Physical Hardware' the steps for downloading a project source differ as described in the following
procedure. Also refer to the figure in the topic Downloading – general description.
How to proceed:
41
Downloading – general description Downloading the project source
• Select the menu item 'Settings...' in the context menu of each resource. The dialog
'Resource settings...' appears. Ensure that the correct simulation or port is activated for
each resource.
The following three items only apply, if two or more resources are available in the project tree. In
this case the dialog 'Project control' appears. Using this dialog you have to establish the
communication connections to each desired PLC and open the resource control dialog for each
desired resource:
• In the project control dialog mark the desired resources in the resource list with a left
mouse click (for marking all resources use the button 'Select all').
• Click on the button 'Control...' to open one control dialog 'Resource_name' for each
marked resource.
When working with one resource, pressing the icon 'Project Control Dialog' calls directly the
resource control dialog 'Resource_name'. In this case it is not necessary to distinguish between
different PLCs, so the project control dialog for controlling several PLCs is not necessary. Proceed
with the following step.
After the resource control dialog 'Resource_name' is opened for the desired resource(s), proceed
as follows:
• Press the button 'Download Source' to start zipping and downloading the project source.
The status bar displays the zipping and downloading process.
Repeat the last 3 steps for each desired resource using the appropriate resource control dialog
'Resource_name'.
42
Downloading – general description Uploading the project source
The system recognizes, whether only one or several target resources are available. Depending on
the number of resources in the subtree 'Physical Hardware' the steps for uploading a project source
differ as described in the following procedure. Also refer to the figure in the topic Downloading –
general description.
How to proceed:
• Select the menu item 'Settings...' in the context menu of each resource. The dialog
'Resource settings...' appears. Ensure that the correct simulation or port is activated for
each resource.
The following three items only apply, if two or more resources are available in the project tree. In
this case the dialog 'Project control' appears. Using this dialog you have to establish the
communication connections to each desired PLC and open the resource control dialog for each
desired resource:
• In the project control dialog mark the desired resources in the resource list with a left
mouse click (for marking all resources use the button 'Select all').
• Click on the button 'Control...' to open one control dialog 'Resource_name' for each
marked resource.
When working with one resource, pressing the icon 'Project Control Dialog' calls directly the
resource control dialog 'Resource_name'. In this case it is not necessary to distinguish between
different PLCs, so the project control dialog for controlling several PLCs is not necessary. Proceed
with the following step.
After the resource control dialog 'Resource_name' is opened for the desired resource(s), proceed
as follows:
43
Downloading – general description Deleting a project source on the PLC
• After confirming this dialog the project source is sent from the resource to the
programming system. The status bar displays the progress of the upload process.
Then a further dialog appears asking you, whether you want to overwrite the current
project with the uploaded project or to unzip the uploaded project into a new project
named 'Untitled' or to cancel the upload (i.e. to delete the uploaded code file).
Repeat the last 4 steps for each desired resource using the appropriate resource control dialog
'Resource_name'.
The system recognizes, whether only one or several target resources are available on which the
project source should be deleted. Depending on the number of resources in the subtree 'Physical
Hardware' the steps for deleting the project source differ as described in the following procedure.
Also refer to the figure in the topic Downloading – general description.
How to proceed:
• Select the menu item 'Settings...' in the context menu of each resource. The dialog
'Resource settings...' appears. Ensure that the correct simulation or port is activated for
each resource.
The following three items only apply, if two or more resources are available in the project tree. In
this case the dialog 'Project control' appears. Using this dialog you have to establish the
communication connections to the desired PLCs and open the resource control dialog for each
desired resource:
• In the project control dialog mark the desired resources in the resource list with a left
mouse click (for marking all resources use the button 'Select all').
44
Downloading – general description Downloading a file of any type
• Click on the button 'Control...' to open one control dialog 'Resource_name' for each
marked resource.
When working with one resource, pressing the icon 'Project Control Dialog' calls directly the
resource control dialog 'Resource_name'. In this case it is not necessary to distinguish between
different PLCs, so the project control dialog for controlling several PLCs is not necessary. Proceed
with the following step.
After the resource control dialog 'Resource_name' is opened for the desired resource(s), proceed
as follows:
Repeat the last 2 steps for each desired resource using the appropriate resource control dialog
'Resource_name'.
The system recognizes, whether only one or several target resources are available to which a file
should be downloaded. Depending on the number of resources in the subtree 'Physical Hardware'
the steps for downloading a file differ as described in the following procedure. Also refer to the
figure in the topic Downloading – general description.
How to proceed:
• Select the menu item 'Settings...' in the context menu of each resource. The dialog
'Resource settings...' appears. Ensure that the correct simulation or port is activated for
each resource.
The following three items only apply, if two or more resources are available in the project tree. In
this case the dialog 'Project control' appears. Using this dialog you have to establish the
communication connections to each desired PLC and open the resource control dialog for each
desired resource:
45
Downloading – general description Downloading a file of any type
• In the project control dialog mark the desired resources in the resource list with a left
mouse click (for marking all resources use the button 'Select all').
• Click on the button 'Control...' to open one control dialog 'Resource_name' for each
marked resource.
When working with one resource, pressing the icon 'Project Control Dialog' calls directly the
resource control dialog 'Resource_name'. In this case it is not necessary to distinguish between
different PLCs, so the project control dialog for controlling several PLCs is not necessary. Proceed
with the following step.
After the resource control dialog 'Resource_name' is opened for the desired resource(s), proceed
as follows:
• Start the file download by clicking on the button 'Download'. The status bar displays the
downloading process.
Repeat the last 4 steps for each desired resource using the appropriate resource control dialog
'Resource_name'.
46
I/O configuration
The dialog 'I/O Configuration' is used to edit the I/O configuration worksheet. The I/O configuration
normally contains declarations of the I/O modules, for example the logical addresses of a module
(start and end address), device declarations (driver name or memory address), etc.
While the connected process is running, the PLC receives input signals via the I/O modules. These
input signals are processed according to the PLC program. After a working cycle the PLC transmits
the output signals to the I/O modules. The way the PLC handles these signals are set up via the I/O
configuration.
If necessary also the data configuration of the memory area for non−retentive and retentive
variables can be edited.
To call the dialog, double click on the icon 'I/O configuration' in the project tree:
• Page 'VARCONF' to declare the memory range for retentive and non−retentive user flags.
Detailed information about this can be found in the topic data configuration.
• Call the dialog 'I/O configuration' by double clicking on the corresponding icon in the
subtree 'Physical Hardware':
• In the dialog open one of the sheets 'INPUT' or 'OUTPUT', depending on the module to be
declared.
47
I/O configuration Editing the data configuration
Note: The dialogs 'Properties' and 'Add I/O Group' have identical fields and buttons. They
are described in the topic Dialogs 'Properties' and 'Add I/O group' for declaring the I/O
configuration.
• Fill in or change the dialog fields. A description of the fields can be found at the end of this
topic.
• Confirm the dialog by clicking on 'OK'. The dialog 'Add I/O group'/'Properties' is closed and
the new declared/changed module is displayed on the corresponding page of the dialog
'I/O configuration'.
The I/O configuration depends on your PLC type. Please refer to your hardware documentation for
detailed information.
The data configuration via the dialog 'Data Area' should be normally done if new projects are
created and no special configuration is needed. In this case the user sets the addresses for the
different memory areas in the dialog and the program creates automatically a hidden entry
(VAR_CONF) in the I/O configuration.
The data configuration via the dialog 'I/O Configuration' should only be done if a special data
configuration is needed. If old projects are used, the old data configuration should be used.
Therefore the checkbox 'Declare user memory in I/O configuration automatically' should be
unchecked in the dialog 'Data Area'.
• Call the dialog 'I/O configuration' by double clicking on the corresponding icon in the
subtree 'Physical Hardware':
48
I/O configuration Editing the data configuration
The dialogs 'Properties' and 'Add I/O Group' have identical fields and buttons. They are
described in the topic Dialogs 'Properties' and 'Add I/O group' for declaring the data
configuration.
• Fill in or change the dialog fields. A description of the fields can be found at the end of this
topic.
• Confirm the dialog by clicking on 'OK'. The dialog 'Add I/O group'/'Properties' is closed and
the new declared data configuration is displayed on the page 'VARCONF' of the dialog 'I/O
configuration'.
49
Configuration specific dialogs
Dialog 'I/O Configuration'
Dialogs 'Properties' and 'Add I/O Group' for declaring the I/O configuration
Dialogs 'Properties' and 'Add I/O group' for declaring the data configuration
Possible PLC states, displayed in the control dialog 'Resource_name' or in the dialog 'Resource
settings...'
Dialog 'Download'
Dialog 'Insert'
Dialog 'Properties'
The declaration is initiated in the dialog 'I/O configuration' by clicking on one of the buttons 'Add...'
or 'Properties'.
50
Configuration specific dialogs Dialogs 'Properties' and 'Add I/O Group'
The actual information and values are then entered either in the dialog 'Properties' or 'Add I/O
group' (depending on the button, you pressed in the dialog 'I/O Configuration').
Dialogs 'Properties' and 'Add I/O Group' for declaring the I/O
configuration
The dialogs 'Properties' and 'Add I/O group' appear, if the page 'INPUT' or 'OUTPUT' of the dialog
'I/O Configuration' is displayed and you click on the button 'Properties...' or 'Add...' .
The steps, how to use the dialogs are described in the topic Editing an I/O configuration.
The I/O configuration depends on your PLC type. Please refer to your hardware documentation for
detailed information.
'OK' confirms the dialog. The settings are entered in the corresponding
page ('INPUT' or 'OUTPUT') of the dialog 'I/O Configuration'.
'Description' calls a description concerning the selected board / I/O module (see
below). If no board is selected, clicking on this button has no effect.
Name specifies the name of the I/O module. The user can define any
name.
Task specifies the task, to which the module is assigned (i.e. which
processes the signals for/from the module). The list box contains all
tasks which are used in the PLC program.
Start address specifies the start address of the module. The location prefix (I for
inputs and Q for outputs) is entered automatically. The size prefix
for I/O modules is always set to B (byte). If a new module is added,
the system automatically enters the first free address.
End address the end address is calculated automatically by the system (end
address = start address + length).
Device specifies the device. Different dialog areas are visible, depending
'Driver' or 'Memory' on this setting: If 'Driver' is selected, the dialog area 'Board/ I/O
Module' is visible, where you can select a driver. If 'Memory' is
selected, the dialog area 'Memory' is visible. For detailed
information about these areas, see below.
51
Configuration specific dialogs Dialogs 'Properties' and 'Add I/O group'
Board / I/O Module: This dialog area is only visible, if 'Device' is set to 'Driver'. The area
is used to specify the used I/O module. The list box contains all
drivers installed on your system. Select the required driver by
double clicking on the corresponding entry. To set the driver
parameters click on the button of the same name.
Driver Parameter... This button is only visible, if 'Device' is set to 'Driver'. If a board / I/O
module is selected, pressing this button calls the dialog 'Driver
information of device device_name'. The contents of this dialog
depends on the selected board/module. For detailed information
about the data please refer to your module documentation.
'Memory' − 'Address' This area is only visible, if 'Device' is set to 'Memory'. The field
specifies the memory location of the I/O module (for example
16#D000).
'Memory' − 'Access' specifies, whether the data are written directly to the specified
'buffered' or 'direct' address or buffered before writing.
The steps, how to use the dialogs are described in the topic Editing a data configuration.
'OK' confirms the dialog. The settings are entered in the page
'VARCONF' of the dialog 'I/O Configuration'.
Name specifies the name of the data configuration set. The user can
define any name.
Task specifies the task, to which the data set is assigned (i.e. which
processes the signals for the defined addresses). The list box
contains all tasks which are used in the PLC program.
Start address specifies the start address of the data set. If a new group is added,
the system automatically enters the first free address.
52
Configuration specific dialogs Dialog 'Data Area'
End address The end address is calculated automatically by the system (end
address = start address + length).
Data Configuration specifies the location prefix for the group. Since a data configuration
'Variable type' is declared, only M ( = physical address in the PLC memory) can be
selected.
Start user: specifies the address where the memory area for user flags
starts.
End user / Start system: This field is available for non−retain data (upper dialog area)
as well as for retain data (lower area). It specifies the address
where the memory area for the programming system flags
starts. These flags are internally used by the programming
system.
End system: This field is available for non−retain data (upper dialog area)
as well as for retain data (lower area). It specifies the address
where the memory area for programming system flags ends.
These flags are internally used by the programming system.
Reserve per POU: This field is available for non−retain data (upper dialog area)
as well as for retain data (lower area). It specifies the default
memory reserve for a POU used for Patch POU. If no reserve
is used it is not possible to use Patch POU if retain or
non−retain variables have been added. The reserve can be
entered in % or in bytes. Changing these defaults values
affects all POUs for which the memory reserve has not already
been changed manually in the POU properties dialog (tab
'Type').
53
Configuration specific dialogs Dialog 'Project control'
Declare user memory in I/O creates automatically a hidden entry (VAR_CONF) in the I/O
configuration automatically configuration containing the memory areas set in this dialog.
This checkbox should normally be activated for using the
settings done in this dialog. Only for old projects or special I/O
configurations this checkbox should be unchecked.
To get information about the project size and the memory space needed for flags, click on the
sheet tab 'Info' in the message window to display these information after compiling.
For detailed information about the memory areas and flags please refer to the PLC system manual
and/or your hardware documentation.
If the subtree 'Physical Hardware' contains only one resource, the control dialog 'Resource_name'
appears instead of the dialog 'Project control'.
The dialog 'Project control' is used to control the communication with all connected PLCs or
simulations.
For that purpose the dialog provides a selection list with all available resources. Before executing a
command for one or several resources, the desired resources must be selected in the list by
marking them with a left mouse click.
The page 'Debug' of the dialog 'Options' (called by the menu item 'Options' in the submenu 'Extras')
provides several checkboxes to set up the behaviour of this dialog. For example you can specify,
that each command invoked in the dialog, first calls a warning message, which you have to confirm
before the command is executed.
Click here for a description of the options dialog page 'Debug'.
resource list This selection list contains all resources which are defined in the subtree
'Physical Hardware'. Each available resource is represented as one line in
the selection list. The list consists of several columns:
Resource: indicates the resource name.
Configuration: indicates the name of the configuration to which the
resource belongs.
Status: indicates the state of this PLC or simulation. The status 'Offline'
means, that no communication connection is established between the
dialog and the resource.
Please refer to the note below this table.
Related topic:
54
Configuration specific dialogs Dialog 'Project control'
Info: shows a short information about the current PLC state or the progress
of operations (e.g. project download).
Online The dialog 'Project control' always starts offline, except a communication
channel already is established to a particular resource, because at least
'Connnect' one related worksheet is opened in online mode. Please refer to the note
'Disconnect' below this table.
Using the commands in the dialog area 'Online' you can control the
connections between the dialog 'Project control' and the resources.
Both buttons in this area relate to each resource selected in the resource
list.
The state of each selected resource is displayed in the selection list column
'Status' after executing the command.
Download Using the buttons in the dialog area 'Download' you can initiate the
download procedure. Both buttons in this area relate to each resource
'Project' selected in the resource list. Precondition for starting a download is that the
'More...' connection to a resource has already been established (using the button
'Connect').
Note: A button appears incative (i.e. grey) if you have selected a resource
in the resource list, for which the command relating to the grey button can
not be executed at this moment. A possible reason may be, that one of the
selected resources is in the TIMEOUT state or the connection has not been
established properly. In this case you have to deselect the affected
resource in order to activate the button for the remaining resources which
are ready for the download.
'Project': After clicking on this button, the system sends the whole project
to each selected and connected simulation or PLC. The download progress
is indicated as a percentage value in the column 'Info' of the resource list.
'More...': This button calls the dialog 'Download', which is used to initiate
further operations for all selected resources. Click here for a description of
this dialog.
55
Configuration specific dialogs Dialog 'Project control'
Both buttons in the area 'Download' remain inactive (grey) while the
download is in progress for at least one resource.
Control Using the the buttons in the dialog area 'Control' you can control all selected
resources, i.e. an invoked command is executed for all resources marked in
'Cold' the selection list.
'Warm'
'Hot' Note: A button appears incative (i.e. grey) if only one of the selected
'Stop' resources is not able to execute the related command. A possible reason
'Reset' may be, that one of the selected resources is in the TIMEOUT state or the
'Control...' download has not been finished successfully. In this case you have to
deselect the affected resource in order to activate the button for the
remaining resources which are ready to execute the command. If for
example one resource is in the state 'Run' and the others in the state 'Stop',
the button 'Start' remains active. In this case, the start command is
downloaded only to those resources which are in the state 'Stop'.
'Cold': executes a cold start on all selected resources. During a cold start
all data are initialized.
'Warm': executes a warm start on all selected resources. During a warm
start only non−retentive data are initialized.
'Hot': executes a hot start on all selected resources. During a hot start no
data are initialized.
'Stop': stops the program execution on all selected PLCs or simulations.
'Reset': resets all selected PLCs or simulations.
'Control...': Calls the control dialog 'Resource_name' for each selected
resource. If breakpoints are set for one resource, the related control dialog
'Resource_name' displays the buttons 'Step', 'Trace', etc. automatically.
Close closes the dialog 'Project control'. The communication path between the
dialog and the connected resources are terminated. When re−opening the
dialog, the communication status 'Offline' is displayed for each resource and
you have to re−connect the desired resources in order to control them using
the dialog 'Project control'. Please refer to the note below this table.
56
Configuration specific dialogs Dialog 'Download' of the 'Project control' dialog
This "little" download dialog contains only a subset of commands of the "large" dialog 'Download'
which is called from the single control dialog for downloading projects, bootprojects, source files
and files of any type.
Related topic:
Downloading a bootproject if several resources are available
Delete on target deletes the bootproject on all resources selected in the resource list
of the dialog 'Project control'. Please observe the note below.
A button appears incative (i.e. grey) if only one of the resources selected in the dialog 'Project
control' is not able to execute the related command. A possible reason may be, that one of the
selected resources is in the TIMEOUT state or no bootproject is stored on one of the PLCs. In this
case you have to deselect the affected resource in order to activate the button for the remaining
resources which are ready to execute the command.
• if only one resource is available in the current project and you click on the icon 'Project
Control Dialog' in the toolbar:
Note: If several resources are available, clicking this icon calls the dialog 'Project control'.
57
Configuration specific dialogs Dialog 'Download' of the 'Project control' dialog
In this case you can open the control dialog 'Resource_name' for each available resource
by clicking on the button 'Control...' in the project control dialog (see item below).
• if you click on the button 'Control...' in the dialog 'Project control'. In this case one control
dialog for each resource selected in the resource list of the dialog 'Project control'
appears.
The title bar of each dialog shows the name of the resource which is controlled by this
dialog.
The control dialog 'Resource_name' is used to control the communication with a single PLC or
simulation.
Title bar The title bar of the dialog shows the name of the resource, which is controlled by
this dialog.
State indicates the state of the PLC or simulation. If [Debug] is added to the state it
means that variables have been forced or breakpoints have been set.
Related topic:
Description of the possible PLC states
Stop stops the PLC or simulation.
Cold executes a cold start. During a cold start all data are initialized.
Warm executes a warm start. During a warm start only non−retentive data are initialized.
Hot executes a hot start. During a hot start no data are initialized.
Restart restarts the program execution after a breakpoint has been reached. Only
available if a breakpoint has been set.
Go continues the program execution after a breakpoint has been reached. Only
available if a breakpoint has been set.
Step steps over. Continues the program execution line by line after a breakpoint. If a
function or a function block is reached it is stepped over. The code body of the
function or function block is not debugged. Only available if a breakpoint has been
set.
Trace traces into. Continues the program execution line by line after a breakpoint. If a
user function or a function block is reached it traces into the code body of the
function or function block. Only available if a breakpoint has been set.
Error opens the message window with the PLC errors. Only available if errors were
detected.
Download calls the dialog 'Download Resource_name' to send a project or bootproject to the
target.
Upload starts uploading the zipped project source from the PLC which has been
downloaded before.
Reset resets the PLC.
Info calls the dialog 'Resource: resource name' for information about the current PLC
state.
Close closes the control dialog.
58
Configuration specific dialogs Possible PLC states, displayed in the control dialog...
Related topic:
Debugging with set breakpoints
state [DEBUG] This is an additional state which only appears in conjunction with the state
RUN, STOP or HALT. [DEBUG] indicates, that the debug mode is active,
i.e. either variables are forced or breakpoints are set (if a breakpoint is
reached, the state changes to HALT [DEBUG]).
LOADING This is not a real state, but rather a gateway from the state POWER ON to
RUN. It is only visible if the PLC is loading a bootproject.
TIMEOUT This state indicates, that the connection between the programming system
and the PLC was not established within the given time interval. The time
interval is set in the dialog 'Resource settings...' (field 'Timeout'). During this
interval the system tries to connect the PLC. If the interval has been
elapsed without a successful connection, the state is set to TIMEOUT.
Further information about the PLC states are contained in your PLC manual.
If the dialog shows this state, you may have selected a wrong communication path to the PLC or
simulation.
Proceed as follows:
59
Configuration specific dialogs Dialog 'Download'
• Call the dialog 'Resource settings...' by selecting the menu item 'Settings...' in the context
menu of the particular resource.
• In the dialog 'Resource settings...' check, whether the correct communication path is
selected in the dialog area 'Port'.
Correct the entry if required.
Dialog 'Download'
The dialog 'Download' appears if you press the button 'Download' in the control dialog
'Resource_name'.
The dialog is used to select the project or the files to be downloaded to the target and to start the
download process to a single resource.
If a project should be downloaded to several resources, you can use the dialog 'Project control'.
You can select either a "normal" project or a bootproject. It is also possible to download the zipped
project source (which can be used as a backup) or a file of any type to the PLC .
Related topic:
Downloading a project
Include OPC data Downloads the csv−file which is used by the OPC Server together
with the project. This file contains all variables, which are intended
to be monitored using an OPC Server. By downloading this file with
the project, the OPC Server is able to update the related OPC
project automatically. Doing so, it is no longer necessary to
re−import the changed project manually into the OPC Server in
order to apply the changes.
Download Source zips a project and downloads the zipped project source to the PLC.
The project source can be used as a backup of the current project.
Related topic:
Downloading a project source
Include User−Libraries includes all user libraries in the zipped project source when
downloading a project source.
Include Pagelayouts includes all pagelayouts in the zipped project source when
downloading a project source.
60
Configuration specific dialogs Dialog 'Insert'
Delete source on target deletes the project source on the PLC (only active, if a project
source is stored on the target).
Related topic:
Deleting a project source on the target
Related topic:
Downloading a bootproject
Bootproject − Delete on target deletes the bootproject on the PLC (only active, if a bootproject is
stored on the target).
Download File calls a browser dialog, in which you can select any file in order to
download it to the target.
Related topic:
Downloading a file of any type
Dialog 'Insert'
The dialog 'Insert' appears if you choose the menu item 'Insert...' in the context menu of any icon in
the subtree 'Physical Hardware'. The context menu is displayed by marking an icon and pressing
the right mouse button.
The dialog is used to specify the new object and to insert it into the subtree. Depending on the
object (icon) for which the dialog was called, some fields and list boxes are inactive.
Name/...instance specifies the name of the configuration, resource or task or the instance
name while inserting an instance.
Function block type specifies the function block type while inserting a function block
61
Configuration specific dialogs Dialog 'Online Layout'
instance.
Exclude from compilation excludes the resource from the compilation process. Only available for
resources.
Type specifies the type of the object you are going to insert.
Mode specifies if the new object is inserted before (Insert) or after (Append)
the marked one.
Dialog 'Online Layout'
The dialog 'Online Layout' is called by selecting the menu item 'Online Layout...' in the submenu
'Online'. The dialog is used to change the display of the values in the online mode.
Only values hides the names of variables and displays the values.
textual Boolean values displays the words 'TRUE' and 'FALSE' in addition to the colors
red and blue.
numerical Boolean values displays the numbers '0' and '1' in addition to the colors red and
blue.
show parameter values displays the values for all formal parameters.
Additionally the dialog 'Debug: resource_name' provides the possibility to switch the value display
of the online values: Standard, decimal, hexadecimal and binary notations are possible.
The dialog is used to force or overwrite variables and to set and reset breakpoints. 'Overwrite'
means that a variable is overwritten with a new value only for one working cycle. After this cycle the
normal value is used automatically. Having forced a variable the new value is used until it is reset
62
Configuration specific dialogs Dialog 'Online Layout'
Keep in mind, that only physical inputs and outputs can be forced.
Additionally the dialog is used to switch the representation (notation) of online values in the
worksheets.
Value specifies the variable value if you have called the dialog for a non−Boolean
variable. For a Boolean variable the radio buttons 'TRUE' and 'FALSE' are
available.
Note: The dialog remembers the overwrite value which was entered
formerly for a variable. If you call the dialog for the same variable again, this
formerly entered value is displayed automatically in the text field.
Reset resets a breakpoint. Only available if a breakpoint has been set before.
'Standard', determines the notation in which the online values are displayed in the
'Decimal', worksheets. The selected option is applied to all worksheets.
'Hexadecimal' or
'Binary'
63
Configuration specific dialogs Dialog 'Properties'
Dialog 'Properties'
The dialog 'Properties' in the subtree 'Physical Hardware' appears if you choose the menu item
'Properties...' in the context menu of an object.
The dialog can be used to view or to change the properties of these objects.
The following table lists all fields and buttons which can be contained in the properties dialog.
Which fields are actually available depend on the object for which the dialog was called.
Read protection If this checkbox is activated, the worksheets within this configuration
cannot be displayed, until you have logged in with the valid project
password.
Write protection If this checkbox is activated, any changes you have made in the
worksheets of this configuration cannot be saved, until you have
logged in with the valid project password.
Read protection If this checkbox is activated, the worksheets within this resource
cannot be displayed, until you have logged in with the valid project
password.
Write protection If this checkbox is activated, any changes you have made in the
worksheets of this resource cannot be saved, until you have logged in
with the valid project password.
Download protection If this checkbox is activated, the corresponding code of this resource
can not be downloaded to the PLC.
Debug protection If this checkbox is activated, the corresponding code of this resource
can not be debugged.
64
Configuration specific dialogs Dialog 'Resource settings...'
The dialog is used to specify the target for downloading. With the PLC type IPC you can use 2
simulations at the same time. If you want to use more simulations you have to copy the file
'PC_SIM1.exe' and rename it to 'PC_SIMn.exe' etc. using the file manager. To use the 32 bit
simulation you have to activate the radio button 'DLL' and select '32 bit simulation (* external
application *)'.
Baud specifies the baud rate for the communication via the selected port. This
entry has only to be changed if your hardware needs a different value.
Refer to the PLC documentation or the PLC adaptation manual for
information about it.
Stopbits specifies the number of stopbits for the communication via the selected
port. This entry has only to be changed if your hardware needs a different
value. Refer to the PLC documentation or the PLC adaptation manual for
information about it.
Databits specifies the number of the databits for the communication via the selected
port. This entry has only to be changed if your hardware needs a different
value. Refer to the PLC documentation or the PLC adaptation manual for
information about it.
Parity indicates the use of a parity bit for the communication via the selected port.
This entry has only to be changed if your hardware needs a different value.
Refer to the PLC documentation or the PLC adaptation manual for
information about it.
Timeout specifies the interval in ms for timeout. During this time interval the
programming system tries to establish the connection to the hardware. If
the time interval is exceeded timeout is displayed.
Stack−Check on PLC activates the Stack−Check on the PLC. The Stack−Check checks if there
65
Configuration specific dialogs Dialog 'Resource settings...'
Array boundary check activates the array boundary check on the PLC. The array boundary check
on PLC checks if all used array elements are included in the array. If an array e.g.
has 23 elements, it is checked whether more than 23 elements are used in
the PLC application. Activating this checkbox means a loss of performance
but more security.
Force BOOL8 for stores all Boolean variables without direct location as a byte. Activating this
Boolean variables checkbox means a much higher performance. The resulting code is
changed. If it is not checked the variables are stored as one bit.
Generate bootproject generates a bootproject during the compilation process and not while
during compile downloading. This checkbox can be used to generate a bootproject offline.
The file for the bootproject is called [Link] and is stored in the
resource directory.
DLL: specifies the name of the communication DLL. Only available if DLL is
activated.
Parameter: specifies the string passed to the DLL. Only available if DLL is activated.
PDD specifies if variables are written to the PDD on the PLC i.e. the variables
can be used with IEC 61131−5 communication function blocks.
'All global variables' means that all global variables are written to the PDD.
'All network variables' means, that all network variables which are used in
this resource are written to the PDD.
'Marked variables' means that all variables which have been declared with
the attribute 'PDD' are written to the PDD.
CSV specifies if variables are written to the *.csv file in the resource directory.
The OPC Server processes these variables and transfers their actual
values to an OPC Client (e.g. a visualization).
'All global variables' means that all global variables are written to the *.csv
file.
'All network variables' means, that all network variables which are used in
this resource are written to the *.csv file.
'Marked variables' means that all variables which have been declared with
the attribute 'CSV' are written to the *.csv file.
Use reserve uses the memory reserve for Patch POU which has been entered in the
dialog 'Data Area'.
66
Configuration specific dialogs Dialog 'Resource: resource name'
'All POUs' means that the reserve is used for all POUs.
'Marked POUs' means that the reserve is used for all POUs which have
been marked in the dialog 'Insert' while inserting the POU or in the POU
properties dialog (tab 'Type').
Data area... calls the dialog 'Data Area' for setting the memory areas for user and
system flags and the reserve for POUs.
Project indicates the name of the project which has been downloaded to the PLC.
Default task indicates the time of one working cycle of the DEFAULT task.
Retain data indicates the size of the memory for retentive data.
Prog. mem. indicates the free memory for the PLC program.
Breakpoints indicates that breakpoints have been set. If breakpoints have been set the
checkbox 'Reset breakpoints' is displayed. Activate this checkbox if you want
to reset all breakpoints at the same time.
Force indicates that variables are forced. If variables are forced the checkbox 'Reset
forcelist' is displayed. Activate this checkbox if you want to reset all forced
variables at the same time.
67
Configuration specific dialogs Dialog 'Resource: resource name'
Related topic:
Description of the possible PLC states
Error indicates that PLC error messages are displayed in the error catalog.
Access rights indicates the access rights for downloading and debugging on the PLC. If two
application programmers are working at the same time with the PLC, the first
one has global access rights, the second one only limited rights (i.e.
downloading and debugging is not possible).
Powerflow indicates that address status and powerflow have been chosen.
Project source indicates that a project source, i.e. a zipped project exists on your PLC.
Logic Analyser indicates that the Logic Analyser is active at the moment. Active means, that
currently variable values are recorded for this resource.
Time between specifies the time interval in ms for requests from the programming system to
transmissions: the PLC.
• the code size of the POUs stored currently in the resource program memory.
The table also contains two internal system POUs 'INIT_CODE' and 'TASK_MODULE' which are
generated and downloaded by the system automatically. 'INIT_CODE' contains initial values for
variables (if used in the program) and 'TASK_MODULE' provides all necessary task information
(time intervals, assignment of POUs, etc.).
The timers, counters and bistabile FBs (= IEC standard function blocks) shown in the figure at the
end of this topic are downloaded even if they are not used in the current program. The purpose for
that measure is to provide the possibility of patching POUs by using these FBs.
Code
68
Configuration specific dialogs Dialog 'Resource: resource name'
indicates the code size (in byte) of the POU, FB or system POU. Please
observe the note below.
NonRetain: Data indicates the size (in byte) of the non−retentive data processed by this
POU, FB or system POU. Please observe the note below.
Reserve indicates the specified memory reserve (in byte) for non−retentive data
which is used for patching this POU. This value is either defined in the
dialog 'Data Area' (default value) or in the POU properties dialog (POU
specific setting).
Retain: Data indicates the size (in byte) of the retentive data processed by this POU, FB
or system POU. Please observe the note below.
Reserve indicates the specified memory reserve (in byte) for retentive data which is
used for patching this POU. This value is either defined in the dialog 'Data
Area' (default value) or in the POU properties dialog (POU specific setting).
The table contains one line for each POU showing its code size and the size of the retentive and
non−retentive data processed by the POU. If a line contains an FB (e.g. the lines 'CTD', 'CTU' or
'TOF' in the figure shown below) it serves just for information purposes, i.e. it does not display the
actual memory needs but informs the user about the memory size which would be requested when
calling this FB in a POU.
If an FB is actually instantiated in a POU, its data size is added to the data size of the POU in which
the FB instance is declared.
Due to these facts it may be possible, that the 'Total' code size or data size value is not identical to
the sum which results when adding all single values listed in the appropriate column.
69
Configuration specific dialogs Dialog 'Task settings...'
Depending on the associated task type (Cyclic, Event or System) only some of the dialog fields are
available.
The dialog can be used to specify the properties of a task. The task type cannot be changed in this
dialog. This is performed in the dialog 'Properties'.
Event No.: specifies the event which activates the execution of the event task. Only
available for event tasks. Refer to the PLC documentation or the PLC
adaptation manual for information about events and their numbers.
Interval: specifies the time interval in ms in which the cyclic task is executed. Only
available for cyclic tasks.
SPG No.: specifies the system program (SPG) which is associated with the task
System programs. Only available for system tasks.
Priority: assigns a priority for calling a task. 0 represents the highest and 31 the
lowest priority. The task with the highest priority is called first.
Watchdog Time: specifies the time interval when the watchdog checks if the cycle time has
been exceeded or not. This time interval should be shorter than the cycle
time of the cyclic tasks. Note: The value 0 ms disables the Watchdog.
Stack specifies the size of the task stack. The stack size depends on the amount
of the local variables used. In case of a task switching the values of the
local variables are stored in the stack. The default setting is medium. Only if
you get several times a stack overflow you should use a higher stack size.
SAVE_FPU saves the floating point register when switching the tasks. This checkbox
should be activated only, if you use the data type REAL in different tasks
and if the hardware supports saving floating point registers while task
switching.
BYPASS removes the task switching so that the associated programs are executed
immediately if the event happens. Only available in case of an event task.
NO_SUSPEND specifies that the associated program is executed in all operational states
including the STOP state. This checkbox should be used for tasks with
associated programs containing code bodies which should be executed
continuously. It might be also useful if you are setting breakpoints to assure
that parts of your PLC programs are although executed. Not available for
the default task.
70