Vous êtes sur la page 1sur 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


1 2. 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

Programmer
J. Hua J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

J. Hua

10

J. Hua

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.

March

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 1.1 1.2 1.3 1.3.1 1.3.2 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.7 1.4.8 1.4.9 1.4.10 1.4.11 1.4.12 1.4.13 1.4.14 1.4.15 1.4.16 1.4.17 1.4.18 1.4.19 1.4.20 2 2.1 2.2 Overview ................................................... 1 The Directory of Files ................................... 8 The List of Files ........................................ 8 Installation of the software ............................. 9 Preparation for installation ........................... 9 Copying the set of software ............................ 9 The Main Configuration .................................. 10 The name of the configuration file .................... 10 The entry of configuration ............................ 11 Entries for the xMaster HMI Server .................... 12 Entries for the HMI descriptions ...................... 14 Entries for the Data Acquisition Communications ....... 15 Entries for Serial Port ............................... 15 Entries for TCP/IP .................................... 15 Entries for TCP/IP .................................... 16 Entries for Modbus Plus ............................... 17 Entries for the Data Acquisition Real-time Database ... 18 Entries for the Data Matrix Editor .................... 23 Entries for definitions of the Metering Display ....... 26 Entries for creating a default HMI Point Database ..... 27 Entries for Analogue Input Points ..................... 28 Entries for Digital Input/Indication Points ........... 32 Entries for Event/Schedule driven task ................ 35 The Data String Template .............................. 39 The sample configuration for Modbus ................... 41 The sample configuration for Modbus Plus .............. 42 The sample configuration for L&G ...................... 44 The sample configuration for DNP3 ..................... 45

Start up .................................................. 46 Making the registration file ............................ 46 Running the xMaster ..................................... 47

3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9

Main Menu Display ......................................... 52 Main Menu -- [Digital Input] ............................ 53 Main Menu -- [Analogue Input] ........................... 53 Main Menu -- [Alarm Recorder] ........................... 53 Main Menu -- [HMI Display] .............................. 53 Main Menu -- [Data Matrix Editor] ....................... 53 Main Menu -- [PLC Program Runtime Simulator] ............ 53 Main Menu -- [Digital Output] ........................... 53 Main Menu -- [Security/Control] ......................... 53 Main Menu -- [HMI Points Database] ...................... 54 Main Menu -- [Logs] .................................... 54 Main Menu -- [Other Info.] ............................. 54 Main Menu -- [Troubleshooting] ......................... 54 Exit and the Password .................................. 54 Change the Operator Name ............................... 54

3.10 3.11 3.12 3.13 3.14 4 4.1 4.2 5 5.1 5.2 5.3 6 6.1 6.1.1 6.1.2 6.1.3 6.2 6.2.1 6.2.2 6.2.3 6.3

Status Display ............................................ 55 DO Controls Operations .................................. 56 Add a Tag to inhibit Controls / Operations .............. 59 Register/Analogue Input/Metering Display .................. 60 Meter Data/AI Properties Window ......................... 61 Analogue Output / SetPoint Command Operation ............ 62 Display the History of the Meter Data/Analogue .......... 63 Alarm Recorder/Annunciation ............................... 69 Alarm Summary-TableSheet Display ........................ 70 Acknowledge Alarms in the list of Unconfirmed Alarms .. 71 Summary of Alarms ..................................... 71 Clean up (Reset) Alarms ............................... 71 Alarm Panel Display ..................................... 72 The Selection in the Panel ............................ 73 Active Alarms in the Alarm Plane ...................... 74 Acknowledge and Clean up Alarm in the Alarm Panel ..... 75 Alarm Log Display ....................................... 76

6.3.1 6.3.2 6.4 6.5 6.6 7 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.1.6 7.1.7 7.1.8 7.1.9 7.1.10 7.1.11 7.1.12 7.1.13 7.2 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.1 7.3.2 7.3.3 7.3.4 7.3.5

Alarm Log Information and File ........................ 77 Ack and Delete Alarm Log Information .................. 77 Search Alarm-History .................................... 78 The Stand-alone Alarm-Panel Window ...................... 79 To make up a version of only Alarm Annunciation ......... 81

HMI Display ............................................... 82 Function Key Bar ........................................ 85 F1 Pages/Phone Book for Dialing up Modem ............ 86 F2 -- PgChild ......................................... 86 F3 -- PgDn ............................................ 86 F4 -- PgRet ........................................... 86 F5 -- PageAck ......................................... 86 F6 -- PLCPro .......................................... 86 F7 -- Print Display ................................... 86 F8 -- User Appl. ...................................... 86 F9 -- MENU ............................................ 86 F10 -- ALARM .......................................... 86 F11 -- Lockout ........................................ 87 F12 -- BntCtrl ........................................ 88 Logs Information Window ............................... 89

Edit/Draw HMI Display ................................... 90 Files and its format .................................. 90 Samples of HMI Display File ........................... 94 Working ModeEditing HMI Display ..................... 102 Options .............................................. 107 Configuring the pre-defined HMI Object-Shape ......... 108 The Pre-defined HMI Object-Shapes ...................... 119 Line ................................................. 119 Circle ............................................... 119 Ellipse .............................................. 119 Rectangle ............................................ 119 Disconnector ......................................... 119

7.3.6 7.3.7 7.3.8 7.3.9 7.3.10 7.3.11 7.3.12 7.3.13 7.3.14 7.3.15 7.3.16 7.3.17 7.3.18 7.3.19 7.3.20 7.3.21 7.3.22 7.3.23 7.3.24 7.3.25 7.3.26 7.3.27 7.3.28 7.3.29 7.3.30 7.3.31 7.3.32 7.3.33 7.3.34 7.3.35 7.3.36 7.3.37

Triangle ............................................. 119 RoundRect ............................................ 120 xPanel ............................................... 120 StopSign ............................................. 120 Rectangle-pen-style-Dot .............................. 120 Button ............................................... 121 Text ................................................. 123 Image/BMP ............................................ 125 CSpinEditor .......................................... 125 CGauge ............................................... 125 TrackBar ............................................. 125 CheckBox ............................................. 126 RadioGroup ........................................... 126 ComboBox ............................................. 126 ListBox .............................................. 126 MemoBox .............................................. 126 StringGrid ........................................... 127 Light ................................................ 127 Triangle_Left ........................................ 127 Triangle_Right ....................................... 127 Triangle_Up .......................................... 128 Transformer_Horizontal ............................... 128 Transformer_Vertical ................................. 128 Half_Circle_LEFT ..................................... 128 Half_Circle_RIGHT .................................... 128 Half_Circle_UP ....................................... 128 Half_Circle_DOWN ..................................... 128 Half_Ellipse_LEFT .................................... 129 Half_Ellipse_RIGHT ................................... 129 Half_Ellipse_UP ...................................... 129 Half_Ellipse_DOWN .................................... 129 Polyline_6 ........................................... 129

7.3.38 7.3.39 7.3.40 7.3.41 7.3.42 7.3.43 7.3.44 7.3.45 7.3.46 7.3.47 7.3.48 7.3.49 7.3.50 7.3.51 7.3.52 7.3.53 7.3.54 7.3.55 7.3.56 7.3.57 7.3.58 7.3.59 7.3.60 7.3.61 7.3.62 7.3.63 7.3.64 7.3.65 7.3.66 7.3.67 7.3.68 7.3.69

Polyline_8 ........................................... 129 Polygon_6 ............................................ 130 Polygon_8 ............................................ 130 Arc_UpLift ........................................... 130 Arc_UpRight .......................................... 130 Arc_DownLift ......................................... 130 Arc_DownRight ........................................ 130 Chord_UpLift ......................................... 131 Chord_UpRight ........................................ 131 Chord_DownLift ....................................... 131 Chord_DownRight ...................................... 131 Pie_UpLift ........................................... 131 Pie_UpRight .......................................... 131 Pie_DownLift ......................................... 132 Pie_DownRight ........................................ 132 Capacity_Horizontal .................................. 132 Capacity_Vertical .................................... 132 Ground_Horizontal .................................... 132 Ground_Vertical ...................................... 132 Fuse_Horizontal ...................................... 133 Fuse_Vertical ........................................ 133 CT_Horizontal ........................................ 133 CT_Vertical .......................................... 133 Wavetrap_Horizontal .................................. 133 Wavetrap_Vertical .................................... 133 TX_Tap_Horizontal .................................... 134 TX_Tap_Vertical ...................................... 134 VR_IND_3_Horizontal .................................. 134 VR_IND_3_Vertical .................................... 134 Exciter .............................................. 134 Valve_Horizontal ..................................... 135 Valve_Vertical ....................................... 135

7.3.70 7.3.71 7.3.72 7.3.73 7.3.74 7.3.75 7.3.76 7.3.77 8 8.1 8.1.1 8.1.2 8.1.3 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 8.10 8.11 9 9.1 9.1.1 9.1.2 9.1.3 9.1.4 9.2 9.3 9.3.1

2-State Switch Panel ................................. 135 Diamond_Polyline ..................................... 135 Diamond_Polygon ...................................... 135 Trend_DataWatch ...................................... 136 Grid_Horizontal ...................................... 137 Grid_Vertical ........................................ 137 2StateConnector_Horizontal ........................... 137 2StateConnector_Vertical ............................. 137

Data Matrix Editor ....................................... 138 Matrix Display ......................................... 140 Editor ............................................... 140 PLC .................................................. 140 Both ................................................. 140 Alert Comm. Failed ..................................... 141 Editing Matrix ......................................... 142 Loading an Existing Matrix ............................. 142 Saving the current Matrix .............................. 142 Making a Selection ..................................... 142 Resetting All selections ............................... 142 Copying from PLC ....................................... 142 Write/Update Matrix into PLC ........................... 143 Auto Saving Matrix after updating ..................... 146 Mismatched Matrix ..................................... 147

PLC Program Runtime Simulator ............................ 148 Points ................................................. 150 Digital Output DO 0x ................................. 150 Digital Input DI 1x .................................. 150 16-Bit Data Register 4x .............................. 150 16-Bit Pseudo Data Register 9x ....................... 150 Load Program ........................................... 151 Run Program ............................................ 151 Periodically ......................................... 151

9.3.2 9.4 9.4.1 9.4.2 9.4.3 9.5 9.5.1 9.5.2 9.5.3

A Cycle Only ......................................... 151 Debug Program .......................................... 152 Step by Step ......................................... 152 Logs ................................................. 152 Variable-Information ................................. 152 Instructions ........................................... 153 The List of Instructions ............................. 153 Syntax ............................................... 162 A Sample ............................................. 163

10 Networking and Data Server ............................... 167 10.1 10.2 10.3 10.3.1 10.3.2 10.3.3 10.3.4 10.4 Connect to Server ..................................... 168 Remote Logs Screen .................................... 168 Protocols to xMaster Server ........................... 169 FDS Server ASCII/Telnet .............................. 170 FDS Server Binary Message Packet ..................... 171 Modbus RTU Protocol over TCP/IP ...................... 174 MB TCP /IP (ref-ref-0-0-L-ID-Message) ................ 175 Switching between Standby (SY) and Primary (PY) ....... 176

11 Troubleshooting .......................................... 178 11.1 11.2 11.3 Data Acquisition Comm. Link/LAN Information ........... 180 Trouble-Shooting on Data Collection Application ....... 181 Trouble-Shooting Data Management and Database ......... 189

12 xMaster Dialup System designs ............................ 191 12.1 12.2 12.2.1 12.2.2 12.2.3 Single Site Configuration ............................. 195 Mutil-Site Configuration .............................. 196 The Mode and Schedule to scan sites one by one ....... 196 Mutil-Site using the same set of HMI Displays ........ 197 Mutil-Site using Mutil-Set of HMI Displays ........... 198

13 A sample of the RTU+HMI Application ...................... 199 13.1 13.2 13.3 The configuration for DNP_Master ...................... 200 The configuration for MB_Master ....................... 202 The configuration for MB_Master of the I/O Link ....... 203

13.4 13.5

The configuration for DNP_Slave ....................... 204 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 xMaster HMI Client #50

DAS Communication Link/Sessions #1 #2 #8

DNP / MB Protocol DNP to MB Converter MB to DNP Converter Figure 1-1 Other MB/DNP Master End

Remote Device/Slave End -- Top Level Devices/DA Sessions on the station automation platform.

-1-

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. Note

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

-2-

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

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.

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-

Data Processing

Up to 50 HMI Clients using protocol: FDS over TCPIP or MB TCPIP or DNP TCPIP. xMaster can be a Protocol Converter/Server.

2 3 4 5

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

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

-5-

17 18 19 8

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

Max. 4096 entries of the Alarm definition.

20 21 22

-6-

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

Max. 512 ObjectShapes per page.

-7-

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 SAVE_RUNNING_COUNTERS = YES DEV_MASTER = 0031 DEV_LINK = SERIAL PORT = 1 BAUDRATE = 2400 ADDR = 603 ENTRY DEV_LINK PORT BAUDRATE ADDR = = = = SERIAL 1 9600 63

END ; 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_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


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 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 ENTRY XMASTER_ID = dddddd ENTRY DEV_MASTER = ddddd ENTRY HMI_TREN_POINT = XXXXX.yyy [f1,f2,f3] ENTRY HMI_TREN_INTERVAL = ddddd ddddd: 2 65535 seconds

ENTRY PY_MASTER_IP_ADDR = 142.52.127.31 ENTRY XMASTER_ID = 25001 ENTRY DEV_MASTER = 0002 ENTRY HMI_TREN_POINT = HMI_TREN.TXT ENTRY HMI_TREN_INTERVAL = 3

#3 #4 #5 #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 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

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

- 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


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.

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]

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


= SERIAL = MODEM Sample ENTRY DEV_LINK ENTRY DEV_LINK = SERIAL = MODEM x1 x2 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. In Second. 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.

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

PORT

= 4

BAUDRATE ADDR SESSION SESSION

= dddd = dddd = 0 dddd = 7 dddd

BAUDRATE ADDR SESSION SESSION

= = = =

19200 1 0 11 1 22

MASTER_WATCHDOG = dddd SLAVE_WATCHDOG = dddd

MASTER_WATCHDOG = 51 SLAVE_WATCHDOG = 150

LINK_TIMEOUT = ddddd CONTROL_TIMEOUT = dd PHONE_NO = xxxxxxxx

LINK_TIMEOUT = 5000 CONTROL_TIMEOUT = 5 PHONE_NO = 0,1234567 PHONE_NO = 123456789012345 PHONE_NO = PHONEBOOK1 PHONE_NO = @AUTOSITEINFO (refer to the section 1.4.16) END

END

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 CONTROL_TIMEOUT = dd DN = n, dd, ddd.ddd.ddd.ddd, dddd, ddd, ddd IP Address IP Port Slave / PLC watchdog point address. Master/HMI watchdog point address. Sample ENTRY DEV_LINK = TCP/IP LINK_TIMEOUT = 5000 CONTROL_TIMEOUT = 5 MB_DEV11 = 0, 11, 10.1.2.11 502, 51, 150 MB_DEV22 = 1, 22, 10.2.2.22 502, 51, 150

Slave device Address/ID. 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


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.

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

MB device Address/ID. 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 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.

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 READ_DNP_OBJ_RESPECTIVELY = Y/N

SEAL_IN_ALARM = YES READ_DNP_OBJ_RESPECTIVELY = Y/N

END

END

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 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.

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

- 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. 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.

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 Note: In section 1.4.13, the FORMAT can be FR. ENABLE_SAVING_DB = Y/N

MAX_FR = 32 FR_MB_REG_START = 300

ENABLE_SAVING_DB = NO

SEAL_IN_ALARM = Y/N END

SEAL_IN_ALARM = YES 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 SESSION = 0 Explanation Begins the settings for the database. 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.

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 =

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

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

1 2 3 4 4 4 4 4

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 END

SEAL_IN_ALARM = YES END

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 AI #0 AO#0 CNT #0 DO # 0 + MAX_DO * 1 AI # 0 + MAX_AI * 1 AO # 0 + MAX_AO * 1 CNT # 0 + MAX_CNT * 1 DO # 0 + MAX_DO *7 AI # 0 + MAX_AI *7 AO # 0 + MAX_AO *7 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 TITLE = tttttttt MATRIX_DI_PT = ddd ACTION_BIN_DO_PT = ddd CONTINGENCY_PULSE_PT = dd Sample ENTRY DATA_MATRIX = EDITOR TITLE = GenSheld for XXX MATRIX_DI_PT = 176 ACTION_BIN_DO_PT = 81 CONTINGENCY_PULSE_PT = 96 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.

CONTINGENCY_INFO = dd tttt ACTION_INFO = dd xxxx

COUNT = dd END

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

= 01 TE01 xxx 5Lyy = 48 TE48 (FUTURE) xxx 5Lzz FUT

- 23 -

Data Matrix Editor For MB/MBP Device:


Entry ENTRY DATA_MATRIX = EDITOR TITLE = tttttttt AI_PT = ddd Sample ENTRY DATA_MATRIX = EDITOR TITLE = GenSheld for XXX AI_PT = 11 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).

AO_PT = ddd

AO_PT = 01

CONTINGENCY_INFO = dd tttt ACTION_INFO = dd xxxx

COUNT = dd END

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

= 01 TE01 xxx 5Lyy = 48 TE48 (FUTURE) xxx 5Lzz FUT

- 24 -

Data Matrix Editor For L&G Device:


Entry ENTRY DATA_MATRIX = EDITOR TITLE = tttttt MATRIX_DI_PT = ddd ACTION_BIN_DO_PT = ddd CONTINGENCY_PULSE_PT = dd Sample ENTRY DATA_MATRIX = EDITOR TITLE = GenSheld for XXX MATRIX_DI_PT = 176 ACTION_BIN_DO_PT = 1 CONTINGENCY_PULSE_PT = 96 Explanation Begins the settings for the Data Matrix Editor. 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.

CONTINGENCY_INFO = dd text ACTION_INFO = dd xxxx

COUNT = dd END

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

= 01 TE01 xxx 5Lyy = 48 TE48 (FUTURE) xxx 5Lzz FUT

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 1 2 48

10

11

12

13

14

15

16

- 25 -

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 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.

ENTRY METER_SIZE = LARGE

ENTRY

METER_SIZE = LARGE

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

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 = 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 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.

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] "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 [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]

LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME LONGNAME

= = = = = = = = = = =

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

D_TYPE D_TYPE D_TYPE

= AI = BR16 = BR32

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

- 28 -

[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

= FR = CNT32 = MYPLC_9X

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.

SHARING_PNT = Y/N

SHAPING_PNT = Y

PROCTYPE = ANALOG [History] [M=dd] (dd=1-60) 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)

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

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]

PNT_ADDR

= 0

ENTRY NAME = PY_40100 PNT_ADDR = SHARED

[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 Note: If it is "HEX", a Hex Formatted string will be displayed instead of a floating 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 = 11

ENG_UNIT

= KV

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

- 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 = 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_EUVAL LO_EUVAL HI_WNLIM LO_WNLIM HI_ALLIM LO_ALLIM HI_RSLIM LO_RSLIM HI_SCALE LO_SCALE Z_DBAND

= = = = = = = = = = =

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

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

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

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 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.

LONGNAME = xxxxxxx

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)

LONGNAME LONGNAME LONGNAME FORMAT FORMAT

= = = = =

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

= = = = 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 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.

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

= = = = = = =

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

PROCTYPE PROCTYPE

= 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]

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 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.

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

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 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.

TASK_ID = dd 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 BEGIN_EVENT = xxxxx END_EVENT = xxxxx

TASK_ID = 2 TASK_NAME = xMyTask #2 TASK_TYPE = BEGIN_END_AFTER_SECONDS_TO_DO

BEGIN_EVENT = PSD_DI01 END_EVENT = PSD_DI01

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

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.

INTERVAL = 5000

TASK_MONTH = dd TASK_DAY = dd TASK_WEEK = d

TASK_MONTH = 2 TASK_DAY = 3 TASK_WEEK = 4

TASK_HOUR = dd TASK_MINUTE = dd TASK_SECOND = dd EMAIL_HOST = xxxxx EMAIL_USERID = xxxx EMAIL_ADDR = xxxx END

TASK_HOUR = 23 TASK_MINUTE = 59 TASK_SECOND = 1 EMAIL_HOST = abcd EMAIL_USERID = efgh EMAIL_ADDR = ijkl@mnopq.com END

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

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.

- 37 -

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 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 @

@DATETIME:dd

@OPERATOR:dd

@SITENAME:dd @AUTOSITEINFO:dd

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 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

; ENTRY ENTRY ; ;

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 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

; ENTRY

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. Exclusively edit/draw the current selected pre-defined Object-Shape. Operations on a Block of Shapes.

Begin a New HMI Display Page Open a HMI Display Page

Editor Working Mode

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] screenshot Figure 3-1, and Figure 4-1.
Double-Click on it to print the current screen. The Status Point Name is defined by DI short name. Refer to the section 1.4.12 and 14.

in the Main Menu. Refer to the

Directly go to the point you want.

Ack to changes in the current page or ALL.

Previous/Next 20 Points.

Go back to Main Menu display.

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] 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).

in the Main Menu. Refer to

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#1: Pick up an AO point or defined by the CTRL_ADDR. Refer to the section 1.4.13.
Figure 5-3

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

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.

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.

- 65 -

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

Here is the history data/record information.

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

- 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] 1, and Figure 6-1.
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. Close the Alarm Monitor/Recorder Window

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

Reset inactive Alarms.

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

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

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

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.

Red: an Active alarm.

Refer to the section 6.2.2.

Blue: a selected alarm panel item.

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. 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.

The description is the long name of the current point. Refer to the section 1.4.13.

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.

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

You can select it and find some buttons appear at bottom if applicable.

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 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 ENTRY NAME LONGNAME = ALARM_03 = T1 Ctrl Failed

ENTRY NAME LONGNAME NAME LONGNAME = ALARM_998 = xxxxxxxxxxFailed = ALARM_999 = xxxxxxxxxxFailed

ENTRY

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] 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. X-Coordinate 1 - 32767

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

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 -

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

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

- 89 -

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
ENTRY LEFT WIDTH BRUSHCOLOR

Meaning
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. 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. Specifies how the current HMI Object-Shape of TEXT works. Refer to the Figure 7-23.

Keyword
SHAPE TOP HEIGHT A_COLOR

Meaning
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". 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.

BRUSHSTYLE

F_COLOR

PENCOLOR

PENSTYLE

DB_PNT

PENWIDTH

A pens width determines the thickness, in pixels, of the lines it draws.

COLCOUNT PICTURE

ROWCOUNT ITEM

HINT

CAPTION

FONTNAME FONTCOLOR DISPLAY

FONTSIZE BACKCOLOR

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.

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 SetPoint Value Or Pulse Count

#6 - option
Pulse Duration

DB_PNT= 11 SBO 2 3 1 1000

Refer to the screenshot Figure 7-14

- 91 -

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

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

Meaning
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

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

Meaning
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 FDIAGONAL

Meaning

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 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 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

ENTRY= 5 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 ENTRY= 6 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

ENTRY= 8 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= 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

- 97 -

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 ENTRY= 1 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 ENTRY= 2

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.
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

- 99 -

ENTRY= 3 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

ENTRY= 7 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

- 100 -

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 ENTRY NAME LONGNAME FORMAT PROCTYPE D_TYPE STATCONV PNT_ADDR ;It is 9x0101 PNT_BIT ALARM ALARM_GROUP = = = = = = = DI_0010 Digital Input #10 DI ONOFF MYPLC_9X NO 99

= 0 = YES = 3

= 15 = YES = 3

- 101 -

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

The ending position

Here you can select a HMI Object-Shape.

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.

If the PSD_DI_PY_WF is ON.

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".

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 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. 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

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 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.

- 123 -

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

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.

- 124 -

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. Data points in the curve 60(minutes) 60(hours) 60(days) Recorders in the history file 48 Hours (Max. 2880 recorders) 90 Days (Max. 2160 recorders) 60 Months (Max. 1825 recorders) Note

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

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] 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 Multi-Network based configuration PY LAN SY LAN Client 1 Client 50

to open

Digital Output ACT 01 - 16

PY PLC

SY PLC

Digital Output ACT 01 - 16

Digital Input TE 01 - 48

Digital Input TE 01 - 48 Figure 8-1

- 138 -

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

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

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

PY

SY

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. Watch out the Error Information in the Bottom Window Information Bar.

Figure 8-2

- 139 -

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 PLC (PY/SY) and this Matrix Editor.

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

The state (ON) in the PY PLC Matrix.

The state (OFF) in the SY 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.

Displays the real-time information of the current line by clicking on it.

Start the Runtime of the current PLC Program.

If checked, it disables the log information.

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 -

. .

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 [IF/IF^ o o o [IF/IF^ o o o Var0 THEN] END Function: Ends of the Program. Note: Sample: END 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 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 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 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

62 BORNOT o o o

63 BAND o o o

64 BANDNOT Var0-PV,...,Var16-PV

- 158 -

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

65 BOUT o o o

66 BOUTNOT o o o

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

67 BORLD o o o

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

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 |

69 BLDEND o o o 70 BLDNOT o o o

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 xMaster HMI Client #50

DAS Communication Link/Sessions #1 #2 #8

DNP / MB Protocol DNP to MB Converter MB to DNP Converter Other MB/DNP Master End

Remote Device/Slave End -- Top Level Devices/DA Sessions on the station automation platform.
SCADA: Local HMI Figure 10-1

SCADA: Control Center HMI

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 SY 50

Multi-Network based configuration

#1

#2

#8

- 167 -

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 xMaster HMI Client #50

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 0x81 0x41 0x81 0x41 0x01 0x01 0x01 0x01 0x03 0x04 0x01 0x17 0x14

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

250 251 252 0 1 2 3 4 5 6 7 8

- 171 -

#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 #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

39 40 41 0x0000 0x0000 0x7fff 0x8fff 0x8fff 0x80fd 0x80fe 0x80ff 0x1000 0x2000 0x4000 0x4000 0x4000 0x0800 0x0400 0x0200 0x0100 0xffff 0x00ff

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

#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 -

Byte MsgCode; //Protocol Message Code Byte MsgParamter; Word MsgPointTotal; }; struct { Byte Byte Byte Word }; struct { Byte Byte Word }; }; 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;

ObjectMsgCode; HostLinkFreezed:1; ObjectClass:7; //0-15 ObjectPointNumber;

CtrlMsgCode; CtrlCode; CtrlPointNumber;

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 MB Master HMI Client #50

DNP DAS Communication Link/Sessions #1 #2 #8

- 174 -

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:

Enable to display the Bytes of Rx/Tx

The name of the file is defined by the entry of INFO_FILE. Refer to the section 1.4.4.

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 Site #1

Modem

Telephone System

Modem

Site #2

Site Information
1234567 xxx yy 2345678 zzzz aa 3456789 ffff rrr 4567890 eeee ee

Modem

Site #4

Modem

Site #i 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 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

; ENTRY

; ENTRY

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 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

; ENTRY

; ENTRY

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 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.

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.

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 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

; ENTRY

; ENTRY

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 Link Figure 13-1

MB Meters

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 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 STATION_INFO ; ENTRY ENTRY NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT 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 DNP202_DI005 DI DI 202 4 4 YES 1 YES DNP202_DI006 DI DI 202 5 5 YES 1 YES DNP202_DI007 DI DI 202 6 6 YES 1 YES

; ENTRY ENTRY

; ENTRY

; ENTRY 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

; ... ... 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 SERVER_IP_PORT = 27000 DEV_MASTER = 11 DEV_LINK = TCP/IP DNP_DEV101 = 0, 101, 10.1.2.101, 20000 END 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 STATION_INFO ENTRY NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT 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 DNP101_DI005 DI DI 101 4 4 YES 1 YES DNP101_DI006 DI DI 101 5 5 YES 1 YES DNP101_DI007 DI DI 101 6 6 YES 1 YES

; ENTRY ; ENTRY

; ENTRY

; ENTRY 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 FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT 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 DNP101_DI003 DI DI 101 2 2 YES 1 YES

; ENTRY

; ENTRY

; ... ... ENDALL

; ENTRY

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 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 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 ; MAX_CNT = 0 ; MAX_FR = 16 FR_MB_REG_START = 500 ; END ; ENTRY STATION_INFO ; ENTRY ; ENTRY ENTRY NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT 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 MB11_1x002 DI DI 11 1 1 YES 1 YES MB11_1x003 DI DI 11 2 2 YES 1 YES MB11_1x004 DI DI 11 3 3 YES 1 YES MB11_1x005 DI DI 11 4 4 YES 1 YES

; ENTRY ENTRY

; 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

; ; ... ... 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 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 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 ; 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 ; ENTRY NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT NAME FORMAT D_TYPE PNT_DEV PNT_ADDR CTRL_ADDR ALARM ALARM_GROUP SHARING_PNT 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 MB22_1x002 DI DI 22 1 1 YES 1 YES MB22_1x003 DI DI 22 2 2 YES 1 YES MB22_1x004 DI DI 22 3 3 YES 1 YES MB22_1x005 DI DI 22 4 4 YES 1 YES

; ENTRY ENTRY

; ENTRY

; ENTRY

; ... ... 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 -

Vous aimerez peut-être aussi