Description: In many plants, multiple operator panels are used. This makes it necessary to interlock these operator panels to ensure that the plant is not operated by several operators at the same time.
Contents:
- Using Sm@rtAccess
- Conventional method - user configuration
2.1 How to lock operation in the sample project
2.2 STEP 7 programming
a) Structure of the STEP 7 program
b) Description of function FC 501
c) Description of function FC 500
2.3 WinCC flexible configuration
a) Changing the configuration
b) Settings on operator panel (WinCC flexible Runtime)
- Download
Information on how to lock operation with a key switch is available in Entry ID: 32967530.
1. Using Sm@rtAccess An operator panel that is configured as a Sm@rtServer can be remotely monitored or operated from another PC or operator panel as Sm@rtClient. The connection between Sm@rtClient and Sm@artServer is made exclusively in the Ethernet network. Communication between the S7 controller and the operator panel configured as Sm@rtServer must not necessarily be via Ethernet.
  Fig. 01
Coordinated operator panels - see Fig. 01 - can be used for operating extensive or separated machines and plants. This permits the operator to operate and monitor the plant from different points. The operator sees exactly the same screen on each operator panel and configuration device. Operation locking is implemented by default in the Runtime option Sm@rtAccess. This ensures that you can only operate from one operator panel at a time.
Since there is only one single master configuration, changes to the configuration have to be made only once.
2. Conventional method - user configuration In the conventional method, the logic for operation locking is in the controller. In this case, every operator panel accesses the S7 controller with an S7 connection via PROFIBUS or Ethernet, for example. The disadvantage of this method is that you have to configure each operator panel separately.
  Fig. 02
This method can be used for operating extensive or separated machines and plants. There are many ways of programming operation locking. In this example, the configuration for each operator panel is identical except for the operation locking, because this has to be configured separately for each operator panel.
Large plants are usually divided into sections or function groups. This means that different parts of the plant can be operated in parallel by multiple operator panels. If multiple operator panels access the same part of the plant, then all the operator panels are locked except for the one first logged on. However, other parts of the plant can continue to be operated and monitored from the other operator panels.
2.1. How to lock operation in the sample project The operation lock in this example depends on the screen currently open or the screen number currently being used. If tow operator panels transfer the same screen number to the controller, then one of these operator panels is locked for the function group. The operator on the locked operator panel can now only monitor the function group concerned.
Since different numbers of screens per function group are required depending on the plant, the number including the screen number can be specified individually in a matrix on the operator panel. In this example, you can specify up to ten screens per function group - see Table 01.
|
Function group |
Screen |
| 01 |
02 |
03 |
04 |
05 |
06 |
07 |
08 |
09 |
10 |
| FG 00 |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
| FG 01 |
10 |
11 |
12 |
- |
- |
- |
- |
- |
- |
- |
| FG 02 |
20 |
21 |
- |
- |
- |
- |
- |
- |
- |
- |
| FG 03 |
31 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Table 01
The operation lock is explained taking the example of a bottle washing and sorting machine.
Note: The separated processes are only sketched out in the example!
The sample project is divided into the following plant parts and function groups:
|
No. |
Function group |
Plant part |
Screen number |
| 1 |
FG 00 |
Complete plant |
1 |
| 2 |
FG 01 |
Bottle removal |
10-12 |
| 3 |
FG 02 |
Bottle washing |
20-21 |
| 4 |
FG 03 |
Bottle sorting |
30 |
Table 02
2.2 STEP 7 programming The sample project is configured for ten operator panels and ten function groups. Operation locking is contained in function blocks FC510 and FC511 with function modules FC500 and FC501.
a) Structure of the STEP 7 program
The conventional process sequence of the individual function groups for the plant or machine is implemented in the functions provided for it (FC10, FC20 and FC30). The call is the same as for operation locking in OB1.
Note: If not more than ten operator panels and not more than ten screens per function group are required, then you do not have to change anything in the STEP 7 program with regard to operation locking.
  Fig. 03
b) Description of function FC 501 Function module FC501 "** Interlock Reset" is for resetting the current screen number of the operator panel as soon as communication between controller and operator panel is interrupted. This prevents that operator panel from continuing to lock a function group. To verify this, the operator panel's life bit that is transferred by the "Coordination" area pointer is evaluated. The reset is performed when the life bit remains unchanged after a specified span of time. FC501 is called in FC511 "General iReset" - see Fig. 03.
  Fig. 04
| Parameter |
Data type |
Interface |
Description |
| T_High |
Timer |
INPUT |
Timer for evaluation of the life bit by the operator panel (Low and High signal) |
| T_Low |
Timer |
INPUT |
| WatchDogTime |
S5Time |
INPUT |
Time for both timers |
| Coordination |
Word |
INPUT |
Coordination area pointer |
| ScreenNo |
Word |
INOUT |
Current screen number of operator panel |
Table 03
c) Description of function FC 500 Function module FC500 "** Interlock Screens" is needed once for each function group and manages locking for this function group. The function module compares the current screen number of each operator panel (maximum of ten operator panels) with the entered screen number in data block DB500 for this function group. If the function group is not blocked by another operator panel, the operation is released for this operator panel.
  Fig. 05
| Parameter |
Data type |
Interface |
Description |
| ActScreenOP |
Pointer |
INPUT |
Current screen number of operator panel |
| ScreenFG |
Pointer |
INPUT |
Released screen numbers for the function group |
| Panel_release_FG |
Pointer |
INPUT |
Release or locking of panels for this function group |
| FG_inUseOf |
Int |
INOUT |
Function group is used by following panel |
Table 04
2.3 WinCC flexible configuration In principle, you must configure locking for each operator panel. For this you need to make changes in both the configuration and Runtime.
a) Changing the configuration In order to be able to release a function group for a panel, you must change the area pointers "Coordination" and "Screen number" according to the panel number.
The following data blocks are used for both area pointers in the sample project:
| Area pointers |
DB no. |
Name of data block |
| Coordination |
DB8 |
"DB_Coordination" |
| Screen number |
DB501 |
"DB_AreaPointerScreenNo" |
Table 05
  Fig. 06
The following tags must be changed according to the panel number in each WinCC flexible project:
Table 06
Key:
| x = |
Panel number |
| y = |
Function group |
| z = |
Sequence number |
  Fig. 07
The following properties must be changed according to the panel number:
| Object |
Property |
Purpose |
Symbolic IO field |
Animations > Appearance |
All screens of the function groups |
Table 07
  Fig. 08
b) Settings on operator panel (WinCC flexible Runtime)
On the operator panel you must enter the locking data in screen "500_Param" - see Fig. 09 - and in screen "501_Release" - see Fig. 10.
You must enter the following data in screen "500_Param":
- Number of function groups
- Number of operator panels
- Panel number
Click on the "Config" button in the basic screen.
Note:
Note that the tag "DB_FunctionGroups.general.Panel_No[x-1]" must be connected to the IO field "Panel no." as in Table 06 for No. 1 according to the panel number.
  Fig. 09
The separate screen numbers that are used in the function groups concerned must be stored for the various function groups.
For this, in screen "500_Param" - see Fig. 09 - you click on the "Screens" button.
All the screens of the function groups are entered in screen "501_Release" - see Fig. 10. Screens not entered in this matrix are not released when selected in Runtime for this function group. Although you can use screen numbers from 1 to 32767 in WinCC flexible, only screen numbers 1 to 999 are possible in this configuration, because the IO fields are limited to three digits.
  Fig. 10
Note:
In this configuration, there is one screen matrix for all operator panels. You can extend the configuration so that a separate screen matrix is stored in one or multiple data blocks for each operator panel. The advantage here is that you can lock operation of specific function groups in individual operator panels, for example, where visual contact to specific parts of a plant or function groups is restricted or non-existent. In this configuration, you can prevent selection of the function group by removing the corresponding button.
3. Download Attachment 1 contains the sample project described with three WinCC flexible operator panels.
Attachment 1: WinCC_flexible_Interlock.zip ( 7910 KB )
Runnability and test environment: The following table lists the components that have been used to create this entry and verify the functions described.
| Components |
Product and version designation |
| PC operating system |
Microsoft Windows XP SP2 |
| Standard tools |
- |
| Engineering tool |
STEP 7 V5.4 SP4 |
| HMI software |
WinCC flexible 2007 HF4 |
| HMI system |
MP 277 & MP377 & PC Runtime |
Keywords:
Remote access
|