You are on page 1of 223

xMaster HMI

User Manual

A powerful MMI HMI SCADA system that features full


process visualization, data collection and management,
data logging and graphic display, historical trending,
alarming, data archiving and recipe handing, and
- 0 supervisory
control, and much, much more in one
complete Windows software package.

Revision 1.7.8.6

NOTE:
Jason Hua has made every reasonable attempt to ensure the completeness and accuracy of this
document. However, the information contained in this manual is subject to change without
notice.
ALL RISKS OF USING THIS SOFTWARE WILL REMAIN WITH THE USER.
NEITHER THIS SOFTWARE PROGRAM NOR PROGRAMMER HAS ANY LIABILITIES
FOR ANY RISKS AND DAMAGES THAT THIS SOFTWARE MIGHT CAUSE. AND
NEITHER THIS SOFTWARE PROGRAM NOR OUTCOMES OF ITS RUNTIME DOES
PROVE ANYTHING AT ALL THAT YOU MAY WANT TO.
ANY COMMENTS WELCOME!

Revision Notes
No. Date
Revision remarks

Programmer

J. Hua

2.

10

2006-FEB. 1. The latest version of the xMaster HMI software is


1.6.2.28.
2006-MAY 1. The latest version of the xMaster HMI software is
1.6.5.28.
2. Support disparate size of Real-time database for
each Data Acquisition Session. Refer to the section
1.4.9.
3. Fixed some deficiencies in editing HMI Display.
Refer to the section 7.2.3.
4. Added a sample: HMI_Sample_Button.HMI.
5. Added information in sections: 1.4.9, 7.3.18 to
7.3.20, 10.1, 11.2.
6. Revised sections: 1.4.9, 9.5.2.
2006-June 1. Support dialing up the modem automatically.
2. Added information in sections: 3.8, 7.1.1, 7.1.11,
7.3.11.
3. Revised sections: 1.4.6, 11.2.
4. In the section 1.4.9, it allows user to poll DNP
Objects respectively.
20061. The Latest version of xMaster HMI software is
August
1.6.8.14.
2. Added information in the section 1.4.4, 1.4.6, 1.4.9
and 11.3.
3. Added information in the Figure 11-7
20061. The Latest version of xMaster HMI software is
October
1.6.10.5.
2. Added information in the section 1, 1.4.4, 1.4.12,
1.4.13, 1.4.14, 3.1, 3.2, and 7.3.12.
3. Added a new section 5.3.
20061. The Latest version of xMaster HMI software is
November
1.6.11.2.
2. Improved the ability to connect to the remote sites
via the link of Dialup-Modem. Refer to the new
section 12.
3. Revised sections as follows:1.4.3, 1.4.4, 1.4.9,
1.4.13, 1.4.14, 1.4.16, 6, 6.2.3, 7.1.5, 7.1.11,
7.2.1, Figure 7-23, 7.3.12, 9.1.4, 11.1, 11.3, 11.4
and Figure 11-6.
20061. The Latest version of xMaster HMI software is
December
1.6.12.2
2. Improved the ability to launch xMaster/xSlave
applications via xMaster.exe. Refer to the section
2.
3. Added new pre-defined shape:2-State connector. New
sections 7.3.76 and 7.3.77.
4. Added a new section 13: A sample of RTU+HMI
Application via xMaster & xSlave.
20071. The Latest version of xMaster HMI software is
January
1.7.1.1.
2. Added and improved the features of alignment.
20071. The Latest version of xMaster HMI software is
February
1.7.2.1.
2. Simplified the configuration for Alarm Point. Refer
to the section 1.4.14 and 6.5.
20071. The Latest version of xMaster HMI software is

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

March

11

12

13

1.7.3.11.
2. Simplified the configuration for AI Engineering
Value. Refer to the section 1.4.13.
3. Security Measure for dial-up system. Refer to the
section 12.
J. Hua
20071. The Latest version of xMaster HMI software is
April
1.7.4.8.
2. Added the list of HMI Points in the HMI
configuration window. You can copy points into the
STR_GRID configuration.
3. Added a button of [Making StringGrid] for the
STR_GRID to configure the STR_GRID automatically.
4. The window of HMI Page Tree became movable.
5. Deleted the contents of some samples. And refer to
the files in the xMasterSlave software package.
6. Added an item: Entry-Key in the Phone-Book. Revised
the section 12.
J.Hua
2007-May 1. The Latest version of xMaster HMI software is
1.7.5.5.
2. Added the process of TrenName in HMI Point Database.
Refer to the section 11.3.
3. New entry of HMI_TREN_NAME to define the file of
Tren-Point. Refer to the section 1.4.3.
4. New entry of HMI_TREN_WDT to define the interval of
the process scanning and updating Tren points. Refer
to the section 1.4.3.
5. New entry of METER_WINDOW_CAPTION to define the
caption of the window of the Meter-Display. Refer to
1.4.11.
6. Improved the performance of Display of History.
Refer to the section 5.3.
J.Hua
2007-July 1. The Latest version of xMaster HMI software is
1.7.7.1.
2. Added feature where you can put/remove a Tag on the
current point/device to inhibit all controls on it
and to attract your attention. You can check the
list of Tag in the HMI Point database.
3. Reinforced handling Tren-Point. Refer to the section
1.4.3.
4. Reinforced handling alarms (i.e. The 1st-Occurrence
alarm, automatically switch to the HMI page
associated the 1st-Occurrence alarm, etc).
5. Reinforced managing HMI Page path (i.e. Pop up a HMI
View-Window, Pop up HMI display page(s)
automatically while re-starting, Drag a page to pop
up it, etc.).
6. Reinforced HMI function: LOAD_HMIPAGE. If the
current Button Hint is PAGE=POPUP:xxxxx the HMI
display page xxxxx.hmi will be popped up instead of
switching it.
7. You can continually Play (BLINK) up to 256 Image/BMP
pictures.
8. The Total count of Offline points is saved in 9x047
and the Total count of Active-Alarm point is saved
in 9x048 and the Total count of Integrity-Polling is
saved in 9x046. Refer to the section 9.1.4.

14

2007August

1. The Latest version of xMaster HMI software is


1.7.8.6.
2. Added definition to handle floating point data
output for Modbus. You can directly write floating
point data into MB devices (PLC, RTU, IED, etc.).
Refer to the section 1.4.9, 1.4.13, 5.2 and 7.2.5.

J. Hua

TABLE OF CONTENTS
1

Overview ................................................... 1

1.1

The Directory of Files ................................... 8

1.2

The List of Files ........................................ 8

1.3

Installation of the software ............................. 9

1.3.1

Preparation for installation ........................... 9

1.3.2

Copying the set of software ............................ 9

1.4

The Main Configuration .................................. 10

1.4.1

The name of the configuration file .................... 10

1.4.2

The entry of configuration ............................ 11

1.4.3

Entries for the xMaster HMI Server .................... 12

1.4.4

Entries for the HMI descriptions ...................... 14

1.4.5

Entries for the Data Acquisition Communications ....... 15

1.4.6

Entries for Serial Port ............................... 15

1.4.7

Entries for TCP/IP .................................... 15

1.4.7

Entries for TCP/IP .................................... 16

1.4.8

Entries for Modbus Plus ............................... 17

1.4.9

Entries for the Data Acquisition Real-time Database ... 18

1.4.10

Entries for the Data Matrix Editor .................... 23

1.4.11

Entries for definitions of the Metering Display ....... 26

1.4.12

Entries for creating a default HMI Point Database ..... 27

1.4.13

Entries for Analogue Input Points ..................... 28

1.4.14

Entries for Digital Input/Indication Points ........... 32

1.4.15

Entries for Event/Schedule driven task ................ 35

1.4.16

The Data String Template .............................. 39

1.4.17

The sample configuration for Modbus ................... 41

1.4.18

The sample configuration for Modbus Plus .............. 42

1.4.19

The sample configuration for L&G ...................... 44

1.4.20

The sample configuration for DNP3 ..................... 45

Start up .................................................. 46

2.1

Making the registration file ............................ 46

2.2

Running the xMaster ..................................... 47

Main Menu Display ......................................... 52

3.1

Main Menu -- [Digital Input] ............................ 53

3.2

Main Menu -- [Analogue Input] ........................... 53

3.3

Main Menu -- [Alarm Recorder] ........................... 53

3.4

Main Menu -- [HMI Display] .............................. 53

3.5

Main Menu -- [Data Matrix Editor] ....................... 53

3.6

Main Menu -- [PLC Program Runtime Simulator] ............ 53

3.7

Main Menu -- [Digital Output] ........................... 53

3.8

Main Menu -- [Security/Control] ......................... 53

3.9

Main Menu -- [HMI Points Database] ...................... 54

3.10

Main Menu -- [Logs] .................................... 54

3.11

Main Menu -- [Other Info.] ............................. 54

3.12

Main Menu -- [Troubleshooting] ......................... 54

3.13

Exit and the Password .................................. 54

3.14

Change the Operator Name ............................... 54

Status Display ............................................ 55

4.1

DO Controls Operations .................................. 56

4.2

Add a Tag to inhibit Controls / Operations .............. 59

Register/Analogue Input/Metering Display .................. 60

5.1

Meter Data/AI Properties Window ......................... 61

5.2

Analogue Output / SetPoint Command Operation ............ 62

5.3

Display the History of the Meter Data/Analogue .......... 63

Alarm Recorder/Annunciation ............................... 69

6.1

Alarm Summary-TableSheet Display ........................ 70

6.1.1

Acknowledge Alarms in the list of Unconfirmed Alarms .. 71

6.1.2

Summary of Alarms ..................................... 71

6.1.3

Clean up (Reset) Alarms ............................... 71

6.2

Alarm Panel Display ..................................... 72

6.2.1

The Selection in the Panel ............................ 73

6.2.2

Active Alarms in the Alarm Plane ...................... 74

6.2.3

Acknowledge and Clean up Alarm in the Alarm Panel ..... 75

6.3

Alarm Log Display ....................................... 76

6.3.1

Alarm Log Information and File ........................ 77

6.3.2

Ack and Delete Alarm Log Information .................. 77

6.4

Search Alarm-History .................................... 78

6.5

The Stand-alone Alarm-Panel Window ...................... 79

6.6

To make up a version of only Alarm Annunciation ......... 81

HMI Display ............................................... 82

7.1

Function Key Bar ........................................ 85

7.1.1

F1 Pages/Phone Book for Dialing up Modem ............ 86

7.1.2

F2 -- PgChild ......................................... 86

7.1.3

F3 -- PgDn ............................................ 86

7.1.4

F4 -- PgRet ........................................... 86

7.1.5

F5 -- PageAck ......................................... 86

7.1.6

F6 -- PLCPro .......................................... 86

7.1.7

F7 -- Print Display ................................... 86

7.1.8

F8 -- User Appl. ...................................... 86

7.1.9

F9 -- MENU ............................................ 86

7.1.10

F10 -- ALARM .......................................... 86

7.1.11

F11 -- Lockout ........................................ 87

7.1.12

F12 -- BntCtrl ........................................ 88

7.1.13

Logs Information Window ............................... 89

7.2

Edit/Draw HMI Display ................................... 90

7.2.1

Files and its format .................................. 90

7.2.2

Samples of HMI Display File ........................... 94

7.2.3

Working ModeEditing HMI Display ..................... 102

7.2.4

Options .............................................. 107

7.2.5

Configuring the pre-defined HMI Object-Shape ......... 108

7.3

The Pre-defined HMI Object-Shapes ...................... 119

7.3.1

Line ................................................. 119

7.3.2

Circle ............................................... 119

7.3.3

Ellipse .............................................. 119

7.3.4

Rectangle ............................................ 119

7.3.5

Disconnector ......................................... 119

7.3.6

Triangle ............................................. 119

7.3.7

RoundRect ............................................ 120

7.3.8

xPanel ............................................... 120

7.3.9

StopSign ............................................. 120

7.3.10

Rectangle-pen-style-Dot .............................. 120

7.3.11

Button ............................................... 121

7.3.12

Text ................................................. 123

7.3.13

Image/BMP ............................................ 125

7.3.14

CSpinEditor .......................................... 125

7.3.15

CGauge ............................................... 125

7.3.16

TrackBar ............................................. 125

7.3.17

CheckBox ............................................. 126

7.3.18

RadioGroup ........................................... 126

7.3.19

ComboBox ............................................. 126

7.3.20

ListBox .............................................. 126

7.3.21

MemoBox .............................................. 126

7.3.22

StringGrid ........................................... 127

7.3.23

Light ................................................ 127

7.3.24

Triangle_Left ........................................ 127

7.3.25

Triangle_Right ....................................... 127

7.3.26

Triangle_Up .......................................... 128

7.3.27

Transformer_Horizontal ............................... 128

7.3.28

Transformer_Vertical ................................. 128

7.3.29

Half_Circle_LEFT ..................................... 128

7.3.30

Half_Circle_RIGHT .................................... 128

7.3.31

Half_Circle_UP ....................................... 128

7.3.32

Half_Circle_DOWN ..................................... 128

7.3.33

Half_Ellipse_LEFT .................................... 129

7.3.34

Half_Ellipse_RIGHT ................................... 129

7.3.35

Half_Ellipse_UP ...................................... 129

7.3.36

Half_Ellipse_DOWN .................................... 129

7.3.37

Polyline_6 ........................................... 129

7.3.38

Polyline_8 ........................................... 129

7.3.39

Polygon_6 ............................................ 130

7.3.40

Polygon_8 ............................................ 130

7.3.41

Arc_UpLift ........................................... 130

7.3.42

Arc_UpRight .......................................... 130

7.3.43

Arc_DownLift ......................................... 130

7.3.44

Arc_DownRight ........................................ 130

7.3.45

Chord_UpLift ......................................... 131

7.3.46

Chord_UpRight ........................................ 131

7.3.47

Chord_DownLift ....................................... 131

7.3.48

Chord_DownRight ...................................... 131

7.3.49

Pie_UpLift ........................................... 131

7.3.50

Pie_UpRight .......................................... 131

7.3.51

Pie_DownLift ......................................... 132

7.3.52

Pie_DownRight ........................................ 132

7.3.53

Capacity_Horizontal .................................. 132

7.3.54

Capacity_Vertical .................................... 132

7.3.55

Ground_Horizontal .................................... 132

7.3.56

Ground_Vertical ...................................... 132

7.3.57

Fuse_Horizontal ...................................... 133

7.3.58

Fuse_Vertical ........................................ 133

7.3.59

CT_Horizontal ........................................ 133

7.3.60

CT_Vertical .......................................... 133

7.3.61

Wavetrap_Horizontal .................................. 133

7.3.62

Wavetrap_Vertical .................................... 133

7.3.63

TX_Tap_Horizontal .................................... 134

7.3.64

TX_Tap_Vertical ...................................... 134

7.3.65

VR_IND_3_Horizontal .................................. 134

7.3.66

VR_IND_3_Vertical .................................... 134

7.3.67

Exciter .............................................. 134

7.3.68

Valve_Horizontal ..................................... 135

7.3.69

Valve_Vertical ....................................... 135

7.3.70

2-State Switch Panel ................................. 135

7.3.71

Diamond_Polyline ..................................... 135

7.3.72

Diamond_Polygon ...................................... 135

7.3.73

Trend_DataWatch ...................................... 136

7.3.74

Grid_Horizontal ...................................... 137

7.3.75

Grid_Vertical ........................................ 137

7.3.76

2StateConnector_Horizontal ........................... 137

7.3.77

2StateConnector_Vertical ............................. 137

Data Matrix Editor ....................................... 138

8.1

Matrix Display ......................................... 140

8.1.1

Editor ............................................... 140

8.1.2

PLC .................................................. 140

8.1.3

Both ................................................. 140

8.2

Alert Comm. Failed ..................................... 141

8.3

Editing Matrix ......................................... 142

8.4

Loading an Existing Matrix ............................. 142

8.5

Saving the current Matrix .............................. 142

8.6

Making a Selection ..................................... 142

8.7

Resetting All selections ............................... 142

8.8

Copying from PLC ....................................... 142

8.9

Write/Update Matrix into PLC ........................... 143

8.10

Auto Saving Matrix after updating ..................... 146

8.11

Mismatched Matrix ..................................... 147

PLC Program Runtime Simulator ............................ 148

9.1

Points ................................................. 150

9.1.1

Digital Output DO 0x ................................. 150

9.1.2

Digital Input DI 1x .................................. 150

9.1.3

16-Bit Data Register 4x .............................. 150

9.1.4

16-Bit Pseudo Data Register 9x ....................... 150

9.2

Load Program ........................................... 151

9.3

Run Program ............................................ 151

9.3.1

Periodically ......................................... 151

9.3.2
9.4

A Cycle Only ......................................... 151


Debug Program .......................................... 152

9.4.1

Step by Step ......................................... 152

9.4.2

Logs ................................................. 152

9.4.3

Variable-Information ................................. 152

9.5

Instructions ........................................... 153

9.5.1

The List of Instructions ............................. 153

9.5.2

Syntax ............................................... 162

9.5.3

A Sample ............................................. 163

10 Networking and Data Server ............................... 167


10.1

Connect to Server ..................................... 168

10.2

Remote Logs Screen .................................... 168

10.3

Protocols to xMaster Server ........................... 169

10.3.1

FDS Server ASCII/Telnet .............................. 170

10.3.2

FDS Server Binary Message Packet ..................... 171

10.3.3

Modbus RTU Protocol over TCP/IP ...................... 174

10.3.4

MB TCP /IP (ref-ref-0-0-L-ID-Message) ................ 175

10.4

Switching between Standby (SY) and Primary (PY) ....... 176

11 Troubleshooting .......................................... 178


11.1

Data Acquisition Comm. Link/LAN Information ........... 180

11.2

Trouble-Shooting on Data Collection Application ....... 181

11.3

Trouble-Shooting Data Management and Database ......... 189

12 xMaster Dialup System designs ............................ 191


12.1

Single Site Configuration ............................. 195

12.2

Mutil-Site Configuration .............................. 196

12.2.1

The Mode and Schedule to scan sites one by one ....... 196

12.2.2

Mutil-Site using the same set of HMI Displays ........ 197

12.2.3

Mutil-Site using Mutil-Set of HMI Displays ........... 198

13 A sample of the RTU+HMI Application ...................... 199


13.1

The configuration for DNP_Master ...................... 200

13.2

The configuration for MB_Master ....................... 202

13.3

The configuration for MB_Master of the I/O Link ....... 203

13.4

The configuration for DNP_Slave ....................... 204

13.5

The Setup to run xMaster & xSlave automatically ....... 206

Figure 1-1 ..................................................... 1


Figure 1-2 .................................................... 26
Figure 1-3 .................................................... 30
Figure 2-1 .................................................... 46
Figure 2-2 .................................................... 47
Figure 2-3 .................................................... 48
Figure 2-4 .................................................... 49
Figure 2-5 .................................................... 50
Figure 2-6 .................................................... 50
Figure 2-7 .................................................... 51
Figure 3-1 .................................................... 52
Figure 4-1 .................................................... 55
Figure 4-2 .................................................... 56
Figure 4-3 .................................................... 56
Figure 4-4 .................................................... 57
Figure 4-5 .................................................... 57
Figure 4-6 .................................................... 57
Figure 4-7 .................................................... 57
Figure 4-8 .................................................... 57
Figure 4-9 .................................................... 58
Figure 4-10 ................................................... 58
Figure 5-1 .................................................... 60
Figure 5-2 .................................................... 61
Figure 5-3 .................................................... 62
Figure 5-4 .................................................... 63
Figure 5-5 .................................................... 64
Figure 5-6 .................................................... 65
Figure 5-7 .................................................... 66
Figure 5-8 .................................................... 67
Figure 5-9 .................................................... 68
Figure 6-1 .................................................... 69
Figure 6-2 .................................................... 70

Figure 6-3 .................................................... 72


Figure 6-4 .................................................... 73
Figure 6-5 .................................................... 74
Figure 6-6 .................................................... 75
Figure 6-7 .................................................... 76
Figure 6-8 .................................................... 77
Figure 6-9 .................................................... 78
Figure 6-10 ................................................... 79
Figure 6-11 ................................................... 80
Figure 6-12 ................................................... 81
Figure 7-1 .................................................... 82
Figure 7-2 .................................................... 83
Figure 7-3 .................................................... 84
Figure 7-4 .................................................... 85
Figure 7-5 .................................................... 88
Figure 7-6 .................................................... 88
Figure 7-7 .................................................... 89
Figure 7-8 .................................................... 90
Figure 7-9 .................................................... 94
Figure 7-10 ................................................... 95
Figure 7-11 ................................................... 96
Figure 7-12 ................................................... 99
Figure 7-13 .................................................. 101
Figure 7-14 .................................................. 108
Figure 7-15 .................................................. 110
Figure 7-16 .................................................. 111
Figure 7-17 .................................................. 112
Figure 7-18 .................................................. 113
Figure 7-19 .................................................. 114
Figure 7-20 .................................................. 115
Figure 7-21 .................................................. 116
Figure 7-22 .................................................. 117

Figure 7-23 .................................................. 118


Figure 8-1 ................................................... 138
Figure 8-2 ................................................... 139
Figure 8-3 ................................................... 141
Figure 8-4 ................................................... 143
Figure 8-5 ................................................... 144
Figure 8-6 ................................................... 145
Figure 8-7 ................................................... 146
Figure 8-8 ................................................... 147
Figure 9-1 ................................................... 148
Figure 9-2 ................................................... 149
Figure 10-1 .................................................. 167
Figure 10-2 .................................................. 176
Figure 10-3 .................................................. 177
Figure 11-1 .................................................. 178
Figure 11-2 .................................................. 179
Figure 11-3 .................................................. 180
Figure 11-4 .................................................. 181
Figure 11-5 .................................................. 182
Figure 11-6 .................................................. 183
Figure 11-7 .................................................. 184
Figure 11-8 .................................................. 185
Figure 11-9 .................................................. 186
Figure 11-10 ................................................. 187
Figure 11-11 ................................................. 188
Figure 11-12 ................................................. 189
Figure 11-13 ................................................. 190
Figure 12-1 .................................................. 191
Figure 12-2 .................................................. 194
Figure 13-1 .................................................. 199
Figure 13-2 .................................................. 206

1 Overview
The xMaster is comprehensive, flexible, reliable, integrated Supervisory HMI software solutions
with the lowest total life-cycle cost, which enables plant/site personal to:
1. Easily and efficiently and quickly get the configuration done with one text-based file
that allows you directly make up a HMI system with common features: Data
Acquisition, History Record files, Indication/Status Display,
Metering/Analogue/Register Data Display, Supervisory Controls, Alarm Annunciation,
Data Matrix Application and Event/Schedule driven Task.
2. Provide all features needed to acquire data, log it, share it on a network, display it on
the screen, graph it, analyze it, and automate your project. All of this can be done
quickly without programming.
3. Make online changes on the current configuration and Re-load it without re-starting
the run-time of the program.
4. Integrate Automation Devices (e.g. PLC, RTU, IED, etc.), Database, Supervisory
Controls and System Management.
5. Scale from a single HMI station up to 50 multiple networked supervisory stations,
Supports the Primary and Standby configuration.

What kind of the Data Acquisition System (DAS) the xMaster fits?
The xMaster fits the Serial Communication (including Modem over the phone line) based and
the Network (TCP/IP) based DAS as shown in the DAS HMI diagram as follows:
Ethernet networks
xMaster HMI
&
Server
xMaster HMI
Client #1

xMaster HMI
Client #2

DAS Communication
Link/Sessions
#1

#2

DNP / MB Protocol

#8

Remote Device/Slave End -- Top


Level Devices/DA Sessions on
the station automation platform.

xMaster HMI
Client #50

DNP to MB Converter
MB to DNP Converter
Figure 1-1

-1-

Other MB/DNP
Master End

The xMaster HMI/Server can use protocols as follows to communicate with the Protocol Slave
End (remote devices).
a. DNP3
b. Modbus (RTU or TCP/IP)
c. Modbus Plus
d. L&G
With A xMaster HMI software program you get:
No.
1

Functions
Modules in the xMaster HMI software.
Module:
Specifications:
Data Collection
Protocol: DNP3, MB, MB+ and L&G.
Application
Communication Physical Media: Serial,
(DCA Driver)
Ethernet/TCPIP and MB Plus
Media:
Number:
Serial Com Port
1 to 8
TCP IP
xxx.xxx.xxx.xxx
IP Port: 100-65535
MB+
MB + Card ID=0/1
The capacity of real-time database for each
Data Acquisition Session/Slave Device:
Data Object Class:
Default
Settings:
Digital Input (DI)
4096
Digital Output (DO)
512
Analogue Input (AI)
512
Analogue Output (AO)
256
32bit Running Counter
128
32bit Frozen Counter
128
16bit Data Register
512
32bit Data Register
512
Floating Point Data Register
512
Data Acquisition Link/Session: #0 - #7
The size of the buffer of control command
is 400. (Issuing up to 400 controls a time)
Polling: 0.1 3 seconds to poll events. 5
minutes to poll ALL data and automatically
send the Freezing-Counter command
accordingly if the Data Acquisition Protocol
is DNP / L&G protocol.
Configurable Timeout for Protocol
Application, Controls and RxdByte.

-2-

Note

Local DNP3,
MB, MB+ and
L&G xMaster
can share the
HMI Points in
the HMI Point
Pool.

Data Translation Script Program/PLC program Run-Time


Simulator:
1. Size= Max. 4096 lines.
2. Instructions=77 so far.
3. IF/Then detecting the Rising-Edge.
4. Call sub-routines And Jumps.
5. Scheduling/Timing.
6. Debug/Log Info.
Pseudo point: Pseudo Status and Analogue
Point available.
Tag: Up to 256 tags can be applied on
simultaneously.
Data Matrix: 16X48 and Supporting Primary
& Standby system configuration.
Alarm Recorder/Annunciation:
1. Definitions: Max. 4096.
2. Name: Point Short Name.
3. Description: Point Long Name.
4. Alarm Panel: 5 units a line, 6 lines a display
(total: 4096/(5x6)=137 Pages).
5. Up to 256 Alarm Group.
6. Play Alarm Sound (*.wav).
7. Scanning speed: 0.1 5 Seconds.
Set up task for user applications, scheduled
routines, etc.:
1. Definitions: Max. 64.
2. Event starting and dismissing executing
tasks: Two Events (BEGIN/END).

BEGIN_TO_DO_UNTIL_END
BEGIN_END_AFTER_SECONDS_TO_DO
EVERY_SECONDS
EVERY_MINUTE_AT_SECOND
EVERY_HOUR_AT_MINUTE
EVERY_DAY_AT_HOUR
EVERY_WEEK_AT_WEEKDAY
EVERY_MONTH_AT_DAY
FUNCTION KEY

3. Task Actions: Max. 8. per task.


4. Actions:

EXECUTE COMMAND_LINE
(User Application)
PRINT FILE/DATA
SAVEDATA FILE/DATA
ADDDATA FILE/DATA
DOWNLOAD SETTINGS
EMAIL

-3-

HMI Point
Database

History Data: If it is configured, the history


data is created in the designated directory and
is archived based on the interval of a Minute,
an Hour and a Day.
Watchdogs: generating xMaster HMI
watchdog and checking ones in the MB
PLC/Device.
Points
Max. 8192 (Including Pseudo
Status and Pseudo Analogue
Points and Tren Point).
Indicating/Acknowledging
changes/Events.
Scanning
0.1 5 Seconds
speed
Point Name
Max.12 Characters.
Long Name
Max. 48 Characters.
For HMI Display pages:
Pages
No Limit in theory.
Object-Shape Max. 512 per page.
Pre-defined
75 so far, including
Object-Shape BMP/Image.
Max. 32 for pre-configured.
Pre-defined
No limit when you configure it
items in the
RadioGroup, to load items from a text file.
ListBox, and
ComboBox

For Default Metering Display:


Meter Count Max. 256.
Large-Meter: Small-Meter:
Max. 3 in per Max. 6 in per
display.
display.
Meter Data
Items
Meter Name
Meter Item
Name
Meter Data
Unit

Large-Meter: Small-Meter:
Max. 10
Max. 4
Max.24 Characters.
Max. 12 Characters.
Max. 6 Characters.
(i.e. KV, AMP, MW, etc.)

-4-

The current
HMI Point can
be specified to
be put into the
shared HMI
Point Pool and
be updated
automatically
and
dynamically.
The Max. size
of the pool is
8192. And the
point in the
pool is accessed
via the point
name. Refer the
section 1.4.12,
1.4.13 and
1.4.13.

Data Processing

2
3
4
5

Up to 50 HMI Clients using protocol: FDS over


TCPIP or MB TCPIP or DNP TCPIP.
xMaster can be a Protocol Converter/Server.

Displaying a HMI Object-Shape with the color of Logic 0/OFF


(Normal State), or Logic 1/ON (Alarm), or failure (Offline).
Displaying/Metering the value of data in the HMI database by a
text string, a gauging graph, a StringGrid, etc.
Displaying the Text-Information/Memo read from a TXT/RTF file
updated by others dynamically.
Displaying the trend/history data with up to 60 points in the curve.
The Interval can be a Minute, or an Hour or a Day.
Displaying in curve shapes, the evolutions of data measures of the
last 48 Hours or 90 Days or 60 Months.
Making a HMI Object-Shape visible or invisible or blinking
according to the value of the related point in the HMI database.
The List of Configurable Items:
No. Name:
Functions:
1
Animation: VISIBLE
VISIBLE
2
Animation: BLINK
BLINK
3
H_GAUGE Animation: Horizontal Gauge
4
V_GAUGE Animation: Vertical Gauge
Sending controls by clicking on a visible HMI Object-Shape (i.e. a
Button, a ListBox, a RadioGroup, a ComboBox, a CheckBox, a
SpinEdit, a TrackBar, a CircuitBreaker, a Disconnector, a
Rectangle, etc), or by a script program running in background.
The List of Configurable Items:
No Name:
Functions:
1
DO_PULSE PULSE DIGITAL OUTPUT
2
16-BIT DIGITAL OUTPUT
DO_16
3
32-BIT DIGITAL OUTPUT
DO_32
4
BCD DIGITAL OUTPUT
DO_BCD
5
SBO TRIP (LATCH OFF) ONLY
SBO_T
6
SBO CLOSE (LATCH ON) ONLY
SBO_C
7
SBO TRIP AND CLOSE (LATCH ON/OFF)
SBO
8
DO RIASE ONLY
DO_R
9
DO LOW ONLY
DO_L
10 DO_RL
DO RAISE AND LOW
11 AO_16
16-BIT ANALOG OUTPUT
12 AO_32
32-BIT ANALOG OUTPUT(floating point)
13 AO_BCD
BCD ANALOG OUTPUT
14 REG_WR
Write a 16/32-bit value into Register(s)
15 SEL_T
Select Trip
16 SEL_C
Select Close

-5-

Upon the
device
(i.e.
Modbus
PLC, etc).

17
18
19

SEL_O
ESO
CLR_SEL

Select Operate
Execute_Selected_Operation
Clean up_All_Selected

Managing and switching HMI displays by clicking on a visible


HMI Object-Shape (i.e. a Button, etc).
The List of Configurable Items:
No. Name
Functions
1
LOAD_HMIPAGE Load a new HMI Page
2
NEXT_HMIPAGE Load the Next HMI Page
3
LAST_HMIPAGE Load the Last HMI Page
4
Open or Close the Logs Window
LOGWIN
5
Open or Close the Function-Key Bar
FUNBAR

Securities for Control Functions: Lock/Unlock Windows (Disable


Alt Key, Hide Desktop, Hiding Taskbar, Disable Windows Start
Button), Enable/Disable Controlling HMI Object-Shape (i.e. a
Button, etc.), Visible/Invisible Controlling HMI Object-Shape (i.e.
a Button, etc.)
Operating or Dismissing the selected Control-Functioning
associated with the current HMI Object-Shape.
The contents of ListBox, a RadioGroup, a ComboBox, and
StringGrid can be loaded from the Text File.
Making up the value/pattern (16bit or 32 bit) of the AI/Register
Data, using ListBox combined a button to download the
value/pattern into the slave device (i.e. RTU, PLC, etc.).
Making a selection (Index 1-65535) exclusively, using a
RadioGroup, a ComboBox combined a button to download the
value into the slave device (i.e. RTU, PLC, etc.).
Making a Setpoint (0 to 65535, -32768 to 32767), using a
SpinEdit, a TrackBar combined a button to download the value
into the slave device (i.e. RTU, PLC, etc.).
Default Display for Digital Inputs. Checking the details of the DI
Point by clicking on it. A Double click to open the Control
Operation Panel.
Default Display for Analogue Inputs (Register Data, Metering).
Checking AI proprieties by a double-click on it and Sending AO
control command on the related Analogue Output point.
Enable or Disable Indicating/Acknowledging Changes/Events
Archiving the HMI Point Database.
Three Default Display for Alarms:
1. Summary-TableSheet
2. Panel-Window
3. Log-Window
Searching History records of Alarms, the filter can be applied.
Real-timely printing alarm information or a data file.
Enable or disable latching (sealing in) alarms.

10
11
12

13

14

15

16

17
18
19

20
21
22

-6-

Max. 4096
entries of the
Alarm
definition.

23

24

25
26

27

Full screen HMI Display Editor:


1. Drawing a HMI Object-Shape.
2. Moving a Shape.
3. Moving a Block of Shapes.
4. Deleting a Shape.
5. Deleting a Block of Shapes.
6. Resizing a Shape.
7. Copying a Shape.
8. Copying a Block of Shapes.
9. Duplicating a shape on the same horizontal line location.
10. Duplicating a shape on the same vertical line location.
11. Configuring a shape.
12. Undo editing.
13. Saving a HMI display file.
14. Loading a HMI display file.
15. Saving a Block of Shapes.
Data Matrix Editor:
1. Size=16*48
2. Uploading
3. Download
4. Archiving
5. Support PY & SY configuration.
Running a script program, a PLC program run-time simulator.
Troubleshooting on Data Acquisition Realtime database and HMI
Point Database. A Troubleshooting Alert icon and guideline
available.
Logs

-7-

Max. 512
ObjectShapes per
page.

1.1 The Directory of Files


The directory of files of this HMI software is fixed at C:\xMaster.

1.2 The List of Files


The list of files of this HMI software is as follows.
NO. File Name
Comment
1
DNP_Master.exe
The xMaster for DNP3 executable file.
2
LG_Master.exe
The xMaster for L&G executable file.
3
MB_Master.exe
The xMaster for MB executable file.
4
MB_Plus_Master.exe
The xMaster for MB+ executable file.
5
xMaster.exe
The xMaster Launcher program.
6
Readme.txt
Readme file.
7
xMaster_Manual.pdf
This manual.
8
DNP_Master.txt
The xMaster Configuration for DNP3.
8
LG_Master.txt
The xMaster Configuration for L&G.
9
MB_Master.txt
The xMaster Configuration for MB.
10
MBP_Master.txt
The xMaster Configuration for MB+.
11
*.HMI
HMI display configuration file.
12
*.Log
Logs File created by the current HMI software.
13
*.M_S
MinuteSecond History data file.
14
*.H_M
HourMinute History data file.
15
*.MDH
MonthDayHour History data file.
16
YYYY_MM_AlarmManager.txt Alarms record files.
17
PLC_CMD.txt
PLC Program Run-time simulator script file.
18
Alert_Alarm_Logfile.txt
HMI Window Logs.
19
YYYY_MM_DD_HH_MM_SS Matrix pattern file Created by the current HMI
_UPDATEDDATAMATRIX.T software when written into the PLC.
XT
The contents in above list may be changed by time being.

-8-

1.3 Installation of the software


1.3.1 Preparation for installation
Minimum system requirements
Intel Pentium III 600MHz or compatible.
Microsoft Windows 98/Me, 2000(SP2), and XP.
512 MB RAM.
30GB hard disk space.
SVGA or high resolution monitors (1024x768, High Color 16bit).
Mouse or other pointing device.
Communication ports (i.e. serial port, LAN Port).
If the OS is Windows 2000/XP, you might have to get the Administrator/Boost privileges in
order to register the xMaster software.
1.3.2 Copying the set of software
All you need to do is copying all files (refer to the section 1.2) into the directory C:\xMaster in
the PC. Sometime you may have a zip file of xMaster software and you can directly unzip it into
the directory of c:\xMaster. Or you can run the installation program: Install_xMasterSlave.exe
to install xMasterSlave. Refer to the screenshot below. It will automatically make the directory
of C:\xMaster and the Short-cut link on the desktop for you.

Refer to the
section 2.1

Click on it to start
the installation of
xMasterSlave.

-9-

1.4 The Main Configuration


You should make up the main configuration file before starting the xMaster. The configuration is
a Text-based file. You can use any Text Editor (i.e. Windows Notepad.exe, etc.) to edit it. Once
you finish making up a valid configuration (samples in the section 1.4.17 to 20), at least the
following functions will be available:
Data Acquisition (Data Collection Applications), including History Record files.
Status Display.
Metering/Register Data Display.
Supervisory Controls.
Alarm Annunciation Alarm Panel Display and Alarm History Record File.
Data Matrix Editor.
And Event/Schedule driven Task.
If you want full screen HMI displays, please refer to the section 1.4.4 and the section 7 to make
up HMI displays.
The following is the simplest sample of the main configuration of the x_Master.
DNP_Master:
MB_Master:
ENTRY
ENTRY
ENTRY

END
;
ENTRY

SAVE_RUNNING_COUNTERS = YES
DEV_MASTER
= 0031
DEV_LINK
= SERIAL
PORT
= 1
BAUDRATE
= 2400
ADDR
= 603

ENTRY

END
;
ENTRY

DEV_DATABASE = SIZE
MAX_DI = 213
MAX_DO = 106
MAX_AI = 147
MAX_CNT = 45
MAX_AO = 31

END
;
ENTRY
STATION_INFO
DNP Master for ABB PCD-2000 #603
END
;
ENDALL_AND_BUILD_A_DEFAULT_HMI_POINT_DB

DEV_LINK
PORT
BAUDRATE
ADDR

=
=
=
=

SERIAL
1
9600
63

DEV_DATABASE = SIZE
MAX_DI = 208
DI_MB_1X_START = 1 2
DI_MB_0X_START = 1 5
DI_MB_REG_START = 100
MAX_DO = 32
DO_MB_0X_START = 1 4
DO_MB_REG_START = 200
MAX_AI = 200
AI_MB_REG_START = 300

END
;
ENTRY
STATION_INFO
MB Master for ABB PCD-2000 #63
END
;
ENDALL_AND_BUILD_A_DEFAULT_HMI_POINT_DB

1.4.1 The name of the configuration file


The following is the default name of the configuration file. The x_Master will load it
automatically if you do not specify the file name.
For DNP Master, the name of file is DNP_MASTER.TXT.
For MB Master, the name of file is MB_MASTER.TXT.
For MB+ Master, the name of file is MBP_MASTER.TXT.
For L&G 8979 Master, the name of file is LG_MASTER.TXT.
You can use xMaster Application Launcher (xMaster.exe) to run xMaster with different
configuration files. Refer to the section 2.0 and the screenshot Figure 2-3.

- 10 -

1.4.2

The entry of configuration

The following is the common rules/provisions in the configuration file x_master.txt (where the x
is the DNP/MB/MBP/LG)

There is no SPACE in the name of entry. Please use _ instead of a blank character.
The entry is followed by at least a SPACE.
The character of = is followed by at least a SPACE.
The value of setting is followed by at least a SPACE.
If the FIRST character is ;, it means that the current line in the configuration file is a
comment.
The ddddd is the numeric string.
The n is a numeric.
The 0xdd (i.e. 0x81, 0x41, 0xfa, etc) is Hex. Data.
The dddd.dd is the floating-point data.
The format of TCP IP address is ddd.ddd.ddd.ddd.
The tttttttt or xxxx is the Text-Information String (i.e. file name, point name, title, etc.).
The FileName (xxxxxxx.yy, or f1, f2, f3, ) is the name of the file.
The DeviceName or DN or DA or DevAddr is the name of the Device/Slave End. Max. 12
characters.
All entries use capital text string.
The Y/N is either YES or NO.
The [xxx] /[xxxxx = yy], in the pair of brackets, is an option or alternate for the current entry.
The .TXT in a name of a file implies that the format of the current file is TEXT.
The Name of point must be assigned as a unique ID / Tagname in the HMI Point Database.
The point number of DI/DO/AI/AO/CNT/FR/9X in the Data Acquisition Real-time Database
starts from zero.

- 11 -

1.4.3

Entries for the xMaster HMI Server

Entry
ENTRY XMASTER_IP_PORT = ddddd
ENTRY XMASTER_CLIENT = n, ddd.ddd.ddd.ddd [tttt]
tttt can be following:
MBRTU: Modbus RTU Protocol.
MBTCP: Modbus TCP/IP Protocol.
Default: FDS Binary Protocol.
ENTRY PY_MASTER_IP_ADDR = ddd.ddd.ddd.ddd

Sample
ENTRY XMASTER_IP_PORT = 25001
ENTRY XMASTER_CLIENT = 1, 10.2.12.34
ENTRY XMASTER_CLIENT = 2, 10.2.12.35
ENTRY XMASTER_CLIENT = 3, 10.2.12.36

Note
#1
#2

ENTRY PY_MASTER_IP_ADDR = 142.52.127.31

#3

ENTRY XMASTER_ID = dddddd

ENTRY XMASTER_ID = 25001

#4

ENTRY DEV_MASTER = ddddd

ENTRY DEV_MASTER = 0002

#5

ENTRY HMI_TREN_POINT = XXXXX.yyy [f1,f2,f3]


ENTRY HMI_TREN_INTERVAL = ddddd
ddddd: 2 65535 seconds

ENTRY HMI_TREN_POINT = HMI_TREN.TXT


ENTRY HMI_TREN_INTERVAL = 3

#6

Note #1: IP Port dddd to dddd + 10 will be assigned to the current xMaster. Other programs
must not use it.
Note#2: The list of valid client. N=0..49. Refer to the section 10.
Note#3: PY xMaster IP Address. As long as it is defined, xMaster will lead you to run as
SY/Client. Refer to the section 10.
Note#4: xMaster / FDS ID.
Note#5: If applicable, the DEV_MASTER is to define the Master Address for the Data
Acquisition Application.
Note#6: The file (xxxx.yyy) of the Tren_Point also implicates another FIVE files as follows.
a) The file of setup of the list of Tren_Point: xxxx_SETUP.TXT. It establishes the link between the Tren_Points
and the HMI Points. The xMaster reads it at very beginning and overwrites the Tren Point file:xxxx.yyy. If it is
configured, you can check the link establishment at the window of HMI Local Database. Refer the section 11.3.
In the xxxx_SETUP.TXT file you can have a comment by leading character ; at the very beginning of the line.
You can put a macro: ? xxx yyy to replace xxxx with yyy in the tren-Point data file.
b) The file of semaphore: xxxx.SMP (or defined by the f1). If the file of semaphore exists, the xMaster HMI Point
database reads the file of the Tren_Point and deletes both files:xxxx.yyy and xxxx.smp. If not, after three times of
re-try (if the interval is 20 seconds, after 20X3=60 seconds the point will go offline), all Tren Points go to Offline.
Each point name (excluding the Prefix PSD:STATUS: or PSD:ANALOG:) in the Tren_Point file and its setup file
must match the Long Name of the HMI Point that is defined in the section 1.4.12 to 1.4.14. And the current HMI
point must be defined as pseudo and its function must be HMI_SV. The format of file of the Tren Name and its
setup is defined as follows. The Tab is the character of Tab(\t). The f is the flag of Online(1) and Offline(0) to
indicate the state of health of the current point.
1. For status points:
2. For analog points:
PSD:STATUS:xxxxxxxx Tab d Tab f
PSD:ANALOG:xxxxxxxx Tab dddd.ddd Tab f [xA xB]
Where d is to indicate the state of the current
point. If d is 0 it means OFF and 1 for ON.
Sample:
ENTRY

NAME
= XXX_VVO_ON
LONGNAME = PSD:STATUS:XXX-YYY.VVO_ON
FORMAT
= PSD_DI
PSD_DI_FUNC = HMI_SV
PND_ADDR
= 0
ALARM_GROUP = 1

Where dddd.ddd is the floating point to represent the


value of the current analog point. And xA and xB are for
scaling as follow: CV = PV*xA + xB.
Sample:
ENTRY
NAME
= XXX_VVO_VSET
LONGNAME = PSD:ANALOG:XXX-YYY.VVO_VSET
FORMAT
= PSD_AI
PND_ADDR
= 0
RANGE
= 30.0 KV 16
PROCTYPE = ANALOG HOUR_HISTORY
METER
= 1, 3

- 12 -

c) The file of Tren-Point output: xxxx_output.TXT (or defined by the f2). The LONGNAME must be prefixed as
PSD:HMI_SV:STATUS:xxxxxxxxxxxxxxxx (can be operated by 2STATE_SW_PANEL, refer to the section
7.3.70) for Status Points and PSD:HMI_SV:ANALOG:xxxxxxxxxxxxxxxx (can be operated by TEXT with
control function: AO-16, refer to the section 7.2.5 and 7.3.12) for Analog Points.
d) The file of semaphore of the Tren-Point output: xxxx_output.SMP (or defined by the f3). To generate files of
Tren-Point output/smp you have to make up a HMI Object/Shape (i.e. a Button) on the current HMI display to be
configured with the Control Function: ESO.
e) The file of User-Application (*.bat): xxxx.bat. If it exists, every time before loading the Tren-Point file
(xxxx.yyy), it will be executed.

- 13 -

1.4.4

Entries for the HMI descriptions

Entry
ENTRY STATION_INFO
tttttttttt
tttttttttt

END

ENTRY INFO_FILE = FileName

ENTRY PLC_FILE = FileName

ENTRY HMI_FILE = FileName

ENTRY HMI_SYSTEM = ttttt

ENTRY STATUS_DISPLAY = Y/N

ENTRY METERING_DISPLAY = Y/N

ENTRY SAVE_RUNNING_COUNTERS = Y/N

ENTRY LOG_PY_DRIVE_DIR = XXXXX


ENTRY LOG_SY_DRIVE_DIR = YYYYY

ENTRY SHARING_ALL_HMI_POINTS = Y/N


[ENTRY UNSHARING_POINTS = Y/N]

Sample
ENTRY STATION_INFO
L&G8979 Master
Main feature is as follows:
1. Status/Alarms Display
2. Metering/AI
Display
3. Alarm Recorder/Search
4. HMI/ DI AI PA Display
END
ENTRY INFO_FILE = LG_MASTER.TXT

Explanation
STATION INFORMATION.
There are up to 80 characters
in a line. There are up to
32767 lines in the
STATION_INFO. Refer to the
screenshot Figure 3-1.

It is for users to read other


related information (i.e. user
manual, etc.)
ENTRY PLC_FILE = PLC_CMD.TXT
It defines a PLC Simulator
run-time program file. If not
found, the button for PLC Runtime simulator wont show up
in the Main Menu Display.
Refer to the screenshot Figure
3-1 and the section 9.
If not found the file, the
ENTRY HMI_FILE = RAS_HMI_MAIN.PGE
(The file of the *.pge is generated by button for HMI Display wont
show up in the Main Menu
the HMI Display Editor, refer to the
Display.
section 7.1.1)
ENTRY HMI_SYSTEM = c:\xMaster\HD\SEL
It is to define the name of
the current HMI system. It
will be a part/prefix of
History File Name and others.
ENTRY STATUS_DISPLAY = NO
Do not want to show up the
button for the display of
status. Refer to the section 4
and the section 6.5.
ENTRY METERING_DISPLAY = NO
Do not want to show up the
button for the display of
metering. Refer to the section
5 and the section 6.5.
ENTRY SAVE_RUNNING_COUNTERS = NO
It configures Data Acquisition
to save the data of either
running counter or frozen
counter.
If it is NO, the FreezingCounter Command will be sent
before the Integrity Poll
every time. Refer to the
section 1.4.9.
ENTRY LOG_PY_DRIVE_DIR = E:\xMaster\
It is to define the
ENTRY LOG_PY_DRIVE_DIR = F:\xMaster\
drive/Directory of Log Files
described in the section 1.2.
LOG_PY_DRIVE_DIR is the
PRIMARY Log Information
Storage and LOG_SY_DRIVE_DIR
is the STANDBY one. Normally
both are USB Mass Storage
Device. The default is
c:\xMaster
Default is NO.
SHARING_ALL_HMI_POINT = N
YES is to put all HMI Point(s)
[ENTRY UNSHARING_POINTS = N]
defined in the current
(Before abort the current x_Master,
configuration (Refer to the
the associated point(s) will be
section 1.4.13, 1.4.14) into
released from the Shared HMI Points
the Share HMI Point Pool.
Pool.)

- 14 -

1.4.5 Entries for the Data Acquisition Communications


Entries for Data Acquisition Communication sessions must use the same type of Communication
Physical Media as follows as either Serial Port(Modem), or TCP/IP, or MB Plus. It means that
sessions using different Communication Physical Media are not allowed. You cannot configure
like this, for example, the Session #1 uses Serial Port and other sessions use TCP/IP. Usually,
checking watchdog is for the Modbus PLC/Device based HMI System. The Data Acquisition
Communications commence automatically before the appearance of HMI displays (i.e.
Status/Metering/Graph, etc.).
1.4.6
Entry
ENTRY DEV_LINK
ENTRY DEV_LINK

Entries for Serial Port

LINK_TIMEOUT = ddddd

LINK_TIMEOUT = 5000

Explanation
It is using PC serial port directly.
It is the dialup modem link. x1 and x2 are
init-commands of modem. Refer to the section
12 for the details in Dialup system.
The serial port is the COM4.
If it is dial-up link, you may have to check
which COM port is attached the modem. Please
find it in the Windows Control Panel. Refer to
the screenshot below.
The setting of serial port is fixed at N,8,1.
If there is only a Slave, Slave Address=1.
If it is a Multi-drop Data Acquisition System
(One Master communicates with slaves via the
RS422/RS485 link) you have to use this entry
to define each Data Acquisition Session ID and
the corresponding Slave Address.
The Master End writes the watchdog counting
data to the slave end. If 0, disable it.
The Master End reads the watchdog counting
data from the slave end. If 0, disable it.
In Millisecond.

CONTROL_TIMEOUT = dd

CONTROL_TIMEOUT = 5

In Second.

PHONE_NO = xxxxxxxx

PHONE_NO = 0,1234567
PHONE_NO = 123456789012345
PHONE_NO = PHONEBOOK1
PHONE_NO = @AUTOSITEINFO
(refer to the section 1.4.16)

You may have to set up the phone number or the


Phone Book file Name (*.TXT) for dialing up
the modem link. The default dialup string is
ATDTS. The max. length of the string of the
phone number is 15. Refer to section 3.8,
7.1.1, 7.1.11, 7.3.11, 12.

END

END

= SERIAL
= MODEM

Sample
ENTRY DEV_LINK
ENTRY DEV_LINK

= SERIAL
= MODEM x1 x2

PORT
= n
(It must be the first
entry after the DEV_LINK)

PORT

= 4

BAUDRATE
ADDR
SESSION

SESSION

BAUDRATE
ADDR
SESSION
SESSION

=
=
=
=

= dddd
= dddd
= 0 dddd

19200
1
0 11
1 22

= 7 dddd

MASTER_WATCHDOG = dddd

MASTER_WATCHDOG = 51

SLAVE_WATCHDOG

SLAVE_WATCHDOG

= dddd

= 150

The following is the screenshot that illustrates how to find out the Modem-Port.
1.4.7

- 15 -

Entries for TCP/IP


Entry
ENTRY DEV_LINK = TCP/IP
LINK_TIMEOUT = ddddd

Sample
ENTRY DEV_LINK = TCP/IP
LINK_TIMEOUT = 5000

CONTROL_TIMEOUT = dd

CONTROL_TIMEOUT = 5

DN = n, dd, ddd.ddd.ddd.ddd, dddd, ddd, ddd

MB_DEV11 = 0, 11, 10.1.2.11 502, 51, 150


MB_DEV22 = 1, 22, 10.2.2.22 502, 51, 150

IP Address

IP
Port

Slave device
Address/ID.

Slave / PLC
watchdog point
address.
Master/HMI
watchdog point
address.

Data Acquisition Communication


Session No 0-7.
Device Name
END

END

Explanation: It is using TCP/IP. Session#=0, SlaveAddr=11, IPAddr=10.1.2.11, IPPort=502,


MasterWatchdog=51, SlaveWatchdog=150. Session#=1, SlaveAddr=22, IPAddr=10.2.2.22,
IPPort=502, MasterWatchdog=51, SlaveWatchdog=150. If the AI_MB_REG_START = 100 and
the AO_MB_REG_START = 200 (Refer to samples in section 1.4.9 for MB protocol), the
xMaster Data Acquisition will keep increasing the value of HMI watchdog register: 4x0251
(51+200) at the interval of 3-5 seconds. And the xMaster Data Acquisition will check whether
the value of PLC watchdog register: 4x0250 (150+100) is being updated by the program in the
Modbus PLC/Device (refer to the section 1.4.14, the entry of WDT_FAILED).
The default setting of LINK_TIMEOUT is 10 seconds. The default setting of
CONTROL_TIMEOUT is 10 seconds.
Note:
If the IP Port is 502 to 999, the xMaster Data Acquisition program (DCA Driver) for Modbus
runs Modbus TCP/IP protocol, otherwise runs Modbus RTU protocol over TCP/IP.

- 16 -

1.4.8

Entries for Modbus Plus

Entry
ENTRY DEV_LINK = TCP/IP
DN = n, dd, dd.dd.dd.dd.dd, ddd, ddd
MB Path

MB device
Address/ID.

Sample
ENTRY DEV_LINK = TCP/IP
MB_DEV11 = 0, 11, 11.0.0.0.0, 51, 150
Slave device
watchdog point
address.
Master/HMI
watchdog point
address.

MB Plus Card ID
Must be 0.
END

END

Explanation: It is using MB+ Lan. Session#=0, SlaveAddr=11, MB Path=11.0.0.0.0,


MasterWatchdog=51, SlaveWatchdog=150. The TIMEOUT is setup by MB+ Card driver. Refer
to comments in the section 1.4.7.
Note:
You have to ensure that MB+ Card driver works and the driver is set up accordingly for MB+
network. You can use CONCEPT, the MB PLC programming tool, to connect to MB+ network
and verify the existence of PLC. Refer to following screenshots of MB+ driver configuration and
Mbpstat that come with the MB Plus card.

- 17 -

1.4.9 Entries for the Data Acquisition Real-time Database


In the application where the multiple Data Acquisition session is applied, each session is
assigned the same size of database unless you specifies it by defining the entry of SESSION =
dd. The Data Acquisition Real-time Database keeps all raw data only. And it serves the HMI
Point database that is used for the HMI application in high level. So the HMI Point database is a
Tagname Database (Access data by the unique Tagname, not by a Point Number (i.e. DI #000,
DO #012, AI #090, AO #012, etc.) as Data Acquisition Real-time Database does.
Building Data Acquisition Real-time Database For DNP3.0 Protocol:
Entry
ENTRY DATABASE = SIZE
[ENTRY DEV_DATABASE = SIZE]
[SESSION = dd]

Sample
ENTRY DATABASE = SIZE
ENTRY DEV_DATABASE = SIZE
SESSION = 0

MAX_DI = dddd
MAX_DO = ddd
MAX_AI = ddd
MAX_AO = ddd
MAX_CNT = ddd
ENABLE_SAVING_DB = Y/N

MAX_DI = 1024
MAX_DO = 32
MAX_AI = 64
MAX_AO = 0
MAX_CNT = 0
ENABLE_SAVING_DB = NO

SEAL_IN_ALARM = Y/N

SEAL_IN_ALARM = YES

READ_DNP_OBJ_RESPECTIVELY = Y/N

READ_DNP_OBJ_RESPECTIVELY = Y/N

END

END

Explanation
Begins the settings for the database.
The current settings of the Data
Acquisition Real-time Database are
for the Data Acquisition Session #0.
Range=0..7. Refer to the section
1.4.6 to 8.
Max. Number of Digital Input
Max. Number of Digital Output
Max. Number of Analogue Input
Max. Number of Analogue Output
Max. Number of 32-bt counter
Disables saving the history of the
ENTIRE HMI Point database.
If enable, the file name is mixed as
HMI_SYSTEM_mm_ss.M_S. Where the
HMI_SYSTEM is described in the
section 1.4.4, the mm is Minute of
the time, and the ss is Second of
the time. Refer to Note #1 in the
next paragraph for MB/MB+ protocol.
Enable sealing in the alarm.
If you want to read DNP Obj#12,Obj#20-2, Obj30-5, Obj21-1, and
Obj20-1 respectively. Otherwise poll
Class 60 only.

Note: The Point Number is starting from zero (0). The Data Acquisition in the xMaster for DNP
does the Integrity-Poll (DNP Data Object 60-Class0 /1/2/3) periodically (every 5 minutes), or
when one of events as follows occurs:
1. Starting or Re-starting the Data Acquisition.
2. Recovering from the failure of communication.
3. Finding Remote End Restart-Bit in the IIN.
The Data Acquisition in the xMaster for DNP continually does the Event-Poll (DNP Data Object
60-Class1/2/3) as fast as possible (<300ms). Typically, DNP message-frames do not exceed
2048 bytes. This equates to a max. of 9 frames (as the result there is 238 DI/80AI/80CNT perframe -- please check all points of DI/AI/CNT can be read from the current device). All data are
retrieved only by the Integrity-Poll and the Event-Poll. The DNP DCA Driver sends command to
enable the unsolicited report from slave device(s). If the current communication link is the
dialup-modem, the DNP DCA driver sends the command of Enable-Unsolicited-Report (UR) for
Class1, 2 and 3 to the DNP Slave End (Slave device must enable Class1/2/3 UR).
The DNP DCA Driver does the Freezing-Counter if the entry of SAVE_RUNNING_COUNTERS is
NO. Refer to the section 1.4.4. If the Pulse_Count is 0, then the DNP Control-Code is assigned
by 21Hex instead of 1.
- 18 -

Building Data Acquisition Real-time Database For MB / MB+ Protocol:


MB Master Data Acquisition only retrieves data of 0x (coil), 1x (Digital Input) and 4x (Holding
registers) from MB devices! The value of "The First Address/Offset" must be greater than 0.
Entry
ENTRY DATABASE = SIZE
ENTRY DEV_DATABASE = SIZE
[SESSION = dd]
The dd is 0..7
MAX_DI = dddd
DI_MB_1X_START = dd dd
DI_MB_0X_START = dd dd
DI_MB_REG_START = ddd

MAX_DO = ddd
DO_MB_0X_START = dd dd
DO_MB_REG_START = dddd

Note:
The control command: SBO
TRIP / CLOSE on MB_0x
(coil) becomes LATCH OFF
/ ON automatically.

MAX_AI = ddd
AI_MB_REG_START = ddd

MAX_AO = ddd
AO_MB_REG_START = ddd
MAX_FP_AO = ddd
FP_AO_MB_REG_START = ddd

Sample
Explanation
ENTRY DATABASE = SIZE
Begins the settings for the database.
ENTRY DEV_DATABASE = SIZE
SESSION = 0
The current setting of the Data Acquisition Realtime Database is for the Data Acquisition Session
#0.
Max. Number of Digital Input.
MAX_DI = 160
In this sample, 1x0017 is the first point number of
DI_MB_1X_START = 17 4
1X MB Data area with total 4 16-bit Words (1x0017
DI_MB_0X_START = 25 4
1x0080).
DI_MB_REG_START = 100
0x0025 is the first point number of 0X MB Data area
with total 4 16-bit Words (0x0025 0x0088).
The register of 4x0100 is the first address of the
area of MB Register for DI points. There is 16 DI
Points in a 4xxxxx.
The Total of DI points derived from 1X, 0X and 4X
MB Data area is equal to MAX_DI. DI Points
arrangement sequence is as follows:[1X]->[0X]>[4X]. In this sample, the total of DI for a linksession/device is 160. DI #0000 to DI #0063 will be
derived from 1X0017 to 1X0080. DI #0064 to DI #0127
will be derived from 0X0025 to 0X0088. DI #0128 to
DI #0159 will be derived from 4X0100 to 4X0101.
Max. Number of Digital Output.
MAX_DO = 160
In this sample, 0x0025 is the first point number of
DO_MB_0X_START = 25 4
0X MB Data area with total 4 16-bit Word (0x0025
DO_MB_REG_START = 1
0x0088).
The register of 4x0001 is the first address of the
data area of MB Register for DO. In this sample, DO
#0000 to #0063 are mapped to 0x0025 to 0x0088, DO
#0064 to #0159 are mapped to 4x001 to 096. If a DO
Point is defined by a 4xxxxx. The definition of
Bit15 to Bit00 in a 4xxxx register is as follows:
Bit15-14: command code:
00-Pulse
01-CtrlCode
10-PatternCtrl, Subsequently 32bit is the pattern
11-Select
Bit13: timing base:
0-50ms(if timing count=0, base=20ms),
1-100ms(if timing count=0, base=5s)
Bit12-08:
Timing count: 01 31
Timing total= Timing count x Base
Bit07-00:
If the Command Code=0 then Bit07-00 is the Pulse
Count otherwise Bit07-00 is the Control-Code as
follows:
0x41:SBO CLOSE, 0x81:SBO OPEN
0x03:LATCH ON, 0x04:LATCH OFF
0x01:PULSE
0x00:Operate if Command-Code=0x03
Note: The PLC program must reset the register
(Bit15-00 = 0) after the acceptance of the command.
Max. Number of Analogue Input.
MAX_AI = 202
It is an Integer -32768 to +32767.
AI_MB_REG_START = 100
In this sample, The register of 4x0100 is the first
address of the data area of MB Register for AI
points.
MAX_AO = 52
Max. Number of Analogue Output.
It is an Integer -32768 to +32767.
AO_MB_REG_START = 200
In this sample, The register of 4x0200 is the first
address of the data area of MB Register for AO
points. The floating point FP output is associated
with a floating point input. Refer to the section
1.4.13.

- 19 -

MAX_BR16 = ddd
BR16_MB_REG_START = ddd

MAX_BR16 = 32
BR16_MB_REG_START = 400

Max. Number of 16-bit Word Data Register.


It is 16bit-Binary Word 0 to 65535 and ONE register
per BR16 point.
In this sample, The register of 4x0400 is the first
address of the data area of MB Register for BR16.

MAX_BR32 = ddd
BR32_MB_REG_START = ddd

MAX_BR32 = 32
BR32_MB_REG_START = 400

MAX_CNT = ddd
CNT_MB_REG_START = ddd

MAX_CNT = 32
CNT_MB_REG_START = 400

MAX_FR = ddd
FR_MB_REG_START = ddd

MAX_FR = 32
FR_MB_REG_START = 300

Note:
In section 1.4.13, the
FORMAT can be FR.
ENABLE_SAVING_DB = Y/N

ENABLE_SAVING_DB = NO

SEAL_IN_ALARM = Y/N

SEAL_IN_ALARM = YES

Max. Number of 32-bit Word Data Register.


It is 32bit-Binary Word 0 to 4294967295 and TWO
register per BR32 point.
In this sample, The register of 4x0400 is the first
address of the data area of MB Register for BR32.
Max. Number of 32-bit counter.
It is 32bit-Binary Word 0 to 4294967295 and TWO
registers per CNT32 point.
In this sample, The register of 4x0400 is the first
address of the data area of MB Register for
Counters.
Max. Number of 32-bit Float/Real point.
It is 32bit-Floating data 3.4*(10**-38) to
3.4*(10**+38) and TWO registers per FR point.
In this sample, The register of 4x0300 is the first
address of the area of MB Register for Float/Real
points.
Disables saving the history of the ENTIRE HMI Point
database. If enable, the file name is mixed as
HMI_SYSTEM_mm_ss.M_S. Where the HMI_SYSTEM is
described in the section 1.4.4, the mm is Minute
of the time, and the ss is Second of the time.
See Note 1 below for programming history data.
Enable sealing in the alarm.

END

END

Note 1: The struct of the data of HMI Point Database


typedef struct
{
char PointName[13];
Byte ObjectClass; //Refer to the section 10.3.2
Byte xFlagByte; //Refer to the section 10.3.2
Byte DataFailure;
union
{
struct//PSD DI
{
DWord
LifeTimer_PV;
int
PSD_HMI_SV;
};
struct//AI
{
DWord PSD_AI_PV;
DWord xPV;
};
};
Byte DI_state;
time_t xTimeOnChanged;
union
{
Byte xByte;
struct
{
Byte AlarmType:4;
//0:None, 1:Close, 2:Trip, 3:Invalid, 4:InTransit,
//5:Hi_Limit_Alarm,
6:Lo_Limit_Alarm,
//7:Hi_Limit_Warning,
8:Lo_Limit_Warning
//9:Hi_Limit_Reasonability, 10:Lo_Limit_Reasonability,
Byte
IsThePSD_DI:1;
Byte
IsThePSD_AI:1;
Byte
NoSenseOnChanged:1;
Byte
xAT:1;
};
};
}THistory_Pnt_Attr;

- 20 -

Building Data Acquisition Real-time Database For L&G Protocol:


Entry
ENTRY DATABASE = SIZE
[ENTRY DEV_DATABASE = SIZE]
[SESSION = dd]

Sample
ENTRY DATABASE = SIZE

Explanation
Begins the settings for the database.

SESSION = 0

MAX_DI = dddd
MAX_DO = ddd
LG_CTRL_LRU = G, Pnt, Addr

MAX_DI = 944
MAX_DO = 129
LG_CTRL_LRU =
LG_CTRL_LRU =
LG_CTRL_LRU =
LG_CTRL_LRU =
LG_CTRL_LRU =
LG_CTRL_LRU =
LG_CTRL_LRU =
LG_CTRL_LRU =

MAX_AI = ddd
MAX_AO = ddd
LG_RTU_DI_TO_AI = ddd

MAX_AI = 0
MAX_AO = 128
LG_RTU_DI_TO_AI = 64

MAX_CNT = ddd
ENABLE_SAVING_DB = Y/N

MAX_CNT = 0
ENABLE_SAVING_DB = NO

SEAL_IN_ALARM = Y/N

SEAL_IN_ALARM = YES

The current settings of Data Acquisition


Real-time Database are for the Data
Acquisition Session #0.
Range=0..7. Refer to the section 1.4.6 to 8.
Max. Number of Digital Input.
Max. Number of Digital Output.
G: Group Number up to 8.
Pnt: Control Point Number starting from 0 in
the HMI Point database.
Addr: LRU Address.
In this sample, DO #000 to #063 are mapped to
LRU#1 DO Pt#0-63. DO #064 to #095 are mapped
to LRU#2 DO Pt#0-31. Points of DO #096 - #127
are mapped to LRU#3 DO Pt#0-31. DO #128 is
mapped to LRU#4 DO Pt#0.
Max. Number of Analogue Input.
Max. Number of Analogue Output.
The Binary digital Input (24-bit) in the LG
device goes to AI Points. It defines the
first point number of AI. In this sample, the
value of LG RTU Bin-DI #0 (Block#0) is saved
into AI #064 in the current session.
Max. Number of 16-bt counter
Disables saving the history of the ENTIRE HMI
Point database.
If enable, the file name is mixed as
HMI_SYSTEM_mm_ss.M_S. Where the HMI_SYSTEM is
described in the section 1.4.4, the mm is
Minute of the time, and the ss is Second of
the time. Refer to last for MB/MB+ protocol.
Enable sealing in the alarm.

END

END

1,
2,
3,
4,
5,
6,
7,
8,

000,
064,
096,
128,
128,
128,
128,
128,

1
2
3
4
4
4
4
4

Note: The Point Number is starting from zero (0).

- 21 -

In case of the current Data Acquisition configured as Multi-Salve, Slave Device #11 and Slave
Device #22, for example, if the slave device #11 is assigned to the Data Acquisition Session #0
and the slave device #22 is the session #1, the point mapping is described as follows.
The DI Pnt#0 in the slave device #11 is saved in DI point number #0 in the Data Acquisition
Real-time Database, and the DI Pnt#0 in the slave device #22 is saved in DI point number #160
in the DAS Real-time Database. Here is the MAX_DI assumed as 160. All points in all Data
Acquisition sessions are arranged as follows:
Lower Number
Higher Number
Session #0
Session #1

Session #7
DI #0
DI # 0 + MAX_DI * 1
DI # 0 + MAX_DI * 7
DO #0

DO # 0 + MAX_DO * 1

DO # 0 + MAX_DO *7

AI #0

AI # 0 + MAX_AI * 1

AI # 0 + MAX_AI *7

AO#0

AO # 0 + MAX_AO * 1

AO # 0 + MAX_AO *7

CNT #0

CNT # 0 + MAX_CNT * 1

CNT # 0 + MAX_CNT *7

FR #0
FR # 0 + MAX_FR * 1
FR # 0 + MAX_FR *7
Normally, you do not need to watch it closely. You can easily specify the Data Type (D_TYPE),
the Slave Device Number/Address (PNT_DEV), the Point Number (PNT_ADDR), and the Bit
Number of 16-Bit Word Data to completely cover the description of a Point in the database.
Refer to 1.4.12/13/14.

- 22 -

1.4.10 Entries for the Data Matrix Editor


It depends what kind of protocol you are using. Please refer to the section 8 to see how the Data
Matrix Editor works.
Data Matrix Editor For DNP Device
Entry
ENTRY DATA_MATRIX = EDITOR

Sample
ENTRY DATA_MATRIX = EDITOR

TITLE = tttttttt
MATRIX_DI_PT = ddd
ACTION_BIN_DO_PT = ddd
CONTINGENCY_PULSE_PT = dd

TITLE = GenSheld for XXX


MATRIX_DI_PT = 176
ACTION_BIN_DO_PT = 81
CONTINGENCY_PULSE_PT = 96

CONTINGENCY_INFO = dd tttt
ACTION_INFO = dd xxxx

COUNT = dd

CONTINGENCY_INFO
... ...
CONTINGENCY_INFO
ACTION_INFO = 01
... ...
ACTION_INFO = 16
COUNT = 48

END

END

= 01 TE01 xxx 5Lyy


= 48 TE48 (FUTURE)
xxx 5Lzz
FUT

- 23 -

Explanation
Begins the settings for the
Data Matrix Editor.
The 1st DI point of the Matrix.
DNP Digital Pattern output.
For slave (RTU) to read the
setting for the corresponding
contingency. The xMaster DataMatrix sends a 16-bit pattern
first, then sends a pulse on
the current DO Pulse point, DO
#097, for example, DO #097 is
for the second contingency
TE02, so the current 16-bit
pattern will be sealed in TE02
by RTU/PLC program.
It defines the information for
each contingency and action. It
will show up in the Data Matrix
Editor. The Max. length of tttt
is 48. The Max. length of xxxx
is 12.
It needs at least 768 DI points
(48x16) and 48 DO Pulse points.

Data Matrix Editor For MB/MBP Device:


Entry
ENTRY DATA_MATRIX = EDITOR

Sample
ENTRY DATA_MATRIX = EDITOR

TITLE = tttttttt

TITLE = GenSheld for XXX

AI_PT = ddd

AI_PT = 11

AO_PT = ddd

AO_PT = 01

CONTINGENCY_INFO = dd tttt
ACTION_INFO = dd xxxx

COUNT = dd

CONTINGENCY_INFO
... ...
CONTINGENCY_INFO
ACTION_INFO = 01
... ...
ACTION_INFO = 16
COUNT = 48

END

END

= 01 TE01 xxx 5Lyy


= 48 TE48 (FUTURE)
xxx 5Lzz
FUT

- 24 -

Explanation
Begins the settings for the
Data Matrix Editor.
It defines the title of the
Data Matrix.
Starts from #1 (in the Data
Acquisition Real-time Database,
the Pt#/PNT_ADD starts from 0).
Please check the database
setting to find the MB 4x
register address = AI_PT-1 +
AI_MB_REG_START. If AI_PT=11,
for example, and
AI_MB_REG_START=100, then the
first address of 4x for the
buffer of DATA_MATRIX is 111+100=4x0110.
Starts from #1 (in the Data
Acquisition Real-time Database,
the Pt#/PNT_ADD starts from 0).
Please check the database
setting to find the MB 4x
register address = AO_PT-1 +
AO_MB_REG_START.
Refer to samples in section
1.4.9 for MB protocol,
AO_MB_REG_START = 200, so the
point mapping is as follows:
R01 (4x0200) -> TE #01
R02 (4x0201) -> TE #02
...
R47 (4x0246) -> TE #47
R48 (4x0247) -> TE #48
R49 (4x0248) is the data matrix
command codes defined as
follows:
Bit15-12: Command Status
0:Finished.
1:Requesting.
2:Executing.
3:Failed.
Bit11-08: Command codes
0: Nothing.
5: Download.
10: Force.
Bit7-0: Size of Matrix or the
Row-Index of Matrix
It defines the information for
each contingency and action. It
will show up in the Data Matrix
Editor. The Max. length of tttt
is 48. The Max. length of xxxx
is 12.
It needs at least 48 AI points
and 49 AO points (48x16).

Data Matrix Editor For L&G Device:


Entry
ENTRY DATA_MATRIX = EDITOR

Sample
ENTRY DATA_MATRIX = EDITOR

TITLE = tttttt
MATRIX_DI_PT = ddd
ACTION_BIN_DO_PT = ddd
CONTINGENCY_PULSE_PT = dd

TITLE = GenSheld for XXX


MATRIX_DI_PT = 176
ACTION_BIN_DO_PT = 1
CONTINGENCY_PULSE_PT = 96

CONTINGENCY_INFO = dd text
ACTION_INFO = dd xxxx

COUNT = dd

CONTINGENCY_INFO
... ...
CONTINGENCY_INFO
ACTION_INFO = 01
... ...
ACTION_INFO = 16
COUNT = 48

END

END

Explanation
Begins the settings for the Data
Matrix Editor.

= 01 TE01 xxx 5Lyy


= 48 TE48 (FUTURE)
xxx 5Lzz
FUT

The 1st DI point of the Matrix.


24-bit Binary Digital Output.
For slave (RTU) to read the
setting for the corresponding
contingency. The xMaster DataMatrix sends a 16-bit pattern
first, then sends a pulse on the
current DO Pulse point, DO #097,
for example, DO #097 is for the
second contingency TE02, so the
current 16-bit pattern will be
sealed in TE02 by RTU/PLC
program.
It defines the information for
each contingency and action. It
will show up in the Data Matrix
Editor. The Max. length of tttt
is 48. The Max. length of xxxx
is 12.
It needs at least 768 DI points
(48x16) and 48 DO Pulse points.

Note:
Mainly the Data Matrix is used for the application of Remedial Action System - RAS. You have
to program RTU / PLC accordingly to seal in the Action DO Pattern for the corresponding
contingency event inpute (TE01-TE48).
DO -- Action Pattern ( Output Register Bit 00 to 15 )
DI -Trip
Events
TE01
to
TE48

1
2

48

- 25 -

10

11

12

13

14

15

16

1.4.11 Entries for definitions of the Metering Display


It defines the index and name of meter device (actually, it is a pseudo meter device created and
displayed by xMaster HMI). The max. index (Meter Device No.) is 256. There is up to 10 data
(i.e. Analogue Input, Counter, Floating-Point) in a meter device being shown in the Metering
Display. Refer to the section 5 and the screenshot Figure 1-2.
Entry
ENTRY METER_WINDOW_CAPTION = XXXX

Sample
ENTRY METER_WINDOW_CAPTION =
XXX Substation Metering

ENTRY METER_SIZE = LARGE

ENTRY

ENTRY METER_SIZE = SMALL

ENTRY METER_SIZE = SMALL

ENTRY METER_NAME = dd, tttt

ENTRY METER_NAME = 1, AI190199

The Caption of
the window of
Metering.

METER_SIZE = LARGE

Explanation
It is to define the caption of
window of the metering. The
default is
Analog/Register/Metering Data
Display.
The LARGE size Meter Device is
able to contain up to 10 data
items and there are up to 3
meters per display. The default
size is LARGE.
The SMALL size Meter Device is
able to contain up to 4 data
items and there are up to 6
meters per display.
The Meter Index 'dd' is up to
256.
The Meter Name tttt is up to
24 characters.

Meter Data Item Name. The corresponding meter item data is defined by the
entry of "METER = M, L". Refer to the section 1.4.12 to 13.
Meter Name

METER_SIZE = LARGE

METER_SIZE = SMALL

Figure 1-2

- 26 -

1.4.12 Entries for creating a default HMI Point Database


In the default HMI Point Database, the total of HMI Status Point (DI) is the max. number of
Digital Input/Indication times the number of total sessions (MAX_DI * SessionTotal, refer to the
section 1.4.5 Entries for Data Acquisition Communications and the section 1.4.9 Entries for Data
Acquisition Real-time Database). And it will automatically put all DI points into the list of
Alarm-Definition. So the Alarm #1 is the 1st DI point, Alarm#2 is the 2nd DI point, ..., and so
on. And also it will automatically assign the corresponding DO points. So the DO#0 is associated
to the DI#0, the DO#1 is associated to the DI#1, ..., and so on. The total of HMI Analogue Input
Point (AI) is the max. number of Analogue Input times the number of total sessions (MAX_AI *
SessionTotal). And all default setting will be applied to properties of HMI AI Point as follows:

HI_WNLIM (Hi Limit Warning)


LO_WNLIM (Lo Limit Warning)
HI_ALLIM (Hi Limit Alarm)
LO_ALLIM (Lo Limit Alarm)
HI_RSLIM (Hi Limit Reasonability)
LO_RSLIM (Lo Limit Reasonability)
HI_SCALE (Hi Limit Scale Factor)
LO_SCALE (Lo Limit Scale Factor)
Z_DBAND (Limit_Deadband)
L_DBAND (Limit_Deadband)
HI_EUVAL (Hi Engineering Value)
LO_EUVAL (Lo Engineering Value)

=
=
=
=
=
=
=
=
=
=
=
=

+2047.0
-2048.0
+2047.0
-2048.0
+2047.0
-2048.0
16.0
16.0
0.0
0.0
+2047.0
-2048.0

All HMI AI points will be assigned into up to 256 Meter Devices and the Meter Data format is
HEX. The data format/type of HMI AI Point is Integer (-32768 - +32767).
Entry
ENDALL_AND_BUILD_A_DEFAULT_HMI_POINT_DB [DIFile],[AIFile]

Sample
ENDALL_AND_BUILD_A_DEFAULT_HMI_POINT_DB

[DIFile]: the default name of the Text file defining the status Short-Name and Long Name is
"HMI_STATUS_NAMES.TXT". The format of the line in the file is as follows:
xxxxxxxxxxxx, xxxxxxxxxxxxxxxxxxxxx, dd
The Point Long Name is the same string as the Point Short Name is if the Long Name is not
defined. The "dd" is the DO control point number that is associated to the current Status point.
And it is an option.
The 1st line is assigned to HMI Status point DI #0. The 2nd line is assigned to HMI Status point
DI #1. The 3rd line is assigned to HMI Status point DI #2. And so on.
[AIFile]: the default name of the Text file defining the Analog short and long name is
"HMI_ANALOG_NAMES.TXT ". The format of the line in this file is as follows:
xxxxxxxxxxxx, xxxxxxxxxxxxxxxxxxxxx, dd
The "dd" is the AO control point number that is associated to the current Status point. And it is
an option.
The 1st line is assigned to HMI Analogue Input point AI #0. The 2nd line is assigned to AI #1.
The 3rd line is assigned to AI #2. And so on.
Two names of above files are separated by the character of ,.
You can easily get above Name Information from the existing RTU/PLC point assignment.

- 27 -

1.4.13 Entries for Analogue Input Points


The value of the HMI AI Point can be retrieved from the Data Object with the format of an
Integer (-32768 - +32767) or a 32Bit Binary Word (i.e. BR32, CNT32, etc.). The default setting
of the propriety of the HMI AI Point is as follows:

HI_WNLIM (Hi Limit Warning)


LO_WNLIM (Lo Limit Warning)
HI_ALLIM (Hi Limit Alarm)
LO_ALLIM (Lo Limit Alarm)
HI_RSLIM (Hi Limit Reasonability)
LO_RSLIM (Lo Limit Reasonability)
HI_SCALE (Hi Limit Scale Factor)
LO_SCALE (Lo Limit Scale Factor)
Z_DBAND (Limit_Deadband)
L_DBAND (Limit_Deadband)
HI_EUVAL (Hi Engineering Value)
LO_EUVAL (Lo Engineering Value)

=
=
=
=
=
=
=
=
=
=
=
=

+2047.0
-2048.0
+2047.0
-2048.0
+2047.0
-2048.0
16.0
16.0
0.0
0.0
+2047.0
-2048.0

Entry
ENTRY NAME = xxxxxxxxxxx

Sample
ENTRY NAME = PY_40100

LONGNAME = xxxxxxxxxxxxxx
[LONGNAME = PSD:HMI_SV]
[LONGNAME = PSD:ANALOG:XXXXX]
[LONGNAME = PSD:ALARM_GROUP]
[LONGNAME = PSD:Var1 + Var2]
[LONGNAME = PSD:Var1 - Var2]
[LONGNAME = PSD:Var1 * Var2]
[LONGNAME = PSD:Var1 / Var2]
[LONGNAME = PSD:Var1 & Var2]
[LONGNAME = PSD:Var1 | Var2]
[LONGNAME = PSD:Var1 ^ Var2]

LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME
LONGNAME

"PSD:HMI_SV": Usually for making up


a Setpoint (0-65535) via a SpinEdit,
a TrackBar, ListBox, etc. The value
of the current pseudo AI goes to and
comes from a SpinEdit, a TrackBar,
ListBox, etc.
"PSD:ALARM_GROUP": Usually to
display the total of alarms in the
current alarm group defined by
ALARM_GROUP = dd.
"PSD:Var1 Function Var2": Var1 is
the HMI AI Point short name. Var2 is
either the HMI AI Point short name
or a const like #123.4(must place #
in font of the const).
FORMAT = AI
FORMAT = FR

=
=
=
=
=
=
=
=
=
=
=

PY PLC 40100
PSD:HMI_SV
PSD:ANALOG:XXX-YYY.VVO_ON
PSD:ALARM_GROUP
PSD:AI001 + AI012
PSD:AI021 - #12.3
PSD:AI012 * AI009
PSD:AI123 / #10.0
PSD:AI121 & AI004
PSD:AI045 | AI009
PSD:AI011 ^ AI141

FORMAT
= AI
FORMAT
= PSD_AI
PSD_AI_DEFAULT_PV = 1024.0

[FORMAT = PSD_AI]
[PSD_AI_DEFAULT_PV = dddd.d]
If the current AI is a PSD_AI, the "
PSD_AI_DEFAULT_PV = dddd.d " is to
define the init. value for the
current PSD_AI.
D_TYPE = AI
[D_TYPE = BR16]
[D_TYPE = BR32]

D_TYPE
D_TYPE
D_TYPE

= AI
= BR16
= BR32

- 28 -

Explanation
It defines the short
name/Tagname of AI point. The
max. length of short name is
12.
It defines the long name of
AI point. The max. length of
long name is 48.
For the pseudo AI point, the
"LONG NAME" is to define the
function for the current
pseudo AI point.
The definition of functions
is as follows:
+ : ADD
- : SUB
* : MUL
/ : DIV
& : Binary-And
| : Binary-Or
^ : Binary-Exclusive-Or
Note: please refer to the
section 1.4.3 for details on
PSD:ANALOG:XXXXX, the
Tren_Point.

The FORMAT is to define the


data/object Format/Type.
"PSD_AI" is to declare the
current AI is a pseudo AI
point.
The default is 0.
FORMAT = FR is to define the
current data format is
floating point/Real data. Its
AO point is FP AO point.
Refer to 1.4.9.
The current AI data can be
retrieved from a 16-Bit
Binary Register, or a 32-Bit

[D_TYPE = FR]
[D_TYPE = CNT32]
[D_TYPE = MYPLC_9X]
D_TYPE is to define where the
Analogue Data derivers from.

D_TYPE
D_TYPE
D_TYPE

SHARING_PNT = Y/N

SHAPING_PNT = Y

PROCTYPE = ANALOG [History] [M=dd]


(dd=1-60)

PROCTYPE = ANALOG
PROCTYPE = ANALOG HOUR_HISTORY
PROCTYPE = ANALOG MINUTE_HISTORY M=16

= FR
= CNT32
= MYPLC_9X

The option of [History] can be one


of three definitions as follows:
MINUTE_HISTORY: Interval=1 Minute
HOUR_HISTORY: Interval=1 Hour
DAY_HISTORY: Interval= 1 Day
The option of [M=dd] is to specify
the history data is Multiple-Points.
The dd is to define how many
consecutive ANALOG points in the
history data.
(Refer to section 1.4.4 and 7.3.73)

PNT_ADDR
= ddd
[CTRL_ADDR = ddd]
The CTRL_ADDR must be defined after
the PNT_ADDR. Refer to the section
5.2.
[PNT_ADDR = SHARED]
It is to define the current point is
retrieved from the shared HMI Point
Pool. Refer to the section 13.
PNT_DEV
= ddd
PNT_DEV is to define slave address.
The default is the Device assigned
to Link Session #0.
[PNT_SITE = ddd]

[ALARM

= YES/NO] [xxxx.hmi]

The default setting is NO.


The xxxx.hmi is the associated HMI
display for the current alarm.

ALARM_GROUP

= ddd

METER
= M, L
M: 1 to 256
L: 1-4 if for small meter.
1-10 if for large meter.
In the "METER = M, L" where the M is
to define Meter Index and the L is
to define Meter Data Item/Line
number. Refer to the section 1.4.11
and the section 5.
ENG_UNIT
= xxx

PNT_ADDR

= 0

ENTRY NAME = PY_40100


PNT_ADDR
= SHARED

Binary Register, or a
Floating data, or a 32-Bit
Counter in the Data
Acquisition Real-time
Database, or from PLC Program
Runtime Database. Refer to
the section 1.4.9 and the
section 9.1.4.
Default is NO.
Yes to specify the current
HMI Point will be put into
the shared HMI Point Pool.
It is to define how to
process the current AI point
data. It is also to point out
whether to make a related
history data file for the
display of Data
Trend/DataWatch.
The File Name is mixed as
HMI_SYSTEM_POINTNAME_History.
txt.
if HMI_SYSTEM =
c:\xMaster\HD\XYZ and the
Point Name NAME = 5LxxKV, the
history file name will be
c:\xMaster\HD\XYZ_5LxxKV_Hist
ory.txt
The PNT_ADDR is to define the
point number of the current
data source that is defined
by D_TYPE.
The CTRL_ADDR is to define
the control point (AO) number
that is associated to the
current AI point.

If there is no PNT_DEV
definition, it will use the
FIRST Data Acquisition Link
Session associated slave
PNT_SITE = 001
address. So if there is a
(It is to define which remote site the Session Link ONLY, you do not
current point belongs to. Refer to the need to use this definition.
section 12.)
ALARM
= YES c:\xmaster\alm1.hmi
This entry: ALARM is to
define the current AI point
is an Alarm point as well,
Note: ONLY after 3 minutes at very
beginning running HMI, it will detect which will be captured by
Alarm-Recorder.
the 1st-occurrence alarm and
automatically switch to the associated
HMI display.
ALARM_GROUP = 1
Defines the Alarm group
Number.
The METER is for Analog Input
METER
= 1, 1
Points to define which meter
device and which line (data
item) in the current meter
device is assigned to.
PNT_DEV

ENG_UNIT

= 11

The ENG_UNIT is to define the


Text string of engineering
value unit (e.g. KV Amps).
The max. length of unit is 6.

= KV

Note:
If it is "HEX", a Hex Formatted
string will be displayed instead of
a floating point.

- 29 -

If it is "DEC" or A or AMP or
LEV or LEVEL, a Dec. Formatted
string will be displayed instead of
a floating point.
ENG_NAME = xxxxxxx

ENG_NAME

HI_EUVAL
LO_EUVAL
HI_WNLIM
LO_WNLIM
HI_ALLIM
LO_ALLIM
HI_RSLIM
LO_RSLIM
HI_SCALE
LO_SCALE
Z_DBAND

HI_EUVAL = +2047.0
LO_EUVAL = -2048.0
HI_WNLIM = +2047.0
LO_WNLIM = -2048.0
HI_ALLIM = +2047.0
LO_ALLIM = -2048.0
HI_RSLIM = +2047.0
LO_RSLIM = -2048.0
HI_SCALE = 16.0
[LO_SCALE = 16.0]
Z_DBAND = 0.0

=
=
=
=
=
=
=
=
=
=
=

+dddd.dd
-dddd.dd
+dddd.dd
-dddd.dd
+dddd.dd
-dddd.dd
+dddd.dd
-dddd.dd
dd.d
dd.d
dd.d

Or
RANGE = +xxxx.xx uuuu [yy]
xxxx.xx is the Range of Engineering
value.
Uuuu is the Metering Unit(e.g KV)
yy is to define the Max. of AI raw
data. 12 is to represent -2048 to
+2047 and 16 is to represent -32768
to +32767. 16 is the default
setting.

SENSE_CHG = Y/N

= 2Lxx Volt.

The ENG_NAME is to define the


name of the current Meter
Data item: engineering-value
name (e.g. 2Lxx Volt ). The
default is the same as the
name of the current AI point.
The ENG_NAME is displayed by
the related meter display
(e.g. 2Lxx Volt = 6.23 Kv).
The max. length of ENG_NAME
is 12.
Hi/Lo Engineering Value*
Hi/Lo Limit Warning**.
Hi/Lo Limit Alarm**.
Hi/Lo Limit Reasonability**.

Hi/Lo Limit Scale Factor.


The setting must be >0.
It is the deviation for the
HMI Point database to detect
whether the current
Engineering Value changes.
You can watch the changes by
Or you can simply define the range the enable "Enable Display
engineering value and scaling fact as Updated Point" in the page of
"Log" in the window of "HMI
follows:
Local Database Engine".
RANGE = 30.0 KV 12
(Refer to section 11).
It implicates settings as follow:
HI_EUVAL / LO_EUVAL = +30.0 / -30.0
HI_WNLIM / LO_WNLIM = +30.0 / -30.0
HI_ALLIM / LO_ALLIM = +30.0 / -30.0
HI_RSLIM / LO_RSLIM = +30.0 / -30.0
HI_SCALE / LO_SCALE = 16.0 / 16.0
Z_DBAND = 0.0
ENG_UNIT = KV
SENSE_CHG = NO
If the current point is the
watchdog, you can use it to
disable checking and logging
changes.

* Note:
AI_RowCount- (-32768/LO_SCALE)
AI Engineering Value=----------------------------------- * (HI_EUVAL-LO_EUVAL) + LO_EUVAL
(+32767/HI_SCALE)-(-32768/LO_SCALE)

**Note:

You can see the related information in the Log Window in the Alarm-Recorder. Refer to the
section 6.3 and the screenshot Figure 1-3.

Figure 1-3

- 30 -

- 31 -

1.4.14 Entries for Digital Input/Indication Points


Entry
ENTRY NAME = xxxxx

Sample
ENTRY NAME = PY0035_AL03
ENTRY NAME = PSD_DI_PY_WF
ENTRY NAME = PSD_DI_MM

LONGNAME = xxxxxxx

LONGNAME
LONGNAME
LONGNAME
FORMAT
FORMAT

FORMAT = DI
[FORMAT = PSD_DI]
PSD_DI_VAR1 = xxxx
PSD_DI_VAR2 = xxxx
PSD_DI_FUNC = xxxx
PSD_DI_CTRL1= d d d
PSD_DI_CTRL2= d d d
PSD_DI_WDT= ddddd
(in millisecond)

=
=
=
=
=

PY PLC TROUBLE 0X035


PY PLC Watchdog failed
RAS Matrix Mismatched
DI
PSD_DI

Sample #1:
PSD_DI_FUNC = WDT_FAILED
PSD_DI_CTRL1 = 11 0 0
Sample #2:
PSD_DI_FUNC
PSD_DI_VAR1
PSD_DI_VAR2
PSD_DI_WDT
Sample #3:
ENTRY NAME
LONGNAME
FORMAT
PNT_ADDR
PROCTYPE
STATCONV
PSD_DI_FUNC

=
=
=
=

=
=
=
=
=
=

WDT_FAILED
AI_WDT_DATA
1
10000

PSD_AlmGrp1
Alarm Group #1
PSD_DI
0
ONOFF
NO
= CHK_ALARM_GROUP

Sample #4:
ENTRY NAME = PSD_DI_MM
LONGNAME
= Matrix Mismatched
FORMAT
= PSD_DI
PNT_ADDR
= 0
PROCTYPE
= ONOFF
STATCONV
= NO
PSD_DI_VAR1 = PY_40110
PSD_DI_VAR2 = SY_40110
PSD_DI_FUNC = MISMATCH_MATRIX
PSD_DI_CTRL1 = 11 48 0
PSD_DI_CTRL2 = 22 48 0
PSD_DI_WDT
= 0
Sample #5:
ENTRY NAME = PSD_DI_ML
LONGNAME
= Action Mismatched
FORMAT
= PSD_DI
PNT_ADDR
= 0
PROCTYPE
= ONOFF
STATCONV
= NO
PSD_DI_VAR1 = PY_40100
PSD_DI_VAR2 = SY_40100
PSD_DI_FUNC = NEQ
PSD_DI_CTRL1 = 11 100 0
PSD_DI_CTRL2 = 22 100 0
PSD_DI_WDT
= 300000
ALARM
= YES
Sample #6:
ENTRY NAME
LONGNAME
FORMAT
PNT_ADDR

=
=
=
=

Explanation
It defines the short name/Tagname of DI point.
The max. length of short name is 12.
Refer to the section 4.
Note: If the name contains either ALM_ddd or
ALARM_ddd (where ddd is the number 0..9), it
will be assigned as an Alarm point
automatically.
It defines the long name of DI point. The max.
length of long name is 48.
The FORMAT is to define the data/object
Format/Type. "PSD_DI" is to declare the
current DI is a pseudo DI point.
If the current DI is a pseudo DI point, you
may have to define these parameters
(PSD_DI_VAR1/2) and the related functions
(PSD_DI_FUNC) accordingly.
The PSD_DI_VAR1/2 is to define the parameter
from the list of Tagname of the current HMI
Point Database. Only the PSD_DI_VAR2 can be
defined as a const.
The

function is defined as follow:


EQ: Equal to
NEQ: Not Equal to
GT: Greater than
LT: Less than
GE: Greater than or Equal to
LE: Less than or Equal to
AND: Boolean logic- AND
OR: Boolean logic- OR
XOR: Boolean logic Exclusive- OR

ON_TIMEOUT: If PSD_DI_VAR1 is "1"/ON, the


timer starts. If time is expired and
PSD_DI_VAR2 is "1"/ON, it takes actions
defined by PSD_DI_CTRL1 and PSD_DI_CTRL2
and resets the timer.

OFF_TIMEOUT: If PSD_DI_VAR1 is "0"/OFF,


the timer starts. If time is expired and
PSD_DI_VAR2 is "1"/ON, it takes actions
defined by PSD_DI_CTRL1 and PSD_DI_CTRL2
and resets the timer.

COMM_FAILED: Communication failure.


WDT_FAILED: Slave (i.e. PLC, RTU, etc.)
watchdog failure. In the sample #1, the
first parameter of the PSD_DI_CTRL1 is to
define the address of the PLC/RTU. In the
sample #2, the PSD_DI_VAR1 is to define
the register/AI of watchdog. The
PSD_DI_VAR2 is the differentia to check
the watchdog value. The PSD_DI_WDT is to
set the interval in ms to check any
changes interval of the watchdog
register/AI.

CHK_ALARM_GROUP: check if there is an


active alarm in the current alarm group
define by ALARM_GROUP = dd Marshaling
Alarms.

PSD_DI_R1
Start R1
PSD_DI
0

- 32 -

PROCTYPE
= ONOFF
STATCONV
= NO
PSD_DI_FUNC = HMI_SV
ALARM
= NO
Sample #:
ENTRY NAME = PSD_DI_OPEN_R1
LONGNAME
= R1 is ready to go
FORMAT
= PSD_DI
PNT_ADDR
= 0
PROCTYPE
= ONOFF
STATCONV
= NO
PSD_DI_VAR1 = PSD_DI_R1
PSD_DI_VAR2 = PSD_DI_OPEN_R1
PSD_DI_FUNC = ON_TIMEOUT
PSD_DI_CTRL1 = 11 100 1
PSD_DI_WDT
= 30000
ALARM
= NO

D_TYPE
[D_TYPE
[D_TYPE
[D_TYPE
[D_TYPE
[D_TYPE
[D_TYPE

PROCTYPE
PROCTYPE

=
=
=
=
=
=
=

DI
AI]
BR16]
BR32]
FR]
CNT32]
MYPLC_9X]

= ONOFF
= 3STATE

STATCONV = Y/N

PNT_ADDR
= ddd
PNT_ADDR
= *
[CTRL_ADDR = ddd]
[PNT_BIT = dd]
[CTRL_BIT = dd]
[PNT_ADDR = SHARED]
It is to define the
current point is
retrieved from the
shared HMI Point Pool.
PNT_DEV = ddd
[PNT_SITE = ddd]

Sample #8:
ENTRY NAME = PSD_DI_R2
LONGNAME
= Start R2
FORMAT
= PSD_DI
PNT_ADDR
= 0
PROCTYPE
= ONOFF
STATCONV
= NO
PSD_DI_FUNC = HMI_SV
PSD_DI_CTRL1 = 11 100 2
PSD_DI_WDT
= 30000
ALARM
= NO
D_TYPE
= DI
D_TYPE
= AI
D_TYPE
= BR16
D_TYPE
= BR32
D_TYPE
= FR
D_TYPE
= CNT32
D_TYPE
= MYPLC_9X

MISMATCH_MATRIX: Mismatched between PY and


SY.

HMI_SV: It is for writing and reading.


Usually it is assigned to a CheckBox or a
2-State switch to turn ON/Off a pseudo DI
point.

The Entry of "PSD_DI_CTRL1" / "PSD_DI_CTRL2"


is to define actions to be taken for up to 2
slaves (i.e. PLC). The 1st "d" is to define
the Slave Address. The 2nd "d" is to define
action address, the Analogue Output (for MB,
it is the 4xxxx) address. The 3rd "d" is to
define the action data, the value.
The Entry of "PSD_DI_WDT" is to define a
watchdog timer for the current PSD_DI to take
actions that are defined in the PSD_DI_CTRL1
and PSD_DI_CTRL2.
In the sample #5, if PY_40100 is not equal to
SY_40100 for at least 5 minutes (300 seconds),
send value of 0 into 4x0100 in both PLC #11
and #22.
If "PSD_DI_CTRL1"/"PSD_DI_CTRL2" and
"PSD_DI_WDT" are defined and validated, it
will take the action once when the timer
"PSD_DI_WDT" is expired.

The D_TYPE is to define where the DI Data


derives from.
The current DI data can be retrieved from an
Analogue Input, or a 16-Bit Binary Register,
or a 32-Bit Binary Register, or a Floating
data, or a 32-Bit Counter in the Data
Acquisition Real-time Database, or from PLC
Program Runtime Database. Refer to the section
1.4.9 and the section 9.1.4.
If D_TYPE is not DI, you have to define the
bit number (PNT_BIT).
The PROCTYPE is to define the process type.
PROCTYPE = ONOFF
ONOFF: 2-State DI.
PROCTYPE = 3STATE
3STATE: 3-State DI, it needs TWO consecutive
Note:
DI Points in the Data Acquisition Real-time
database. The bit pattern are defined as
For 3STATE, if InTrabsit(00) or
follows:
Invalid(11) occurs, the current
point will be shown failure (same
00:InTransit.
as OFFLINE does. Refer to

11:Invalid.
screenshot Figure 11-2). And Alarm
01:Close.
is assigned atomatically.

10:Open.
STATCONV = YES
It is to define whether the HMI point database
application needs to invert the current DI
state (i.e. OFF->1, NO->0, if YES).
The PNT_ADDR is to define the point number of
PNT_ADDR = 0
the current data source that is defined by
[CTRL_ADDR
= 0]
D_TYPE. The CTRL_ADDR is to define the control
point number that is associated to the current
D_TYPE = BR16
DI point. The CTRL_ADDR must be defined after
PNT_ADDR = 1
the PNT_ADDR. The PNT_BIT is to define the bit
PNT_BIT = 12
number (0..15) in the Word/Register (16-Bit).
PNT_ADDR = *
Refer to the section 13 for more samples on
It is to define the next point
shared HMI Point Pool.
automatically.
The PNT_DEV is to define slave address. If
PNT_DEV = 11
there is no PNT_DEV definition, it will use
the FIRST Data Acquisition Link Session
PNT_SITE = 001
associated slave address. So if there is a
(It is to define which remote site Session Link ONLY, you do not need to use this
definition.
the current point belongs to.
Refer to the section 12.)
The default is the Device assigned to Link

- 33 -

Session #0. The PNT_ADD and the CTRL_ADDR are


associated to the same Device Address.
[ALARM = YES/NO][x.hmi] ALARM

= YES

SHARING_PNT = Y/N

Refer to the definition of NAME


and the section 1.1.13.
SHARING_PNT = N

ALARM_GROUP
= ddd
AUTH_ST = OPEN
AUTH_ST = CLOSE
AUTH_ST = OPEN_3
AUTH_ST = CLOSE_3

ALARM_GROUP = 1
AUTH_ST = OPEN
AUTH_ST = CLOSE
AUTH_ST = OPEN_3
AUTH_ST = CLOSE_3

The default setting is NO.


ALARM is to define the current DI point is an
Alarm point as well, which will be captured by
Alarm-Recorder.
Default is NO.
Yes to specify the current HMI Point will be
put into the shared HMI Point Pool.
Defines the Alarm group Number.
AUTH_ST is to define the normal Alarm state.
OPEN: CLOSE is 2-State Alarm condition.
CLOSE: OPEN is 2-State Alarm condition.
OPEN_3: CLOSE is 3-State Alarm condition.
CLOSE_3: OPEN is 3-State Alarm condition.

Note #1:
The points LONGNAME can incorporate some encoded information to play the Alarm Sound
(*.wav). If the current Point is alarmed, play the sound that is File-Named as follows:
Encoded
How to make up the wav file name Sample of wav file name
( if XXX is ALM and
Keyword
ENDTRY HMI_SYSTEM = C:\xMaster\HD\SEL )
AS=XXX

HMI_SYSTEM_XXX
C:\xMaster\HD\SEL_ALM.WAV
Refer to 1.4.4 for HMI_SYSTEM.
HMI_SYSTEM_PointName
C:\xMaster\HD\SEL_PY0035_AL03.WAV.
ASN=!
HMI_SYSTEM_XXX_dddd
If the current AI Value is 1234, the file name
ASV=XXX
is C:\xMaster\HD\SEL_ALM_1234.WAV
And the LongName also can indicate the current pseudo DI point is Tren_Point. Please refer to
the section 1.4.3 for details.
Note #2:
After finishing scanning the configuration, x_Master will automatically generate the Lists of the
HMI Points as follows:
DI List
ConfigurationFileName_DI_PointName_List.TXT
AI List
ConfigurationFileName_AI_PointName_List.TXT
COUNTER List ConfigurationFileName_CNT_PointName_List.TXT
DO List
ConfigurationFileName_DO_PointName_List.TXT
AO List
ConfigurationFileName_AO_PointName_List.TXT
The format of file is described in the section 1.4.12.
Note #3:
If the current Active Alarm point becomes Offline (fail), it still remains the Alarm state.

- 34 -

1.4.15 Entries for Event/Schedule driven task


Entry
ENTRY XMYTASK

Sample
ENTRY

TASK_ID = dd

TASK_ID = 2

TASK_NAME = xxxxx
TASK_TYPE = xxxxx
Type:
BEGIN_TO_DO_UNTIL_END
BEGIN_END_AFTER_SECONDS_TO_DO
EVERY_SECONDS
EVERY_MINUTE_AT_SECOND
EVERY_HOUR_AT_MINUTE
EVERY_DAY_AT_HOUR
EVERY_WEEK_AT_WEEKDAY
EVERY_MONTH_AT_DAY
KEYBAR_F8

TASK_NAME = xMyTask #2
TASK_TYPE = BEGIN_END_AFTER_SECONDS_TO_DO

BEGIN_EVENT = xxxxx

BEGIN_EVENT = PSD_DI01

END_EVENT = xxxxx

END_EVENT =

MY_TASK = d xxxxxxxxxxx
Task:
EXECUTE xxxxxx
PRINT
xxxxxx
SAVEDATA xxxx xxxxx
ADDDATA xxxx xxxxx
DOWNLOAD xxxx
EMAIL xx1 xx2 xx3 xx4
INTERVAL = dddd

Note #2

TASK_MONTH = dd

TASK_MONTH = 2

TASK_DAY = dd
TASK_WEEK = d

TASK_DAY = 3
TASK_WEEK = 4

TASK_HOUR = dd

TASK_HOUR = 23

TASK_MINUTE = dd

TASK_MINUTE = 59

TASK_SECOND = dd

TASK_SECOND = 1

EMAIL_HOST = xxxxx
EMAIL_USERID = xxxx
EMAIL_ADDR = xxxx
END

EMAIL_HOST = abcd
EMAIL_USERID = efgh
EMAIL_ADDR = ijkl@mnopq.com
END

XMYTASK

Explanation
Starts definitions for the
Event/Schedule driven
Task.
Defines the Task ID up to
64.
Defines the Task Name.
It defines how to start or
stop/dismiss the task.
See Note #1.

The event as a trigger


that may start the task.
The event that may
end/dismiss the task. The
default is set by the
Begin_Event.
The task details. Up to 8
definitions of taskactions in the list of the
current task.
See Note #2.

PSD_DI01

INTERVAL = 5000

Before End-Event, after


Begin-Event, how often
does the current task. In
Millisecond.
The 2nd month in every
year.
The 3rd day in every month.
On every Thursday.
1 to 5: Mon. to Fri.
6: Sat.
7: Sun.
At the 23rd hour in every
day.
At the 59th minute in every
hour.
At the 1st second in every
minute.
The server of email.
The user ID for email.
The sender email address.
End of the current
entries.

Note #1 (the definition of event):


BEGIN_TO_DO_UNTIL_END
If the Begin_Event (Rising-Edge) occurs, starts all task-actions repeatedly at the interval
defined by INTERVAL = dddd, all task-actions cease when the End_Event (Rising-Edge)

- 35 -

occurs.

BEGIN_END_AFTER_SECONDS_TO_DO
If the Begin_Event (Rising-Edge) occurs, then waits for the End_Event (Rising-Edge)
occurs, then do all task-actions after a delay defined by INTERVAL = dddd.

EVERY_SECONDS
Periodically does all task-actions in totalized seconds (at least 3 seconds) defined by
TASK_SECOND = dd, and/or TASK_MINUTE = dd, and/or TASK_HOUR = dd ,
and/or TASK_DAY = dd. If the Begin_Event and End_Event are defined, it will check and
wait for both Begin_Event (Rising-Edge) and End_Event (Rising-Edge) occur.

EVERY_MINUTE_AT_SECOND
Periodically do all task-actions every minute at the second defined by TASK_SECOND =
dd. If the Begin_Event and End_Event are defined, it will check and wait for both
Begin_Event (Rising-Edge) and End_Event (Rising-Edge) occur.

EVERY_HOUR_AT_MINUTE
Periodically does all task-actions every hour at the minute defined by TASK_MINUTE =
dd. If the Begin_Event and End_Event are defined, it will check and wait for both
Begin_Event (Rising-Edge) and End_Event (Rising-Edge) occur.

EVERY_DAY_AT_HOUR
Periodically does all task-actions every day at the hour defined by TASK_HOUR = dd
(and at the Minute defined by TASK_MINUTE = dd, if defined). If the Begin_Event and
End_Event are defined, it will check and wait for both Begin_Event (Rising-Edge) and
End_Event (Rising-Edge) occur.

EVERY_WEEK_AT_WEEKDAY
Periodically does all task-actions every week-day defined by TASK_WEEK = d (and at the
Hour defined by TASK_HOUR = dd, if defined). If the Begin_Event and End_Event are
defined, it will check and wait for both Begin_Event (Rising-Edge) and End_Event (RisingEdge) occur.

EVERY_MONTH_AT_DAY
Periodically does all task-actions every month at the day defined by TASK_DAY = dd
(and at the Hour defined by TASK_HOUR = dd, if defined). If the Begin_Event and
End_Event are defined, it will check and wait for both Begin_Event (Rising-Edge) and
End_Event (Rising-Edge) occur.

KEYBAR_F8
Do all task-actions after randomly hitting the function key F8. If the Begin_Event and
End_Event are defined, it will check whether both Begin_Event (Rising-Edge) and
End_Event (Rising-Edge) occur. If NO, it dismisses the current task.

- 36 -

Note #2 (the definition of task-action):


EXECUTE xxxxxx
Executes the command line User Application.
Sample: MY_TASK = 1 EXECUTE UserAppl.exe @@@OPERATOR:@@@PSD_AI01:8:F@@@PSD_DI01:5:B
Refer to the section 1.4.16 for the definition of Data String Template:
@@@OPERATOR:@@@PSD_AI01:8:F@@@PSD_DI01:5:B

PRINT
xxxxxx
Prints the file (*.TXT or *.RTF) or a Data String Template Print Report.
Sample: MY_TASK = 1 PRINT UserData.rtf
MY_TASK = 2 PRINT @@@OPERATOR:@@@PSD_AI01:8:F@@@PSD_DI01:5:B

The contents in the file will be scanned to find any possibility of Data String
Template.

SAVEDATA xxxx xxxxx


Saves the file (*.TXT or .RTF) to another file (.TXT or *.RTF) Compose Report.
Sample: MY_TASK = 1 SAVEDATA DataTemp1_@AI_USER_ID:4:I.rtf DataReport_@AI_USER_ID:4:I.rtf
The contents in the file: DataTemp1.rtf will be scanned to find any possibility of
Data String Template. In this sample, if the value of the AI_USER_ID in the
HMI Point database is 51, the file name will be DataTemp1_51.rtf and
DataReport_51.rtf

ADDDATA xxxx xxxxx


Adds a line of a Data String into the file (*.TXT or *.RTF) Compose Report.
Sample: MY_TASK = 1 ADDDATA DataFile_@AI_USER_ID:4:I.rtf @@@PSD_AI01:8:F@@@PSD_DI01:5:B
The result of the Data String Template:
@@@PSD_AI01:8:F@@@PSD_DI01:5:B will be added at the end of the file:
DataFile_@AI_USER_ID:4:I.rtf. In this sample, if the value of the
AI_USER_ID in the HMI Point database is 51, the file name will be
DataFile_51.rtf.

DOWNLOAD xxxx
Downloads the setting(s) that described in the file: xxxx (*.txt). You are able to check the log
information about control commands Download Production/Process Receipt.
Syntax of the setting:
Explanation
Key Word
Syntax
The Device/Slave Address.
DEVICE_ADDR= DEVICE_ADDR= dddd
The First Control Point Address.
PNT_ADDR=
PNT_ADDR= dddd
Writes up to 256 AO data into
DATA=
DATA= d1, [d2, d3, d4, , d256]
CTRL_CMD=

The following is the control


command:
PULSE CtrlCode CtrlCount PulseOnTime PulseOffTime
ON CtrlCode
OFF CtrlCode
DO_PATTERN CtrlCode PatternBitWord
SBO_TRIP CtrlCode
SBO_CLOSE CtrlCode
DO_RAISE CtrlCode CtrlCount PulseOnTime
DO_LOWER CtrlCode CtrlCount PulseOnTime

- 37 -

consecutive points.
Normally the CtrlCode for
PULSE is 1, for ON (Latch ON)
is 3, for OFF (Latch OFF) is 4,
for SBO Trip is 81h(in Hex) and
for SBO Close is 41h(in Hex).
Multiple-Command is allowed.

Sample:

MY_TASK = 1 DOWNLOAD ReceiptFile_@AI_USER_ID:4:I.TXT

It downloads all settings in the ReceiptFile_@AI_USER_ID:4:I.txt. In this


sample, if the value of the AI_USER_ID in the HMI Point database is 51, the file
name will be ReceiptFile_51.txt.
Samples of settings:
DEVICE_ADDR=
DEVICE_ADDR=
DEVICE_ADDR=
DEVICE_ADDR=
DEVICE_ADDR=
DEVICE_ADDR=

11
22
11
22
22
22

PNT_ADDR=
PNT_ADDR=
PNT_ADDR=
PNT_ADDR=
PNT_ADDR=
PNT_ADDR=

10
10
10
10
10
10

DATA= 1 2
DATA= 1 2
CTRL_CMD=
CTRL_CMD=
CTRL_CMD=
CTRL_CMD=

3 4 5 6 7 8 9 10
3 4 5 6 7 8 9 10
PULSE 1 10 5000 100
DO_PATTERN 03h 810Ah
ON 03h, OFF 04h, ON 03h, ON 03h
SBO_TRIP 81h, SBO_COLSE 41h, SBO_CLOSE 41h

EMAIL xx1 xx2 xx3 xx4


Sends an email (with attachment, if defined) to xx1 Email Report/Alarm.
The xx1 specifies the receiver email Address.
The xx2 specifies the email Subject.
The xx3 specifies the email Attachment, or NONE (if no attachment).
The xx4 is the email message body text.
Note: xx1 xx2 xx3 xx4 will be scanned to find any possibility of Data String Template.
Sample:
MY_TASK = 1 SAVEDATA DataTemp1_@AI_USER_ID:4:I.rtf dataReport_@AI_USER_ID:4:I.rtf
MY_TASK = 2 EMAILL xyz@qwe.com Data@AI_USER_ID:4:I dataReport_@AI_USER_ID:4:I.rtf DataReport

Refer to the section 1.4.16 for the definition of Data String Template:
@AI_USER_ID:4:I.
In this sample, the task #1 is to create a data file that will be emailed by task #2 to
xyz@qwe.com in the attachment.

- 38 -

1.4.16 The Data String Template


A Data String Template is to provide the flexibility to get dynamical and real-time information
(in a File composing with some Data-String-Templates from which a report derives) as defined
in the template with Key word and TagName (Point Short Name in the HMI Point Database,
refer to the section 1.4.12 to 1.4.14). If the scanner of Template fails in checking the Key Word
and the Format, the original text remains intact.
Key Word
@@
@TagName:dd:X

@DATETIME:dd

@OPERATOR:dd

@SITENAME:dd
@AUTOSITEINFO:dd

Meaning
@@ is replaced with the character
Tab/09
@TagName:dd:X is replaced with a
value of the point defined by TagName
within space defined by dd and with
the format defined by X.
@DATETIME:dd is replaced with a
String of the current Data-Time (e.g
28/03/2006 23:23:12)
@OPERATOR:dd is replaced with a
String of the name of the current
operator.
@SITENAME:dd is replaced with
the string of the current site name.
@AUTOSITEINFO:dd is replaced
with the string of the site name that is
defined automatically as follows:
HMI_SYSTEM_SiteInfo that name
the file of the Site Information.

Note
Two consecutive character @

Refer to the section 3.2 if you


want to change the current
operator name.
Refer to the section 12.
Refer to the section 12.
You can define ENTRY
to
specify the phone book file
name. Refer to the section
1.4.6.
PHONE_NO = @AUTOSITEINFO

Note:
Where TagName is a valid Point in the current HMI Point Database defined in the section
1.4.12 to 1.4.14.
Where the dd is to define the minimum of space (the total number of characters to be
replaced). If dd characters is more the actual space needs, put more Blank character in the left
side of the current replaced string. The dd is up to 48 characters.
Where X is to define a format:
F: floating point data with three decimal point .xxx.
f: floating point data with two decimal point .xx.
I: Integer data.
n: Binary data (i.e. 0001 0101 0011 1010).
H: Hex data (i.e. 12AD).
B: If the value>0, goes with ON, otherwise OFF.
- 39 -

b: If the value>0, goes with 1, otherwise 0.


Y: If the value>0, goes with YES, otherwise NO.
P: If the value>0, goes with PASS, otherwise FAIL.
G: If the value>0, goes with GOOD, otherwise BAD.
A: If the value=0, goes with OK,
If the value=1, goes with ALARM, otherwise ****.
Samples:
Assumption: the value of PSD_AI01 is 234.5667, the state of PSD_DI01 is 1.
Tab is a character Tab:09
@@@PSD_AI01:8:F@@@PSD_DI01:5:B
is replaced with
Tab 234.567Tab
ON

- 40 -

1.4.17 The sample configuration for Modbus


ENTRY
ENTRY
;
ENTRY
;
ENTRY

;
ENTRY
ENTRY
;

SERVER_IP_PORT = 26000
SERVER_IP_ADDR = 142.52.127.61
DEV_MASTER
DEV_LINK
MB_DEV11
MB_DEV22
END

= 64
= TCP/IP
= 0, 11, 127.0.0.1
= 1, 22, 127.0.0.1

502, 51, 150


502, 51, 150

HMI_SYSTEM_NAME = c:\xMaster\HD\MB
DEV_DATABASE = SIZE
MAX_DI = 256

;
DI_MB_1X_START = 1 6
DI_MB_0X_START = 1 7
DI_MB_REG_START = 100
;
MAX_DO = 256
DO_MB_0X_START = 1 7
DO_MB_REG_START = 300
;
MAX_AI = 200
AI_MB_REG_START = 100
;
MAX_AO = 100
AO_MB_REG_START = 200
;
MAX_CNT = 64
CNT_MB_REG_START = 300
;
MAX_FR = 100
FR_MB_REG_START = 400
;
;
END
;


ENDALL

Note: Please refer to the file: MB_Master_Sample.txt in the xMasterSlave installation file/CD
for the details.

- 41 -

1.4.18 The sample configuration for Modbus Plus


ENTRY
SERVER_IP_PORT = 20001
ENTRY
FDS_USER
= 1, 10.2.12.34
;It defines the IP Port of Master Data Server and valid remote end data sharer.
;
;
; *******************************************************
; *
LINK ENTRIES
*
; *******************************************************
;
;The MB Plus
ENTRY
DEV_LINK
= MBPLUS
PLC60
=
0, 11, 11.0.0.0
;
PLC61
=
0, 22, 22.0.0.0
;
|
|
|
|
;
MBP Device
|
|
|
;
Name
|
|
|
;
DEV
|
|
;
Link
|
|
;
Session
|
|
;
Number
|
|
;
DEV
|
;
Address
|
;
MB PATH
;
END
;
; *******************************************************
; *
Device DATABASE SIZE
*
; *******************************************************
; MBP Master only retrieves data of 4x Register from MBP Device!
;
;
ENTRY
DEV_DATABASE = SIZE
;
MAX_DI = 208
;MAX Number of Digital Input
DI_MB_1X_START = 1 2
DI_MB_0X_START = 1 5
DI_MB_REG_START = 100
;The first address of the area of MB Register 4xxxx for DI.
;16 DI Points per 4xxxxx.
;
;
;
MAX_DO = 32
;MAX Number of Digital Outout
DO_MB_0X_START = 1 4
;
DO_MB_REG_START = 200
;The first address of the area of MB Register 4xxxx for DO.
;1 DO point per 4xxxxx.
;The definition is as follows:
;bit15-14: command code: 00-Pulse,
;
01-CtrlCode,
;
10-PatternCtrl, Subsequently 32-bit is the pattern
;
11;bit13: timing base: 0-50ms(if timing count=0, time=20ms),
;
1-100ms(if timing count=0, time=5s)
;bit12-08: timing count: (01 - 31)*(50ms or 100ms)
;bit07-00: if Command Code=0 then it is the Pulse Count else the ControlCode
;
refer to DNP CtrlCode:
;
0x41:SBO CLOSE
;
0x81:SBO OPEN
;
0x03:LATCH ON
;
0x04:LATCH OFF
;
0x01:PULSE
;
;
MAX_AI = 200

- 42 -

;MAX Number of Analog Input


AI_MB_REG_START = 300
;The first address of the area of MB Register 4xxxx for AI.
;
;
;
MAX_AO = 52
;MAX Number of Analog Output
AO_MB_REG_START = 500
;The first address of the area of MB Register 4xxxx for AO.
;
;
;
MAX_CNT = 0
;MAX Number of 32-bit Counter
CNT_MB_REG_START = 600
;The first address of the area of MB Register 4xxxx for CNT.
;
;
;
END
;


ENDALL

Note: Please refer to the file: MBP_Master_Sample.txt in the xMasterSlave installation file/CD
for the details.

- 43 -

1.4.19 The sample configuration for L&G


ENTRY
ENTRY
ENTRY
ENTRY
;
;
;ENTRY
;
;
;
;
;
ENTRY

;
ENTRY

SERVER_IP_PORT = 25501
FDS_USER
= 1, 10.2.12.34
SAVE_RUNNING_COUNTERS = NO
DEV_MASTER
= 64

DEV_LINK
PORT
BAUDRATE
ADDR
END
DEV_LINK
LG_DEV03
END

=
=
=
=

SERIAL
1
2400
2

= TCP/IP
= 0, 03, 127.0.0.1 30001

DEV_DATABASE = SIZE
SEAL_IN_ALARM = YES
MAX_DI = 944
MAX_DO = 129
LG_CTRL_LRU = 1, 000,
LG_CTRL_LRU = 2, 001,
LG_CTRL_LRU = 3, 001,
LG_CTRL_LRU = 4, 001,
LG_CTRL_LRU = 5, 001,
LG_CTRL_LRU = 6, 001,
LG_CTRL_LRU = 7, 001,
LG_CTRL_LRU = 8, 001,
MAX_AI = 128
MAX_AO = 64
MAX_CNT = 32
MAX_FR = 0
END

1
2
2
2
2
2
2
2


ENDALL

Note: Please refer to the file: LG_Master_Sample.txt in the xMasterSlave installation file/CD for
the details.

- 44 -

1.4.20 The sample configuration for DNP3


;
ENTRY
XMASTER_IP_PORT = 25000
ENTRY
XMASTER_CLIENT = 0, 127.0.0.1, MBRTU
;
;It defines the IP Port of DNP Master Data Server.
;
ENTRY
SAVE_RUNNING_COUNTERS = NO
;It tells DNP driver save the data of either running counter or frozen counter.
;
;
; *******************************************************
; *
DNP LINK ENTRIES
*
; *******************************************************
;The Address of DNP Master/Host is defined as follows:
ENTRY
DEV_MASTER
= 03
;
;The DNP slave is defined by as follows:
;
ENTRY
DEV_LINK
= TCP/IP
CONTROL_TIMEOUT = 7
LINK_TIMEOUT = 6000
;
RTU190
= 0, 1100, 10.2.12.50, 20000
;
|
|
|
|
;
LAN Device
|
|
|
;
Name
|
|
|
;
DNP
|
|
;
Link
|
|
;
Session
|
|
;
Number
|
|
;
DNP
|
;
Address
|
;
IP Address. IP Port
;
DNP_Dev#1 = 0, 11, 127.0.0.1, 20000
DNP_Dev#2 = 1, 22, 127.0.0.1, 20000
;
END
;
;
;The PORTn is PC serial port COMn (n:1-8).
;The setting of serial port is fixed at N,8,1
;The DNP Link Session Number is fixed at 0.
;ENTRY
DEV_LINK
= SERIAL
;
PORT
= 1
;
PC serial port #
;
BAUDRATE
= 2400
;
PC serial port SPEED
;
CONTROL_TIMEOUT = 6
;
LINK_TIMEOUT = 15000
;
ADDR
= 404
;
Slave Address
;
;
END
;
;
;
;
;The DNP Link only can be defined either TCP/IP or Serial Port.
;


ENDALL

Note: Please refer to the file: DNP_Master_Sample.txt in the xMasterSlave installation file/CD
for the details.

- 45 -

2 Start up
2.1 Making the registration file
If it is the first time to run the xMaster program on the current PC, you will be asked to register
the xMaster software and send the registration file: "software.aut" to the xMaster developer. And
the xMaster developer will send you back two files: "software.aut" and "software.key". You
should copy them into the directory "c:\xMaster". The register window is shown in the
screenshot Figure 2-1.
Max. Length =50

Max. Length=60

Figure 2-1

You can directly make the registration file when you install the xMasterSlave by using the
program of the installation. Refer to the section 1.3.
If the xMaster fails in checking the register file, it aborts automatically without notices. You can
check the log file to find the related information.

- 46 -

2.2 Running the xMaster


You might have to login to MS Windows first. To run the xMaster HMI program double click on
the icon of x_Master.exe (where the x can be DNP/MB/MBP/LG) on the Desktop in the MS
Windows (if you setup a shortcut of x_Master.exe). You might setup a shortcut in the Windows
Startup in order to directly and automatically run this xMaster HMI program after the reboot of
the HMI PC. You will see a window (as shown in the screenshot Figure 2-2) after launching the
x_Master.exe. Alternately, you can use xMaster Launcher program: "xMaster.exe" to manage
and to manually run your individual application (as shown in the screenshot Figure 2-3).

Figure 2-2

- 47 -

The xMaster Application Launcher program so called "xMaster.exe" allows you to run the
xMaster HMI program for the practical application (up to 255 applications in the list - as shown
in the screenshot Figure2-3) if you do not want to use the default name of the file of the
configuration described in the section 1.4.1.
To make the list:
Step #1: Select the xMaster

Double click on the current item of the list


to open the configuration file.

Step #3: Save the list.

Run the
x_Slave
Applications.

To Run it:
Select an item first, and then Click on
the button of "Run x_Master".

Step #2: Pick up the configuration file


and add it into the list

Figure 2-3

In order to make a shortcut of xMaster.exe, you can press this button


to find the information need and fill in the Target (refer to the
screenshot left side). You can either make the shortcut of xMaster on
the Desktop, or in the group of Startup of Windows to run user
applications automatically after rebooting the current HMI PC.
The definition of contents of the shortcut is as follows:
xMaster.exe xxxxx i j k l m n

The name of
the file of the
list.

The index of the


application in the
list.

The first index is the first application to be launched to running, and


so on.

- 48 -

Refer to the sample of configuration in the section 1.4.17-20, the main display will be shown
similarly in the screenshot Figure 2-4. And an Alert icon of the communication failure will show
up in the left up corner of the screen if the x_Master, DNP_Master, for example, is not connected
to the DNP Slave device. Note: The Data Acquisition Sessions and HMI Display runs
automatically when you launch the x_Master.exe (where the x can be DNP/MB/MBP/LG).

Figure 2-4

You can open the window menu (shown as in the screenshot Figure 2-5, Figure 2-7) by clicking
on the icon located
at the beginning of the title of the window. You can stop the HMI
Monitor Run-time and start the HMI Editor by clicking on the menu "STOP". Now you are in the
HMI Display Editor mode and able to edit/draw HMI Display pages/HMI Object-Shapes. The
window of the HMI Display Editor Functions will show up as shown in the screenshot Figure 26. Refer to section 7 to learn how to use the HMI Display Editor.
Note: In the Windows TaskBar and Start Menu Properties, you must check the item of
"Always On top" and the item of "Auto hide".

- 49 -

Figure 2-5

Save the current HMI Display Page

Undo operation

Open a HMI Display Page and Add


into the current HMI Display page.
Save and Add the current HMI
Display Page into a file.

Begin a New HMI Display Page


Open a HMI Display Page

Exclusively edit/draw the


current selected pre-defined
Object-Shape.

Editor Working Mode


Operations on a Block of
Shapes.
The current Object-Shape
that you select. And it can
be exclusively operated
when the "Lock it" is
checked.

Click on it to see the sample of


the current selected ObjectShape.
Click on these colorful
rectangles to pick the color
that you want.
Figure 2-6

- 50 -

Closes the current xMaster program.


Opens or Closes the HMI Alert/Log window.

Opens or Closes the Function Key Bar.

Creates New HMI Display File.


Opens the HMI Display File.
Saves the HMI Display File.
Reloads point assignment table (described in the section 1.4.12
to 16) from configuration file. Refer to section 1.4.
Opens the window of HMI Point Database

Runs or Stops the HMI Display Monitor. The Data Acquisition


Sessions and HMI Display are run automatically when you
launch the x_Master.exe (where the x can be
DNP/MB/MBP/LG). STOP also will clear/reset all existing tags!
Opens the window of the xMaster PLC program runtime
simulator.
Figure 2-7

Views files with the Notepad.exe.

- 51 -

3 Main Menu Display


After a few seconds while being launched, the HMI software will open a window (as shown in
the screenshot Figure 3-1). In this window, you will see buttons located at the bottom of the
window.
Exit the HMI software.
The password is
xmaster.

Red in color tells you


that it is under
security-control.

It will not be available


until the FIRST TIME
Integrity Poll is
finished.

It can be changed by
modifying the section of
STATION_INFO in the
configuration. Refer to
the section 1.4.4

Figure 3-1

To enter HMI functions, click on buttons in the Main Menu (Buttons enabled by definitions
in the section 1.4.4 and 1.4.10).
Refer to sections 3-1 to 3-12

- 52 -

3.1 Main Menu -- [Digital Input]


It displays all Status points defined in the configuration. Refer to the section 1.4.14
and the section 4. Also you can Right-Click on it to open an individual window of
Status-Display.

3.2 Main Menu -- [Analogue Input]


It displays all Register/Analog/Metering points defined in the configuration. Refer to
the section 1.4.13 and the section 5. Also you can Right-Click on it to open an
individual window of Meter-Data/Analogue-Display.

3.3 Main Menu -- [Alarm Recorder]


It opens the window of the Alarm Monitor/Recorder, which allows you to watch and
to search Alarm Information. Refer to the section 6. Also you can Right-Click on it to
open an individual window of Alarm-Panel Display.

3.4 Main Menu -- [HMI Display]


It enters HMI Display Monitor and Editor.
Refer to the section 1.4.4 and the section 7.

3.5 Main Menu -- [Data Matrix Editor]


It opens the window of the Data Matrix Monitor and Editor.
Refer to the section 1.4.10 and the section 8.

3.6 Main Menu -- [PLC Program Runtime Simulator]


It opens the window of the PLC Program Runtime Simulator.
Refer to the section 1.4.4 and the section 9.

3.7 Main Menu -- [Digital Output]


Open the Digital Output Operation Panel. Refer to the section 4.1.

3.8 Main Menu -- [Security/Control]


The button of [Security/Control] is to lock and unlock security and control functionality. And
enable the button: [Digital Output] and the button: [Phone Book] if applied (refer to section 1.4.6
and 7.1.11).

- 53 -

3.9 Main Menu -- [HMI Points Database]


The button of [HMI Points Database] is to open the window of the HMI Point Database.

3.10 Main Menu -- [Logs]


The button of [Logs] is to open the window of the Log information generated by HMI.

3.11 Main Menu -- [Other Info.]


The button of {Other Info.] is to open an Information file (i.e. Configuration, Operator Manual,
Station Information, etc.). The name of the file is defined in the configuration. Refer to the
section 1.4.4.

3.12 Main Menu -- [Troubleshooting]


The button of [Troubleshooting] is to open the window of the diagnosis on the communication
and commands related to Data Acquisition and Controls.

3.13 Exit and the Password


To exit the xMaster HMI software program, click on the "Close Alt-F4" in the system menu, or
the button of "X" (Close Window) at the right up corner of the screen. Refer to the screenshot
Figure 2-7 and 3-1. The password is xmaster.

3.14 Change the Operator Name


The default operator name is "PCD".
Refer to the screenshot Figure 3-1 and 7-4, you can click on the button:[Security/Control] and
[Lockout] and a window appears (refer to the screenshot Figure 4-2), in which you can input the
new name of the operator if the password is checked correct.

- 54 -

4 Status Display
To check all status points defined in the current configuration (refer to the section 1.4.12 and
1.4.14), click on the button: [Digital Input]

in the Main Menu. Refer to the

screenshot Figure 3-1, and Figure 4-1.


Double-Click on
it to print the
current screen.

Previous/Next
20 Points.

Directly go to
the point you
want.

Go back
to Main
Menu
display.

Ack to changes
in the current
page or ALL.

The Status Point Name


is defined by DI short
name. Refer to the
section 1.4.12 and 14.

Figure 4-1

Clicking on the
status point name
to see the detail.

- 55 -

4.1 DO Controls Operations


In order to operate DO Controls, first you have to unlock the security/control by clicking on the
button [Security/Control] as shown in the screenshot Figure 3-1.
Please check the Sample #5 -- DO/AO Controls in the section 7.2.2 and the Figure 7-13.

Figure 4-2

And after checking the password, you have three options: [Yes], [No] and [Cancel] as shown in
the screenshot Figure 4-2. Please click on the button: [No] to enable controls.
If the control is enabled, you can do a double-click on the Status Point name in the Status
Display as shown in the screenshot Figure 4-1 to open a Control Panel as shown in the
screenshot Figure 4-3 to 4-8.
The title of the window is the short name of
the current DI point.
Select the control
command. You may refer
to Table Item No.7 in the
section 1 and definitions
(CTRL_ADDR) in the
section 1.4.14.

Figure 4-3

For DNP, you may have


to specify the control
code. Normally it does
not need to change and
you just go with the
default.

You select the DO point in the list


(DeviceAddress.PointNumber PointName) by a double-click on
the Point Name (Obj #ddd ttttt Pt#dd in Yellow color, refer to
the screenshot Figure 4-4 to 4-8).
Note: The DO/AO point number is strarting from 0.

- 56 -

DO PULSE OUTPUT.
DNP PULSE OUTPUT Control Code is 0x01.
ON_TIME is the pulse ON TIME. OFF_TIME is the pulse OFF
TIME.
For MB PLC, refer to the section1.4.9.

Figure 4-4

DO LATCH ON / LATCH OFF.


DNP DO LATCH ON Control Code is 0x03. DNP DO LATCH OFF
Control Code is 0x04.
For MB PLC, refer to the section1.4.9.

Figure 4-5

DO 16BIT PATTERN OUTPUT FOR DNP.


DO 24BIT PATTERN OUTPUT FOR L&G.
You can specify the DNP Control Code for DO Patten Out.
For MB PLC, refer to the section1.4.9.

Figure 4-6

SBO OPEN / SBO CLOSE


DNP SBO OPEN Control Code is 0x81. DNP SBO CLOSE Control
Code is 0x41.
For MB PLC, refer to the section1.4.9.
Figure 4-7

DO RAISE / DO LOWER
You can specify the DNP Control Code for RAISE/LOWER.
For MB PLC, refer to the section1.4.9.

Figure 4-8

- 57 -

To execute the control command, you click on the button [Execute] after setting parameters for
the current control command properly. You will see the ACK information for the control
command in the title of the window as shown in the screenshot Figure 4-9.
ACK information for the current control command.

Figure 4-9

If the control command is failed, you will see NAK information in the title of the window as
shown in the screenshot Figure 4-10.
NAK information for the control command.

Figure 4-10

- 58 -

4.2 Add a Tag to inhibit Controls / Operations


You can add a tag to inhibit Controls / Operations. The button [Execute] will be disabled.

Click on it to add/edit a tag.

A tag on it for the attention-getting. You cannot


execute the control unless the tag is removed. You
can click on it for details of the tag.

You can check the list of tag in HMI Point Database Table (Refer to following screenshot)

You can see the a


flag t beside the
control configured
HMI shape Object.

Click on it to pick
up a point.

- 59 -

5 Register/Analogue Input/Metering Display


To check all register/analogue/metering points defined in the current configuration (refer to the
section 1.4.11 to13), click on the button: [Analogue Input]

in the Main Menu. Refer to

the screenshot Figure 1-2, Figure 3-1, and Figure 5-1.


You can click
on the Caption
to open a list
of the Maters.

Group/Meter Name defined in


the configuration. Refer to the
section 1.4.11.

Each Item Name/Label defined in the


configuration. Refer to the section
1.4.13 (Entries: METER, ENGUNIT
and END_NAME).

Figure 5-1

- 60 -

5.1 Meter Data/AI Properties Window


Sometimes, you may want see properties of the current AI/Metering data. You can make a
Double-click on the current item to open the window of "Analog Input Point Properties" shown
in the screenshot Figure 5-2. You may have to make some adjustments for calculations on the
engineering value or try to find out the proper settings for the current AI/Metering point.
You can
temporarily
change these
properties by a
click on the
button of
"Apply" or
refer to the
section 1.4.13
to change the
configuration.

It is the
time stamp.

The Index of
Point in the
Data
Acquisition
Real-time
Database.
Figure 5-2

It is to Real-timely
update the information.
If you want to change
some AI Properties, it
must be unchecked.

It is to open a History
Display Window.
Refer to the section
5.3.

- 61 -

5.2 Analogue Output / SetPoint Command Operation


To send an Analogue Output Control Command, you can click on the button of "AO-SetPoint" to
expand the window of "Analog Input Point Properties" shown in the screenshot Figure 5-3.
Please check the Sample #5 -- DO/AO Controls in the section 7.2.2 and the Figure 7-13.

The ACK /
NAK
information
for the
current AO
command
will be put
in the title
of the
window.

The Point
Number
(0000)
1st Point

The
Device
Address
(0011)

Step#2:
The value
of AO.
Double
Click on it
to open a
ScreenKeyboard.

Step#1: Pick up an AO point or


defined by the CTRL_ADDR. Refer
to the section 1.4.13.
Figure 5-3

Step#3: Click on the button of "OK".


You may want to scale the AO value with
the current AI properties.
Step#4: watch the ACK information of the
current AO Command.

Note: If the current Point is formatted by FR (refer to the section 1.4.13) the AO
command is floating point output.

- 62 -

5.3 Display the History of the Meter Data/Analogue


If the current Meter Data/Analogue Point is defined to generate a history data file (refer to the
section 1.4.13) you can directly display it in the HMI display, refer to 7.3.71. Also you can open
a window to display the history, which is shown in the screenshot Figure 5-4, 5-5, 5-6, 5-7, 5-8
and 5-9.

You can make a double-click on the current item to


open either the Meter Data/AI Properties Window, or
the Meter Data/AI History.

Figure 5-4

- 63 -

You can make a double-click on the current item to


open either the Meter Data/AI Properties Window, or
the Meter Data/AI History.

Figure 5-5

- 64 -

You can selectively


display up to six
lines/curves.

There are up to SIX history data points in the


Window. The first one is the default that comes
from the item that you select. Refer to 5-4, and
5-5. You also can pick up available one from
the list by double clicking on it.
The scaling data (i.e. -2048/-100% to
+2047/+100%) are defined by the current
point. Refer to the section 1.4.13.
You can click on it to do the selection of the
current line and check the history data by click
on the history data curve line. Refer to the
screenshot Figure 5-8.

Figure 5-6

You can press left button of


mouse and hold and drag the
history curve screen to left or
to right.

- 65 -

You may able to play/trace


(Previous/Next) records from history
file. And you can directly pick up the
starting checking point from the list.

You can also check the Meter


Data/AI Properties. Refer to the
section 5.1.
And you change some settings
too.

You can change the background


color. Refer to the screenshot
Figure 5-9.

Figure 5-7

- 66 -

It is the cursor of checking point of the current


History. Click on the curve to make a checking-point.

The area in Blue color is 0% to +100% of High


Engineering value. The area in Red color is -100% to
0% of Low Engineering value. Refer to the section
1.4.13.

You can check the history data by click on the history


data curve line. The history data/record information
will be displayed accordingly.

Figure 5-8

You can continuously and


dynamically monitor and display
history data. Refer to similar
display in the section 7.3.73

Here is the history data/record


information.

- 67 -

You can change the background color to white.


Refer to the screenshot Figure 5-7 and Figure 5-9.

The list of the history data of the


current point. The Point Index is 0
to 5.

The current checking-point.

Figure 5-9

- 68 -

6 Alarm Recorder/Annunciation
To check all alarm points defined in the current configuration (refer to the section 1.4.14), click
on the button: [Alarm Recorder]

in the Main Menu. Refer to the screenshot Figure 3-

1, and Figure 6-1.

Reset inactive
Alarms.

To put the
Alarm
Recorder
Window on
the top of
desktop.

There are up to 4096 alarms that are


defined in the configuration. It tells you
the Alarm No.#, the description, the total
alarms in the summary and the count of
the current active alarm(s), etc. Refer to
the section 6.2.

To open the
alarm panel
window. Refer
to the section
6.1.

To open the
alarm log
window.
Refer to the
section 6.3.

Close the Alarm


Monitor/Recorder
Window

To acknowledge
the active alarm.

The description is the long name of the current point. Refer to the
section 1.4.13/14.
Note: If a wav file named associated with the Point Name exists,
play the wav until ACKed (any buttons for the feature of ACKed).

To search the
history of alarms.

Figure 6-1

It is checked to enable the Alarm-Recorder to seal in the


alarm that is no longer active (alarm logic is OFF/"0").
Otherwise you will not see the alarm if the associated alarm
point becomes back to OFF/"0". Refer to the section 1.4.9.

- 69 -

6.1 Alarm Summary-TableSheet Display


In the screenshot Figure 6-2, as an example, there are some alarms that have been detected and
listed in the list of Unconfirmed Alarms. You can click on one in this list and click on the
button of [Acknowledge] to confirm it. The alarm item you have confirmed will be deleted in
this list and the same alarm in the list of Summary will be marked as Confirmed/Acknowledged
(the related information will be in the column of ACK Person in the list of Summary).

If the background color is Highlight-Blue, the


current alarm is active.

The Alarm # in the


Summary-TableSheet.

Figure 6-2

If the background color is changed from Highlight-Blue to


Highlight-Yellow it means the current alarm is
acknowledged.

- 70 -

6.1.1 Acknowledge Alarms in the list of Unconfirmed Alarms


In the screenshot Figure 6-2, the unconfirmed and active alarm will be in the list of
Unconfirmed Alarms. And it tells the total of items in the list so far. You can click on one by one
to confirm/Acknowledge it, or go to the alarm panel and select all active alarms and
acknowledge all (refer to the section 6.2 and the screenshot Figure 6-5).
6.1.2 Summary of Alarms
In the configuration, the alarm you have defined will be in the list of Summary. Also this list tells
you which alarm is active or acknowledged and the time-stamp. Refer to the screenshot Figure 61 and 6-2.
6.1.3 Clean up (Reset) Alarms
If the current alarm in the list of Unconfirmed Alarms goes back to normal state, you can clean
up it (the recorded Alarm Information) by clicking on the button of "Clean up".

- 71 -

6.2 Alarm Panel Display


The Alarm Panel Display as shown in the screenshot Figure 6-3 is another way where the alarm
is annunciated to you more looking like a physical panel with lights in different colors displayed
as follows:
White: Normal.

Refer to the section 6.2.2.

Blue: a selected alarm panel item.

Red: an Active alarm.

Refer to the section 6.2.2.

Refer to the section 6.2.1.

An active alarm

30 (6x5) units per page


The description is the long name of
the current point. Refer to the
section 1.4.13/14.
The max. length of description is
48 characters.

A Right-Click
on the unit to
popup a menu.

Figure 6-3

The list of commands for operating the Alarm Panel.


1. [Return to Alarm Recorder]: Go back the main display of the alarm recorder.
2. [ACK the selected]: To acknowledge only the selected active alarm.
3. [ACK Page]: To acknowledge active alarm(s) only in the current page.
4. [ACK ALL]: To acknowledge active alarm(s).
5. [Clean up the selected]: To clean up only the selected alarm event(s).
6. [Clean up in the Page]: To clean up alarm event(s) only in the current page.
7. [Clean up ALL]: To clean up all alarm event(s).
8. [Unselect Page]: Reset selection(s) only in the current page.
9. [Unselect ALL]: Reset selection(s).
10. [Display Active Alarm(s)]: Panel Display Filter for the active alarm.
11. [Display ACKed Alarm(s)]: Panel Display Filter for the Acknowledged alarm.
12. [Display All]: Reset Panel Display Filter and display all of unit.
13. [ACK the current Alarm]: To acknowledge the current active alarm.
14. [Clean up the current Alarm]: To clean up the current alarm.
- 72 -

You can
change the
Text Font
Color of
above alarm
description.

6.2.1 The Selection in the Panel


In order to selectively display and acknowledge Alarm(s) in the panel, you can click on the unit
that you want to select or unselect. Refer to the screenshot Figure 6-4.

Selected units

Figure 6-4

- 73 -

6.2.2 Active Alarms in the Alarm Plane


If the HMI Data Acquisition detects an alarm/event, the associated unit in the panel will be
highlighted in the color of RED and will blink. Refer to the screenshot Figure 6-5.

Active alarms
It is the hint of the
current Alarm that tells
you the Alarm#, when
occurs and the point
address.

ACKed
alarms. It
could be no
longer active
alarm.

Figure 6-5

- 74 -

6.2.3 Acknowledge and Clean up Alarm in the Alarm Panel


You can make an ACK to the current Active Alarm. Refer to the screenshot Figure 6-5 and 6-6.

You can clear


inactive alarms
only.
You can simply do a rightclick on it to popup this menu
and to make an ACK.

Figure 6-6

You can use above menu commands: Clean up the selected/Clean up in the Page/Clean up
ALL to clean up recorded alarm information when you are sure that all alarms become inactive
(all back to alarm normal state).
The ACK command also stops playing the current alarm sound triggered by the alarms. Refer to
the section 1.4.13 and 1.4.14.

- 75 -

6.3 Alarm Log Display


As an alternative way to watch the list of active/inactive alarms, the detail information of the
current alarm will be logged in the Alarm Log Display as shown in the screenshot Figure 1-3 and
Figure 6-7. In the log, you can find when the alarm was active and when was inactive due to the
state was CLOSE or OPEN (Please be aware of whether the current Alarm/Status point is
inverted, refer to the section 1.4.14: "AUTH_ST" and "STATCONV"). Load the history of the Alarm
Log Information. Refer to the
section 6.3.1

Figure 6-7

You can check the detailed information


related to the current alarm.

The description is the long


name of the current point.
Refer to the section
1.4.13.

This column information is the Alarm # in


the Summary-Tablesheet. Refer to the
section 6.1 and the screenshot Figure 6-2
This column information is the Log
Sequence ID in the Alarm Log.

A DbClick on it to change the color of the background (Black


or Gray).

- 76 -

6.3.1 Alarm Log Information and File


The Alarm Log Window provides you with the alarm log information only, which tells when the
alarm is found active and when no longer active. Refer to the screenshot Figure 6-7. The alarm
log information will be saved into a file when the buffer of the list is full. The name of the Alarm
Log File will be "Alm_Log_YYYY_MM_DD.TXT", where the "YYYY" is the Year, "MM" is
the month and "DD" is the date. So you can check out the "OLD" log information by clicking on
the button of "LoadAlmLogFile" in the top area of the window of the Alarm Log as shown in the
screenshot Figure 6-7.

6.3.2 Ack and Delete Alarm Log Information


You might have to click on items to acknowledge and delete recorded Alarm Log Information by
clicking on some buttons as shown in the screenshot Figure 6-8. Note: It does ACK and
DELETE log information only, it is not going to ACK / DELETE ALARMs (you still see the
alarm related information described in the section 6.1 and 6.2). Another word, the Alarm Log is a
kind of auxiliary display for checking Alarm events.
You can manually save
logs in the window into
a Text file.

Figure 6-8

Once acknowledged, a Check-Mark will be put


on it.

- 77 -

6.4 Search Alarm-History


Refer to the screenshot Figure 6-1 click on the button of [Search Alarm History] to open the
Alarm History Search window as shown in the screenshot Figure 6-9.
It starts the search
from Alarm Records
file:
YYYY_MM_Alarm
Manager.txt (where
YYYY/MM is the
Year/Month).

You can export the search


results to the excel file.

The search
results

Figure 6-9

The Start
Date & Time

The End Date


& Time

Define a filter
for searching

- 78 -

6.5 The Stand-alone Alarm-Panel Window


Please the section 3.3 you can open a stand-alone Alarm-Panel window. Refer to the figure 6-10
and 6-11.

To close the
window.

You can select it and


find some buttons
appear at bottom if
applicable.

After 3 minutes running


HMI system, the first active
alarm will be recorded as
the 1st-occurrence alarm.

Figure 6-10

You can change the


Font and Color of the
Alarm Text.

You can check the HMI display page that is associated


the current Alarm point.
Here is a sample of the configuration of a
status/alarm point:
ENTRY

NAME
LONGNAME
FORMAT
PROCTYPE
STATCONV
PNT_ADDR
PNT_DEV
ALARM
ALARM_GROUP

=
=
=
=
=
=
=
=
=

DI_0003
Digital Input #3
DI
ONOFF
NO
2
11
YES c:\xMaster\HMI_SAMPLE_BUTTON.HMI
1

Refer to the section 1.4.13 and 1.4.14.

- 79 -

The current Alarm


point is Offline
(fail).

Figure 6-11

- 80 -

6.6 To make up a version of only Alarm Annunciation


You can make up a version of Only Alarm Display/Annunciation (shown in the screenshot
Figure 6-10) by setting "STATUS_DISPLAY = NO" and "METERING_DISPLAY = NO" in the
configuration. Refer to the section 1.4.4.

Figure 6-12
ENTRY

ENTRY

DEV_LINK
= TCP/IP
MB_DEV11
= 0, 11, 127.0.0.1 502, 51, 150
END
ENTRY
DEV_DATABASE = SIZE
MAX_DI = 256
DI_MB_1X_START = 1 10
DI_MB_REG_START = 100
MAX_AI = 200
AI_MB_REG_START = 200
END
ENTRY
STATION_INFO
MB Master for Local Alarm HMI
END
ENTRY
STATUS_DISPLAY = NO
ENTRY
METERING_DISPLAY = NO
ENTRY
NAME
= ALARM_01
LONGNAME
= T1 out of service
PNT_ADDR
= 0
ENTRY
NAME
= ALARM_02
LONGNAME
= T1 Tap Changer is no response

NAME
LONGNAME

= ALARM_03
= T1 Ctrl Failed

ENTRY

NAME
LONGNAME

= ALARM_998
= xxxxxxxxxxFailed

ENTRY

NAME
LONGNAME

= ALARM_999
= xxxxxxxxxxFailed

ENDALL

After the ALARM_01, the point address can be assigned to the next one automatically. In above sample, the
point address of ALARM_02 is 1. The point address of ALARM_03 is 2, and so on. The point address of
ALARM 999 is 998. The LONGNAME will become the description of the current alarm point.

- 81 -

7 HMI Display
If you define a HMI Page/Display in the configuration (refer to the section 1.4.4) you can click
on the button of [HMI Display]

(refer to the section 3 and the screenshot Figure 3-1)

to enter the HMI Display.


Figure 7-1, 7-2, 7-3 are samples of the HMI display page. Specially, in the figure 7-2, it shows
most of pre-defined HMI object-shapes.
(X, Y) = (1, 1) X: Specifies the x-coordinate of the position, in logical
units. Y: Specifies the y-coordinate of the position, in logical units.

Figure 7-1

Y-Coordinate
1 - 32767

The Function Key Bar.


You can re-locate it and close it.
Moving the mouse point on the button
you will see the related hint of it.

- 82 -

X-Coordinate
1 - 32767

Figure 7-2
(Close the Function Key Bar)

If you see the cursor changes to HandPoint


when you move the mouse to point at a
HMI Object-Shape (i.e. Button, etc.), it
means that you can click on it to popup a
control panel/menu. And you can do what it
is configured as. Otherwise it is neither
configured available, nor the control
function is unlocked up by Control-Level
(refer to 7.1.12).

- 83 -

To display the grid.

Figure 7-3
(Enter the Editing Mode of the HMI Display. Refer to the section 2 and the screenshot Figure 2-5 / 2-6)

- 84 -

7.1 Function Key Bar


There is a default arrangement of functioning Keys/Buttons for the basic HMI display operation
described below. To do these operations you can directly press the function key F1-F12 in the
PC Keyboard.
Note: Pressing Key [Home] can Open/Close the bar.
It creates / opens the HMI Page
Path to select/switch the current
page.

A right-click on it to
open the popup
menu. You can ADD
or DELETE an
item/Page. And you
can switch to the
page in the main
HMI display
window or pop up a
HMI page in a standalone HMI Viewer
window. Also you
can drag a page on
either the list of popup HMI page or a
existing HMI pop-up
window and this
page will be
displayed
immediately.

The list of pop-up


HMI page.

Phone Book

If the DCA is running


over the Modem/Phone
Line. Refer to the
section 1.4.6

Figure 7-4

Disable/Enable blinking on
changes.

Buttons for Re-Locating, Closing the Function Key Bar

U:
B:
L:
R:
X:
W:

Top of Screen.
Bottom of Screen.
Lift of Screen.
Right of Screen.
Closing this function key bar.
Opening or Closing Log Display. (Refer to the section 7.1.13)

- 85 -

7.1.1

F1 Pages/Phone Book for Dialing up Modem

You can click on [Pages] to show/edit/save all pages (file:*.PGE) in the current HMI. Refer to
the screenshot Figure 7-4. If the DCA driver is running over the Modem/Phone Line, you can
open the phone book (refer to 1.4.6, 7.1.11). You also can design a button in the HMI display to
open the phone book, refer to the section 7.3.11.
7.1.2 F2 -- PgChild
Switches to the Child-Page of the current Page.
7.1.3 F3 -- PgDn
Switches to the Next-Page of the current Page.
7.1.4 F4 -- PgRet
Returns to the previous page of the current Page.
7.1.5 F5 -- PageAck
You can click on the button: [PageAck] is to acknowledge all changes (Blinking HMI display
objects: indicators, etc.) shown in the current HMI display page. Otherwise Objects with
corresponding data changed will be blinking. So before doing the [PageAck] you can find
changed data (i.e. status change). It also stops playing the sound triggered by Alarms.
7.1.6 F6 -- PLCPro
Opens the window of the PLC Program Runtime Simulator. Refer the Section 9.
7.1.7 F7 -- Print Display
Prints the current screen entirely.
7.1.8 F8 -- User Appl.
It is to trigger the user application tasks defined in the section 1.4.15.
7.1.9 F9 -- MENU
Goes back to the Main Menu Display. Refer to the section 3.
7.1.10 F10 -- ALARM
Opens the window of the Alarm Recorder/Display. Refer to the section 6.

- 86 -

7.1.11 F11 -- Lockout


Clicks on the button: [Lockout] to lock or unlock the Window Desktop and Control Function.
This button function does the same function as [Security/Control] does: lock and unlock
security and control functionality. Refer to the section 4.1 and the screenshot Figure 4-2.
You have to input the password to get in it. You have three options as follows:
[YES]: To Disable Master/HMI CONTROL Operations and To Lock Windows Desktop and
Start Bar Menu.
[No]: To Enable Master/HMI Control Operations and To Unlock Windows Desktop and Start
Bar Menu. If the current DCA Driver is running over the Modem/Phone Line, the button: [Phone
Book] as shown in the screenshot below will appear. Refer to the section 1.4.6 and 11.2.
[Cancel]: To Disable Master/HMI Control Operations and Exit.

The phone book is a Text-Formatted file. Each line in the


file is the phone number information and another two
segments separated by the character: Tab (09). The 1st
segment is the phone number. The 2nd is the
name/information of the remote end. The 3rd is the
others, slave address, for example. Refer the section 1.4.6
and 12 for the definition of Phone Book File Name.

Select a phone
number and dial
it.

- 87 -

7.1.12 F12 -- BntCtrl


You can set up the Security-Level as shown in the screenshot Figure 7-5, 7-6 and 7-16 to protect
very important functions from the improper operation.

Figure 7-5

Control-Level from
lowest 0 to Highest
15. Functioning with
the higher Control
level will be disabled
(You will not see the
cursor changes to
HandPoint

A sample of configuration of the


"BUTTON" in the HMI display.
ENTRY= dd
SHAPE= BUTTON
LEFT= 5
TOP= 610
WIDTH= 118
HEIGHT= 41
CAPTION= Button #13
HINT= This a Button #13
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= NONE SBO 2 3 1 1000
ENDE
|
The Control-Level = 3 <Refer to the screenshot Figure 7-21

).

Input the password


("!0","!1","!2",,"!15")
followed by Enter Key.
Figure 7-6

Disable functioning for ALL CONTROLS


IN THE CURRENT HMI DISPLAY
PAGE ONLY! Using the Control-Level is
better.

- 88 -

7.1.13 Logs Information Window


Refer to the screenshot Figure 2-5 and 2-7, execute the menu command of "Open Alert/Log
Win", or click on the button of "W" in the Function Key Bar (Refer to the section 7.1 and the
screenshot 7-2). You can open or close the log window as shown in the screenshot Figure 7-7.

This string on the top is the


latest information of the
Data Acquisition System.

You can click


on this button
to close the
window of
"Alert/Log"

Opens the window of the


Alarm Recorder/Display.
Refer to the section 6.

Figure 7-7

It is the Alert/Log Window.


The name of log file is
"Alert_Alarm_Logfile.txt"

Changes the size of the window

- 89 -

You can
search a
string/loginformation
in the
Alert/Log
window.

7.2 Edit/Draw HMI Display


Refer to the screenshot Figure 2-7, Stop the HMI Display Monitor, you can enter the HMI
Display Editor. And the window of "HMI Display Editor Functions" will show up. Refer to
screenshot Figure 2-6 and Figure 7-8.
Note: You must load the file that you want to edit after stopping the HMI Display Monitor.
Do not edit the running display.

Figure 7-8

7.2.1 Files and its format


The HMI Display file is TEXT based (refer to the section 7.2.2). So you can use any text editor
(i.e. Notepad) to edit it. Normally you do not need to modify it directly. But sometime for
making a quick change, you may direct open and modify it by using "Notepad". The HMI
display can be loaded online by following steps as follows:
Step#1: Open/Modify/Save the HMI Display in the "Notepad".
Step#2: Execute the menu command: "RUN", refer to the screenshot Figure 2-7.
Step#3: The new display is ready to be loaded. Refer to the section 7-1-1/2/3/4 and 7-3-11.

The operation of file is described as follows:


New: Begins a New HMI Display Page.
Open: Cleans up the current display and Open an existing HMI Display Page.
Save: Saves the current HMI Display Page.
Open-Add: Opens an existing HMI Display Page and Add into the current display.
Save-Add: Saves the current display and Add into an existing file.

- 90 -

The following is the table 7-1 that tells you the reserved keyword used in the HMI Display file.
Table 7-1

Keyword

Meaning

Keyword

Meaning

ENTRY

Beginning the definition of


a Shape.
Specifies the x-coordinate
of the shape position, in
logical units.
Specifies the width in
pixels of the Shape.
A brushs color determines
what color the canvas uses
to fill shapes. See the
Table 7-2. It is the color
of Boolean Logic OFF/"0".
A brush style determines
what pattern the canvas
uses to fill shapes. See
the Table 7-5. It is fixed
at SOLID.
A pens color determines
the color of the lines the
pen draws, including lines
drawn as the boundaries of
shapes, as well as other
lines and polylines. See
the Table 7-2.
Assign a point of the HMI
Point Database. And the
tie-in control point and
function. Refer to the
section 7.2.5.
Specifies the number of
columns in the grid.
Specifies the image (the
BMP file name) that appears
on the image shape.

SHAPE

The Shape Code. Refer to the


section 7.3.
Specifies the y-coordinate of
the shape position, in
logical units.
Specifies the height in
pixels of the Shape.
Specifies the color for
alarming. See the Table 7-2.
It is the color of Boolean
Logic ON/"1".

Contains the text string


that can appear when the
user moves the mouse over
the shape.
Identifies the typeface of
the font.
Specifies the color of the
text.

CAPTION

LEFT
WIDTH
BRUSHCOLOR

BRUSHSTYLE

PENCOLOR

DB_PNT

COLCOUNT
PICTURE

HINT

FONTNAME
FONTCOLOR
DISPLAY

TOP
HEIGHT
A_COLOR

F_COLOR

PENSTYLE

Specifies the color for


indicating the failure. See
the Table 7-2. It is the
color of OFFLINE/Failure on
the current data.
A pens Style property allows
you to set solid lines,
dashed lines, dotted lines,
and so on. See the Table 7-4.

PENWIDTH

A pens width determines the


thickness, in pixels, of the
lines it draws.

ROWCOUNT

Specifies the number of rows


in the grid
Lists the items (strings) in
the HMI Object-Shape of
StringGrid/RadioGroup/ListBox
/ComboBox.
Specifies the caption that
appears on the shape (only
for Button, Text, CheckBox
and RadioGroup).
Specifies the height of the
font in points.
The color of the current HMI
Display Background. See the
Table 7-2.

ITEM

FONTSIZE
BACKCOLOR

Specifies how the current


HMI Object-Shape of TEXT
works. Refer to the Figure
7-23.

Note: Parameters #1 to #6 Information in the DB_PNT as follows:


#1
#2
#3
#4
#5 - option
TagName
Or
Device Address
Sample

Control
Function

Control Point
Number

Control Level

DB_PNT= 11 SBO 2 3 1 1000

Refer to the screenshot Figure 7-14

- 91 -

SetPoint Value
Or
Pulse Count

#6 - option
Pulse Duration

The following is the table 7-2 that tells you the COLOR code used in the HMI Display file.
Table 7-2

Keyword

Meaning

Keyword

Meaning

AQUA
BLUE
DKGRAY
FUCHSIA
GRAY
GREEN
LIME
LTGRAY
NAVY
OLIVE
PURPLE
RED
SILVER
TEAL
WHITE
YELLOW
BLACK
MAROON
0xdddddddd

Aqua
Blue
Dark Gray
Fuchsia
Gray
Green
Lime green
Light Gray
Navy blue
Olive green
Purple
Red
Silver
Teal
White
Yellow
Black
Maroon
RGB Value

BACKGROUND
ACTIONCAPTION
INACTIVECAPTION
MENU
WINDOW
WINDOWFRAME
MENUTEXT
WINDOWTEXT
CAPTIONTEXT
ACTIVEBORDER
INACTIVEBORDER
APPWORKSPACE
HIGHLIGHT
HIGHLIGHTTEXT
BTNFACE
BTNSHADOW
BTNTEXT
INACTIVCAPTIOTEXT
BTNHIGHLIGHT
GRAYTEXT

Current background color of the Windows desktop


Current color of the title bar of the active window
Current color of the title bar of inactive windows
Current background color of menus
Current background color of windows
Current color of window frames
Current color of text on menus
Current color of text in windows
Current color of the text on the title bar of the active window
Current border color of the active window
Current border color of inactive windows
Current color of the application workspace
Current background color of selected text
Current color of selected text
Current color of a button face
Current color of a shadow cast by a button
Current color of text on a button
Current color of the text on the title bar of an inactive window
Current color of the highlighting on a button
Current color of text that is dimmed

The following is the table 7-3 that tells you the FONTNAME code often used in the HMI
Display file.
Table 7-3

Keyword
Times New Roman
Courier New
Arial
Microsoft Sans Serif

Meaning
The font of "Times New Roman".
The font of "Courier New".
The font of "Arial".
The font of "Microsoft Sans Serif".
Others. Refer to the manual of MS Windows OS.

- 92 -

The following is the table 7-4 that tells you the PEN STYLE code used in the HMI Display file.
Table 7-4

Keyword
SOLID
DASH
DOT
DASHDOTDOT
DASHDOT
CLEAR
INSIDEFRAME

Meaning
A solid line
A line made up of a series of dashes
A line made up of a series of dots
A line made up of a serious of dash-dot-dot combinations
A line made up of alternating dashes and dots
No line is drawn (used to omit the line around shapes that draw an outline
using the current pen).
A solid line, but one that may use a dithered color if Width is greater than 1.

The following is the table that tells you the BRUSH STYLE code used in the HMI Display file.
Table 7-5

Keyword
SOLID
BDIAGONAL

Meaning

Keyword
CLEAR

Meaning

FDIAGONAL

Refer to the section 7.3, you can find the SHAPE code used in the HMI Display file.

- 93 -

7.2.2

Samples of HMI Display File

Please refer to the section 1.4.17 to 1.4.20 for the details on the main configurations, including
HMI point database.
Sample #1
Refer to the screenshot Figure 7-9

Figure 7-9

Please refer to the file: HMI_Sample_Shape.hmi in the xMasterSlave installation file/CD for the
details of the sample of the above HMI Display file.

- 94 -

Sample #2
Refer to the screenshot Figure 7-10

Figure 7-10

Please refer to the file: HMI_Sample_Loading_From_File.hmi in the xMasterSlave installation


file/CD for the details of the sample of the above HMI Display file.

- 95 -

Sample #3
Refer to the screenshot Figure 7-11

Figure 7-11

The sample of the above HMI Display file is as follow:

- 96 -

ENTRY= 1

ENTRY= 5
SHAPE= XPANEL
LEFT= 2
TOP= 95
WIDTH= 211
HEIGHT= 404
BRUSHCOLOR= WHITE
A_COLOR= RED
F_COLOR= YELLOW
BRUSHSTYLE= SOLID
PENCOLOR= DKGRAY
PENSTYLE= SOLID
PENWIDTH= 2
COLCOUNT= 30
ROWCOUNT= 30
DB_PNT= NONE NONE
ENDE

ENTRY= 2

ENTRY= 8
SHAPE= XPANEL
LEFT= 537
TOP= 95
WIDTH= 246
HEIGHT= 508
BRUSHCOLOR= WHITE
A_COLOR= RED
F_COLOR= YELLOW
BRUSHSTYLE= SOLID
PENCOLOR= DKGRAY
PENSTYLE= SOLID
PENWIDTH= 2
COLCOUNT= 30
ROWCOUNT= 30
DB_PNT= NONE NONE
ENDE

SHAPE= STR_GRID
LEFT= 265
TOP= 98
WIDTH= 42
HEIGHT= 504
COLOR= BLACK
FONTCOLOR= AQUA
FONTNAME= Courier New
FONTSIZE= 10
FONTBOLD= +
PENWIDTH= 1
COLCOUNT= 4
ROWCOUNT= 24
ITEM= 0 01~X~PY1001_CE01~~
ITEM= 1 02~X~PY1002_CE02~~
ITEM= 2 03~X~PY1003_CE03~~
ITEM= 3 04~X~PY1004_CE04~~
ITEM= 4 05~X~PY1005_CE05~~
ITEM= 5 06~X~PY1006_CE06~~
ITEM= 6 07~X~PY1007_CE07~~
ITEM= 7 08~X~PY1008_CE08~~
ITEM= 8 09~X~PY1009_CE09~~
ITEM= 9 10~X~PY1010_CE10~~
ITEM= 10 11~X~PY1011_CE11~~
ITEM= 11 12~X~PY1012_CE12~~
ITEM= 12 13~X~PY1013_CE13~~
ITEM= 13 14~X~PY1014_CE14~~
ITEM= 14 15~X~PY1015_CE15~~
ITEM= 15 16~X~PY1016_CE16~~
ITEM= 16 17~X~PY1017_CE17~~
ITEM= 17 18~X~PY1018_CE18~~
ITEM= 18 19~X~PY1019_CE19~~
ITEM= 19 20~X~PY1020_CE20~~
ITEM= 20 21~X~PY1021_CE21~~
ITEM= 21 22~X~PY1022_CE22~~
ITEM= 22 23~X~PY1023_CE23~~
ITEM= 23 24~X~PY1024_CE24~~
DB_PNT= NONE NONE
ENDE

ENTRY= 6
SHAPE= XPANEL
LEFT= 262
TOP= 95
WIDTH= 246
HEIGHT= 508
BRUSHCOLOR= WHITE
A_COLOR= RED
F_COLOR= YELLOW
BRUSHSTYLE= SOLID
PENCOLOR= DKGRAY
PENSTYLE= SOLID
PENWIDTH= 2
COLCOUNT= 30
ROWCOUNT= 30
DB_PNT= NONE NONE
ENDE

ENTRY= 3
SHAPE= TEXT
LEFT= 51
TOP= 603
CAPTION= PLC TROUBLE
HINT= Alarm: PLC Trouble.
Check PLC Module
COLOR= BTNFACE
FONTCOLOR= BLACK
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= Arial
FONTSIZE= 14
DISPLAY= CAPTION
DB_PNT= NONE NONE
WIDTH= 160
HEIGHT= 26
ENDE
ENTRY= 4
SHAPE= LIGHT
LEFT= 13
TOP= 603
WIDTH= 25
HEIGHT= 25
BRUSHCOLOR= LIME
A_COLOR= RED
F_COLOR= YELLOW
BRUSHSTYLE= SOLID
PENCOLOR= WINDOWTEXT
PENSTYLE= SOLID
PENWIDTH= 2
COLCOUNT= 30
ROWCOUNT= 30
DB_PNT= PY0035_AL03 NONE
ENDE

SHAPE= XPANEL
LEFT= 0
TOP= 592
WIDTH= 221
HEIGHT= 42
BRUSHCOLOR= DKGRAY
A_COLOR= RED
F_COLOR= YELLOW
BRUSHSTYLE= SOLID
PENCOLOR= WHITE
PENSTYLE= SOLID
PENWIDTH= 3
COLCOUNT= 30
ROWCOUNT= 30
DB_PNT= NONE NONE
ENDE
ENTRY= 7
SHAPE= STR_GRID
LEFT= 5
TOP= 98
WIDTH= 50
HEIGHT= 400
COLOR= BLACK
FONTCOLOR= AQUA
FONTNAME= Courier New
FONTSIZE= 12
FONTBOLD= +
PENWIDTH= 1
COLCOUNT= 4
ROWCOUNT= 16
ITEM= 0 01~X~PY_Action_01~~
ITEM= 1 02~X~PY_Action_02~~
ITEM= 2 03~X~PY_Action_03~~
ITEM= 3 04~X~PY_Action_04~~
ITEM= 4 05~X~PY_Action_05~~
ITEM= 5 06~X~PY_Action_06~~
ITEM= 6 07~X~PY_Action_07~~
ITEM= 7 08~X~PY_Action_08~~
ITEM= 8 09~X~PY_Action_09~~
ITEM= 9 10~X~PY_Action_10~~
ITEM= 10 11~X~PY_Action_11~~
ITEM= 11 12~X~PY_Action_12~~
ITEM= 12 13~X~PY_Action_13~~
ITEM= 13 14~X~PY_Action_14~~
ITEM= 14 15~X~PY_Action_15~~
ITEM= 15 16~X~PY_Action_16~~
DB_PNT= NONE NONE
ENDE

- 97 -

ENTRY= 9
SHAPE= STR_GRID
LEFT= 540
TOP= 98
WIDTH= 42
HEIGHT= 504
COLOR= BLACK
FONTCOLOR= AQUA
FONTNAME= Courier New
FONTSIZE= 10
FONTBOLD= +
PENWIDTH= 1
COLCOUNT= 4
ROWCOUNT= 24
ITEM= 0 25~X~PY1033_CE25~~
ITEM= 1 26~X~PY1034_CE26~~
ITEM= 2 27~X~PY1035_CE27~~
ITEM= 3 28~X~PY1036_CE28~~
ITEM= 4 29~X~PY1037_CE29~~
ITEM= 5 30~X~PY1038_CE30~~
ITEM= 6 31~X~PY1039_CE31~~
ITEM= 7 32~X~PY1040_CE32~~
ITEM= 8 33~X~PY1041_CE33~~
ITEM= 9 34~X~PY1042_CE34~~
ITEM= 10 35~X~PY1043_CE35~~
ITEM= 11 36~X~PY1044_CE36~~
ITEM= 12 37~X~PY1045_CE37~~
ITEM= 13 38~X~PY1046_CE38~~
ITEM= 14 39~X~PY1047_CE39~~
ITEM= 15 40~X~PY1048_CE40~~
ITEM= 16 41~X~PY1049_CE41~~
ITEM= 17 42~X~PY1050_CE42~~
ITEM= 18 43~X~PY1051_CE43~~
ITEM= 19 44~X~PY1052_CE44~~
ITEM= 20 45~X~PY1053_CE45~~
ITEM= 21 46~X~PY1054_CE46~~
ITEM= 22 47~X~PY1055_CE47~~
ITEM= 23 48~X~PY1056_CE48~~
DB_PNT= NONE NONE
ENDE

ENTRY= 10
SHAPE= STR_GRID
LEFT= 54
TOP= 98
WIDTH= 158
HEIGHT= 400
COLOR= BLACK
FONTCOLOR= AQUA
FONTNAME= Courier New
FONTSIZE= 12
FONTBOLD= +
PENWIDTH= 1
COLCOUNT= 4
ROWCOUNT= 16
ITEM= 0 ~FUTURE
~~~
ITEM= 1 ~FUTURE ~~~
ITEM= 2 ~FUTURE ~~~
ITEM= 3 ~FUTURE ~~~
ITEM= 4 ~FUTURE ~~~
ITEM= 5 ~FUTURE~~~
ITEM= 6 ~FUTURE ~~~
ITEM= 7 ~FUTURE ~~~
ITEM= 8 ~FUTURE ~~~
ITEM= 9 ~FUTURE ~~~
ITEM= 10 ~FUTURE~~~
ITEM= 11 ~FUTURE~~~
ITEM= 12 ~FUTURE~~~
ITEM= 13 ~FUTURE~~~
ITEM= 14 ~FUTURE~~~
ITEM= 15 ~FUTURE~~~
DB_PNT= NONE NONE
ENDE
ENTRY= 11
SHAPE= STR_GRID
LEFT= 305
TOP= 98
WIDTH= 200
HEIGHT= 504
COLOR= BLACK
FONTCOLOR= AQUA
FONTNAME= Courier New
FONTSIZE= 10
FONTBOLD= +
PENWIDTH= 1
COLCOUNT= 4
ROWCOUNT= 24
ITEM= 0 ~FUTURE ~~~
ITEM= 1 ~FUTURE ~~~
ITEM= 2 ~FUTURE ~~~
ITEM= 3 ~FUTURE ~~~
ITEM= 4 ~FUTURE ~~~
ITEM= 5 ~FUTURE ~~~
ITEM= 6 ~FUTURE ~~~
ITEM= 7 ~FUTURE ~~~
ITEM= 8 ~FUTURE ~~~
ITEM= 9 ~FUTURE ~~~
ITEM= 10 ~FUTURE ~~~
ITEM= 11 ~FUTURE ~~~
ITEM= 12 ~FUTURE~~~
ITEM= 13 ~FUTURE~~~
ITEM= 14 ~FUTURE~~~
ITEM= 15 ~FUTURE~~~
ITEM= 16 ~FUTURE~~~
ITEM= 17 ~FUTURE~~~
ITEM= 18 ~FUTURE~~~
ITEM= 19 ~FUTURE~~~
ITEM= 20 ~FUTURE~~~
ITEM= 21 ~FUTURE~~~
ITEM= 22 ~FUTURE~~~
ITEM= 23 ~FUTURE~~~
DB_PNT= NONE NONE
ENDE

ENTRY= 12
SHAPE= STR_GRID
LEFT= 580
TOP= 98
WIDTH= 200
HEIGHT= 504
COLOR= BLACK
FONTCOLOR= AQUA
FONTNAME= Courier New
FONTSIZE= 10
FONTBOLD= +
PENWIDTH= 1
COLCOUNT= 4
ROWCOUNT= 24
ITEM= 0 ~FUTURE
ITEM= 1 ~FUTURE~~~
ITEM= 2 ~FUTURE~~~
ITEM= 3 ~FUTURE~~~
ITEM= 4 ~FUTURE~~~
ITEM= 5 ~FUTURE~~~
ITEM= 6 ~FUTURE~~~
ITEM= 7 ~FUTURE~~~
ITEM= 8 ~FUTURE~~~
ITEM= 9 ~FUTURE~~~
ITEM= 10 ~FUTURE~~~
ITEM= 11 ~FUTURE~~~
ITEM= 12 ~FUTURE~~~
ITEM= 13 ~FUTURE~~~
ITEM= 14 ~FUTURE~~~
ITEM= 15 ~FUTURE~~~
ITEM= 16 ~FUTURE~~~
ITEM= 17 ~FUTURE~~~
ITEM= 18 ~FUTURE~~~
ITEM= 19 ~FUTURE~~~
ITEM= 20 ~FUTURE~~~
ITEM= 21 ~FUTURE~~~
ITEM= 22 ~FUTURE~~~
ITEM= 23 ~FUTURE~~~
DB_PNT= NONE NONE
ENDE

- 98 -

~~~

Sample #4
Refer to the screenshot Figure 7-12.

Figure 7-12

The sample of the above HMI Display file is as follow:


BACKCOLOR= BTNFACE

The Control Point Number is the


direct point number in the device (i.e.
PLC, RTU, etc.) if the control is in the
Direct Operate Mode! In this sample,
the control point number=100 is the
MB Register 4x0100.

ENTRY= 2

ENTRY= 1

SHAPE= TEXT
LEFT= 36
TOP= 38
CAPTION= PY/SY RAS Matrix Normal
HINT= PY/SY RAS ;XDATA_MATRIX
COLOR= BTNFACE
FONTCOLOR= BLACK
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 14
DISPLAY= ENCODE
DB_PNT= NONE NONE
WIDTH= 400
HEIGHT= 30
ENDE

SHAPE= TEXT
LEFT= 39
TOP= 111
CAPTION= PLC :Comm. Normal
HINT= PLC :; DS 22 00
COLOR= BTNFACE
FONTCOLOR= BLACK
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 14
DISPLAY= ENCODE
DB_PNT= NONE NONE
WIDTH= 209
HEIGHT= 27
ENDE

- 99 -

ENTRY= 3

ENTRY= 7
SHAPE= TEXT
LEFT= 34
TOP= 75
CAPTION= Mismatched The Latest Actions in PY and SY PLC
HINT= Mismatched The Latest Actions in PY and SY PLC
COLOR= BTNFACE
FONTCOLOR= RED
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 12
FONTBOLD= +
DISPLAY= TEXT
DB_PNT= PSD_DI_ML VISIBLE -1 0 1 1000
WIDTH= 405
HEIGHT= 24
ENDE

ENTRY= 4
SHAPE= BUTTON
LEFT= 483
TOP= 45
WIDTH= 100
HEIGHT= 28
CAPTION= Rst 4x0100
HINT= Set up 4x0100 ;FROM MYPLC_DATA=40001
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= 11_22 REG_WR WOCP 100 9999 1234 0
ENDE
ENTRY= 5
SHAPE= CSPINEDIT
LEFT= 483
TOP= 75
WIDTH= 100
HEIGHT= 22
CAPTION= 1
HINT= The value for 4x0100 ;MYPLC_DATA=40001
COLOR= WINDOW
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= PSD_AI01 NONE
ENDE
ENTRY= 6
SHAPE= BUTTON
LEFT= 483
TOP= 206
WIDTH= 100
HEIGHT= 20
CAPTION= Set Pattern
HINT= Write Register 40100; FROM PSD_POINT=PSD_AI01
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= 11_22 REG_WR WOCP 100 0 0 0
ENDE

- 100 -

SHAPE= LISTBOX
LEFT= 483
TOP= 108
WIDTH= 100
HEIGHT= 96
COLOR= BTNFACE
FONTCOLOR= BLACK
HINT= The bit-pattern for 4x0100
FONTNAME= MS Sans Serif
FONTSIZE= 8
ITEM= 0 Bit 0
ITEM= 1 Bit 1
ITEM= 2 Bit 2
ITEM= 3 Bit 3
ITEM= 4 Bit 4
ITEM= 5 Bit 5
ITEM= 6 Bit 6
ITEM= 7 Bit 7
ITEM= 8 Bit 8
ITEM= 9 Bit 9
ITEM= 10 Bit 10
ITEM= 11 Bit 11
ITEM= 12 Bit 12
ITEM= 13 Bit 13
ITEM= 14 Bit 14
ITEM= 15 Bit 15
DB_PNT= PSD_AI01 NONE
ENDE

Sample #5 -- DO/AO Controls


Refer to the screenshot Figure 7-13.

Figure 7-13
Please refer to the file: HMI_Sample_Button.hmi in the xMasterSlave installation file/CD for the
details of the sample of the above HMI Display file.
Note:
The DI_0009 and the DI_010 are defined in the configuration (HMI Point Database) as follows
(refer to the section 1.4.20 for the details):
ENTRY

NAME
LONGNAME
FORMAT
PROCTYPE
D_TYPE
STATCONV
PNT_ADDR
;It is 9x0100
PNT_BIT
ALARM
ALARM_GROUP

=
=
=
=
=
=
=

DI_0009
Digital Input #9
DI
ONOFF
MYPLC_9X
NO
99

= 0
= YES
= 3

ENTRY

NAME
LONGNAME
FORMAT
PROCTYPE
D_TYPE
STATCONV
PNT_ADDR
;It is 9x0101
PNT_BIT
ALARM
ALARM_GROUP

- 101 -

=
=
=
=
=
=
=

DI_0010
Digital Input #10
DI
ONOFF
MYPLC_9X
NO
99

= 15
= YES
= 3

7.2.3

Working ModeEditing HMI Display


The list of the predefined HMI ObjectShape.

Any time you


can press the
Key Esc to
restart the
work.

Mode
Draw
Move
ReSize
Delete
Copy
Copy on
Horizontal
Copy on Vertical
Config
Align
Lock it
Block

Functioning
Drawing the shape that you select.
Moving the current shape.
Resizing the current shape.
Deleting the current shape.
Copying the current shape.
Copying the current shape on the Horizontal.
Copying the current shape on the Vertical.
Opening the window of the HMI Object-Shape Configuration.
Aligning shapes with the option of Left/Right/Bottom/Top.
Exclusively edit/draw the current shape.
Operating on a block of shapes, including saving a block.

- 102 -

Working Mode -- Draw


Here is a sample showing you how to draw a LINE as follows:
The starting position
(100, 49)
LEFT = 100, TOP = 49

The Frame

Here you can


select a HMI
Object-Shape.

The ending
position

Step#1: Move the mouse to the position of (100, 49) and press the Left Key of the mouse.
Step#2: Hold the Left Key and move the mouse to the position of (216, 113)
Step#3: Release the Left Key. The Frame disappears.
You can do a Double-Click on the current HMI Shape to directly open the configuration window
to configure it. Also you can click on and drag the current HMI Shape by the Right-Key of the
mouse.
It always appears a frame with DOT LINE around the current shape when you are either drawing
or selecting. You can move the mouse to point to the current shape, then click on the Left Key to
select the current shape. After the selection you can move the mouse again and the Frame moves
and finally clicks on the Right Key to finish the process of either Move, or Resize, or Delete, or
Copy, or Configure, or others in the Working Mode. You can go back to what it was before by
clicking the button of "Undo".
Working Mode -- Move
The following is the steps to Move a Shape (The option of [ ]Block is not checked):
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want. It is
very often there are shapes overlapped at the same place so that you have to pick up the right
one.
Step#3: Move the mouse/cursor (the current shape should follow the cursor) to the location you
want to put it and Click on by the Right Key of the mouse to finish the process of the movement
of the current shape.

- 103 -

Working Mode Move a Block of shape(s)


The following is the steps to Move a block of Shapes (The option of [X]Block is checked):
Step#1: Check the []Block to [X]Block to start the process of Block Edit Operation.
Step#2: Move the mouse and point to up-left of the BLOCK that you have determined.
Step#3: Press the Left Key of the mouse and move the mouse to Right-bottom of the BLOCK.
You should see shape(s) in the block being around a frame respectively.
Step#4: Move the mouse/cursor and point to the frame of the BLOCK.
Step#5: Press the Left Key of the mouse to drag the frame of the BLOCK to the place where you
determine for shape(s) in the BLOCK.
Step#6: Release the Left Key of the mouse to finish the process of the movement of the BLOCK
of shape(s).
Working Mode -- Resize
The following is the steps to Resize a Shape (The option of [ ]Block is not checked
automatically):
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want. It is
very often there are shapes overlapped at the same place so that you have to pick up the right
one.
Step#3: Move the mouse/cursor (the size of the current shape should be changed) to the new size
and Click on by the Right Key of the mouse to finish the process of the Re-Sizing for the current
shape.
Working Mode -- Delete
The following is the steps to Delete a Shape (The option of [ ]Block is not checked):
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want. It is
very often there are shapes overlapped at the same place so that you have to pick up the right
one.
Step#3: Click on by the Right Key of the mouse to confirm the process of the deletion of the
current shape. Click on the button of YES to delete the current shape.
Working Mode Delete a Block of shape(s)
The following is the steps to Delete a block of Shapes (The option of [X]Block is checked):
Step#1: Check the []Block to [X]Block to start the process of Block Edit Operation.
Step#2: Move the mouse and point to up-left of the BLOCK that you have determined.
Step#3: Press the Left Key of the mouse and move the mouse to Right-bottom of the BLOCK.
You should see shape(s) in the block being around a frame respectively.
Step#4: Release the Left Key of the mouse to confirm the process of the deletion of the block of
shape(s). Click on the button of YES in a dialogue window to delete shape(s) in the block.

- 104 -

Working Mode -- Copy


The following is the steps to Copy a Shape (The option of [ ]Block is not checked):
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want. It is
very often there are shapes overlapped at the same place so that you have to pick up the right
one.
Step#3: Move the mouse/cursor (a new shape should follow the cursor) to the location where
you want to put it and Click on by the Right Key of the mouse to finish the process of copying
the current shape.
Working Mode Copy a Block of shape(s)
The following is the steps to Copy a block of Shapes (The option of [X]Block is checked):
Step#1: Check the []Block to [X]Block to start the process of Block Edit Operation.
Step#2: Move the mouse and point to up-left of the BLOCK that you have determined.
Step#3: Press the Left Key of the mouse and move the mouse to Right-bottom of the BLOCK.
You should see shape(s) in the block being around a frame respectively.
Step#4: Move the mouse/cursor and point to the frame of the BLOCK.
Step#5: Press the Left Key of the mouse to drag the frame of the BLOCK to the place where you
determine for new shape(s) in the BLOCK.
Step#6: Release the Left Key of the mouse to finish the process of copying a BLOCK of
shape(s).
Working Mode Copy on Horizontal
The following is the steps to Copy Shape(s) aligned Horizontally (The option of [ ]Block is not
checked):
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want. It is
very often there are shapes overlapped at the same place so that you have to pick up the right
one.
Step#3: Horizontally Move the mouse/cursor (a new shape should follow the cursor) to the
location where you want to how big gap between two is and Click on by the Right Key of the
mouse to enter the amount of shape(s) in a popup dialogue window. Click on button of [Yes] to
finish the process of copying the current shape.
Working Mode Copy on Vertical
The following is the steps to Copy Shape(s) aligned Vertically (The option of [ ]Block is not
checked):
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want. It is
very often there are shapes overlapped at the same place so that you have to pick up the right
one.
Step#3: Vertically Move the mouse/cursor (a new shape should follow the cursor) to the location

- 105 -

where you want to how big gap between two is and Click on by the Right Key of the mouse to
enter the amount of shape(s) in a popup dialogue window. Click on button of [Yes] to finish the
process of copying the current shape.
Working Mode -- Config
Refer to the section 7.2.5.
Working Mode Align
The following is the steps to Align Shape(s) in the block (The option of [X]Block is checked):
Step#1: Select the mode of Alignment of either Left, or Right, or Top, or Bottom, or Center,etc.
Step#2: Move the mouse and point to up-left of the BLOCK that you have determined.
Step#3: Press the Left Key of the mouse and move the mouse to Right-bottom of the BLOCK.
You should see shape(s) in the block being around a frame respectively.
Step#4: Move the mouse/cursor and point to the frame of the BLOCK.
Step#5: Click on by the Left Key of the mouse to finish the process of the Alignment.
Note: The Aligning line is the line of either Left, or Right, or Top, or Bottom of the BLOCK.
.

Note:
You can directly determine the BLOCK (draw a block starting an empty location
where there is not a shape at) and it automatically goes to with the BLOCK
Operation of editing HMI Display when the Working-Mode is either Move, or
Copy, or Delete, or Align. It means that it not necessary to check the
option:[X]Block every time.
Any time you can press the Key Esc and select the Working-Mode of Draw to
restart the work when you are in the middle of the process of doing A Shape or A
Block of Shape(s) in the Working Mode of Move/ReSize/Delete/Copy.

- 106 -

7.2.4

Options

By clicking the colorful rectangle,


the Color Editor window will
appear. You can pick up any color
for the current setting of color.

Options
Pen Color
Pen Style
Pen Width
Brush Color
Failure Color
Alarm Color
Screen Color
Param

Note.
It is
It is
It is
It is
It is
It is
It is
It is

(Refer
to set
to set
to set
to set
to set
to set
to set
to set

to
up
up
up
up
up
up
up
up

the section 7.2.1 Table 7-1)


"PENCOLOR".
"PENSTYLE". (By right clicking on it)
"PENWIDTH".
"BRUSHCOLOR"(for normal state/Logic Off/0).
"F_COLOR"(for Offline/failure).
"A_COLOR"(for alarm state/Logic On/1).
"BACKCOLOR".
parameters for the shape of "StringGrid".

- 107 -

7.2.5 Configuring the pre-defined HMI Object-Shape


In order to assign a "job" to the current HMI Object-Shape, you have to configure it. The
following are steps to open a configuration window:
Step#1: Move the mouse and point to the current shape.
Step#2: Keep clicking on by the Left Key of the mouse and watch the list of the pre-defined
HMI Object-Shape and the title of the window until you are sure to select the one you want.
It is very often there are shapes overlapped so that you have to pick up the right one.
Step#3: Click on by the Right Key of the mouse to open configuration window as shown in
the screenshot Figure 7-14 to7-23.
Select a TagName Point working for either
Indicator, or Metering, or Information.

Note 1 : on the next page.


Note 2 : on the next page.

The List of HMI


Point Database.

Normally, a control operation panel will appear while clicking on a button configured with the Control
Function. Refer to the section 4.1. Sometimes you want the control operation panel not to show up and
directly do control functions (so called WOCP).
Note: If it is checked, the Control Point Number is the direct point number (i.e. an AO command - Writing data into the MB register 4x0100 the point number is 100) in the Device (i.e. PLC, RTU, etc.).
Normally the direct point number is starting from 0 in the RTU (i.e. running over DNP/LG protocol,
etc) and starting from 1 in the PLC (i.e. MB protocol, the DO controls are applied on 0X data but the
DO-Pulse control is applied on 4x data).
It allows you to do multi-operation. You have to design a button with the control function of
"ESO".

It is the Control Level. Refer to the section 7.1.12. If it is higher than the current HMI Control-Level
is, the current control operation will be locked up.
Figure 7-14

It defines the Control (DO or AO) Point Number and Device Address assigned in the Data Acquisition Real-time
Database. Refer to the section 1.4.9.
Note: The control point number is starting from 0 when the [] Direct Operate Without Control-Panel is
unchecked.

- 108 -

Note1: Sometime you can use the device address defined in the current point that you select in the Point Name=
So you do not need to define the DevAddr. Or you can directly define the device address in the DevAddr=
Refer to the entry of "PNT_DEV = dd" in the section 1.4.12 to 14

Note2: Not all control functions are supported by the


current Data Acquisition Protocol. The control panel will be
closed automatically after executing controls (i.e. DO, AO,
etc.) except #7-SBO, #10-DO_RL and #14-REG_WR. Refer
to the section 1.4.9 and the section 4.1 and documents
regarding the protocol.

Note3: the control command AO_32


floating point data.

is to write

The
No
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

list of the Control Function


Function
DO_PULSE-PULSE DIGITAL OUTPUT
DO_16----16-BIT DIGITAL OUTPUT
DO_32----32-BIT DIGITAL OUTPUT
DO_BCD---BCD
DIGITAL OUTPUT
SBO_T----SBO TRIP (LATCH OFF) ONLY
SBO_C----SBO CLOSE (LATCH ON)ONLY
SBO------SBO TRIP AND CLOSE (LATCH ON/OFF)
DO_R-----RIASE ONLY
DO_L-----LOW ONLY
DO_RL----RAISE AND LOW
AO_16----16-BIT ANALOG OUTPUT/Setpoint
AO_32----32-BIT ANALOG OUTPUT/Float
AO_BCD---BCD
ANALOG OUTPUT
REG_WR---Write Register Value
SEL_T----SELECT TRIP
SEL_C----SELECT CLOSE
SEL_O----SELECT OPERATE
FUTURE5
FUTURE6
LOAD_HMIPAGE Load a new HMI Page
NEXT_HMIPAGE Load the Next HMI Page
LAST_HMIPAGE Load the Last HMI Page
VISIBLE Animation: VISIBLE
BLINK
Animation: BLINK
H_GAUGE Animation: Horizontal Gauge
V_GAUGE Animation: Vertical Gauge
LOGWIN
Open or Close the Log_Win
FUNBAR
Open or Close the Fun_Bar
ESO
Execute_Selected_Operation
CLR_SEL Clear_All_Selected

- 109 -

Sample #1

By Right Clicking on it to
select a Pen Style.

Figure 7-15

- 110 -

Sample #2

Specifies the caption of the


current RadioGroup.

It goes to:

If the value/Index <= 0, NO SELECTION.


It looks like this sample.
Figure 7-16

As an alternative definition, You can configure a text string with


the key: "LOAD FROM FILE:" (precisely as shown) and a valid
file path/name. The format of the file is Text-based and contains a
list of items that will appear in the RadioGroup (the same rule
applies to ComboBox/ListBox).

- 111 -

Sample #3

Where to define the content of the Memo.


The First line will be checked to see whether
it is a valid file name and the file exists. If so,
it will tell you in the Text=
and
display the file. The interval of dynamically
loading the file is 5 seconds if finds changes
on the Date&Time of the file.

Figure 7-17

- 112 -

Sample #4

Refer to the section 7.3.22


The value of 5L76_MW is in the
PSD_AI01.

Figure 7-18

- 113 -

Sample #5

Refer to the section 7.3.22

Figure 7-19

As an alternative definition, you can configure the Hint with a text string
comprised with the key: ";LOAD FROM FILE:" (precisely as shown) and a
valid file path/name. The format of the file is Text-based and contains a list of
items that will appear in the STR_GRID. The item is comprised by the
definition (xxxx1~xxxx2~xxxx3~xxxx4~) described in the section 7.3.22

- 114 -

Sample #6

If the
PSD_DI_PY_WF
is OFF.

The current shape is a "Light". Refer to 7.3.23.


To indicate / display the DI point, you simply pick up a
HMI Tagname point from this list that built by the
configuration (refer to the section 1.4.12 and 1.4.14).
If PSD_D_PY_WF, for example, is ON, the "Light" is
ON with the color defined by "Alarm Color". If it is in
normal, it is OFF with the color defined by "Brush
Color". If the current point is Failure/Offline, it is OFF
with the color defined by "Failure Color".

If the
PSD_DI_PY_WF
is ON.

Figure 7-20
.

- 115 -

Sample #7

The title of the window


comes from the hint of the
current button.

The current Button is assigned to do the


Control Function: SBO TRIP / CLOSE. If
the current HMI Control Security Level is
higher than 3, the corresponding control
panel is shown as follow when you click on
the current HMI Object-Shape: Button:

Timeout in 180 seconds the


window will disappear
automatically.

Figure 7-21

- 116 -

Sample # 8

You can configure


the button with the
Control Function:
LOAD_HMIPAGE
to go to the HMI
display page named
as xx.hmi. Note:
you have to edit the
Hint as shown in the
sample. Refer to the
section 7.3.11.

.
Figure 7-22

- 117 -

Sample #9

Refer to the section 7.3.12.


The value of CNT_000 will display by
this HMI Object-Shape: TEXT.

Figure 7-23

Text Animation:

DISPLAY_NORMAL:

DISPLAY_INT:

DISPLAY_FLOAT:

DISPLAY_CAPTION:

Displays the Text as you design.


Displays Data in the format of Integer.
Displays Data in the format of Floating-Data.
Displays the text when the current point you assign is either
Alarm/Logic ON (1), or Offline (Failure).
DISPLAY_ENCODE_INFO: Refer to the section 7.3.12.
DATA_STRING_TEMPLATE: Scanning the current hit and make up it by using DATA
STRING TEMPLATE. Refer to the section 1.4.16.

- 118 -

7.3 The Pre-defined HMI Object-Shapes

7.3.1 Line
The Sample:
The Shape Code: LINE
The Typical use: Gauge Display.
Notes: Normally set the same color for Pen Color and Brush Color.
Otherwise you will see a shadow line in the color of Brush Color.
If the Pen_width> 20 the LINE changes to:

7.3.2 Circle
The Sample:
The Shape Code: CIRCLE
The Typical use:
Notes:

7.3.3 Ellipse
The Sample:
The Shape Code: ELLIPSE
The Typical use:
Notes:

7.3.4 Rectangle
The Sample:
The Shape Code: RECTANGLE
The Typical use:
Notes:

7.3.5 Disconnector
The Sample:
The Shape Code: DISCONNECTOR
The Typical use:
Notes: Normally, a 3-State point is assigned for it to indicate a failure when the 3-State is
either Intransit(00), or Invalid(11). Refer to the section 1.4.14. And the failure also will be
displayed in the Alarm Log. Refer to the section 6.3.
7.3.6 Triangle
The Sample:
The Shape Code: TRIANGLE
The Typical use:
Notes:

- 119 -

7.3.7 RoundRect
The Sample:
The Shape Code: ROUNDRECT
The Typical use:
Notes:

7.3.8 xPanel
The Sample:
The Shape Code: XPANEL
The Typical use: Layout
Notes: Setup the Pen-Color and Brush-Color properly to make up one you want to.

7.3.9 StopSign
The Sample:
The Shape Code: STOPSIGN
The Typical use:
Notes:

7.3.10 Rectangle-pen-style-Dot
The Sample:
The Shape Code: SQUARE
The Typical use:
Notes:

- 120 -

7.3.11 Button
The Sample:
The Shape Code: BUTTON
The Typical use: HMI Operations
Notes: Refer to the screenshot Figure 7-13 and 7-14, Figure 7-21 and 22.

Functionalities you can make up by a button in the display of HMI are as follows.
Note: It also applies to other HMI Object-Shape!

1) Controls
Control command: Pulse, SBO, Latch, etc.
ESO
Execute Selected Operation.
CLR_SEL
Clean up All Selected.
Note #1:
In the hint, if finds "; FROM MYPLC_DATA=4xxxx" or "; FROM MYPLC_DATA=9xxxx", the control data is
retrieved from PLC program runtime simulator register data 4xxx or 9xxxx. Refer to the section 9.
SHAPE= BUTTON
LEFT= 784
TOP= 331
WIDTH= 100
HEIGHT= 28
CAPTION= Rst 4x0100
HINT= Set up 4x0100 ;FROM MYPLC_DATA=40001
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= 11_22 REG_WR WOCP 100 9999 1234 0
Note #2:
In the hint, if finds "; FROM PSD_POINT=xxxxx", control data is from the pseudo point xxxxx (the
pseudo point name). Refer to the section 1.4.13.
SHAPE= BUTTON
LEFT= 784
TOP= 331
WIDTH= 100
HEIGHT= 28
CAPTION= Rst 4x0100
HINT= Set up 4x0100 ;FROM PSD_POINT=PSD_AI_001
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= 11_22 REG_WR WOCP 100 9999 1234 0
Note #3:
If the control operation is defined as "Direct operate without control panel" (the code is WOCP)
the DevAddr can be defined as xx_yy, xx is the 1st device address, yy is the 2nd device
address. Refer to the screenshot Figure 7-12. Normally it is for PY/SY system application (refer
to the section 8).
Note #4:
If the current Button Caption is "ONOFF", you can see the Caption will be changed either "ON" or
"OFF" dynamically according to the state of the current DI point that is configured to the
current Button.
Note #5:
If the current DB_PNT point is retrieved from pseudo register 9xxxx (refer to the section 9.1.4),
and the control operation is defined as WOCP, you can directly do the controls (i.e. LATCH
ON/OFF, SBO T/C, etc.) on the current DB_PNT point without setting the control point number and
the device address. Refer to the sample #5 and Figure 7-13 in the section 7.2.2.

- 121 -

2) Switching HMI Display page


LOAD_HMIPAGE
NEXT_HMIPAGE
LAST_HMIPAGE

Load a new HMI Page


Load the Next HMI Page
Load the Last HMI Page

The Hint consists of "Page=" at very beginning of the string. Refer to the screenshot Figure 721. You also can use LOAD_HMIPAGE to OPEN/LOAD a phone book for the application where the DCA
Driver is running over the Modem/Phone Line. The hint should be setup by
PHONEBOOK=xxxxxxxx, where the xxxxxxxx is the phone book file name. The default file ext. is
*.TXT. Refer to the section 7.1.1, 7.1.11 and 11.2.
Note: if the hint is Page=POPUP:xxxxxx, it will pop the current HMI page up in a stand-alone HMI
display Viewer window.

3) Popup a window before executing the function


If finds that the Hint consists of "?!", a message window box appears. You can click on button
[NO] in the window to cancel/exit the current control operation.
SHAPE= BUTTON
LEFT= 784
TOP= 331
WIDTH= 100
HEIGHT= 28
CAPTION= Rst 4x0100
HINT= Set up 4x0100 ?!;FROM PSD_POINT=PSD_AI_001
FONTCOLOR= BLACK
FONTNAME= MS Sans Serif
FONTSIZE= 8
FONTBOLD= +
DB_PNT= 11_22 REG_WR WOCP 100 9999 1234 0
If you click on this button, before doing controls you can see a popup message window, in which a
message: Set up 4x0100 ?!;FROM PSD_POINT=PSD_AI_001 (defined by HINT) is supposed to tell an
alert information regarding the current controls.

4) Others
LOGWIN:
Opens or Closes the Log Window.
FUNBAR:
Opens or Closes the Function Bar.
Refer to the screenshot Figure 7-22.

- 122 -

7.3.12 Text
The Sample:
The Shape Code: TEXT
The Typical use: Display Information / Value
Notes: Refer to the screenshot Figure 7-13 and 7-23.

If the HMI Point that is assigned to the current TEXT is an AI with the AO control and the assigned Control
Function is 16-Bit AO-Setpoint, Clicking on the current TEXT will open AI/AO window (refer to the section
5.3) for operators to send the value of 16-Bit AO-Setpoint.

The Hint can be Encoded as follows:


Hint= x_Hint_xxxxxxxx; xx P1 P2 = ttttt, ....
Hint= xx P1 P2 = ttttt, ....
Where
"x_Hint_xxxxxxxx" is the Hint Information. ";" is the mark of beginning the encoded string.
"ttttt": corresponding information being displayed.

The key word "xx" is defined as follows:


Key Word
EQ
GT
LT
GE
LE
IR
OR
UE
OT
DS

Expression
PV = P1
PV > P1
PV < P1
PV >= P1
PV <= P1
P1<PV<P2
PV<P1 or PV>P2
PV =X= P1
Other else
P1=Device ID/Address

Function
Equal to
Greater than
Less than
Greater than or Equal to
Less than or Equal to
In the range (P1-P2)
Not in the range (P1-P2).
Not Equal to
Other value
Fetchs the driver/comm. State as follows:
Comm. OFFLINE !?
Comm. Link/LAN Unconnected !?
Comm. Normal
Comm. OFFLINE !?
XDATA_MATRIX
Check the mismatched data matrix.
MSG
MSG P1,P2
It is to dynamically read message string (a line) from a Text based
file named by P1 (file path and name). The default line # in the
file is defined by P2.The dynamical line # is assigned by the
current HMI AI Point (Index=0 to 32767, starting from 0 indexing the
first line in the file). If the file is empty then it displays NONE.
If the file does not exist then it displays NOT FOUND file: xxxxx.
Note: PV is the present value of HMI Point. Refer to the section 7.2.5 and screenshot Figure 7-23.
P1 is the 1st operands.
P2 is the 2nd operands.

The following is the samples.


Sample#1:
ENTRY= 162
SHAPE= TEXT
LEFT= 555
TOP= 12
CAPTION= *****
HINT= Alarm Text1; EQ 0 = OK, EQ 1 = ALARM, OT = *****
COLOR= YELLOW
FONTCOLOR= WINDOWTEXT
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= Courier New
FONTSIZE= 8
DISPLAY= ENCODE
DB_PNT= AI000 NONE
WIDTH= 39
HEIGHT= 12
ENDE

- 123 -

Note:
If DB_PNT AI0000=0 then displays
"OK"
else if AI000=1 then
displays "ALARM"
else if AI000>1 then
displays "*****"

You must define the format of


DISPLAY is ENCODED.

Sample#2:
SHAPE= TEXT
LEFT= 355
TOP= 330
CAPTION= PY/SY RAS Matrix Normal
HINT= PY/SY RAS ;XDATA_MATRIX
COLOR= BTNFACE
FONTCOLOR= BLACK
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 14
DISPLAY= ENCODE
DB_PNT= NONE NONE
WIDTH= 400
HEIGHT= 30
ENDE
Sample#3:
SHAPE= TEXT
LEFT= 335
TOP= 361
CAPTION= Mismatched The Latest Actions in PY and SY PLC
HINT= Mismatched The Latest Actions in PY and SY PLC
COLOR= BTNFACE
FONTCOLOR= RED
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 12
FONTBOLD= +
DISPLAY= TEXT
DB_PNT= PSD_DI_ML VISIBLE -1 0 1 1000
WIDTH= 405
HEIGHT= 24
ENDE
Sample#4:
SHAPE= TEXT
LEFT= 556
TOP= 190
CAPTION= PLC #11 :Comm. Link/LAN Unconnected !?
HINT= PLC #11 :; DS 11 00
COLOR= 0x00C8D0D4
FONTCOLOR= RED
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 14
DISPLAY= ENCODE
DB_PNT= NONE NONE
WIDTH= 400
HEIGHT= 30
ENDE
Sample#5:
SHAPE= TEXT
LEFT= 556
TOP= 190
CAPTION= xMessage
HINT= Message:;MSG msg_sample.txt, 0
COLOR= 0x00C8D0D4
FONTCOLOR= RED
A_COLOR= RED
F_COLOR= YELLOW
FONTNAME= MS Sans Serif
FONTSIZE= 14
DISPLAY= ENCODE
DB_PNT= PSD_AI_01 NONE -1 0 1 1000
WIDTH= 400
HEIGHT= 30
ENDE

- 124 -

Note:
If finds the mismatched PY/SY Data
Matrix, it displays "Matrix
Mismatched !?", otherwise the text
is "Matrix Normal".

Note: If HMI Point PSD_DI_ML, the


CAPTION of the current TEXT:
"Mismatched The Latest Actions in
PY and SY PLC" appears. Refer to
1.4.13 and the section 7.2.2
(Sample #4) and the screenshot
Figure 7-12.

Note: It displays the real-time


information regarding to Device #11
as follows: either Comm. OFFLINE
!?, or Comm. Link/LAN Unconnected
!?, or Comm. Normal, or Comm.
OFFLINE !?.

If PSD_AI_01=10, the current TEXT


displays the message in the 11th
line in the file: msg_sample.txt.
If PSD_AI_01=0 or PSD_AI_01=100 (if
there are only 100 lines being
indexed 0 to 99 in the
msg_sample.txt, the current TEXT
will display the first line
message.

7.3.13 Image/BMP
The Sample:
The Shape Code: IMAGE
The Typical use: Background of the current HMI Display Page.
Notes: The raster-operation code is SRCAND. It defines how the color data for the source
rectangle is to be combined with the color data for the destination rectangle to achieve the
final color. Combines the colors of the source and destination rectangles by using the
Boolean AND operator.
If the current Control Function is VISIBLE/BLINK (refer to the Figure 7-14), you can make up a
Slide-Show at the speed of 24 slides (BMP file) per second (use BLINK to continually to play
slides).
First, you make up a serial of BMP file named with the same prefix (i.e. HMI_CRT.BMP,
HMI_CRT_0.BMP, HMI_CRT_1.BMP, HMI_CRT_2.BMP,, , HMI_CRT_5.BMP. The Max.
count is 255).
Second, you assign a status point (i.e. PSD_DI01. Refer to the sample/SHAPE = IMAGE in the
section 7.2.2 and the Figure 7-14, the Point Name will be PSD_DI01).
If the status point (i.e. PSD_DI01) is ON, all associated slides (i.e. HMI_CRT_0.BMP to
HMI_CRT_5.BMP. The count is starting from 0 to i) will be shown (forward-sequence-showing)
one by one at the speed of 1/24 second. If the status point turns OFF, all associated slides (i.e.
HMI_CRT_5.BMP to HMI_CRT_0.BMP. The count is starting from i to 0) will be shown
(backward-sequence-showing) one by one at the speed of 1/24 second.

7.3.14 CSpinEditor
The Sample:
The Shape Code: CSPINEDIT
The Typical use: AO Setpoint / Set up the value of the PSD_AI (pseudo AI - Internal Variable).
Notes: Refer to the screenshot Figure 7-15.

7.3.15 CGauge
The Sample:
The Shape Code: GAUGE
The Typical use: Display AO Setpoint, A Gauge.
Notes:

7.3.16 TrackBar
The Sample:
The Shape Code: TRACKBAR
The Typical use: AO Setpoint.
Notes:

- 125 -

7.3.17 CheckBox
The Sample:
The Shape Code: CHECKBOX
The Typical use: Enable/Disable, Toggle DI's state.
Notes: Toggle the state of the DI point configured by the tag-name. Refer to the section 7.2.5.

7.3.18 RadioGroup
The Sample:
The Shape Code: RADIOGROUP
The Typical use: Make a selection.
Notes: Refer to the screenshot Figure 7-16.

The Index of items in the RadioGroup comes from or goes to the HMI Data point (normally it is an AI or a
PSD_AI). If the value is not within the range of index (1.. max. item in the current RadioGroup), there is no item
selected.

7.3.19 ComboBox
The Sample:
The Shape Code: COMBOBOX
The Typical use: Make a selection.
Notes: Refer to the screenshot Figure 7-16.

The Index of items in the ComboBox comes from or goes to the HMI Data point (normally it is an AI or a PSD_AI).
If the value is not within the range of index (1.. max. item in the current ComboBox), there is no item selected (the
appearance in the current ComboBox is empty).

7.3.20 ListBox
The Sample:
The Shape Code: LISTBOX
The Typical use: Make a selection.
Notes: Refer to the screenshot Figure 7-16.

The ListBox does not like the RadioGroup and ComboBox, which allow you pick up an item only a time. But the
ListBox allows you do the multi-selection. The value (normally it is of an AI or a PSD_AI) is combined by the
multi-selection. The 1st index of item is corresponded to 20(1). The 2nd index of item is corresponded to 21(2). The
3rd index of item is corresponded to 22(4). And so on up to the 32nd index of item is corresponded to
231(2147483648). If you check the item #1 and item #3, the value is 5. If the value is not within the range of index
(1.. max. item in the current ListBox), there is no item selected.

7.3.21 MemoBox
The Sample:
The Shape Code: MEMO
The Typical use: Display the information in the file updated by others.
Notes: Refer to the screenshot Figure 7-17.
If the first line in the MemoBox is Meter ddd (where the ddd is the index of Meter, refer to the
section 1.4.13 the entry of METER), it displays and being updated the current Meter
information. There are other manual commands:ALARM_LIST, LOG, and LOAD:FILE:xxxx
- 126 -

that you can input directly at very beginning of the first line in the MemoBox. At the end you
should click on outside of it to active the command.
7.3.22 StringGrid
The Sample:
The Shape Code: STR_GRID
The Typical use: Display DI's state, Metering.
Notes: Refer to the screenshot Figure 7-1 and 19.
And the 2nd and 3rd sample in the section 7.2.2.
The content is defined by as in a string of
"xxxxx1~xxxxxx2~xxxxx3~xxxxx4~"
xxxxx1: The label
xxxxx2: The display
xxxxx3: The point name
xxxxx4: Future

7.3.23 Light
The Sample:
The Shape Code: LIGHT
The Typical use: Indication
Notes: Refer to the screenshot Figure 7-20.

7.3.24 Triangle_Left
The Sample:
The Shape Code: TRIANGLE_LEFT
The Typical use:
Notes:

7.3.25 Triangle_Right
The Sample:
The Shape Code: TRIANGLE_RIGHT
The Typical use:
Notes:

- 127 -

7.3.26 Triangle_Up
The Sample:
The Shape Code: TRIANGLE_UP
The Typical use:
Notes:

7.3.27 Transformer_Horizontal
The Sample:
The Shape Code: TRANSFORMER_HORI
The Typical use:
Notes:

7.3.28 Transformer_Vertical
The Sample:
The Shape Code: TRANSFORMER_VERT
The Typical use:
Notes:

7.3.29 Half_Circle_LEFT
The Sample:
The Shape Code: CIRCLE_LEFT
The Typical use:
Notes:

7.3.30 Half_Circle_RIGHT
The Sample:
The Shape Code: CIRCLE_RIGHT
The Typical use:
Notes:

7.3.31 Half_Circle_UP
The Sample:
The Shape Code: CIRCLE_UP
The Typical use:
Notes:

7.3.32 Half_Circle_DOWN
The Sample:
The Shape Code: CIRCLE_DOWN
The Typical use:
Notes:

- 128 -

7.3.33 Half_Ellipse_LEFT
The Sample:
The Shape Code: ELP_LEFT
The Typical use:
Notes:

7.3.34 Half_Ellipse_RIGHT
The Sample:
The Shape Code: ELP_RIGHT
The Typical use:
Notes:

7.3.35 Half_Ellipse_UP
The Sample:
The Shape Code: ELP_UP
The Typical use:
Notes:

7.3.36 Half_Ellipse_DOWN
The Sample:
The Shape Code: ELP_DOWN
The Typical use:
Notes:

7.3.37 Polyline_6
The Sample:
The Shape Code: POLYLINE_6
The Typical use:
Notes:

7.3.38 Polyline_8
The Sample:
The Shape Code: POLYLINE_8
The Typical use:
Notes:

- 129 -

7.3.39 Polygon_6
The Sample:
The Shape Code: POLYGON_6
The Typical use:
Notes:

7.3.40 Polygon_8
The Sample:
The Shape Code: POLYGON_8
The Typical use:
Notes:

7.3.41 Arc_UpLift
The Sample:
The Shape Code: ARC_UPLEFT
The Typical use:
Notes:

7.3.42 Arc_UpRight
The Sample:
The Shape Code: ARC_UPRIGHT
The Typical use:
Notes:

7.3.43 Arc_DownLift
The Sample:
The Shape Code: ARC_DOWNLEFT
The Typical use:
Notes:

7.3.44 Arc_DownRight
The Sample:
The Shape Code: ARC_DOWNRIGHT
The Typical use:
Notes:

- 130 -

7.3.45 Chord_UpLift
The Sample:
The Shape Code: CHORD_UPLEFT
The Typical use:
Notes:

7.3.46 Chord_UpRight
The Sample:
The Shape Code: CHORD_UPRIGHT
The Typical use:
Notes:

7.3.47 Chord_DownLift
The Sample:
The Shape Code: CHORD_DOWNLEFT
The Typical use:
Notes:

7.3.48 Chord_DownRight
The Sample:
The Shape Code: CHORD_DOWNRIGHT
The Typical use:
Notes:

7.3.49 Pie_UpLift
The Sample:
The Shape Code: PIE_UPLEFT
The Typical use:
Notes:

7.3.50 Pie_UpRight
The Sample:
The Shape Code: PIE_UPRIGHT
The Typical use:
Notes:

- 131 -

7.3.51 Pie_DownLift
The Sample:
The Shape Code: PIE_DOWNLEFT
The Typical use:
Notes:

7.3.52 Pie_DownRight
The Sample:
The Shape Code: PIE_DOWNRIGHT
The Typical use:
Notes:

7.3.53 Capacity_Horizontal
The Sample:
The Shape Code: CAPACITY_HORI
The Typical use:
Notes:

7.3.54 Capacity_Vertical
The Sample:
The Shape Code: CAPACITY_VERT
The Typical use:
Notes:

7.3.55 Ground_Horizontal
The Sample:
The Shape Code: GND_HORI
The Typical use:
Notes:

7.3.56 Ground_Vertical
The Sample:
The Shape Code: GND_VERT
The Typical use:
Notes:

- 132 -

7.3.57 Fuse_Horizontal
The Sample:
The Shape Code: FUSE_HORI
The Typical use:
Notes:

7.3.58 Fuse_Vertical
The Sample:
The Shape Code: FUSE_VERT
The Typical use:
Notes:

7.3.59 CT_Horizontal
The Sample:
The Shape Code: CT_HORI
The Typical use:
Notes:

7.3.60 CT_Vertical
The Sample:
The Shape Code: CT_VERT
The Typical use:
Notes:

7.3.61 Wavetrap_Horizontal
The Sample:
The Shape Code: WAVETRAP_HORI
The Typical use:
Notes:

7.3.62 Wavetrap_Vertical
The Sample:
The Shape Code: WAVETRAP_VERT
The Typical use:
Notes:

- 133 -

7.3.63 TX_Tap_Horizontal
The Sample:
The Shape Code: TX_TAP_HORI
The Typical use:
Notes:

7.3.64 TX_Tap_Vertical
The Sample:
The Shape Code: TX_TAP_VERT
The Typical use:
Notes:

7.3.65 VR_IND_3_Horizontal
The Sample:
The Shape Code: VR_IND_3_HORI
The Typical use:
Notes:

7.3.66 VR_IND_3_Vertical
The Sample:
The Shape Code: VR_IND_3_VERT
The Typical use:
Notes:

7.3.67 Exciter
The Sample:
The Shape Code: EXCITER_HORI
The Typical use:
Notes:

- 134 -

7.3.68 Valve_Horizontal
The Sample:
The Shape Code: VALVE_HORI
The Typical use:
Notes:

7.3.69 Valve_Vertical
The Sample:
The Shape Code: VALVE_VERT
The Typical use:
Notes:

7.3.70 2-State Switch Panel


The Sample:
The Shape Code: 2STATE_SW_PANEL
The Typical use: Toggle DI's state.
Notes: Refer to the sample #5 in the section 7.2.2.

7.3.71 Diamond_Polyline
The Sample:
The Shape Code: DIAMOND_POLYLINE
The Typical use:
Notes:

7.3.72 Diamond_Polygon
The Sample:
The Shape Code: DIAMOND_POLYGON
The Typical use:
Notes:

- 135 -

7.3.73 Trend_DataWatch
Max. Data = HI_RSLIM

Min. Data = LO_RSLIM

The Sample:
The Shape Code: TREND_DATAWATCH
The Typical use: Watch real-time or history data.
Notes: The AI point must be configured as a History Data. Refer to the section 1.4.13 (i.e.
PROTYPE = ANALOG HOUR_HISTORY) and the 1st sample in the section 7.2.2. It
displays the trend/history data with up to 60 points in the curve. The Interval can be a
Minute, or an Hour or a Day. The evolutions of data measures of the last 48 Hours or 90
Days or 60 Months.

Interval
MINUTE_HISTORY:
Interval=1 Minute
HOUR_HISTORY:
Interval=1 Hour
DAY_HISTORY:
Interval= 1 Day

Data points
in the curve
60(minutes)

Recorders in the history file


48 Hours (Max. 2880 recorders)

60(hours)

90 Days (Max. 2160 recorders)

60(days)

60 Months (Max. 1825 recorders)

Note

It displays the value of Current Point, Max., Min, Avg. and Total when you move the
cursor/mouse and point at the data-point in the curve. The format of the history file is Text
based.
If the color of the Pen is either Block or White the grid of Trend_DataWatch appears otherwise
the current Trend_DataWatch does not have a grid.
If you click on the current Trend_DataWatch or Multiple-Trend_DataWatch (Multiple
Trend_DataWatch shapes overlap at the same position with the same size of shape), the
associated single/multiple history display window appears. Refer to the section 5.3 for details on
the Display of the History of the Meter/Analogue data.
The scaling of displaying the trending data is defined by the entries of HI_RSLIM and
LO_RSLIM. The default value of HI/LO RSLIM is defined by HI/LO EUVAL. Refer to the
section 1.4.13.

- 136 -

7.3.74 Grid_Horizontal
The Sample:
The Shape Code: GRID_HORI
The Typical use: Layout
Notes:

7.3.75 Grid_Vertical
The Sample:
The Shape Code: GRID_VERT
The Typical use: Layout.
Notes:

7.3.76 2StateConnector_Horizontal
The Sample:
The Shape Code: 2STATE_CONNECTOR_HORI
The Typical use: Layout
Notes: Normally a DI point is assigned for it.
If the DI point is ON(Alarmed), the shape
will be changed to the Close-State. Refer to
the screenshot on right side.

7.3.77 2StateConnector_Vertical
The Sample:
The Shape Code: 2STATE_CONNECTOR_VERT
The Typical use: Layout.
Notes: Refer to 7.3.76.
If the DI point is ON(Alarmed), the shape will be
Changed to Close-State. Refer to shapes right side.

- 137 -

8 Data Matrix Editor


Refer to the screenshot Figure 3-1 you can click on the button [DataMatrix]

to open

the window of Data Matrix Editor as shown in the screenshot Figure 8-2.
The Data Matrix mainly is used for the application of the Remedial Action Scheme--RAS.
Normally the RAS is implemented by the PLC. Sometimes it might use the RTU. Please refer to
the section 1.4.10 to see how to make up the configuration for the Data Matrix Application.
Here we take the sample of RAS as shown in the Figure 8-1.
There are 48x16 units/selections in the Data Matrix editor. Each contingency (DI RAS Trip
Event) is associated with 16 Actions (DO Action). In the Matrix the Raw is the 48Contingency (named as TE1-TE48) and the Column is the 16-Action (named as ACT1-ACT16).
The full name of contingency and action is defined in the configuration file (refer to the section
1.4.10). As you see, for example, in the screenshot Figure 8-2, the TE1 is aaa aaaaaaaaaaa and
ACT6 is FFF FFFFF.
MB_Master

Client 1
Multi-Network based configuration

PY LAN
SY LAN

Digital Output
ACT 01 - 16

PY PLC

SY PLC

Digital Input
TE 01 - 48

Digital Input
TE 01 - 48

Digital Output
ACT 01 - 16

Figure 8-1

- 138 -

Client 50

The RED light indicates the action you have selected for the
specified contingency.

Modifying entries in the


configuration can change
the Title/TE Name/Action
Name. Refer to the section
1.4.10.

The Current Matrix


Unit/Selection: The Blue
Rectangle Cross-Line.
Refer to 8.3 8.8

SY

PY

Refer to 8.1
States in both PY PLC and SY PLC.
The color in RED presents the state is ON/ 1.
The color in GREEN presents the state is OFF/ 0.

Figure 8-2

- 139 -

Watch out the Error


Information in the Bottom
Window Information Bar.

8.1 Matrix Display


There are three modes of display in the Matrix Editor as follows.
8.1.1 Editor
In this mode, the Matrix Editor only displays what you are editing.
8.1.2 PLC
In this mode, the Matrix Editor only displays the matrix data in PY / SY PLC.
8.1.3 Both
In this mode, the Matrix Editor displays matrix data from both the Editor and devices (PY and
SY PLC).

- 140 -

8.2 Alert Comm. Failed


If finding the communication failure, the Matrix Editor will alert it as shown in the screenshot
Figure 8-3.

Figure 8-3

- 141 -

8.3 Editing Matrix


Refer to the screenshot Figure 8-2, double click on the Matrix to Select or Unselect the current
Action under the current contingency. After clicking on a selection, you will see the hint, which
tells you the full name of Contingency and Action that you currently look at.

8.4 Loading an Existing Matrix


Clicking on the button [Load] to load an existing matrix file.

8.5 Saving the current Matrix


Clicking the button [Save] to save the current matrix data into a matrix file.

8.6 Making a Selection


Clicking on the button [Select]/[Unselect] to select or unselect the current Matrix Unit. Refer to
the screenshot Figure 8-2.

8.7 Resetting All selections


Clicking on the button [Unselect ALL] to reset/dismiss all selections.

8.8 Copying from PLC


Clicking on the button:[Copy from PLC] to read the Matrix Selection from the existing Matrix
Data in the devices (PY/SY PLC).
As default, the Matrix Editor always copies the matrix selection from the existing matrix in the
devices at the beginning of opening the window of Matrix Editor. Normally you make changes
based on the existing matrix either in device or in the file.

- 142 -

8.9 Write/Update Matrix into PLC


As shown in the screenshot Figure 8-4, after clicking on the button [Update], a message box pops
up to ask you whether continue [Yes] or Abort [No]. If one of PLC PY/SY is failed, you still can
download the current Data Matrix into another PLC.
Note: If the current device is a RTU (i.e. running the protocol of DNP/L&G, etc.), you can
download a TE pattern only by double clicking on the TE Name. Also you can do the TestMatrix by clicking on the button of Test Matrix that is only available for the RTU-Matrix
Application (not for MB PLC Matrix Application).

Figure 8-4

- 143 -

As shown in the screenshot Figure 8-5, failed in updating the matrix data to device due to the
failure of the communication to the Device Modbus Address=11 after checking the re-try and the
timeout.

Click OK to continue.

Figure 8-5

- 144 -

As shown in the screenshot Figure 8-6, failed in updating the matrix data to devices (PY/SY
PLC) due to the failure of communication.

Click OK to continue

Figure 8-6

- 145 -

8.10 Auto Saving Matrix after updating


Figure 8-7 is a screenshot displaying an Alert Message box, which tells you that Updating Matrix
is finished and the current matrix data is saved into a Text file named as
Year_Month_Day_Hour_Minute_Second_UpdatedDataMatrix.txt.

Figure 8-7

- 146 -

8.11 Mismatched Matrix


Figure 8-8 is a screenshot displaying the information about mismatched data between PLCs and
Editor, and between PY PLC and SY PLC.
The information about mismatched
matrix.

It tells you how many mismatchedunit(s) in both PY PLC and SY PLC.

It tells you how many mismatchedunit(s) in both PLC (PY/SY) and


this Matrix Editor.

The state
(OFF) in the
SY PLC
Matrix.

The state
(ON) in the
PY PLC
Matrix.

Figure 8-8

- 147 -

9 PLC Program Runtime Simulator


Refer to the screenshot Figure 3-1, you can click on the button [PLC Program Runtime
Simulator]

to open the window of the PLC Program Runtime Simulator as shown in

the screenshot Figure 9-1.


The PLC Program Run-time simulator allows you to run a script that implements calculations,
logic, etc. which helps the HMI functioning.
The default name of the file of the PLC Program is PLC_CMD.TXT, which is text based file and
will be loaded automatically (refer to the section 1.4.4). The Max. capacity is 4095 lines.
The File Name of the current PLC
Program.
You can open the text file: PLC.REP
and PLC_CMD_LOG.TXTto check
whether there is Syntax-Error in the
PLC Program.

It enables to debug the PLC program.

Start the Runtime of


the current PLC
Program.

Displays the real-time


information of the current
line by clicking on it.

The Log Information. There are two log files.


The log file name is the same file name of the PLC
Program with different Ext: .LOG.
The debug Log File is PLC_CMD_LOG.TXT.

Figure 9-1

It is for you to debug the


current PLC program one
step by one step.
Run the current PLC
program a cycle only.

- 148 -

If checked, it disables
the log information.

.
.

Figure 9-2

The PLC Program


Runtime Database.

Mapping between
the DAS Real-time
Database and the
PLC Program
Runtime Database.

- 149 -

9.1 Points
There are only four types of data object/point: 0x, 1x, 4x and 9x in the PLC Program Runtime
Database.
9.1.1 Digital Output DO 0x
The Digital Output Point maps to the DO point in the Data Acquisition Real-time Database.
9.1.2 Digital Input DI 1x
The Digital Input Point maps to the DI point in the Data Acquisition Real-time Database.
9.1.3 16-Bit Data Register 4x
The 16-bit Data Register maps to the AI point in the Data Acquisition Real-time database.
9.1.4 16-Bit Pseudo Data Register 9x
The 16-bit Data Register 9x001 to 9x512 (PNT_ADDR = 0 .. 511) is treated as internal data (you
can read data and write data from/into it) in the PLC Program Runtime Database and the HMI
Point Database via the data type entry of D_TYPE = MYPLC_9X . Refer to the section
1.4.13 and 1.4.14. You can also access each bit (16 bits per register) individually via the entry of
PNT_BIT = dd, or 9xxx.bb in the PLC program.
Note: 9x001 to 9x050 is reserved as follows:
Address Value
Address Value
9x001
Second Counter
9x002
A Hour Counter
9x003
3-Second Counter
9x004
30-Second Counter
9x005
5-Second Counter
9x006
60-Second Counter
9x011
Year
9x012
Month
9x013
Day
9x014
Hour
9x015
Minute
9x016
Second
9x017
Week
9x018
DayOfYear
9x046
The counter of Integrity-Polling
9x047
The counter of Offline point
9x048
The counter of active alarm.
9x049
Remote Site Slave Address
9x050
Remote Site Index.
The max. capacity of PLC Program Runtime Simulator Database is 2048 Words (16-Bit) plus
512 9x points. The 16-Point of DO/DI occupies a Word. The Point Number starts from 1. The
following is the mapping list:
1x0001 is mapping to DI0000 in the DAS Real-time Database.
1x0016 is mapping to DI0015 in the DAS Real-time Database.
1x0017 is mapping to DI0015 in the DAS Real-time Database.
0x0001 is mapping to DO0000 in the DAS Real-time Database.
0x0016 is mapping to DO0015 in the DAS Real-time Database.
4x0001 is mapping to AI0000 in the DAS Real-time Database.
4x0016 is mapping to AI0015 in the DAS Real-time Database.
Refer to the section 1.4.9 and the screenshot Figure 9-2.

- 150 -

9.2 Load Program


Loads the PLC program that is text-based file. If the PLC program is specified by the entry of
PLC_FILE (refer to the section 1.4.4), it can be loaded automatically.

9.3 Run Program


Starts the Runtime of the current PLC program. Refer to the screenshot Figure 9-1.
It can be running automatically if there is no syntax-error in the program while is being loaded.
9.3.1 Periodically
Periodically runs the current PLC program. It is default setting.
9.3.2 A Cycle Only
Runs the current PLC program a cycle only. Refer to the screenshot Figure 9-1.

- 151 -

9.4 Debug Program


You can debug the current running PLC program. Refer to the screenshot Figure 9-1.
9.4.1 Step by Step
Click on the button of [Step] to run the current PLC program a cycle.
9.4.2 Logs
If enable the Log, you can see the log information regarding to the runtime of the current PLC
program.
9.4.3 Variable-Information
There are up to 17 variables #0 - #16 named as Var0, Var1, Var2, , Var16 in the expression.

- 152 -

9.5 Instructions
9.5.1 The List of Instructions
In the following "IF^" means the IF-Condition detects the Rising-Edge of Status Point/Boolean
Condition. There are up to 17 operands:Var0, Var1,,Var16 in the expression. The [xxxxx] is
the option in the expression. The #ddddd or #-dddddd represents a const value.
1

[IF/IF^
o
o
o

Var0 THEN] END


Function: Ends of the Program.
Note:
Sample: END

[IF/IF^
o
o
o

Var0 THEN] GOTO Var1


Function: Jumps to other place to execute the program.
Note: Jump label symbol is ":".
Sample: IF^ 4001.01 THEN GOTO :Alarm_H1

[IF/IF^
o
o
o

Var0 THEN] RET


Function: Returns from the current Sub-Routine.
Note:
Sample: IF^ 1001 THEN RET

[IF/IF^ Var0 THEN] CALL Var1-Label [Var2-Year Var3-Month Var4-Day


Var5-Week Var6-Hour Var7-Minute]
o
Function: Calls a Sub-Routine.
You can define the Date And/or the Time to call the sub-routine.
o
Note: Sub-Routine label symbol is "!".
Do not forget to put the RET at end of the current Sub-Routine.
o
Sample: IF 4001.01 THEN CALL !Calc_MW 9999 99 99 99 23 59
If 4001.01 (Bit 01) is ON, it calls the sub-routine Calc_MW at 23:59 every
day.

Var0 = OFF>ON Var2


o
Function: Detects the Rising_Edge.
You can transfer a Rising_Edge to someone.
o
Note:
o
Sample: 4001.01 = OFF>ON 1012

Var0 = ON>OFF Var2


o
Function: Detects the Falling_Edge.
You can transfer a Falling_Edge to someone.
o
Note:
o
Sample: 4001.01 = ON>OFF 1012

Var0 = Var1-PV SHR Var2-Bit


o
Function: Bitwise shift right.
o
Note:
o
Sample: 4001 = 4002 SHR #2
If 4002=1 then 4001=4.

Var0 = Var1-IF^ INC_1 Var2-IF-CLR


o
Function: Increments Var0 by one. If Var2>0 or ON then Var0=0.
o
Note:
o
Sample: 40001 = 10001 INC_1 10002
If 40001=99 and 10001 is OFF->ON then 40001=100. If 10002=ON then 40001=0.

Var0 = Var1-IF^ DEC_1 Var2-IF-CLR


o
Function: Decrements Var0 by one. If Var2>0 or ON then Var0=0.
o
Note:
o
Sample: 40001 = 10001 DEC_1 10002
If 40001=99 and 10001 is OFF->ON then 40001=98. If 10002=ON then 40001=0.

10 Var0 = Var1-IF ON_LOAD Var2-PV


o
Function: Load new value from Var2 when the condition Var1-IF is ON.
o
Note:

- 153 -

Sample: 40001 = 10003 ON_LOAD 40010


If 10003 is ON and 40010=100 then 40001=100.

11 Var0 = Var1-IF OFF_LOAD Var2-PV


o
Function: Load new value from Var2 when the condition Var1-IF is OFF.
o
Note:
o
Sample: 40001 = 10003 OFF_LOAD 40010
If 10003 is OFF and 40010=100 then 40001=100.
40001 = #0 OFF_LOAD 40010
If 40010=100 then 40001=100 all the time. The const #0 is equal to OFF.

12 Var0 = Var1-PV SHL Var2-BIT


o
Function: Bitwise shift left.
o
Note:
o
Sample: 40001 = 40002 SHL 40003
If 40002=4 and 40003=2 then 40001=1.
13 Var0 = [Var1-IF] KEEP Var2-IF-SET Var3-IF-RST
o
Function: R-S trigger
If Var2=ON Var2 is to SET Var0, otherwise Var3 is to RESET Var0.
o
Note:
o
Sample: 00003 = 40001.00 KEEP 40001.01 40001.02
If 40001.00 (Bit 00) is ON and 40001.01 is ON, 00003 is Latched ON.
14 Var0-Dest. = [Var1-IF] COPY Var2-Source Var3-Count
o
Function: Copies data from a source-Var2 to a destination-Var0.
o
Note: Directly move the data.
o
Sample: 40001 = 10001 COPY 40100 #100
If 10001 is ON, copies 100 register data 40100-40199 to 40001-40100.
15 Var0 = [Var1-IF] XCOPY Var2-DATA-ARRAY Var3-ARRAY-LEN
o
Function: Copies data from a source-Var2 to a destination-in the Var0.
o
Note: Indirectly move the data. The Destination address is defined in Var0.
o
Sample: 40001 = 10001 XCOPY 40100 #100
If 10001 is ON and 40001=700, copies 100 register data 40100-40199 to 4x7004x799.
16 Var0-STACK = [Var1-IF] PUSH_STACK Var2-STACK-LEN Var3-PV
o
Function: Push the data in the Var3 into a STACK defined by Var0.
o
Note: Var2 defines the length of the STACK. The data at the bottom will be lost if the
stack reaches the max. length. If Var2 is less then 0, PUSH_STACK does not
execute.
o
Sample: 40001 = 10003 PUSH_STACK #100 40199
If 10003 is ON, 40199 is pushed into the STACK.
17 Var0 = [Var1-IF] POP_STACK Var2-STACK Var3-STACK-LEN
o
Function: Pop the data to Var0 from a STACK defined by Var2.
o
Note: Var3 defines the length of the STACK. If Var3 is less then 0, POP_STACK does not
execute.
o
Sample: 40801 = 10003 PUSH_STACK 40001 #100
If 10003 is ON, 40801 is equal to 40001.
18 Var0 = [Var1-IF] SET_DATA Var2-PV Var3-LEN
o
Function: Sets the initial value that is stored in Var0 (variables/arrays in the
length defined by Var3).
o
Note:
o
Sample: 40801 = 10003 SET_DATA 40001 #100
If 10003 is ON and 40001 is #1234, 40801 to 40900 is set/initialized by #1234.
19 Var0 = Var1-PV TAB_INDEX Var2-TAB Var3-LEN Var4-DIV
o
Function: Searches the table defined by Var2 to find the first matched item.
o
Note: Var4 is to define the deviation. Var0 is #0 if there is no matched item in the
table.
o
Sample: 40801 = 40001 TAB_INDEX 40100 #100 #10
If 40001 is #1234 and 40101 is #1235, 40801 is equal to #2.
20 Var0 = [Var1-IF] TOTAL Var2-TAB Var3-LEN
o
Function: Calculates the total in the table defined by Var2. Var3 is to define the
size of the table.
o
Note:
o
Sample: 40801 = TOTAL 40100 #100
40801 is equal to 40100+40101++40199.

- 154 -

21 Var0 = [Var1-IF] MAX Var2-TAB Var3-LEN


o
Function: Finds the max. data in the table defined by Var2. Var3 is to define the size
of the table.
o
Note:
o
Sample: 40801 = MAX 40100 #100
40801 is equal to the max. data in the table 40100, 40101,,40199.
22 Var0 = [Var1-IF] ADD Var2-PV ... Var16-PV
o
Function: Calculates the total of Var2, Var3, up to Var16.
o
Note:
o
Sample: 40801 = ADD 40100 40123 40234
40801 is equal to 40100 + 40123 + 40234.

23 Var0 = [Var1-IF] MIN Var2-TAB Var3-LEN


o
Function: Finds the minimum data in the table defined by Var2. Var3 is to define the
size of the table.
o
Note:
o
Sample: 40801 = MIN 40100 #100
40801 is equal to the minimum data in the table 40100, 40101,,40199.
24 Var0 = [Var1-IF] [LOAD] Var2-PTR
o
Function: Loads a value from a pointer defined by Var2.
o
Note: Indirectly loads a data.
o
Sample: 40801 = [LOAD] 40100
If 40100 is #1234 and 401234 is #4321, 40801 is equal to #4321.
25 Var0-PTR = [Var1-IF] [SAVE] Var-PV
o
Function: Saves a value to a pointer defined by Var0.
o
Note: Indirectly saves a data.
o
Sample: 40100 = [SAVE] 40100 40801
If 40100 is #1234 and 40801 is #4321, 401234 is equal to #4321.
26 Var0 = [Var1-IF] LIMITMAX Var2-PV Var3-MAX
o
Function: Assigns the value of Var2 limited the value of Var3.
o
Note:
o
Sample: 40801 = LIMITMAX 40100 #2047
If 40100 is #1234, 40801 is equal to #1234.
If 40100 is #2234, 40801 is equal to #2047.
27 Var0 = [Var1-IF] LIMITMIN Var2-PV Var3-MIM
o
Function: Assigns the value of Var2 limited the value of Var3.
o
Note:
o
Sample: 40801 = LIMITMIN 40100 #-2047
If 40100 is #1234, 40801 is equal to #1234.
If 40100 is #-2234, 40801 is equal to #-2047.
28 Var0 = [Var1-IF] AVERAGE Var2-TAB Var3-LEN
o
Function: Calculates the average value in the table defined by Var2. Var3 is to define
the size of the table.
o
Note:
o
Sample: 40801 = TOTAL 40100 #100
40801 is equal to (40100+40101++40199) / 100.
29 Var0 = [Var1-IF] SUB Var2-PV ... Var16-PV
o
Function: Calculates the subtraction from Var2, Var3, up to Var16.
o
Note:
o
Sample: 40801 = SUB 40100 40123 40234 #1234
40801 is equal to 40801- 40100 - 40123 - 40234 - #1234.
30 Var0 = Var1-ON GET_ON_TIM Var2-TIMESETTING Var3-TIMEBUF
o
Function: Calculates the Pulse ON Time and check whether reaches the time setting.
o
Note: Var1 is to define the Pulse. Var2 is to define the time setting in Millisecond.
Var3 is to define the buffer of the timer (time base is 100ms).
o
Sample: 40124.01 = 10001 GET_ON_TIM #5000 40123
If finds 10001 on time 5 seconds or more, 40124.01 (Bit01) is ON.
31 Var0-Total-H-M-S = [Var1-IF] GET_TIME Var2-HourBuf Var3-MinuteBuf
Var4-SecondBuf [Var5-HourSetting
Var6-MinuteSetting Var7-SecondSetting]
o
Function: Calculates total in seconds and save the current time: Hour in Var2 and
Minute in Var3 and Seconds in Var4. It resets Var0 if the Time is equal to

- 155 -

o
o

the settings define by Var5(Hour) and/or Var6(Minute) and/or Var7(Second).


Note: No check on either Hour if Var5 is #0 or Minute if Var6 is 0 or Second if Var7
is 0.
Sample: 40124 = 10001 GET_TIME 40001 40002 40003 #23 #59 #59
If finds 10001 and the current time is 23:59:59 40124 is #0.

32 Var0-Total-Y-M-D = [Var1-IF] GET_DATE Var2-YearBuf Var3-MonthBuf


Var4-DayBuf Var5-Week
[Var6-YearSetting Var7-MonthSetting
Var8-DaySetting Var9-WeekSetting]
o
Function: Calculates total in days and save the current date: Year in Var2 and Month
in Var3 and Day in Var4 and Weekday in Var5. It resets Var0 if the Date is
equal to the settings define by Var6(Year) and/or Var7(Month) and/or
Var7(Day) and/or Var8(Weekday).
o
Note: No check on either Year if Var6 is #0 or Month if Var7 is 0 or Day if Var8 is 0
or Weekday if Var9 is 0.
o
Sample: 40124 = 10001 GET_DATE 40001 40002 40003 40004 #0000 #01 #01 #0
If finds 10001 and the current date is the 1st day of Jan. 40124 is #0.
33 Var0 = Var1 BIT_XOR Var2
o
Function: It does bitwise exclusive OR; compares two bits and generates a 1 result if
the bits are complementary, otherwise it returns 0.
o
Note:
o
Sample: 40001 = 40002 BIT_XOR 40003.
34 Var0 = Var1 BIT_AND Var2
o
Function: It does bitwise AND; compares two bits and generates a 1 result if both bits
are 1, otherwise it returns 0.
o
Note:
o
Sample: 40001 = 40002 BIT_AND 40002.
35 Var0 = Var1 BIT_OR Var2
o
Function: It does bitwise inclusive OR; compares two bits and generates a 1 result if
either or both bits are 1, otherwise it returns 0.
o
Note:
o
Sample: 40001 = 40002 BIT_XOR 40003.
36 Var0 = Var1 XOR Var2
o
Function: It does exclusive logic OR; returns true if Var1 is not equal to Var2.
o
Note: Var0, Var1 and Var2 are Boolean type.
o
Sample: 40001.01 = 40002.03 XOR 10003.
37 Var0 = Var1 XORNOT Var2
o
Function: It does exclusive logic OR; returns true if Var1 is not equal to Var2.
o
Note: Var0, Var1 and Var2 are Boolean type. Var2 is inverted before evaluation.
o
Sample: 40001.01 = 40002.03 XOR 10003.
38 Var0 = Var1 AND Var2
o
Function: It does logical AND; returns true only if both Var1 and Var2 evaluate to be
nonzero, otherwise returns false. If Var1 evaluates to false, Var2 is not
evaluated.
o
Note: Var0, Var1 and Var2 are Boolean type.
o
Sample: 40001.01 = 40002.03 AND 10003.
39 Var0 = Var1 ANDNOT Var2
o
Function: It does logical AND; returns true only if both Var1 and Var2 evaluate to be
nonzero, otherwise returns false. If Var1 evaluates to false, Var2 is not
evaluated.
o
Note: Var0, Var1 and Var2 are Boolean type. Var2 is inverted before evaluation.
o
Sample: 40001.01 = 40002.03 ANDNOT 10003.
40 Var0 = Var1 OR Var2
o
Function: It does logical OR; returns true if either of operands (Var1 and Var2)
evaluate to be nonzero, otherwise returns false. If the Var1 evaluates to
true, Var2 is not evaluated.
o
Note: Var0, Var1 and Var2 are Boolean type.
o
Sample: 40001.01 = 40002.03 OR 10003.
41 Var0 = Var1 ORNOT Var2
o
Function: It does logical OR; returns true if either of operands (Var1 and Var2)
evaluate to be nonzero, otherwise returns false. If the Var1 evaluates to
true, Var2 is not evaluated.
o
Note: Var0, Var1 and Var2 are Boolean type. Var2 is inverted before evaluation.

- 156 -

Sample: 40001.01 = 40002.03 ORNOT 10003.

42 Var0 = Var1 HEX_BCD Var2-Mul


o
Function: Gets a HEX value from BCD data in Var1 and multiplied by Var2.
o
Note: The Bit15 of Var1 is Sign-Bit that indicates whether a numeric value is
positive, negative, or zero.
o
Sample: 40001 = 40002 HEX_BCD #1.
If 40002 is #4660(1234h), 40001 is #1234.
If 40002 is #37428(9234h), 40001 is #-1234.
43 Var0 = Var1 BCD_HEX Var2-Mul
o
Function: Gets a BCD value from HEX data in Var1 and multiplied by Var2.
o
Note: The Bit15 of Var0 is Sign-Bit that indicates whether a numeric value is
positive, negative, or zero.
o
Sample: 40001 = 40002 HEX_BCD #1.
If 40002 is #1234, 40001 is #4660(1234h).
If 40002 is #-1234, 40001 is #37428(9234h).
44 Var0 = Var1 > Var2
o
Function: Check whether Var1 is greater than Var2.
o
Note:
o
Sample: 00001 = 40001 > 40002.
45 Var0 = Var1 < Var2
o
Function: Check whether Var1 is less than Var2.
o
Note:
o
Sample: 00001 = 40001 < 40002.
46 Var0 = Var1 == Var2
o
Function: Check whether Var1 is equal to Var2.
o
Note:
o
Sample: 00001 = 40001 == 40002.
47 Var0 = Var1 <> Var2
o
Function: Check whether Var1 is not equal to Var2.
o
Note:
o
Sample: 00001 = 40001 <> 40002.
48 Var0 = Var1 + Var2
o
Function: Addition.
o
Note:
o
Sample: 40001 = 40002 + #1000
49 Var0 = Var1 - Var2
o
Function: Subtraction.
o
Note:
o
Sample: 40001 = 40002 - #1000
50 Var0 = Var1 * Var2
o
Function: Multiplication.
o
Note:
o
Sample: 40001 = 40002 * 40003
51 Var0 = Var1 / Var2
o
Function: Division.
o
Note:
o
Sample: 40001 = 40002 / 40003
52 Var0 = Var1-Mul ARCTAN Var2
o
Function: Calculates the Arc tangent of a real value.
o
Note:
o
Sample: 40001 = #1 ARCTAN 40002
53 Var0 = Var1-Mul COS Var2
o
Function: Calculates the Cosine of a real value.
o
Note:
o
Sample: 40001 = #1 COS 40002
54 Var0 = Var1-Mul SIN Var2
o
Function: Calculates the Sine of a real value.
o
Note:

- 157 -

Sample: 40001 = #1 SIN 40002

55 Var0 = Var1-Mul SQURT Var2


o
Function: Calculates the positive square root.
o
Note:
o
Sample: 40001 = #1 SQUART 40002
56 Var0 = Va1-Mul THI3 Var2
o
Function: Var0 = Var1 * Var2 * Var2 * Var2.
o
Note:
o
Sample: 40001 = #1 TH3 40002

57 Var0 = Var1-Mul LN Var2


o
Function: Ln returns the natural logarithm of (X+1).
Use Ln when X is a value near 0.
o
Note:
o
Sample: 40001 = #1 LN 40002
58 Var0 = Var1-Mul EXP Var2
o
Function: Calculates the exponential e to the Var2.
o
Note:
o
Sample: 40001 = #1 EXP 40002
59 Var0 = Var1-Mul NOT Var2
o
Function: It does bitwise negation.
o
Note:
o
Sample: 40001 = #1 NOT 40002
60 BLD
o
o
o
61 BOR
o
o
o

Var0-PV,...,Var16-PV
Function: ----| |-------. Starts the Ladder Boolean Logic.
Note:
Sample:
Var0-PV,...,Var16-PV
Function: Boolean Logic OR operation.
Note:
Sample: BLD 10001
BOR 10002 10003
BOUT 90001.01
BLDEND
|--| |---|--------------------()-|
| 10001 |
90001.01
|--| |---|
| 10002 |
|--| |---|
| 10003

62 BORNOT
o
o
o

Var0-PV,...,Var16-PV
Function: Boolean Logic NOT and OR operation.
Note:
Sample: BLD 10001
BORNOT 10002 10003
BOUT 90001.01
BLDEND
|--| |---|--------------------()-|
| 10001 |
90001.01
|--|/|---|
| 10002 |
|--|/|---|
| 10003

63 BAND

Var0-PV,...,Var16-PV
Function: Boolean Logic AND operation.
Note:
Sample: BLD 10001
BAND 10002 10003
BOUT 90001.01
BLDEND
|--||------||-----||--------()-|
| 10001 10002 10003
90001.01

o
o
o

64 BANDNOT Var0-PV,...,Var16-PV

- 158 -

o
o
o

65 BOUT
o
o
o

66 BOUTNOT
o
o
o

67 BORLD
o
o
o

Function: Boolean Logic NOT and AND operation.


Note:
Sample: BLD 10001
BANDNOT 10002 10003
BOUT 90001.01
BLDEND
|--||-----|/|----|/|--------()-|
| 10001 10002 10003
90001.01
Var0-PV
Function: Boolean Logic OUTPUT operation.
Note:
Sample: BLD 10001
BOR 10002
BLD 10003
BANDLD
BLD 10004
BORLD
BOUT 90001.01
BLDEND
|--||---|------||----|--------()-|
| 10001 |
10003 |
90001.01
|
|
|
|--||---|
|
| 10002
|
|
|
|--||----------------|
| 10004

Var0-PV
Function: Boolean Logic NOT and OUTPUT operation.
Note:
Sample: BLD 10001
BOR 10002
BLD 10003
BANDLD
BLD 10004
BORLD
BOUTNOT 90001.01
BLDEND
|--||---|------||----|--------(/)-|
| 10001 |
10003 |
90001.01
|
|
|
|--||---|
|
| 10002
|
|
|
|--||----------------|
| 10004

Function: Boolean Logic OR operation between TWO Ladder Logic Blocks: the current
Ladder Boolean Result and the last one.
Note:
Sample: BLD 10001
BOR 10002
BAND 10003
BLD 10004
BAND 10005
BORLD
BOUT 90001.01
BLDEND
|--||---|------||----|--------()-|
| 1001 |
1003
|
9001.01
|
|
|
|--||---|
|
| 1002
|
|
|
|--||----------||----|
| 1004
1005

- 159 -

68 BANDLD
o
o
o

69 BLDEND
o
o
o
70 BLDNOT
o
o
o

Function: Boolean Logic AND operation between TWO Ladder Logic Blocks: the current
Ladder Boolean Result and the last one.
Note:
Sample: BLD 10001
BOR 10002
BLD 10003
BOR 10004
BANDLD
BOUT 90001.01
BLDEND
|--||---|------||----|--------()-|
| 10001 |
10003 |
90001.01
|
|
|
|--||---|------||----|
| 10002
10004 |

Function: End of the current calculation for Ladder Boolean Logic.


Note:
Sample: BLDEND

Function: ----|/|-----.
Note:
Sample: BLDNOT 10001
BOR 10002
ANDNOT 10003
BOUT 90001.01
BLDEND
|--|/|--|------|/|------------()-|
| 10001 |
10003
90001.01
|
|
|--||---|
| 10002

71 BOUT_REG Var0
o
Function: Converts up to the latest 16 Ladder Boolean data into a 16-Bit Register.
o
Note:
o
Sample: BLD 10001 10002 90001.01 40004.15 40005.00
BOUT_REG 90123
If 10001=ON and 10002=OFF and 90001.01=OFF and 40004.15=ON and 40005.00=ON,
90123=0000000000010011(Binary), or 0013(Hex.), or #19.
72 BOUT_SBO Var0-PT#
o
Function: Generates a SBO Command.
o
Note:
o
Sample: BLD 10001
BAND 10002
BOUT_SBO 00001
if 10001=ON and 10002=ON sends SBO CLOSE to 00001, otherwise sends SBO OPEN to
00001.
73 BOUT_PULSE Var0-PT Var1-COUNT Var2-ON_TIME Var3-OFF_TIME
o
Function: Generates a DO Pulse Command.
o
Note:
o
Sample: BLD 10001
BAND 10002
BOUT_PULSE 00001 #10 #5000 #5000
If 10001=ON and 10002=ON sends DO Pulse to 00001 with Count Parameter=10 and
ON-Time Parameter=5000 and OFF-Time Parameter=5000.
74 BTIMER Var0-PV Var1-SV Var2-PT#
o
Function: Build a timer and check whether it is expired.
o
Note:
o
Sample: BTIMER 40001 #5000 90001.01
If the current Ladder Boolean data is ON the timer so called 90001.01 is OFF
until 5000 milliseconds late. The current time count is saved in 40001.
If the current Ladder Boolean data is OFF the timer so called 90001.01 is OFF
and the current time count is 0.
75 Var0 = [Var1-IF] FR_DWORD Var2 [Var3-Mul]

- 160 -

o
o
o

Function: Converts a 32bit floating data to a 32bit binary word.


Note: Uses it to prepare for a floating-data double word (32bit, 2 registers) and
downloads it into the Modbus PLC.
Sample: 40001 = FR_DWORD 40100 #1

76 Var0 = [Var1-IF] DWORD_FR Var2 [Var3-Mul]


o
Function: Converts a 32bit binary word to a 32bit floating data.
o
Note:
o
Sample: 40001 = DWORD_FR 40100 #1
77 Var0 = [Var1-IF] DO_CMD Var2-DevAddr Var3-Pnt Var4-CtrlCode Var5-P/T [Var6-Ctrl Count]
o
Function: Write control command via DCA Driver.
o
Note: The command is for DO.
o
Sample: 40901 = 10001 DO_CMD #11 #012 #03 #0 #0
If 10001 is ON it sends a DO command to device address=#11 and DO control
point=#12 and DO Control Code= #03(Latch-ON, refer to the section 1.4.15 for
the control code)
40901 = 10001 DO_CMD #11 #012 #01 #5000 #30
If 10001 is ON it sends a DO command to device address=#11 and DO control
point=#12 and DO Control Code= #01(Pulse, refer to the section 1.4.15 for
the control code) and Control Count=#30(30 Pulse DOs).
78 Var0 = [Var1-IF] AO_CMD Var2-DevAddr Var3-Pnt Var4-SV
o
Function: Write control command via DCA Driver.
o
Note: The command is for AO with the data format of Integer.
o
Sample: 40701 = 10001 AO_CMD #11 #13 90123
If 10001 is ON and 90123=#1234 it sends an AO command to device address=#11
and AO control point=#13 and AO Setpoint value=#1234.
79 Var0 = [Var1-IF] F_AO_CMD Var2-DevAddr Var3-Pnt Var4-SV
o
Function: Write control command via DCA Driver.
o
Note: The command is for AO with the data format of Integer.
o
Sample: 40701 = 10001 F_AO_CMD #11 #13 90123
If 10001 is ON and 90123=#1234.56 it sends an AO command to device
address=#11 and AO control point=#13 and AO Setpoint value=#1234.56.

- 161 -

9.5.2

Syntax

Label: :xxxx
Sub-Routine Entry: !xxxx
Const: #dddd or #-ddddd
Define the size of the PLC Program Runtime Simulator Database
Note #1
Digital Output 0X: DB_SIZE_0X= xxx
The First 0X Number: FIRST_0X_NO.= x
Digital Input 1X: DB_SIZE_1X= xxx
The First 1X Number: FIRST_1X_NO.= x
16-Bit Register 4X: DB_SIZE_4X= xxx
The First 4X Number: FIRST_4X_NO.= x
Mapping the PLC Program Runtime Simulator Database to the Real-time
Database (Globe).
Digital Output 0X: DO CLASS
Digital Input 1X: DI CLASS /Treated as LOCAL FORCED
16-Bit Register 4X: AI CLASS /Treated as LOCAL FORCED
Define the list of Alias/Var (Here you can declare variables).
@ xxxxxxxx xxxxxxxxxxxxxxxx
|
|
|
|
|
|--The Var Name. The Max. of Length is 16
|
|--PLC IO Point Name (0X, 1X and 4X). The Max. of Length is 8
|--The Head Character of the curretn definition. It must be the character of @
Note #1:
The point number of 0x, 1x, 4x and 9x starts from 1. The point number of DI, DO and AI in the
Data Acquisition Real-time database starts from 0.
Normally, the default setting of the First Number is 1 (if 0 or less, no change/offset applied). So
4x0001 is mapping to AI #0000. 4x0100 is mapping to AI #0099. You can set
FIRST_4X_NO.=100, so 4x0100 is mapping to AI #0000. 4x0200 is mapping to AI #0099. The
same rule is applied to settings of FIRST_0X_NO.= x and FIRST_1X_NO.= x.

- 162 -

9.5.3

A Sample

;PLC ladder logic language program run-time simulator


;
;Define the size of database
DB_SIZE_0X= 256
FIRST_0X_NO.= 1
DB_SIZE_1X= 128
FIRST_1X_NO.= 1
DB_SIZE_4X= 256
FIRST_4X_NO.= 1
;
;Define Variable.
; @ IO_Name(Max8) Var_Name(Max16)
;
@ 10001 DI01
@ 10002 DI02
@ 10003 DI03
@ 10004 DI04
@ 10005 DI05
@ 10006 DI06
@ 10007 DI07
@ 10008 DI08
@ 10009 DI09
@ 10010 DI10
@ 10011 DI11
@ 10012 DI12
@ 10013 DI13
@ 10014 DI14
@ 10015 DI15
@ 10016 DI16
;
;
;
;2L45-CSN
BLD
DI16 DI15 DI14 DI13 DI12 DI11 DI10 DI09 DI08 DI07 DI06 DI05 DI04 DI03 DI02 DI01
BOUT_REG 4001
;
BLD
10032 10031 10030 10029 10028 10027 10026 10025 10024 10023 10022 10021 10020 10019 10018
10017
BOUT_REG 4002
;
BLD
4001.00
BOR
4001.01 4001.02 4001.03 4001.04 4001.05 4001.06 4001.07 4001.08 4001.09 4001.10 4001.11
4001.12
BOUT
4009.11
BLDEND
;
BLD
4001.13
BOR
4001.14 4001.15 4002.00 4002.01 4002.02 4002.03 4002.04
BOUT
4009.12
BLDEND
;
BLD
4001.14
BOR
4001.15 4002.00 4002.01 4002.02 4002.03 4002.04
BOUT
4009.15
BLDEND
;
;
;2L45-M90C
BLD
10048 10047 10046 10045 10044 10043 10042 10041 10040 10039 10038 10037 10036 10035 10034
10033
BOUT_REG 4003
;
BLD
10064 10063 10062 10061 10060 10059 10058 10057 10056 10055 10054 10053 10052 10051 10050
10049
BOUT_REG 4004
;
BLD
4003.00
BOR
4003.01 4003.02 4003.03 4003.04 4003.05 4003.06 4003.07 4003.08 4003.09 4003.10 4003.11
4003.12
BOUT
4010.11
BLDEND
;
BLD
4003.13
BOR
4003.14 4003.15 4004.00 4004.01 4004.02 4004.03 4004.04
BOUT
4010.12
BLDEND
;
BLD
4003.14

- 163 -

BOR
BOUT
BLDEND
;
;
;2L55-CSN
BLD
10065
BOUT_REG 4005
;
BLD
10081
BOUT_REG 4006
;
BLD
BOR
4005.12
BOUT
BLDEND
;
BLD
BOR
BOUT
BLDEND
;
BLD
BOR
BOUT
BLDEND
;
;
;FUTURE
BLD
10097
BOUT_REG 4007
;
BLD
10113
BOUT_REG 4008
;
BLD
BOR
4007.12
BOUT
BLDEND
;
BLD
BOR
BOUT
BLDEND
;
BLD
BOR
BOUT
BLDEND
;
;
;
;
;F1 KEY
BLD
BOUT
;
;F2 KEY
BLD
BOUT
;
;F3 KEY
BLD
BOUT
;
;F4 KEY
BLD
BOUT
;
;SYS KEY
BLD
BOUT
;
;PAGE
4101
;
;4016

4003.15 4004.00 4004.01 4004.02 4004.03 4004.04


4010.15

10080 10079 10078 10077 10076 10075 10074 10073 10072 10071 10070 10069 10068 10067 10066

10096 10095 10094 10093 10092 10091 10090 10089 10088 10087 10086 10085 10084 10083 10082

4005.00
4005.01 4005.02 4005.03 4005.04 4005.05 4005.06 4005.07 4005.08 4005.09 4005.10 4005.11
4011.11

4005.13
4005.14 4005.15 4006.00 4006.01 4006.02 4006.03 4006.04
4011.12

4005.14
4005.15 4006.00 4006.01 4006.02 4006.03 4006.04
4011.15

10112 10111 10110 10109 10108 10107 10106 10105 10104 10103 10102 10101 10100 10099 10098

10128 10127 10126 10125 10124 10123 10122 10121 10120 10119 10118 10117 10116 10115 10114

4007.00
4007.01 4007.02 4007.03 4007.04 4007.05 4007.06 4007.07 4007.08 4007.09 4007.10 4007.11
4012.11

4007.13
4007.14 4007.15 4007.00 4007.01 4007.02 4007.03 4007.04
4012.12

4007.14
4007.15 4008.00 4008.01 4008.02 4008.03 4008.04
4012.15

4013.00
4100.00

4013.01
4100.01

4013.02
4100.02

4013.03
4100.03

4014.13
4100.04

= #1 SHL 4015
=

#FFFFH

#0

- 164 -

4017
=
#0
+
#0
4017.00
=
4101.02 +
4101.06
4017.01
=
4101.03 +
4101.07
4017.02
=
4101.04 +
4101.08
4017.03
=
4101.05 +
4101.09
;
;
;F1 KEY AND ALARM PRESENT
BLD
4100.00
|---| |---------| |-----------------O-|
BLD
4009.11
| 4100.00
| 4009.11 |
4102.00|
BORNOT
4009.12
|
|---|/|-----|
|
BANDLD
|
4009.12
|
BOUT
4102.00
IF^
4102.00
THEN
CALL ALM_1
BLD
4100.00
BANDNOT
4009.11
BAND
4009.12
BOUT
4102.01
IF^
4102.01
THEN
CALL DIAG_1
BLDEND
;
;
;F2 KEY AND ALARM PRESENT
BLD
4100.01
BLD
4010.11
BORNOT
4010.12
BANDLD
BOUT
4102.02
IF^
4102.02
THEN
CALL ALM_2
BLD
4100.01
BANDNOT
4010.11
BAND
4010.12
BOUT
4102.03
IF^
4102.03
THEN
CALL DIAG_2
BLDEND
;
;
;F3 KEY AND ALARM PRESENT
BLD
4100.02
BLD
4011.11
BORNOT
4011.12
BANDLD
BOUT
4102.04
IF^
4102.04
THEN
CALL ALM_3
BLD
4100.02
BANDNOT
4011.11
BAND
4011.12
BOUT
4102.05
IF^
4102.05
THEN
CALL DIAG_3
BLDEND
;
;
;F4 KEY AND ALARM PRESENT
BLD
4100.03
BLD
4012.11
BORNOT
4012.12
BANDLD
BOUT
4102.06
IF^
4102.06
THEN
CALL ALM_4
BLD
4100.03
BANDNOT
4012.11
BAND
4012.12
BOUT
4102.07
IF^
4102.07
THEN
CALL DIAG_4
BLDEND
;
;SYS KEY FUNCTION AND MAIN PAGE
BTIMER
4103
#2
4102.14
BTIMER
4103
#4
4102.15
IF^
4100.04
THEN
CALL SYS_KEY
;
END
;
!SYS_KEY
BLD 4100.04
BLDEND
RET
;
;
!ALM_1
4016 = #2 + #0
RET
;

- 165 -

!DIAG_1
4016 = #6
RET
;
;
!ALM_2
4016 = #3
RET
;
!DIAG_2
4016 = #7
RET
;
;
!ALM_3
4016 = #4
RET
;
!DIAG_3
4016 = #8
RET
;
;
!ALM_4
4016 = #5
RET
;
!DIAG_4
4016 = #9
RET
;

+ #0

+ #0

+ #0

+ #0

+ #0

+ #0

+ #0

- 166 -

10 Networking and Data Server


The Networking of xMaster is shown as in the Figure 10-1.
Security Control
SCADA Database
and Web
Applications.

Ethernet networks (TCP/IP)


xMaster HMI
&
Server
xMaster HMI
Client #1

xMaster HMI
Client #2

DAS Communication
Link/Sessions
#1

#2

xMaster HMI
Client #50

DNP / MB Protocol

#8

DNP to MB Converter
MB to DNP Converter

Remote Device/Slave End -- Top


Level Devices/DA Sessions on
the station automation platform.

Other MB/DNP
Master End

SCADA: Control Center HMI

SCADA: Local HMI


Figure 10-1

The TCP/IP address of up to 50 xMaster HMI Clients must be in the list of valid client in the
xMaster HMI Server. The xMaster HMI Server is able to enable/disable the Control-Functions
issued from xMaster HMI Clients. The xMaster HMI Server and Clients can use the same
configuration files. So it is easy to maintain and deploy. The format of the file of configurations
(i.e. DAS, Database, HMI Displays, etc.) is the Text based. And the Online-Change on the
configurations is allowed. The xMaster Client can be the Station running SCADA Database and
WEB Applications that serves other clients (i.e. Internet Explorer Browser, etc.)
In the application of the Primary System (PY) and the Standby System (SY) shown as the MultiNetwork based as follows, there is a PY only and up to 50 SY/Clients using the same
configuration.
PY

SY 1

Multi-Network based configuration

#1

#2

#8

- 167 -

SY 50

If the xMaster HMI is configured as PY & SY application (refer the section 1.4.3: the entry of
PY_MASTER_IP_ADDR = ddd.ddd.ddd.ddd), the user will be asked whether the current
configuration runs as PY or SY when the xMaster HMI program starts. Switching from PY to
SY is operated manually. Any SY / Clients can be switched into running as the PY when there is
not a PY available in the entire system.

10.1 Connect to Server


Server IP Address and IP Port are defined in the section 1.4.3.
Also you have to setup the list of IP Address of the valid clients.
You can control the access from the current client. Refer to the screenshot Figure 11-5.

10.2 Remote Logs Screen


IP Port = XMASTER_IP_PORT + 1. Refer to the section 1.4.3.
Commands:
Sample as follows on TelNet Screen
FDS Remote Logs
Remote Log Display Command List:
[q] Enable Data Acquisition Logs
[a] Disable Data Acquisition Logs
[w] Enable Communication Link Rx/Tx Bytes Logs
[s] Disable Communication Link Rx/Tx Bytes Logs
[e] Enable Client/User Command/Data Logs
[d] Disable Client/User Command/Data Logs
[r] Enable Communication Link Rx/Tx String Logs
[f] Disable Communication Link Rx/Tx String Logs
[t] Enable Main Logs
[g] Disable Main Logs

- 168 -

10.3 Protocols to xMaster Server


The xMaster server uses protocols as follows:
FDS Server ASCII/Telnet
FDS Server Binary Message Packet
Modbus RTU Protocol over TCP/IP
Modbus TCP /IP (ref-ref-0-0-L-ID-Message)
Refer to the section 1.4.3 to define what kind of protocol you want to use.

- 169 -

10.3.1 FDS Server ASCII/Telnet


Sample as follows in TelNet screen:
8/20/2003 9:36:54 AM >DNP Master / HMI / Field Data Server Version 2.00, 2002
-- Version 1.0805 User Password:####
Welcome you
8/20/2003 9:36:03 AM >help
help
--> Help
getobj Index Number(1-16)
--> Read Objects
setobj Index PV
--> Set a Object
getrtdb Index Number(1-16)
--> Read RTDB
setrtdb Index PV
--> Set a RTDB
ver
--> Preset version
readtag Tagname(DeviceAddress.ObjectName)
--> Read a Object by tagname
readchanged
--> Read changed data
readall Data Format(10,16,2,8)
--> Read database
sboopen ObjIndex PointNo. ControlCode ControlTiming
--> SBO OPEN
sboclose ObjIndex PointNo. ControlCode ControlTiming
--> SBO CLOSE
sbolower ObjIndex PointNo. ControlCode ControlTiming
--> SBO LOWERE
sboraise ObjIndex PointNo. ControlCode ControlTiming
--> SBO RAISE
beginscan ObjIndex
--> Integrity Poll
frzaccum ObjIndex PointNo.
--> FREEZE ACCUM
rstaccum ObjIndex PointNo.
--> FREEZE & RESET ACCUM
aoset ObjIndex PointNo. Value
--> ANALOG SETPOINT
digout ObjIndex PointNo. ControlCode ControlCount ControlONTiming ControlOFFTiming
--> DIGITAL OUTPUT
8/20/2003 9:36:07 AM >

- 170 -

10.3.2 FDS Server Binary Message Packet


Refer to the manual of FDS Server Binary Protocol.
FDS Binary Messages over the LAN

xMaster HMI
&
Server
xMaster HMI
Client #1

xMaster HMI
Client #2

DAS Communication
Link/Sessions
#1

#2

#8

The following is the reference to programming the FDS Server Binary Protocol.
#define MAX_Size_Protocol_Buf
1024
#define FDSFrameHeadLength
4
#define MAX_Size_Protocol_FrameBuf 1024+FDSFrameHeadLength
#define MAX_FDSMsg
64
//Object Class
#define Binary_BIT__Input
#define Binary_BIT__Output
#define Bit16_Binary_Counter
#define Bit32_Binary_Counter
#define Bit16_Data_Register
#define Bit32_Data_Register
#define Bit16_Analog_Input
#define Bit16_Analog_Output
#define Bit32_Float_Data
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define

0
1
2
3
4
5
6
7
8

Ctrl_Code_RTU_SBO_OPEN
Ctrl_Code_RTU_SBO_CLOSE
Ctrl_Code_RTU_SBO_LOWER
Ctrl_Code_RTU_SBO_RAISE
Ctrl_Code_RTU_DO_LOWER
Ctrl_Code_RTU_DO_RAISE
Ctrl_Code_RTU_DO_PATTEN
Ctrl_Code_RTU_PULSE
Ctrl_Code_RTU_DO_LATCH_ON
Ctrl_Code_RTU_DO_LATCH_OFF
Ctrl_Code_RTU_DO_PULSE
Ctrl_Code_RTU_BIN_DO
Ctrl_Code_RTU_BIN_AO

//Protocol Message Code


#define PROTOCOL_CTRL_CMD_ACK
#define PROTOCOL_CTRL_CMD_NAK
#define PROTOCOL_CTRL_CMD_INVALID
#define PROTOCOL_ACK
#define PROTOCOL_NAK
#define PROTOCOL_INVALID
#define PROTOCOL_GIVE_ME_ALL
#define PROTOCOL_STOP_GIVING
#define PROTOCOL_GIVE_ME_CHANGED
#define PROTOCOL_GIVE_ME_OBJECT
#define PROTOCOL_START_FDS_CLIENT
#define PROTOCOL_WRITE_OBJECT

0x81
0x41
0x81
0x41
0x01
0x01
0x01
0x01
0x03
0x04
0x01
0x17
0x14

250
251
252
0
1
2
3
4
5
6
7
8

- 171 -

xMaster HMI
Client #50

#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define

PROTOCOL_WRITE_BLOCK
9
PROTOCOL_SBOCLOSE
10
PROTOCOL_SBOOPEN
11
PROTOCOL_SEL_CLOSE
12
PROTOCOL_SEL_OPEN
13
PROTOCOL_SEL_OPERATE
14
PROTOCOL_ACC_FRZ
15
PROTOCOL_GL_ACC_FRZ
16
PROTOCOL_ACC_FRZ_RS
17
PROTOCOL_SBOLOWER
18
PROTOCOL_SBORAISE
19
PROTOCOL_SETPOINT
20
PROTOCOL_DIG_OUT
21
PROTOCOL_STAT_OUT
22
PROTOCOL_RESET_CLIENT
23
PROTOCOL_GIVE_ME_TAGNAME
24
PROTOCOL_GIVE_ME_RTDB
25
PROTOCOL_WRITE_RTDB
26
PROTOCOL_SEL_RESET
27
PROTOCOL_RESET_DEVICE
28
PROTOCOL_INTEGRITY_POLL
29
PROTOCOL_DRV_CONFIG_TABLE
30
PROTOCOL_DRV_ONLINE
31
PROTOCOL_DRV_OFFLINE
32
PROTOCOL_SBO_TEST
33
PROTOCOL_DRV_EVENT_POLL
34
PROTOCOL_DRV_INTEGRITY_POLL 35
PROTOCOL_DRV_FREEZE
36
PROTOCOL_DRV_SHOW_WIN
37
PROTOCOL_DRV_TIME_SYN
38
PROTOCOL_FDS_MSG_STRING_BEGIN
PROTOCOL_FDS_MSG_STRING
PROTOCOL_FDS_MSG_STRING_END

#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define

DrvCmdResult_Response_ACK
DrvCmdResult_Response_ACK_UNBLOCK
DrvCmdResult_Just_Read_in_and_sent_out_By_Driver
DrvCmdResult_Just_Written_by_User
DrvCmdResult_UnFinished_by_Driver
DrvCmdResult_UnFinished_by_Driver_Freezed
DrvCmdResult_UnFinished_by_Driver_ErrParam
DrvCmdResult_UnFinished_by_Driver_Unauthroized
DrvCmdResult_WritingDevice_CRCBAD
DrvCmdResult_WritingDevice_NOREPLAY
DrvCmdResult_WritingDevice_NAK
DrvCmdResult_ReadingDevice_NAK
DrvCmdResult_Response_NAK
DrvCmdResult_Overflow_CmdBuf
DrvCmdResult_DAS_MultiThread_is_not_working
DrvCmdResult_HostDisableControl
DrvCmdResult_HostDoesNotSupportControl
DrvCmdResult_Response_from_device
DrvCmdResult_Response_from_device_Busy
FrameHeaderWord_Lo
0xAA
FrameHeaderWord_Hi
0x55

39
40
41

#define MAX_TxMsg_xTagName_Size 15
typedef struct
// Type_FDSMsgProtocol 16 Bytes;
{
union
{
Struct//16Bytes
{
Byte TagCode;
char xTagName[MAX_TxMsg_xTagName_Size];
};
struct//16Bytes
{
union//4Bytes
{
struct
{

- 172 -

0x0000
0x0000
0x7fff
0x8fff
0x8fff
0x80fd
0x80fe
0x80ff
0x1000
0x2000
0x4000
0x4000
0x4000
0x0800
0x0400
0x0200
0x0100
0xffff
0x00ff

Byte MsgCode; //Protocol Message Code


Byte MsgParamter;
Word MsgPointTotal;
};
struct
{
Byte
Byte
Byte
Word
};
struct
{
Byte
Byte
Word
};

ObjectMsgCode;
HostLinkFreezed:1;
ObjectClass:7; //0-15
ObjectPointNumber;

CtrlMsgCode;
CtrlCode;
CtrlPointNumber;

};
union//2 Bytes
{
Word RemoteAddress;
Word CmdWord;
Word FlagWord;//bit16 changed,bit1 float data format
struct
{
Word
FlagByte:8;
//0:Online,1:Restart,2:CommLost,3:RemoteForced,4:LocalForced
Word
DataChanged:1;
Word
FloatFormat:1;
Word
Ctrl_Code:6;
};
};
Word ObjectIndex;//2 Bytes
union//4
{
DWord
float
DWord
};

Bytes
PV;
FV;
CmdTiming;

union//4 Bytes
{
time_t Timing;
DWord CtrlTiming;
};
};
};
}

Type_FDSMsgProtocol;

typedef union
{
Byte frame_byte_buf[MAX_Size_Protocol_FrameBuf];
struct
{
Byte FrameHeaderLo;
Byte FrameHeaderHi;
Word FrameLength:13;
Word FrameFlag:2;
Word LastFrame:1;
union
{
Type_FDSMsgProtocol FDSMsg[MAX_FDSMsg];
Byte xByte[MAX_Size_Protocol_Buf];
};
};
} Type_FDSProtocol_Frame;

- 173 -

10.3.3 Modbus RTU Protocol over TCP/IP


If the current x_Master is DNP_Master, and the client uses Modbus RTU protocol, in this case
the DNP_Master is acting as a Protocol Converter DNP3 to Modbus.
MB RTU Protocol over the LAN

DNP Master HMI


&
Server
MB Master HMI
Client #1

MB Master HMI
Client #2

DNP DAS Communication


Link/Sessions
#1

#2

#8

- 174 -

MB Master HMI
Client #50

10.3.4 MB TCP /IP (ref-ref-0-0-L-ID-Message)


Refer to the section 10.3.3.
Other HMI/SCADA Master Ends (Client) communicate with xMaster/Server by the protocol of
Modbus TCP/IP (not MB protocol over the LAN).

- 175 -

10.4 Switching between Standby (SY) and Primary (PY)


Refer to the screenshot Figure 3-1, you can click on the button [HMI Points Database] to open the
window of the HMI Points Database Engine as shown in the screenshot Figure 10-2 and 10-3. To
switch the SY to the PY, click on [Switch to PyMaster:]

Figure 10-2

- 176 -

Click on it to make a connection to the


PyMaster.

Figure 10-3

- 177 -

11 Troubleshooting
Figure 11-1 is a screenshot displaying a Communication Alert Icon at Up-Left of screen.

Communication Fail/Trouble Alert. Double click on it to


open the window as shown in the screenshot Figure 11-3.

Figure 11-1

Note:
In order to get help on the troubleshooting you can send xMaster Support all log files located in
the directory of c:\xMaster\Log.

- 178 -

Figure 11-2 is a screenshot displaying a Communication Alert Icon at Up-Left of screen and the
flag of data failure in the HMI display page.

The Yellow color tells you that


the current data point in the DAS
Real-time database is OFFLINE.

The small flag f beside the HMI Object is


to tell you the data for this HMI Object is
OFFLINE due to the related
communication link (Data Acquisition)
failure. Note: DNP supports the
OFFLINE on individual data object
point.
Figure 11-2

- 179 -

11.1 Data Acquisition Comm. Link/LAN Information


Figure 11-3 is a screenshot displaying a window for troubleshooting on the communications and
others.
The diagnosis and statistics on Data Acquisition
Driver (Communication Link/LAN.)

Select the observation in the list and refer to the information about errors that HMI has found and
tips, which are displayed in the window below to help you trouble-shoot.

Figure 11-3

Note:
If the current communication is over the Modbus Plus, please using MBPStat.exe to do the
trouble-shooting (refer to the section 1.4.8).

- 180 -

11.2 Trouble-Shooting on Data Collection Application


Figure 11-4 is a screenshot displaying what information/tips you can get from the
Troubleshooting window.

Figure 11-4

Close the
Troubleshooting
window.

Check the information to do the troubleshooting.

In order to do the advanced trouble-shooting on Data Collection Application (DCA), you can
login the DCA Field Data Server window, as shown in the screenshot Figure 2-2. The password
is hjzok .
The windows of DCA and Dialing a phone number from the phone book are shown in the
screenshot Figure 11-5 to 11-11.

- 181 -

The window of Administrator & Setup is shown as follows:

The name of the file is


defined by the entry of
INFO_FILE. Refer to
the section 1.4.4.

Enable to
display the
Bytes of
Rx/Tx

The List of the valid Clients.


Refer to the section 1.4.6.
You can control (i.e. Disable,
Delete, Pause, etc.) the access
from the current client. Refer to
the section 10.

You can put the DCA ONLINE or OFFLINE


manually.
The DAC Driver will put itself Offline and Online
automatically when the communication is found
failed unless you manually close it by clicking on it
(the state is Checked).

Figure 11-5

The following screenshot is shown as in the case where the DCA driver is over the serial link or
Serial Modem link. Refer to the section 1.4.6.

Click On Button: Port


to switch to Modem
Connection

Once the connection of


Modem/Phone Line is
Online the icon will
change. The timeout for
the connection online of
Modem/Phone is 35
seconds.

- 182 -

The window of dialing a phone number from the Phone Book (Refer to the section 1.4.6, 7.1.1,
and 7.1.11) is shown as follows:
Step#3: Watch the
information about
dialing the modem.

Step#1: Select the


Phone Number.

Step#2: Dial up the modem. (Check


the COM Port connecting the modem,
refer to the section 1.4.6).

Figure 11-6

Close

- 183 -

The window of Configuration for Data Acquisition is shown as follows:

You can pause polling data. If it is the


Dialup-Modem connection (refer to the
section 1.4.6), you can disconnect (still
able to receive unsolicited reports from
the remote end) or re-connect phone
line.

The DCA Driver


Log.

Figure 11-7

You can check the individual definitions in the configuration of DCA. When the DNP DCA is
OFFLINE, you can click on the button of DNP Extension to open the window of the DNP
DCA parameters configuration as shown in the screenshot Figure 11-7.

- 184 -

Figure 11-8

For the details on the DNP Data Acquisition, please refer to the DNP Protocol documents
at www.dnp.org.
In the DNP_Master, the DNP DCA uses the very common settings as shown above window.
Normally, you do not have to change it.

- 185 -

The window of Log is shown as follows:

Figure 11-9

You can check the details of log information. The log information in the color of RED will be
saved into log file:*.log.

- 186 -

The window of Point Database (DCA real-time database) is shown as follows:

Figure 11-10

You can check the raw value of data in the real-time database.

- 187 -

The window of Station Index is shown as follows:

The Real-time
information of DCA.

Figure 11-11

- 188 -

11.3 Trouble-Shooting Data Management and Database


Refer to the screenshot Figure 3-1, you can click on the button [HMI Points Database] to open the
window of the HMI Points Database Engine as shown in the screenshot Figure 11-12 and 11-13.

Left-Click on this column


to open an editor for user
to change the short-name,
Control-Point of the
current DI point
temporarily.

Refer the section


1.4.3 for details on
the Tren-Point.

Figure 11-12

You can temporarily change the number of the Control Point and Point-Bit Number for the
current Digital Input point. In an editor, you can edit a string like "dddd,dd,tttttt", where "dddd"
is the new control point number, "dd" is the new control point bit-number, and "ttttttt" is the new
point Short Name and Long Name.

- 189 -

Also you can go to the page of Log to check out the related log information.

Figure 11-13

- 190 -

12 xMaster Dialup System designs


The xMaster can implement so called smart-dialup SCADA system as shown in the Figure 12-1.
You can configure the remote sites information with either a separate Text file, or embedded in
the xMaster Main Configuration. The site information is composed of the site phone number, site
name and site slave address. You can call all sites either once or loop continually. You can setup
a timer for the period of time to talk to the remote site (default is 45 seconds to ensure the
connection within a minute). You can setup a 24-Hour schedule to retrieve data from the remote
sites respectively.
Modem

Modem

Telephone
System

Site Information

Site #1

Modem

Site #2

Modem

Site #4

Modem

Site #i

1234567 xxx yy
2345678 zzzz aa
3456789 ffff rrr
4567890 eeee ee

Site # 1 to 65535
Figure 12-1

In the section 1.4.6, the entry of PHONE_NO is to define either the Phone Number of the
current remote site, or a so called Phone Book that is composed of phone number, name, slave
address (defined by the keyword either SlaveAddress=, or DeviceAddress=, or DA=, or
NODE=, or ID=) and Entry-Key (defined by the keyword EK=dddddddddddddddd) that
separated by ONE Character Tab (9). The following is the sample of the Text file of Phone
Book. The first line in the file usually is the title information. The Phone Number (following the
dial command ATDT/ATDS) is up to 15 characters. If the EK is defined the xMaster dialup
system will send the EK at very beginning before sending any messages for the data acquisition.
Sample #1:
1111111
2222222
3333333
4444444
5555555

xxxx SCADA System (Dialup). Version xx.xx. 2006-11-02


Site#1 SlaveAddress=1234
EK=123456789012345
Site#2 DeviceAddress=2345 EK=123456789012345
Site#3 DA=3456
Site#4 NODE=4567
Site#5 ID=5678

- 191 -

Note:
If the phone number in the 1st line is valid, x_Master will automatically dial this number
otherwise you have to pick up a number and dial it manually. If you do not want the x_Master to
make a connection to the remote site automatically, a system information/title should be put in
the 1st line referring to the above sample. The slave address of the remote site, as default, is
defined in the entry of ADDR = dddd in the configuration section of DEV_LINK (refer to
the section 1.4.6) and will be changed dynamically according to the salve address information in
the Phone Book. And the setting of Master Address in the Slave device is the same address as
defined by the entry of DEV_MASTER = ddd (refer to the section 1.4.3). And all sites use
the same definition of the Data Acquisition Database so that always define database with the
biggest size.
As an alternative, you can make up the site information and embed it in the HMI Configuration
file by the entry as follows:
Sample #2:
ENTRY REMOTE_SITE: RemoteSiteIndex~ RemoteSitePhoneNumber~ RemoteSiteName~ RemoteSiteAddress

Note:
Four segments are separated by character ~(126)
Sample:
ENTRY
ENTRY
ENTRY

;
ENTRY

;
ENTRY

SAVE_RUNNING_COUNTERS = YES
DEV_MASTER
= 0031
DEV_LINK
= MODEM ATC1Q0E0S12=20S30=60 ATS37=6
PORT
= 3
BAUDRATE
= 2400
ADDR
= 101
PHONE_NO
= @AUTOSITEINFO
END
DNP_DATABASE = SIZE
MAX_DI = 213
MAX_DO = 106
MAX_AI = 147
MAX_CNT = 45
MAX_AO = 31
END
STATION_INFO

DNP Dialup Master for ABCDEFG SCADA System


END

ENTRY REMOTE_SITE: 123~ 18001234567,89~ Site#123~ 123
ENTRY
NAME
= DI_0001
LONGNAME
= Site#123 DI#1
FORMAT
= DI
PROCTYPE
= ONOFF
STATCONV
= NO
PNT_ADDR
= 1
CTRL_ADDR
= 0
PNT_SITE
= 123
ALARM
= YES
;
ENTRY
NAME
= DI_0002
LONGNAME
= Site#123 DI#2
FORMAT
= DI
PROCTYPE
= ONOFF
STATCONV
= NO

- 192 -

PNT_ADDR
PNT_SITE
ALARM
ALARM_GROUP

=
=
=
=

2
123
YES
1

;
ENTRY REMOTE_SITE: 234~ 18002345678,90~ Site#234~ 234
ENTRY
NAME
= DI_0003
LONGNAME
= Site#234 DI#1
FORMAT
= DI
PROCTYPE
= ONOFF
STATCONV
= NO
PNT_ADDR
= 1
PNT_SITE
= 234
ALARM
= YES
ALARM_GROUP = 234
;
ENTRY
NAME
= DI_0004
LONGNAME
= Site#234 DI#2
FORMAT
= DI
PROCTYPE
= ONOFF
STATCONV
= NO
PNT_ADDR
= 2
PNT_SITE
= 234
ALARM
= YES
ALARM_GROUP = 234

ENDALL

A default site information file will be generated according to above REMOTE_SITE entries. The
file name is HMI_SYSTEM_SiteInfo (PHONE_NO = @AUTOSITEINFO, refer to the section
1.4.16). The x_Master will be forced to use the AUTOSITEINFO. If the ENTRY
HMI_SYSTEM = c:\xMaster\MB (refer to the section 1.4.4), the AUTOSITEINFO (phone
book file name) is c:\xMaster\MB_SiteInfo.txt.
Please refer to the modem manual and setup (the entry of DEV_LINK = MODEM x1 x2.
Refer to the section 1.4.6) modem init-command properly and accordingly. The following is a
sample of configuration for Dialup DNP Slave/Remote Site.
Sample #3:
ENTRY
ENTRY
ENTRY

;
ENTRY

;
ENTRY

SAVE_RUNNING_COUNTERS = YES
DEV_MASTER
= 0031
DEV_LINK
= MODEM ATC1Q0E0S12=20S30=60 ATS37=6
PORT
= 3
BAUDRATE
= 2400
ADDR
= 603
PHONE_NO
= PhoneSample
END
DNP_DATABASE = SIZE
MAX_DI = 213
MAX_DO = 106
MAX_AI = 147
MAX_CNT = 45
MAX_AO = 31
END
STATION_INFO

DNP Dialup Master for ABCDEFG SCADA System


END
;
ENDALL_AND_BUILD_A_DEFAULT_HMI_POINT_DB

- 193 -

The Modem Status.

The Modem Communication Logs.

Select-Call [X] or Unselect-Call [ ] it by


double-clicking on the current site. You
can use buttons to [Select All] / [Unselect
All] to select/unselect all sites in the list.

The connection-timer is to
define how much time to
poll/scan the remote site.
The default is 45 seconds.

Timeout progress. The


timeout for dialing and
Modem connection is 45
seconds.

The phone book is a Text-Formatted file.


Each line in the file is the phone number
information and another two segments
separated by the character: Tab (09).
The 1st segment is the phone number.
The 2nd is the name/information of the
remote end. The 3rd is the others, slave
address, for example. Refer the section
1.4.6 for the definition of Phone Book
File Name.

Dial or Hang up
Phone/Modem.
Figure 12-2

.
The mode of dialing the remote sites. The default is in manual.
If [ ]Auto Mode is checked, you want the x_Master Dial up Modem window to work under the mode of
AUTOMATION, which has two options as follows:
1. Poll Selected Site(s) Once Scanning/Dialing all selected site(s) in the phone book and stopped
after the last one is scanned. And It will start scanning again when the time is met the schedule.
In this mode, there are two settings as follows:
a. The Schedule.
There are 24(0:00 to 23:00)+1(every hour) timing-setting to trigger scanning sites.
b. The Timer for the connection.
The default is 45 seconds to ensure the connection is within a minute. This timer is applied to the
dialing-in connection as well so that the remote site sends unsolicited reports within a minute
connection.
2. Poll Selected Site(s) Looply
The x_Master Dial up Modem window continually, one by one, scan/dial all selected sites until you
press the button [Offline/Hang up].
Note: You can stop dialing any time by pressing the button [Offline/Hang up].

- 194 -

12.1 Single Site Configuration


It is Point-To-Point system configuration as shown as follows.

Modem

Modem

Site #1

There is no need to make up the site information (Phone Book). The following is a sample of
configuration. You define the phone number by the entry of PHONE_NO directly and the
x_Master will start dialing it automatically. The Dial up Modem window will pop up and close
after the connection to the remote site automatically
Sample #4:
ENTRY
ENTRY
ENTRY

;
ENTRY

;
ENTRY

SAVE_RUNNING_COUNTERS = YES
DEV_MASTER
= 0031
DEV_LINK
= MODEM ATC1Q0E0S12=20S30=60 ATS37=6
PORT
= 3
BAUDRATE
= 2400
ADDR
= 603
PHONE_NO
= 18001234567
END
DNP_DATABASE = SIZE
MAX_DI = 213
MAX_DO = 106
MAX_AI = 147
MAX_CNT = 45
MAX_AO = 31
END
STATION_INFO

DNP Dialup Master for ABCDEFG SCADA System


END
;
ENDALL_AND_BUILD_A_DEFAULT_HMI_POINT_DB

- 195 -

12.2 Mutil-Site Configuration


Refer to the Figure 12-1 it is a mutil-site system. You have to make up a Phone Book as
described in the beginning of the current section. In the system, all remote sites use the same
communication protocol to be polled by the x_Master. And you can make up displays either for
all sites, or for individual site respectively that you have to use the entry of DEV_SITE = ddd
(refer to the section 1.4.13 and 1.4.14) to specify which site the current point belongs to. You
may use some information related the each site (i.e. the Site Index, the Site Name, etc. Refer to
the section 1.4.16, 7.3.12 and 9.1.4)
12.2.1 The Mode and Schedule to scan sites one by one
Refer to the Figure 12-2 we have discussed it in the beginning of the current section. Every time
you launch the x_Master, the Dial up Modem window will pop up automatically and you should
check the work mode: [ ]Auto Mode and check the schedule and set the timer of the line
connection. And you should select the site that you want to dial up (either double-click the sites
one by one, or you can use buttons: [Select All] or [Unselect All] to select or unselect all sites in
the list).You click on the first one in the list and press the button [Dial up Modem] to start
dialing.
After scanning all sites, the x_Master will keep ears on the ring from the connected modem
before the next scheduled-scan. The x_Master will automatically check and verify who is calling
in to send unsolicited reports it means that you can check out the Site Index and the Site Name
(refer to 9.1.4) when the remote site dials in. The dialing-in connection is controlled by the
connection-timer as well. The default is 45 seconds. The xMaster will hang up line by sending
+++ and ATH.

- 196 -

12.2.2 Mutil-Site using the same set of HMI Displays


In this case, where you do not need to watch all data of entire system simultaneously (move the
radar screen on the current connected site only), you do not need to set the entry of PNT_SITE
= ddd and make up the HMI Displays in general and apply it for sites. Refer to the sample #3
above.

- 197 -

12.2.3 Mutil-Site using Mutil-Set of HMI Displays


In this case, where you want to watch all data of entire system, you should set the entry of
PNT_SITE = ddd accordingly and make up and vary HMI display pages for each site
respectively. So you can monitor the sites and only the current connected site information is
fresh. Refer to the sample #2 above.

- 198 -

13 A sample of the RTU+HMI Application


Actually it is a Box-PC based RTU+HMI application implemented by united the xMaster &
xSlave software programs. The Figure 13-1 is its function block diagram. The hardware platform
is the Fanless embedded Box-PC (i.e GE Talon 8400, Advantech UNO-3072, etc.) and
certainly you have extensive chooses of hardware running Microsoft Windows operating
system. The Link is either serial port, or Ethernet, or Modbus-Plus.
DNP Link
DNP Meters
Local HMI
Display
DNP Master
SCADA
Master:
DNP
LG

DNP
LG
Slave

Database

MB
I/O
Link
Master

PLC
I/O

PLC
I/O

PLC
I/O

MB Master

MB Meters

MB Link
Figure 13-1

In the diagram Figure 13-1, the digital I/O is using Modicon PLC so that we can take the
advantage of much flexibility by easily programming PLC and the diversity of I/O modules.
A MB_Master is running to retrieve DI data (Indication and Alarm Points) and implement the
controls over either the serial port or network (TCP/IP) or Modbus-Plus network.
The metering is using IED communicating with the protocol of either DNP (Serial/TcpIp) or
Modbus (Serial/TcpIp/Plus). A DNP_Master is running to retrieve the metering data from DNPIEDs over either the serial port or network (TCP/IP). Another MB_Master is running to retrieve
the metering data from Modbus-IED over either the serial port or network (TCP/IP) or Modbus Plus network.
A DNP_Slave is to make connection between the SCADA Master and the RTU. The DNP_Slave
is polled data as you configured and transfer controls from the SCADA Master to devices
connected to the Box-PC based RTU via the protocol either DNP or Modbus, which is fulfilled
by the DNP_Master/MB_Master applications based on what you configure to communicate with
local devices.
The x_Master and x_Slave share the HMI-Points Database by the unique HMI Point Name.
Refer to the section 1.4.13 and 1.4.14 and samples in the section 13.1 to 13.4.
In the following sections, there are samples of configurations for RTU+HMI applications.

- 199 -

13.1 The configuration for DNP_Master


The following is the sample of the DNP_Master that runs over the serial port COM5 to
communicate with the DNP Slave End with the address of 202.
ENTRY
ENTRY
ENTRY

;
ENTRY
ENTRY

;
ENTRY

SERVER_IP_PORT = 27100
DEV_MASTER
= 12
DNP_LINK
= SERIAL
PORT
= 5
BAUDRATE
= 9600
SESSION
= 0 202
END
HMI_SYSTEM_NAME = c:\xMaster\XDNP
DEV_DATABASE = SIZE
MAX_DI = 32
MAX_DO = 32
MAX_AI = 16
MAX_AO = 16
MAX_CNT = 16
END

ENTRY

;
ENTRY

STATION_INFO

DNP Master
END
;
ENTRY
METER_SIZE = SMALL
ENTRY
METER_NAME = 1, AI000-AI003
ENTRY
METER_NAME = 2, AI004-AI007
ENTRY
METER_NAME = 3, AI008-AI011
ENTRY
METER_NAME = 4, AI012-AI015
ENTRY
METER_NAME = 5, CNT000-CNT003
ENTRY
METER_NAME = 6, CNT004-CNT007
ENTRY
METER_NAME = 7, CNT008-CNT011
ENTRY
METER_NAME = 8, CNT012-CNT015
ENTRY
METER_NAME = 9, ALARM GROUP
;
;=========== Status Points ======================
;
... ...
ENTRY
NAME
= DNP202_DI002
FORMAT
= DI
D_TYPE
= DI
PNT_DEV
= 202
PNT_ADDR
= 1
CTRL_ADDR
= 1
ALARM
= YES
ALARM_GROUP = 1
SHARING_PNT = YES
;
ENTRY
NAME
= DNP202_DI003
FORMAT
= DI
D_TYPE
= DI
PNT_DEV
= 202
PNT_ADDR
= 2
CTRL_ADDR
= 2
ALARM
= YES
ALARM_GROUP = 1
SHARING_PNT = YES
;

;
ENTRY

;
ENTRY

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP202_DI004
DI
DI
202
3
3
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP202_DI005
DI
DI
202
4
4
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP202_DI006
DI
DI
202
5
5
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP202_DI007
DI
DI
202
6
6
YES
1
YES

;
... ...
ENDALL

Note: Please refer to the file:


DNP_Master_COM5_202.txt in the
xMasterSlave installation file/CD for the
details.

- 200 -

The following is the sample of the DNP_Master that runs over the LAN(TCP/IP) to
communicate with the DNP Slave End with the address of 101 at IP address=10.1.2.101.
ENTRY
ENTRY
ENTRY

;
ENTRY
;
ENTRY

;
ENTRY

SERVER_IP_PORT = 27000
DEV_MASTER
= 11
DEV_LINK
= TCP/IP
DNP_DEV101 = 0, 101, 10.1.2.101, 20000
END

ENTRY

HMI_SYSTEM_NAME = c:\xMaster\XDNPTCP
DEV_DATABASE = SIZE
MAX_DI = 32
MAX_DO = 32
MAX_AI = 16
MAX_AO = 16
MAX_CNT = 16
END

;
ENTRY

STATION_INFO

DNP Master
END
;
ENTRY
METER_SIZE = SMALL
ENTRY
METER_NAME = 1, AI000-AI003
ENTRY
METER_NAME = 2, AI004-AI007
ENTRY
METER_NAME = 3, AI008-AI011
ENTRY
METER_NAME = 4, AI012-AI015
ENTRY
METER_NAME = 5, CNT000-CNT003
ENTRY
METER_NAME = 6, CNT004-CNT007
ENTRY
METER_NAME = 7, CNT008-CNT011
ENTRY
METER_NAME = 8, CNT012-CNT015
ENTRY
METER_NAME = 9, ALARM GROUP
;
;=========== Status Points ======================
... ...
ENTRY

;
ENTRY

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP101_DI002
DI
DI
101
1
1
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP101_DI003
DI
DI
101
2
2
YES
1
YES

;
ENTRY

;
ENTRY

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP101_DI004
DI
DI
101
3
3
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP101_DI005
DI
DI
101
4
4
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP101_DI006
DI
DI
101
5
5
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

DNP101_DI007
DI
DI
101
6
6
YES
1
YES

;
... ...
ENDALL

Note: Please refer to the file:


DNP_Master_TCPIP.txt in the xMasterSlave
installation file/CD for the details.

- 201 -

13.2 The configuration for MB_Master


The following is the sample of the MB_Master that runs over the LAN(TCP/IP) to communicate
with the MB Slave End with the address of 11 at IP address=10.1.2.11.
ENTRY
ENTRY

;
ENTRY
ENTRY

SERVER_IP_PORT = 26000
DEV_LINK = TCP/IP
MB_DEV11 = 0, 11, 127.0.0.1, 502, 16, 16
END
HMI_SYSTEM_NAME = c:\xMaster\XMBTCP
DEV_DATABASE = SIZE
MAX_DI = 48
DI_MB_1X_START = 1 1
DI_MB_0X_START = 1 1
DI_MB_REG_START = 100

ENTRY

;
ENTRY

;
MAX_DO = 32
DO_MB_0X_START = 1 1
DO_MB_REG_START = 200
;
MAX_AI = 17
AI_MB_REG_START = 300
;
MAX_AO = 17
AO_MB_REG_START = 400

;
ENTRY

;
MAX_CNT = 0
;
MAX_FR = 16
FR_MB_REG_START = 500
;
END
;
ENTRY

STATION_INFO

;
ENTRY

MB TCP/IP Master
END
;
ENTRY
METER_SIZE = SMALL
ENTRY
METER_NAME = 1, 4x300-303
ENTRY
METER_NAME = 2, 4x304-307
ENTRY
METER_NAME = 3, 4x308-311
ENTRY
METER_NAME = 4, 4x312-315
ENTRY
METER_NAME = 5, FR 4x500-507
ENTRY
METER_NAME = 6, FR 4x508-515
ENTRY
METER_NAME = 7, FR 4x516-523
ENTRY
METER_NAME = 8, FR 4x524-531
ENTRY
METER_NAME = 9, ALARM GROUP
;
;========== Status Points ======================
;
... ...
ENTRY

NAME
= PSD_DI_MB11_CF
LONGNAME
= PSD_DI PY PLC Comm. failed
FORMAT
= PSD_DI
PNT_ADDR
= 0
PROCTYPE
= OPENCLOS
STATCONV
= NO
PSD_DI_FUNC = COMM_FAILED
PSD_DI_CTRL1 = 11 0 0
ALARM
= YES
ALARM_GROUP = 1
SHARING_PNT = YES

;
ENTRY

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB11_1x001
DI
DI
11
0
0
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB11_1x002
DI
DI
11
1
1
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB11_1x003
DI
DI
11
2
2
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB11_1x004
DI
DI
11
3
3
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB11_1x005
DI
DI
11
4
4
YES
1
YES

;
;
... ...
ENDALL

Note: Please refer to the file:


MB_Master_TCPIP.txt in the xMasterSlave
installation file/CD for the details.

- 202 -

13.3 The configuration for MB_Master of the I/O Link


The following is the sample of the MB_Master that runs over the serial port COM4 to
communicate with the Modicon PLC with the address (Modbus Node) of 22.
ENTRY
ENTRY

;
ENTRY
ENTRY

SERVER_IP_PORT = 26100
DNP_LINK
= SERIAL
PORT
= 4
BAUDRATE
= 9600
SESSION
= 0 22
MASTER_WATCHDOG = 16
SLAVE_WATCHDOG = 16
END
HMI_SYSTEM_NAME = c:\xMaster\XMB
DEV_DATABASE = SIZE
MAX_DI = 48
DI_MB_1X_START = 1 1
DI_MB_0X_START = 1 1
DI_MB_REG_START = 100

;
ENTRY

;
ENTRY

;
MAX_DO = 32
DO_MB_0X_START = 1 1
DO_MB_REG_START = 200
;
MAX_AI = 17
AI_MB_REG_START = 300

;
ENTRY

;
MAX_AO = 17
AO_MB_REG_START = 400
;
MAX_CNT = 0
;
MAX_FR = 16
FR_MB_REG_START = 500
;
END
;
ENTRY
STATION_INFO
MB Master to PLC-I/O
END
;
ENTRY
METER_SIZE = SMALL
ENTRY
METER_NAME = 1, 4x300-303
ENTRY
METER_NAME = 2, 4x304-307
ENTRY
METER_NAME = 3, 4x308-311
ENTRY
METER_NAME = 4, 4x312-315
ENTRY
METER_NAME = 5, FR 4x500-507
ENTRY
METER_NAME = 6, FR 4x508-515
ENTRY
METER_NAME = 7, FR 4x516-523
ENTRY
METER_NAME = 8, FR 4x524-531
ENTRY
METER_NAME = 9, ALARM GROUP
;
;====== Status Points ======================
;
... ...
ENTRY
NAME
= PSD_DI_MB22_CF
LONGNAME
= PSD_DI PY PLC Comm.
failed
FORMAT
= PSD_DI
PNT_ADDR
= 0
PROCTYPE
= OPENCLOS
STATCONV
= NO
PSD_DI_FUNC = COMM_FAILED
PSD_DI_CTRL1 = 22 0 0
ALARM
= YES
ALARM_GROUP = 1
SHARING_PNT = YES

;
ENTRY

;
ENTRY

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB22_1x001
DI
DI
22
0
0
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB22_1x002
DI
DI
22
1
1
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB22_1x003
DI
DI
22
2
2
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB22_1x004
DI
DI
22
3
3
YES
1
YES

NAME
FORMAT
D_TYPE
PNT_DEV
PNT_ADDR
CTRL_ADDR
ALARM
ALARM_GROUP
SHARING_PNT

=
=
=
=
=
=
=
=
=

MB22_1x005
DI
DI
22
4
4
YES
1
YES

;
... ...
ENDALL

Note: Please refer to the file:


MB_Master_COM4_22.txt in the xMasterSlave
installation file/CD for the details.

- 203 -

13.4 The configuration for DNP_Slave


The followingis the samples that are for the DNP_Slave to make connection between slave local
database and others. So the DNP_Salve read DI/AI data from the Shared HMI Points Pool and
transfer controls (DO/AO) to the shared points owned by others (i.e. x_Master). Refer to the
section 1.4.12, 1.4.13 and 1.4.14 and the section 4 in the manual of the xSlave. And the contents
of following four files are retrieved from files that generated by the samples in the section 13.1 to
13.3. Refer to note #2 in the section 1.4.14. You also can directly collect the points from the
configurations in the section 13.1 to 13.3. Refer to the sample in the section 13.5, the profix of
the file name is xSlave.
The following is the list of DI/AI point name.
DI_DNP101_CF,PSD_DI PY PLC Comm. failed,-1
DNP101_DI001,DNP101_DI001,0
DNP101_DI002,DNP101_DI002,1
DNP101_DI003,DNP101_DI003,2
DNP101_DI004,DNP101_DI004,3
DNP101_DI005,DNP101_DI005,4
DNP101_DI006,DNP101_DI006,5
DNP101_DI007,DNP101_DI007,6
DNP101_DI008,DNP101_DI008,7
DNP101_DI009,DNP101_DI009,8
DNP101_DI010,DNP101_DI010,9
DNP101_DI011,DNP101_DI011,10
DNP101_DI012,DNP101_DI012,11
DNP101_DI013,DNP101_DI013,12
DNP101_DI014,DNP101_DI014,13
DNP101_DI015,DNP101_DI015,14
DNP101_DI016,DNP101_DI016,15
DNP101_DI017,DNP101_DI017,16
DNP101_DI018,DNP101_DI018,17
DNP101_DI019,DNP101_DI019,18
DNP101_DI020,DNP101_DI020,19
DNP101_DI021,DNP101_DI021,20
DNP101_DI022,DNP101_DI022,21
DNP101_DI023,DNP101_DI023,22
DNP101_DI024,DNP101_DI024,23
DNP101_DI025,DNP101_DI025,24
DNP101_DI026,DNP101_DI026,25
DNP101_DI027,DNP101_DI027,26
DNP101_DI028,DNP101_DI028,27
DNP101_DI029,DNP101_DI029,28
DNP101_DI030,DNP101_DI030,29
DNP101_DI031,DNP101_DI031,30
DNP101_DI032,DNP101_DI032,31
DI_DNP202_CF,PSD_DI PY PLC Comm. failed,-1

DNP101_AI001,DNP101_AI001,0
DNP101_AI002,DNP101_AI002,1
DNP101_AI003,DNP101_AI003,2
DNP101_AI004,DNP101_AI004,3
DNP101_AI005,DNP101_AI005,4
DNP101_AI006,DNP101_AI006,5
DNP101_AI007,DNP101_AI007,6
DNP101_AI008,DNP101_AI008,7
DNP101_AI009,DNP101_AI009,8
DNP101_AI010,DNP101_AI010,9
DNP101_AI011,DNP101_AI011,10
DNP101_AI012,DNP101_AI012,11
DNP101_AI013,DNP101_AI013,12
DNP101_AI014,DNP101_AI014,13
DNP101_AI015,DNP101_AI015,14
DNP101_AI016,DNP101_AI016,15
DNP101_CNT01,DNP101_CNT01,-1
DNP101_CNT02,DNP101_CNT02,-1
DNP101_CNT03,DNP101_CNT03,-1
DNP101_CNT04,DNP101_CNT04,-1
DNP101_CNT05,DNP101_CNT05,-1
DNP101_CNT06,DNP101_CNT06,-1
DNP101_CNT07,DNP101_CNT07,-1
DNP101_CNT08,DNP101_CNT08,-1
DNP101_CNT09,DNP101_CNT09,-1
DNP101_CNT10,DNP101_CNT10,-1
DNP101_CNT11,DNP101_CNT11,-1
DNP101_CNT12,DNP101_CNT12,-1
DNP101_CNT13,DNP101_CNT13,-1
DNP101_CNT14,DNP101_CNT14,-1
DNP101_CNT15,DNP101_CNT15,-1
DNP101_CNT16,DNP101_CNT16,-1
DNP101ALM_G1,PSD:ALARM_GROUP,-1
... ...

... ...

Note: Please refer to the file:


xSlave_DI_PointName_List.txt in the
xMasterSlave installation file/CD for the
details.

Note: Please refer to the file:


xSlave_AI_PointName_List.txt in the
xMasterSlave installation file/CD for the
details.

- 204 -

The following is the list of DO/AO point name.


DNP101_DO001,DNP101_DO001,0
DNP101_DO002,DNP101_DO002,1
DNP101_DO003,DNP101_DO003,2
DNP101_DO004,DNP101_DO004,3
DNP101_DO005,DNP101_DO005,4
DNP101_DO006,DNP101_DO006,5
DNP101_DO007,DNP101_DO007,6
DNP101_DO008,DNP101_DO008,7
DNP101_DO009,DNP101_DO009,8
DNP101_DO010,DNP101_DO010,9
DNP101_DO011,DNP101_DO011,10
DNP101_DO012,DNP101_DO012,11
DNP101_DO013,DNP101_DO013,12
DNP101_DO014,DNP101_DO014,13
DNP101_DO015,DNP101_DO015,14
DNP101_DO016,DNP101_DO016,15
DNP101_DO017,DNP101_DO017,16
DNP101_DO018,DNP101_DO018,17
DNP101_DO019,DNP101_DO019,18
DNP101_DO020,DNP101_DO020,19
DNP101_DO021,DNP101_DO021,20
DNP101_DO022,DNP101_DO022,21
DNP101_DO023,DNP101_DO023,22
DNP101_DO024,DNP101_DO024,23
DNP101_DO025,DNP101_DO025,24
DNP101_DO026,DNP101_DO026,25
DNP101_DO027,DNP101_DO027,26
DNP101_DO028,DNP101_DO028,27
DNP101_DO029,DNP101_DO029,28
DNP101_DO030,DNP101_DO030,29
DNP101_DO031,DNP101_DO031,30
DNP101_DO032,DNP101_DO032,31
DNP202_DO001,DNP202_DO001,0
DNP202_DO002,DNP202_DO002,1
DNP202_DO003,DNP202_DO003,2
DNP202_DO004,DNP202_DO004,3
DNP202_DO005,DNP202_DO005,4
DNP202_DO006,DNP202_DO006,5
DNP202_DO007,DNP202_DO007,6
DNP202_DO008,DNP202_DO008,7
DNP202_DO009,DNP202_DO009,8
DNP202_DO010,DNP202_DO010,9
DNP202_DO011,DNP202_DO011,10
DNP202_DO012,DNP202_DO012,11
DNP202_DO013,DNP202_DO013,12
DNP202_DO014,DNP202_DO014,13
DNP202_DO015,DNP202_DO015,14
DNP202_DO016,DNP202_DO016,15
DNP202_DO017,DNP202_DO017,16
DNP202_DO018,DNP202_DO018,17
DNP202_DO019,DNP202_DO019,18
DNP202_DO020,DNP202_DO020,19
DNP202_DO021,DNP202_DO021,20
DNP202_DO022,DNP202_DO022,21
DNP202_DO023,DNP202_DO023,22
DNP202_DO024,DNP202_DO024,23
DNP202_DO025,DNP202_DO025,24
DNP202_DO026,DNP202_DO026,25
DNP202_DO027,DNP202_DO027,26

DNP101_AO001,DNP101_AO001,0
DNP101_AO002,DNP101_AO002,1
DNP101_AO003,DNP101_AO003,2
DNP101_AO004,DNP101_AO004,3
DNP101_AO005,DNP101_AO005,4
DNP101_AO006,DNP101_AO006,5
DNP101_AO007,DNP101_AO007,6
DNP101_AO008,DNP101_AO008,7
DNP101_AO009,DNP101_AO009,8
DNP101_AO010,DNP101_AO010,9
DNP101_AO011,DNP101_AO011,10
DNP101_AO012,DNP101_AO012,11
DNP101_AO013,DNP101_AO013,12
DNP101_AO014,DNP101_AO014,13
DNP101_AO015,DNP101_AO015,14
DNP101_AO016,DNP101_AO016,15
DNP202_AO001,DNP202_AO001,0
DNP202_AO002,DNP202_AO002,1
DNP202_AO003,DNP202_AO003,2
DNP202_AO004,DNP202_AO004,3
DNP202_AO005,DNP202_AO005,4
DNP202_AO006,DNP202_AO006,5
DNP202_AO007,DNP202_AO007,6
DNP202_AO008,DNP202_AO008,7
DNP202_AO009,DNP202_AO009,8
DNP202_AO010,DNP202_AO010,9
DNP202_AO011,DNP202_AO011,10
DNP202_AO012,DNP202_AO012,11
DNP202_AO013,DNP202_AO013,12
DNP202_AO014,DNP202_AO014,13
DNP202_AO015,DNP202_AO015,14
DNP202_AO016,DNP202_AO016,15
MB11_AO001,MB11_AO001,0
MB11_AO002,MB11_AO002,1
MB11_AO003,MB11_AO003,2
MB11_AO004,MB11_AO004,3
MB11_AO005,MB11_AO005,4
MB11_AO006,MB11_AO006,5
MB11_AO007,MB11_AO007,6
MB11_AO008,MB11_AO008,7
MB11_AO009,MB11_AO009,8
MB11_AO010,MB11_AO010,9
MB11_AO011,MB11_AO011,10
MB11_AO012,MB11_AO012,11
MB11_AO013,MB11_AO013,12
MB11_AO014,MB11_AO014,13
MB11_AO015,MB11_AO015,14
MB11_AO016,MB11_AO016,15
MB22_AO001,MB22_AO001,0
MB22_AO002,MB22_AO002,1
MB22_AO003,MB22_AO003,2
MB22_AO004,MB22_AO004,3
MB22_AO005,MB22_AO005,4
MB22_AO006,MB22_AO006,5
MB22_AO007,MB22_AO007,6

... ...

... ...

Note: Please refer to the file:


xSlave_DO_PointName_List.txt in the
xMasterSlave installation file/CD for the
details.

Note: Please refer to the file:


xSlave_AO_PointName_List.txt in the
xMasterSlave installation file/CD for the
details.

- 205 -

13.5 The Setup to run xMaster & xSlave automatically


Refer to the section 2 and the screenshot below; you can setup a shortcut of the xMaster.exe in
the Startup after success tests of user applications respectively. The xMaster.exe will
automatically launch user applications one by one in the list after reboot.

Figure 13-2

- 206 -

You might also like