devicexplorer opc server users guide - larraioz elektronika · 2019-01-04 · - 2 - [ precautions...

233
Revision 016 December 2018 DeviceXPlorer OPC Server User’s Guide (Server Edition)

Upload: others

Post on 11-Mar-2020

22 views

Category:

Documents


0 download

TRANSCRIPT

Revision 016

December 2018

DeviceXPlorer OPC Server User’s Guide

(Server Edition)

- 2 -

[ Precautions regarding this manual ] (1) Read this manual and understand it thoroughly before operating the product. (2) This manual explains the details of the product’s functions; it does not guarantee that the product is suitable for

your particular purposes. (3) Publishing or copying this manual or any part thereof without permission is strictly prohibited. (4) The content of this manual is subject to change without notice. (5) The content of this manual applies to program versions 5.3.2.1 or higher. [ Product liability ] (1) TAKEBISHI provides no guarantee for this product other than in the situations stipulated in the Warranty

Conditions. (2) TAKEBISHI also disclaims liability for any damage incurred by the customer or a third party when using the

product or when there are unforeseeable defects in the product or any indirect damages. [ About the software ] (1) Use this software installed on one particular PC.

Another separate license is required to install and use the software on another PC. (2) Copying the software for purposes other than backup is strictly prohibited. (3) Carefully store the CD (media) that contains the software. (4) Reverse engineering of the software, such as decompiling and disassembly, is strictly prohibited. (5) It is strictly prohibited to allow a third party to use this software, or any portion of it, through transfer, exchange or

subleasing, etc., without the prior consent of TAKEBISHI. (6) The specifications of the software are subject to change without notice. [ Copyrights ] TAKEBISHI Corporation holds the copyrights to the programs contained in the CD, the online manual, and other documentation. It is prohibited to copy this content or to transfer, sell, or distribute (including providing it via PC network) to a third party. It is also prohibited to record the content, using video tape or other media, without permission. [ Trademarks ] All company names, product names and trademarks that appear in this manual are trademarks of their respective owners.

- 3 -

1 Introduction ................................................................................................................................................................................................................................................................................ 8 1.1 Overview ........................................................................................................................................................................................................................................................................ 8 1.2 Features .......................................................................................................................................................................................................................................................................... 8 1.3 Protocol for Communication between Applications ......................................................................................................................................................................... 9 1.4 Licenses ........................................................................................................................................................................................................................................................................... 9

2 Configuration ......................................................................................................................................................................................................................................................................... 10 2.1 System Configuration ........................................................................................................................................................................................................................................ 10 2.2 Operating Environment ................................................................................................................................................................................................................................... 11 2.3 Support Controller................................................................................................................................................................................................................................................ 12

3 Installation ............................................................................................................................................................................................................................................................................... 14 3.1 Install Procedure ................................................................................................................................................................................................................................................. 14 3.2 Installation Files..................................................................................................................................................................................................................................................... 18 3.3 Uninstall Procedure ............................................................................................................................................................................................................................................ 19 3.4 License Authorization ........................................................................................................................................................................................................................................ 20

3.4.1 Serial Number .................................................................................................................................................................................................................................................. 20 3.4.2 Software Key (License Code) .................................................................................................................................................................................................................. 20 3.4.3 Hardware Key.................................................................................................................................................................................................................................................. 20 3.4.4 License Status and Application Operation ................................................................................................................................................................................... 20 3.4.5 License Registration and Transfer ..................................................................................................................................................................................................... 22

3.4.5.1 License Activation ............................................................................................................................................................................................................................. 23 3.4.5.2 License Transfer ........................................................................................................................................................................................................................... 24 3.4.5.3 License Change.............................................................................................................................................................................................................................. 26 3.4.5.4 License Clear .................................................................................................................................................................................................................................... 27 3.4.5.5 Library Information ........................................................................................................................................................................................................................ 27

3.4.6 Notes on the usage of Windows Remote Desktop service.................................................................................................................................................. 27 3.5 The difference between Enterprise license and Standard license ................................................................................................................... 28 3.6 Demo edition ......................................................................................................................................................................................................................................................... 28 3.7 Notes on the usage by the non-administrator rights .................................................................................................................................................... 28 3.8 Notes at 64-bit version ................................................................................................................................................................................................................................ 28 3.9 Setup OPC UA environment ................................................................................................................................................................................................................ 30

3.9.1 Install OpcUaEnv .......................................................................................................................................................................................................................................... 30 3.9.2 Uninstall OpcUaEnv ................................................................................................................................................................................................................................... 32

4 General Performance Specifications ...................................................................................................................................................................................................................... 33 4.1 Specifications Table .............................................................................................................................................................................................................................................. 33 4.2 OPC DA Interfaces .............................................................................................................................................................................................................................................. 34

4.2.1 Prog.ID ................................................................................................................................................................................................................................................................... 34 4.2.2 Item ID .................................................................................................................................................................................................................................................................. 34 4.2.3 Access Path ......................................................................................................................................................................................................................................................... 36 4.2.4 OPC Custom Interfaces............................................................................................................................................................................................................................. 37 4.2.5 OPC Automation Interface ..................................................................................................................................................................................................................... 40 4.2.6 Quality flag .......................................................................................................................................................................................................................................................... 40 4.2.7 Error code ............................................................................................................................................................................................................................................................. 41

4.3 OPC A&E Interface ....................................................................................................................................................................................................................................... 43 4.3.1 ProgID .................................................................................................................................................................................................................................................................... 43 4.3.2 ItemID .................................................................................................................................................................................................................................................................... 43 4.3.3 Custom Interfaces .......................................................................................................................................................................................................................................... 44

4.4 OPC UA Interface ........................................................................................................................................................................................................................................... 45 Service .......................................................................................................................................................................................................................................................................................... 45

4.5 DDE/SuiteLink Interfaces .............................................................................................................................................................................................................................. 46 4.5.1 Application Name .......................................................................................................................................................................................................................................... 46 4.5.2 Topic Names and Item Names ............................................................................................................................................................................................................. 47

4.6 DxpLink Interface ........................................................................................................................................................................................................................................... 48

- 4 -

4.6.1 DxpLink Server Settings .......................................................................................................................................................................................................................... 48 4.6.2 DxpLink Communication Settings ................................................................................................................................................................................................... 48 4.6.3 DxpLink Communication ........................................................................................................................................................................................................................ 49 4.6.4 DxpLink Protocol Specification............................................................................................................................................................................................................. 51

4.6.4.1 Enumerate Device (GetDevice) ........................................................................................................................................................................................ 51 4.6.4.2 Enumerate Tag (GetTags) ..................................................................................................................................................................................................... 52 4.6.4.3 Read Value of Tag (GetTagsValue) ................................................................................................................................................................................. 54 4.6.4.4 Write Value of Tag (SetTagsValue) ................................................................................................................................................................................. 55 4.6.4.5 Constants ............................................................................................................................................................................................................................................. 57

5 Operation .................................................................................................................................................................................................................................................................................. 58 5.1 Tutorial ......................................................................................................................................................................................................................................................................... 58

5.1.1 Installing and Setting Up an Ethernet Adapter....................................................................................................................................................................... 58 5.1.2 Installing DeviceXPlorer ........................................................................................................................................................................................................................... 59 5.1.3 Starting DeviceXPlorer .............................................................................................................................................................................................................................. 59 5.1.4 Start Page ............................................................................................................................................................................................................................................................ 59 5.1.5 Accessing DeviceXPlorer from a Client .......................................................................................................................................................................................... 63

5.2 Screen Layout .......................................................................................................................................................................................................................................................... 65 5.2.1 Menus..................................................................................................................................................................................................................................................................... 68 5.2.2 Toolbar .................................................................................................................................................................................................................................................................... 72 5.2.3 Another Shortcut Key ................................................................................................................................................................................................................................. 72 5.2.4 Property Grid .................................................................................................................................................................................................................................................... 73 5.2.5 Clip of List View ............................................................................................................................................................................................................................................... 73

5.3 Ports ................................................................................................................................................................................................................................................................................ 74 5.3.1 Creating New Ports ...................................................................................................................................................................................................................................... 75 5.3.2 Changing the Port Name ......................................................................................................................................................................................................................... 76 5.3.3 Setting Ethernet Ports ................................................................................................................................................................................................................................ 78

5.3.3.1 Timeout Settings for TCP / IP .................................................................................................................................................................................................. 80 5.3.4 Serial Port Settings ....................................................................................................................................................................................................................................... 82 5.3.5 Port Generator ................................................................................................................................................................................................................................................. 83 5.3.6 Dynamic Port .................................................................................................................................................................................................................................................... 85

5.4 Devices .......................................................................................................................................................................................................................................................................... 86 5.4.1 Creating a New Device............................................................................................................................................................................................................................... 88

5.4.1.1 Not select a Port ............................................................................................................................................................................................................................ 88 5.4.1.2 Select a Port ...................................................................................................................................................................................................................................... 89

5.4.2 Connection Test ............................................................................................................................................................................................................................................... 91 5.4.3 Changing the Device Name ................................................................................................................................................................................................................... 92 5.4.4 Device Options.................................................................................................................................................................................................................................................. 93 5.4.5 Changing Ports ................................................................................................................................................................................................................................................ 95 5.4.6 Device Generator ............................................................................................................................................................................................................................................ 97 5.4.7 Dynamic Device .............................................................................................................................................................................................................................................. 99

5.5 Groups ........................................................................................................................................................................................................................................................................ 100 5.5.1 Creating a New Group ............................................................................................................................................................................................................................. 102 5.5.2 Changing the Group Name .................................................................................................................................................................................................................. 103 5.5.3 Deleting Group............................................................................................................................................................................................................................................... 106

5.6 Device Folder ...................................................................................................................................................................................................................................................... 107 5.6.1 Creating a New Device Folder ............................................................................................................................................................................................................ 108 5.6.2 Changing the Group Name .................................................................................................................................................................................................................. 109 5.6.3 Deleting Device Folder.............................................................................................................................................................................................................................. 110

5.7 Tags ............................................................................................................................................................................................................................................................................... 111 5.7.1 Dynamic Tags and Static Tags ........................................................................................................................................................................................................... 111 5.7.2 Creating a New Tag ................................................................................................................................................................................................................................... 113 5.7.3 Changing a Tag Name ............................................................................................................................................................................................................................. 114

- 5 -

5.7.4 Properties (General).................................................................................................................................................................................................................................... 116 5.7.5 Properties (Scale Settings) ...................................................................................................................................................................................................................... 117 5.7.6 Properties (Simulation) ............................................................................................................................................................................................................................ 119 5.7.7 Properties (Alarm) ....................................................................................................................................................................................................................................... 120 5.7.8 Saving Settings .............................................................................................................................................................................................................................................. 121 5.7.9 Adding Tags Continuously .................................................................................................................................................................................................................... 121 5.7.10 Tag Generator .......................................................................................................................................................................................................................................... 121 5.7.11 Extended Tag Name Specification ............................................................................................................................................................................................ 123

5.7.11.1 No Specification ......................................................................................................................................................................................................................... 124 5.7.11.2 Specifying the Bit Position (:nn) ..................................................................................................................................................................................... 124 5.7.11.3 Byte Type (:L, :LU, :H, :HU).............................................................................................................................................................................................. 124 5.7.11.4 Word Type (:W, :U, :WU) ..................................................................................................................................................................................................... 124 5.7.11.5 Long Type (:D, :DU) ............................................................................................................................................................................................................... 124 5.7.11.6 LongLong Type (:I, :IU) ..................................................................................................................................................................................................... 124 5.7.11.7 Single Precision Real Number Type (:R) ............................................................................................................................................................ 124 5.7.11.8 Double Precision Real Number Type (:DR) ..................................................................................................................................................... 124 5.7.11.9 BCD Type (:B) ............................................................................................................................................................................................................................. 125 5.7.11.10 Read-only/Write-only (:OR, :OW) .................................................................................................................................................................................. 125 5.7.11.11 Array (:A99999) ......................................................................................................................................................................................................................... 125 5.7.11.12 String (:S99999) ......................................................................................................................................................................................................................... 125 5.7.11.13 File Batch Write(:F999999) ....................................................................................................................................................................................... 125 5.7.11.14 Text Format Binary Type (:B99999) ........................................................................................................................................................................... 126 5.7.11.15 Text Format Octal Type (:O99999) .............................................................................................................................................................................. 126 5.7.11.16 Text Format Decimal Type (:D99999) ....................................................................................................................................................................... 126 5.7.11.17 Text Format Hexadecimal Type (:H99999) ........................................................................................................................................................... 127 5.7.11.18 Bit Inverse .................................................................................................................................................................................................................................. 127 5.7.11.19 Boolean conversion ............................................................................................................................................................................................................ 127 5.7.11.20 Simulation mode (Sin) ................................................................................................................................................................................................... 127 5.7.11.21 Simulation mode (Shared Memory ) ................................................................................................................................................................ 127 5.7.11.22 Simulation mode (Ramp ) ........................................................................................................................................................................................... 127 5.7.11.23 Simulation mode (Random) ...................................................................................................................................................................................... 127

5.7.12 System Tags .............................................................................................................................................................................................................................................. 128 5.7.12.1 Global System Tags ................................................................................................................................................................................................................ 128 5.7.12.2 Device System Tags ................................................................................................................................................................................................................ 130 5.7.12.3 Connection System Tags..................................................................................................................................................................................................... 132

5.7.13 Tag Monitor ............................................................................................................................................................................................................................................... 133 5.7.14 Offline Mode .............................................................................................................................................................................................................................................. 134 5.7.15 Write Tag Value....................................................................................................................................................................................................................................... 135 5.7.16 Watch ............................................................................................................................................................................................................................................................. 136 5.7.17 Array Viewer ............................................................................................................................................................................................................................................. 137 5.7.18 Register Monitor..................................................................................................................................................................................................................................... 138

5.8 Method Tag .......................................................................................................................................................................................................................................................... 141 5.8.1 Creating a New Method Tag................................................................................................................................................................................................................ 141 5.8.2 Execute Method Tag .................................................................................................................................................................................................................................. 142

5.9 Structure Tag ..................................................................................................................................................................................................................................................... 143 5.9.1 Define Structure Template .................................................................................................................................................................................................................... 143 5.9.2 Creating a New Structure Tag ........................................................................................................................................................................................................... 147 5.9.3 How to access Structure Tags from Client .................................................................................................................................................................................. 149

5.10 Bridge ........................................................................................................................................................................................................................................................................ 150 5.10.1 Bridge Setting .......................................................................................................................................................................................................................................... 150

5.11 Messages ................................................................................................................................................................................................................................................................ 154 5.11.1 Message ........................................................................................................................................................................................................................................................ 154

- 6 -

5.11.2 How to save messages automatically ...................................................................................................................................................................................... 157 5.12 Diagnosis ................................................................................................................................................................................................................................................................... 158

5.12.1 Interface Diagnosis ............................................................................................................................................................................................................................... 158 5.12.2 Client Diagnosis ...................................................................................................................................................................................................................................... 159 5.12.3 Group Diagnosis ..................................................................................................................................................................................................................................... 159 5.12.4 Tag Diagnosis ........................................................................................................................................................................................................................................... 160 5.12.5 Event Diagnosis ...................................................................................................................................................................................................................................... 161

5.13 Projects........................................................................................................................................................................................................................................................................ 162 5.13.1 Common Properties, General ....................................................................................................................................................................................................... 163 5.13.2 Common Properties, OPC .............................................................................................................................................................................................................. 164 5.13.3 Common Properties, DDE/SuiteLink .................................................................................................................................................................................... 166 5.13.4 Common Properties, DxpLink..................................................................................................................................................................................................... 166 5.13.5 Project Properties, General ............................................................................................................................................................................................................. 167 5.13.6 Project Properties, GUI...................................................................................................................................................................................................................... 169 5.13.7 Project Properties, Log ....................................................................................................................................................................................................................... 170

5.14 Service Activation ................................................................................................................................................................................................................................................ 171 5.14.1 Registering DeviceXPlorer as a service program ............................................................................................................................................................ 171 5.14.2 How to show DeviceXPlorer setting dialog of service program ............................................................................................................................. 173 5.14.3 Unregister from service program ............................................................................................................................................................................................... 174 5.14.4 Unregister from service program on Windows 10 later ............................................................................................................................................. 174

5.15 Importing and Exporting .............................................................................................................................................................................................................................. 175 5.15.1 Import[Definition] ................................................................................................................................................................................................................................. 176 5.15.2 Export[Definition] .................................................................................................................................................................................................................................. 176 5.15.3 Import[TagMemory] ........................................................................................................................................................................................................................... 177 5.15.4 Export[TagMemory]............................................................................................................................................................................................................................ 178

5.16 Hot Configuration ......................................................................................................................................................................................................................................... 179 5.17 Redundant Communication ....................................................................................................................................................................................................................... 180

5.17.1 Warm Standby ........................................................................................................................................................................................................................................ 181 5.17.2 Cold Standby ............................................................................................................................................................................................................................................ 181

5.18 Communication Period ............................................................................................................................................................................................................................ 181 5.19 Slow Polling Mode ......................................................................................................................................................................................................................................... 182 5.20 User Management ........................................................................................................................................................................................................................................ 183

5.20.1 Configuration ............................................................................................................................................................................................................................................ 183 5.20.2 Contents List ............................................................................................................................................................................................................................................. 184 5.20.3 Auto Login .................................................................................................................................................................................................................................................. 185

5.21 Change display language dynamically ..................................................................................................................................................................................... 186 5.22 DCOM Configuration ...................................................................................................................................................................................................................................... 187

5.22.1 Overview ...................................................................................................................................................................................................................................................... 187 5.22.2 Procedure .................................................................................................................................................................................................................................................... 189

5.23 Sample Programs ............................................................................................................................................................................................................................................... 197 5.23.1 Accessing from Visual C/C++ 6.0 via OPC .......................................................................................................................................................................... 197 5.23.2 Accessing from Visual Basic 6.0 via OPC ............................................................................................................................................................................. 199 5.23.3 Accessing from Visual Basic 6.0 via DDE............................................................................................................................................................................. 200 5.23.4 Accessing from EXCEL via DDE .............................................................................................................................................................................................. 201

6 Script ........................................................................................................................................................................................................................................................................................ 202 6.1 Event Script Settings ................................................................................................................................................................................................................................. 202 6.2 Script Specification ....................................................................................................................................................................................................................................... 205 6.3 Extend Specification ................................................................................................................................................................................................................................... 205

6.3.1 Reserved Word ............................................................................................................................................................................................................................................... 205 6.3.2 Constant Value............................................................................................................................................................................................................................................... 205 6.3.3 Classes.................................................................................................................................................................................................................................................................. 206

6.3.3.1 Tag Access Class ......................................................................................................................................................................................................................... 207

- 7 -

6.3.3.2 Group Access Class .................................................................................................................................................................................................................. 208 6.3.3.3 Device Access Class ................................................................................................................................................................................................................. 208 6.3.3.4 Struct Access Class................................................................................................................................................................................................................... 210 6.3.3.5 Port Access Class ........................................................................................................................................................................................................................ 210 6.3.3.6 Event Script Access Class .................................................................................................................................................................................................. 210 6.3.3.7 Method Access Class ............................................................................................................................................................................................................... 211 6.3.3.8 Time Class ........................................................................................................................................................................................................................................ 211

6.3.4 Functions............................................................................................................................................................................................................................................................ 212 6.3.5 Access Macros ................................................................................................................................................................................................................................................. 215 6.3.6 Priority of Finding Object ........................................................................................................................................................................................................................ 217 6.3.7 Units of Running Script ........................................................................................................................................................................................................................... 217 6.3.8 About Script Writing .................................................................................................................................................................................................................................. 217

6.4 Samples ..................................................................................................................................................................................................................................................................... 218 6.4.1 Basic Example ................................................................................................................................................................................................................................................ 218 6.4.2 Easy CSV Logging ...................................................................................................................................................................................................................................... 220 6.4.3 Example which defines the class in the external file (Bridge) ....................................................................................................................................... 221 6.4.4 Example which defines the class in the external file (Timer) ........................................................................................................................................ 224

7 Troubleshooting .................................................................................................................................................................................................................................................................. 226 7.1 Error Messages..................................................................................................................................................................................................................................................... 226

7.1.1 The source of the Response timeout error in the Ethernet connection ................................................................................................................... 226 7.1.2 Ethernet Error Code (Winsock Error Code) .............................................................................................................................................................................. 228 7.1.3 Serial Error Code .......................................................................................................................................................................................................................................... 228

8 Appendix ................................................................................................................................................................................................................................................................................. 229 8.1 How to use of the OPC Test Client .......................................................................................................................................................................................................... 229 8.2 About Sample Programs ........................................................................................................................................................................................................................ 229 8.3 User Support .......................................................................................................................................................................................................................................................... 229 8.4 Copyright Information .................................................................................................................................................................................................................................... 230

8.4.1 Scintilla ................................................................................................................................................................................................................................................................ 230 8.4.2 Lua .......................................................................................................................................................................................................................................................................... 230 8.4.3 tolua++ ................................................................................................................................................................................................................................................................. 230 8.4.4 CGridListCtrlEx ........................................................................................................................................................................................................................................... 231

- 8 -

1 Introduction This manual explains how to use DeviceXPlorer OPC Server (hereafter referred to as DeviceXPlorer). For information on the settings, operating method, and error codes, etc., of the PLCs, refer to the “User’s Guide (PLC Connection Edition)”.

1.1 Overview OPC (Ole for Process Control) is an interface specification for communication between applications that was formulated by the OPC Foundation, a standardization body made up of hardware and software vendors from around the world. There are a number of OPC interfaces, including OPC DA for communication with field devices, OPC HDA for accessing historical data, and OPC AE for monitoring alarms. And The Unified Architecture (UA) is THE next generation OPC standard that provides a cohesive, secure and reliable cross platform framework for access to real time and historical data and events. DeviceXPlorer is communication software that is compliant with the OPC DA interface. It provides functions to communicate with PLC. Using DeviceXPlorer allows the user application to access field devices such as PLCs without being constrained by the PLC type or the communication interface. In addition, the user application (hereafter referred to as the client) can be set up in either a local or remote PC, allowing the construction of distributed systems.

1.2 Features The main features of DeviceXPlorer are as follows: - Passed with the OPC compliance test. - Confirmed connectivity with package products from around the world, through OPC Interoperability Workshop in

the United States and Japan. - Compliant with OPC DA2.05A / OPC DA3.0. - Compliant with OPC A&E 1.10. - Compliant with OPC UA. - Supports DDE/SuiteLink. - Supports DxpLink. This is original protocol based on HTTP Communication between DeviceXPlorers. - Supports Ethernet communication and serial communication from a single server. Also supports communication

with multiple PLCs such as MELSEC (Mitsubishi Electric Corporation), SYSMAC (OMRON Corporation), and TOYOPUC (JTEKT Corporation).

- Provides a variety of sample programs as accessories, for easy access from Visual Basic, VB.NET, and Excel, as well as Visual C/C++ and C#.NET.

- Provides scale conversion and BCD conversion inside DeviceXPlorer, reducing the work of sequence programming. - Because communication with DeviceXPlorer is possible simply by setting up a communication unit such as

Ethernet and RS232C on the PLC side, you do not need to add extra sequence programs in order to use DeviceXPlorer.

- It is possible to predefine separate device names in DeviceXPlorer for the PLC device names. It is also possible to access the PLCs without defining names, to save setup time.

- DeviceXPlorer can operate as a Windows service program. - Because redundant communication is supported, it is possible to continue communication in the event of a

communication failure by automatically switching the communication route. - A simulation function allows you to develop an OPC client even in an environment in which it is not possible to use

a PLC. - DeviceXPlorer has the script function. Even when processing cannot be included in the client and PLC side, it can

respond easily.

- 9 -

1.3 Protocol for Communication between Applications DeviceXPlorer supports five types of protocol (OPC,OPC UA,DDE, SuiteLink, DxpLink) for communication with upper-tier applications. [OPC] OPC is a standard specification based on the Microsoft OLE/COM technology. It provides mutual connectivity between industrial applications, field devices and business applications, etc. In the past, application developers had to develop drivers for accessing field devices, but the use of OPC interfaces makes it possible to achieve seamless communication between HMI, SCADA, industrial applications and field applications, and also made reuse possible. It also allows for remote computing via DCOM (Distributed COM) in network environments. [OPC UA] OPC UA(Unified Architecture) is the new specification of OPC. This is based on SOAP/XML/Web Service which spread follows as the next-generation information infrastructure.In addition to integration of the existing specification (DA, A&E, HDA), the data exchange of a full-scale object base becomes possible by defining an information model. The scope of OPC UA makes possible the safety and the stable data exchange which cannot stop in a plant floor but can be applied also to the domain of MES located more in a higher rank, or ERP. [DDE] DDE is a protocol providing two-way communication in Windows environments, which allows server applications to provide data in response to requests from client applications. [SuiteLink] SuiteLink is a TCP/IP-based protocol developed by Wonderware. SuiteLink improves the reliability of communication by using TCP/IP, and also affixes time stamp and quality information, allowing the construction of highly reliable networks. [DxpLink] DxpLink is a HTTP based protocol developed by Takebishi. This transmits the data between DeviceXPlorer(s) seamlessly.

1.4 Licenses One DeviceXPlorer license is required for each PC in which the software is installed. The max number of accessible modules is 255 per one DeviceXPlorer. There is no constraint on the number of clients. Refer to the 3.5 for the difference between Enterprise license and Standard license.

- 10 -

2 Configuration

2.1 System Configuration The DeviceXPlorer system configuration is as shown below.

- A single server supports multiple PLCs. - The development languages that can be used to access each interface are as shown in the table below. - Remote connection from a separate node via DCOM is possible. This is supported by OPC DA and OPC A&E. - DxpLink, Data communications can be performed between DeviceXPlorers by DxpLink. [Supported Development Languages] Interface Excel VB6.0 VB.NET C#.NET VC6.0/8.0 SCADA DDE OK OK OK OPC DA

*1

Custom interface OK OK Automation interface OK OK OK RCW OK OK

OPC UA OK OK OK OK OPC AE OK OK OK OK OK SuiteLink*2 OK DxpLink It can be used only for communication between DeviceXPlorers.

*1 Automation interface don’t support Windows x64 Edition. *2 For using SuiteLink interface, installing Wonderware product is necessary. Note DeviceXPlorer includes sample programs using each interface of OPC DA.

- 11 -

2.2 Operating Environment DeviceXPlorer operates in the following environments:

Item Description Computer Computer running Windows

OS

Windows 10 IoT Enterprise 2016 LTSB *1*2 Windows 10(1809-17763.194) *1*2*3 Windows 8.1 *1*2 Windows 7 *1 *2 Windows Server 2016 *1 *2 Windows Server 2012 R2 *1*2 Windows Server 2012 *1*2 Windows Server 2008 R2 *1*2 Windows Server 2008 SP2 later *1*2

Application Type 32 bit application (WIN32 / x86) 64 bit application (WIN64 / x64) *1 *4

Memory 512 MB or more *5 Hard disk 200 MB or more *6 Disc device CD-ROM drive LAN adapter Adapter capable of operating on Windows

*1 The DDE and SuiteLink interfaces do not support Windows x64 native application. So DeviceXPlorer 64 bit edition does not support DDE/ SuiteLink. (As of December2018).

*2 Following communications use maker’s communication library. Please check supporting OS of these libraries. - MELSEC EZSocket / GOT / Interface Board connection.

- SYSMAC FinsGateway / Sysmac Gateway / Sysmac CX-Complet connection - TOYOPUC CPU port connection - FANUC FOCAS1/2 connection

*3 There is a possibility that not be guaranteed to operate on the OS owing to the Windows Update. In Windows10 Home Edition, Windows Update type is fixed "Current Branch"(update is performed automatically), so we are recommend that Pro Edition or above.

*4 MELSEC EZSocket, SYSMAC FinsGateway, SYSMAC SysmacGateway, SYSMAC CX-Compolet, TOYOPUC CPU port and FANUC FOCAS1/2 don’t support Windows x64 native application. So DeviceXPlorer 64 bit edition does not support. (As of September 2014).

*5 If the total number of tags used exceeds 10,000, it is recommended that you use 1 GB or more of memory. *6 MELSEC EZSocket Connection are necessary by 300MB or more.

- 12 -

2.3 Support Controller DeviceXPlorer supports the controller as follows:

Name Interface Target Module name

Mitsubishi Electric suite

Ethernet MELSEC iQ-R / iQ-F / Q / L / QnA / A / FX series GOT series MC AppBuilder cooperation function

Serial Interface Board EZSocket (including GX Simulator) GOT

Omron suite

Ethernet

SYSMAC-NX/ NJ/CJ / CS / CV / C series Serial SysmacGateway FinsGateway CX-Compolet

Yokogawa Electric suite

Ethernet FA-M3 (R) series Serial

Jtekt suite Ethernet

TOYOPUC-PC10 / PC3J / PC2J series CPU port (communication DLL) Hitachi suite Ethernet HIDIC-EHV / EH / H series

MODBUS suite

Ethernet (MODBUS/TCP)

Products supported by MODBUS Mitsubishi MODBUS module / Electric Controller / EcoMonitorLight Hakko MONITOUCH Koyo DirectLOGIC/KOSTAC series IDEC MICRO Smart azbil(Yamatake) controller Hioki E. SmartSite2300 series RKC controller CHINO recorder/controller Eurotherm controller M-System remote IO / Tower Light Anywire DB A40 series Wago I/O System Cognex In-Sight Delta DVP series Panasonic FP / KT / KW series 3S CoDeSys SoftPLC Yokogawa STARDOM / Recorder / Control and Measurement Station Moxa switching hub

Serial (MODBUS / RTU, ASCII)

Keyence suite Ethernet KV7000 / 5500 / 5000 / 3000 / 1000 / 700 / Nano

Sharp suite Ethernet Satellite JW series

Fuji suite Ethernet MICREX-SX / F series Serial Yaskawa suite Ethernet (MEMOBUS) MP 3200 / 2400 / 2300 / 2200 / 900 series Panasonic suite Ethernet FP-X / FP2(SH)series

Rockwell suite Ethernet/IP ControlLogix / CompactLogix / FlexLogix / DriveLogix series

Siemens suite Ethernet SIMATIC S7-1500 / S7-1200 / S7-400 / S7-300 series

- 13 -

Lsis suite Ethernet XGT series (XGK / XGI / XGR) Kawasaki suite Ethernet(DLL communication) C / D/D+ / E / S/S+ controller Yaskawa robot suite Simulation Robot Simulator Yamaha robot suite Ethernet RCX340 series / RCX-Studio(RCX340) Fanuc suite Ethernet (FANUC FOCAS) FANUC-PMC series

azbil(Yamatake) suite Ethernet NX series / CPL Serial

Mitsubishi RFID suite Ethernet RF-RW series Omron RFID suite Serial V680 series Cognex BCR suite Ethernet DataMan Keyence BCR suite Ethernet BC(BCR)/SR MARS TOHKEN SOLUTION BCR suite

Ethernet TFIR-3182

Mitsubishi Energy Saving Modules suite HTTP communication EcoServer3 / E-Energy

BACnet Protocol Ethernet Products supported by BACnet IEC60870-5-104 Client Ethernet Products supported by IEC60870-5-104

ODBC Client ODBC ODBC Database OPC DA Client OPC DA Client Port OPC DA OPC Server DDE Client DDE DDE Server DxpLink Client DxpLink (HTTP communication) DxpLink Server (DeviceXPlorer) Shared Memory Shared memory Internal memory of DeviceXPlorer

* Supported models as of December 2018 * For target module details, refer to the “User’s Guide (PLC Connection Edition)”.

- 14 -

3 Installation

3.1 Install Procedure (1) Inserting the Product CD in the drive launches the installer. Choose setup language in dialog.

Important You must have Administrator rights to set up.

(2) Install the components which are necessary to operate DeviceXPlorer. Press “Install”.

(3) When the InstalShield Wizard is displayed, press “Next.”

- 15 -

(4) If you agree with the License Agreement, press “Yes.”

(5) Enter user information and press “Next.”

Note Please input the Serial Number that has been described to the product accurately. If inputting invalid Serial Number, following dialog will be displayed. If you would like to use as demo edition, please input a hyphen symbol “-” in Serial Number.

- 16 -

(6) Select where you wish to install the system or components you wish to install as may be necessary.

(7) Select Installing component.

Note The components without valid license work as demo mode. If you use OPC UA Server function, please check “OPC UA Server Fucntion”.

- 17 -

(8) Select the program folder.

(9) Preparation for installation is now complete. Press “Install” to start installation.

(10) When the Windows component is updated, it is necessary to restart PC.

- 18 -

3.2 Installation Files DeviceXPlorer installation sets up the following files.

Description Setup path Note DeviceXPlorer Installation folder ¥BIN User’s Guide Installation folder ¥Doc Server Edition and PLC Connection Edition

OPC DA I / F Specification Installation folder ¥Doc OPC DA Custom Interface Specification OPC DA Automation Interface Specification (Issued by the OPC Foundation)

Sample programs Installation folder ¥Sample VB, VC, and Excel

OPC DA components Windows system folder OPC DA2.0 / 3.0 custom interface OPC DA2.0 automation interface

Windows components Windows system folder .NET Framework2.0, VC / VB runtime library

- 19 -

3.3 Uninstall Procedure You can uninstall DeviceXPlorer by following the steps below. Disconnect all connections from client applications and quit DeviceXPlorer. If it is running as a service program, go to the “Control Panel -> Services”, and stop “DeviceXPlorer OPC Server 5”. (1) In the Control Panel, select “Add/Remove Program”

(2) Remove “DeviceXPlorer OPC Server”.

(3) Even after DeviceXPlorer has been uninstalled, project data created by the user will remain. If you do not need this

data, delete it along with the installation folder.

- 20 -

3.4 License Authorization License authorization is necessary in order to operate the product as a genuine product. It involves attaching license information to the product you purchased. The license agreement for a TAKEBISHI software product confers the right to install and use the product on a specific PC. Depending on the product type, a software key (license code) or a hardware key may be required to operate the product.

3.4.1 Serial Number The serial number is a unique number that you receive when you purchase a product. When installing the product, you need to enter the serial number accurately. Important DeviceXPlorer periodically conducts a serial number check to see if there are multiple DeviceXPlorers running on PCs in the same LAN. Note that if DeviceXPlorers sharing the same serial number are found, operation will stop immediately.

3.4.2 Software Key (License Code) If your product requires a software key, you need to install the serial number and the software key onto the same PC in order to run the product. When you install the product, enter the correct serial number. And when you activate license, enter the correct license code you got from us. For getting license code, please refer “License Status and Application Operation”.

3.4.3 Hardware Key If your product requires a hardware key, you need to install the serial number and the hardware key onto the same PC in order to run the product. When you install the product, enter the correct serial number and connect the hardware key to the USB port of your PC in order to use the product.

3.4.4 License Status and Application Operation The correspondences between license status and application operation are as shown below.

License status Status display Application operation

Normal Mode OK Approval. OK(HASP) Approval by Hardware key. OK(SOFTWARE) Approval by Software key.

Demo Mode DEMO Operates in demo mode for 1 hour. Operation stops after 1 hour. NO KEY Operates in demo mode if the hardware key is not in place.

Temporary Mode TERM

The product operates in normal mode for 14 days after the product is installed. Obtain a license code in that period. When that period expires, operation stops.

- 21 -

- 22 -

3.4.5 License Registration and Transfer You can check the license status in the “License” screen of the “Help” menu.

The license status will appear in the status column. Status Description OK OK(HASP) OK(SOFTWARE)

The license is effective, so no further actions are required.

DEMO Operates in demo mode for 1 hour.

HASP You need to connect the hardware key.

TERM

You need to obtain a license code within 14 days. Obtain a license code by one of the following methods. 1. Website On the user registration page of the TAKEBISHI website, enter your serial number, computer ID, and other required information and submit it. You will receive a response with your license code. URL http://www.faweb.net/asp/registration.aspx 2. FAX Write your serial number, computer ID and other required information on the user registration form and fax it to TAKEBISHI. You will receive a response with your license code. Fax number 075-325-2273 If you can't get a license cord after the above application procedures, please contact us to the following email address. Email address: [email protected]

- 23 -

3.4.5.1 License Activation After you receive your license code, right-click the component name to display a pop-up menu, and click “License activation”.

You can activate license by this function after you installed the product. If your product requires a software key (license code), you have to activate license code by this function. If serial no is blank, enter the serial no at first and click “Activate”. If your product requires a software key, the computer ID is displayed, please tell us the serial no and computer ID. We will supply the license code, so enter the license code you received and click “Activate”.

Important License operation needs “Administrator” user of DeviceXPlorer.

- 24 -

3.4.5.2 License Transfer You can transfer the license from the PC which license is installed in to other PC. License Transfer will be enable you to check the system on debugging PC and to shift the official PC easily. (1) At first, you install DeviceXPlorer in the PC of the forwarding address and confirm computer ID.

(2) You confirm that “Status” is "OK" at the original PC. You select "License Transfer” from right-click menu of the

component.

(3) You input the computer ID of the forwarding address that you acquired at (1) into “Computer ID”.

- 25 -

- 26 -

(4) You push the "Transfer" button and License Cord corresponding to the computer ID of the forwarding address PC is

displayed

Important Please be careful when you perform this operation because the license of the original PC becomes invalid.

Note The License Code is stored in “LicensTransferred.txt” in current path.

(5) Finally you install the license code that you acquired at (4) in a forwarding address PC, and the transfer of the

license is completed.

3.4.5.3 License Change You can change activated license. Please input original serial number and target serial number.

- 27 -

3.4.5.4 License Clear You can clear activated license. Please input the serial number of the deletion..

3.4.5.5 Library Information Select “Library information” from the pop-up menu to check the library information used by each component.

3.4.6 Notes on the usage of Windows Remote Desktop service Under Windows Remote Desktop connection use, caution for the license activation is required in hardware key license (HASP key use) or software key license (Computer ID and license code are used) , because license activation will not be carried out. Under Remote Desktop connection, cognition of the HASP key and the conformity check of computer ID may be failed, and the license may not be activated. So please run DeviceXPlorer as Windows service program. About service activation, please refer to 5.13. Important Although DeviceXPlorer doesn’t have restriction of the function at the time of remote desktop connection use, when using the Remote Desktop service, please test enough before introduction.

- 28 -

3.5 The difference between Enterprise license and Standard license The difference between Enterprise license and Standard license is listed below. Enterprise License Standard License Communication All protocols supported by DeviceXPlorer Only licensed protocol

SYSTEM/Shared memory Script No Limitation Only one script

1-sec cycle fixation OPC UA Supported Not supported Other A .NET OPC client development tool and

OPC UA client development tool can be used.

It is equivalent except the above.

3.6 Demo edition If you would like to use as demo edition, please input a hyphen symbol “-” in Serial Number. There is not the functional limit in demo edition. But demo edition runs for only one hour.

3.7 Notes on the usage by the non-administrator rights If user of the non-administrator rights uses DeviceXPlorer, the user cannot run the following three operations. So, please be careful. - Install / Uninstall - Register as service program / Unregister from service program - License Activation, Change, Clear, Transport [ Limitation ]

OS UAC How to perform three operation mentioned above Windows 8 / 7 / Vista Windows Server 2012 / 2008

UAC ON Please run by administrator.

UAC OFF Please run by user account which has administrator rights.

Other OS N / A Please run by user account which has administrator rights.

3.8 Notes at 64-bit version When the 64-bit DeviceXPlorer is used, to enumerate some OPC Server's from a 64-bit version OPC client, it is necessary to enumerate using OpcEnum of the 64-bit version. If OpcEnum registered as a service is “C:¥Windows¥SysWOW64¥OpcEnum.exe”, it is necessary to carry out service registration of the “C:¥Windows¥System32¥OpcEnum.exe.” Please execute "Reg_OPCEnum32to64.Bat" in installation path as "Run as administrator”.

- 29 -

- 30 -

3.9 Setup OPC UA environment UA Local Discovery Server etc. which required to use OPC UA are installed. To install this, Windows Installer 3.1 and .NET Framework 3.5.

3.9.1 Install OpcUaEnv (1) OPC UA Environment installer starts by selecting “Setup OPC UA Environment”. By your PC environment,

installation may require some components to install OPC UA Environment. (2) Inserting the Product CD in the drive launches the installer. Choose setup language in dialog.

(3) Enter user information and press “Next.”

- 31 -

Select “Complete” and press “Next.”

(4) When the Windows component is updated, it is necessary to restart PC.

- 32 -

3.9.2 Uninstall OpcUaEnv You can uninstall OpcUaEnv by following the steps below. (1) In the Control Panel, select “Add/Remove Program”.

(2) Delete “OpcUaEnv”.

- 33 -

4 General Performance Specifications

4.1 Specifications Table Item Description

Service Activation Possible

Language Japanese, English, Simplified Chinese, Traditional Chinese, Korean

Max. ports/PLCs 255

Supported protocols OPC DA , DDE, FastDDE, NetDDE, SuiteLink, DxpLink OPC UA( Only Enterprise edition)

Accessible devices See the User’s Guide (PLC Connection Edition). Specification of different item (tag) names Possible OPC OPC Item ID Use delimiters to specify device, group and tag names.

OPC DA

Version 2.05A/3.0 PROG. ID Takebishi.Dxp.5 CLASS ID 8D8CD405-1EA6-45bf-9AAE-A69D53A50005 OPC Access Path Possible

OPC A&E Version 1.10 PROG. ID Takebishi.DxpAe.5 CLASS ID 8D8CD405-1EA6-45bf-9AAE-A69D53A50005

OPC UA URI opc.tcp://[machinename]:52210/DeviceXPlorer5/UA Protocol TCP / HTTP

DDE / SuiteLink Application Name Any (default: “DXP”) Topic name Any (default: “Device name”)

DxpLink Port no Any (default: 9980)

Data type

VT_BOOL Logical values VT_I1 8-bit signed integers VT_UI1 8-bit unsigned integers VT_I2 16-bit signed integers VT_UI2 16-bit unsigned integers VT_I4 32-bit signed integers VT_UI4 32-bit unsigned integers VT_R4 32-bit real number VT_I8 64-bit signed integers VT_UI8 64-bit unsigned integers VT_R8 64-bit real number VT_BSTR Character string VT_ARRAY Array

Extended format

Word device bit position specification 16-bit signed integers 16-bit unsigned integers 32-bit signed integers 32-bit unsigned integers 64-bit signed integers 64-bit unsigned integers Integer BCD conversion Single precision floating point Double precision floating point Character string Text format binary

- 34 -

Text format octal Text format decimal Text format hexadecimal Bit inverse Boolean conversion Batch File Write Array Read-only Write-only

4.2 OPC DA Interfaces

4.2.1 Prog.ID The Prog.ID for DeviceXPlorer is “Takebishi.Dxp.5” or “Takebishi.Dxp”.

4.2.2 Item ID Specify the OPC Item ID as the device name, group name(Structure Tag name), and tag name set in DeviceXPlorer, separated by periods (.). To access “Tag1” in the figure below, specify “Device1.Tag” as the item ID.

If there is a group attribution, specify the group name in between the device name and the tag name. To access “Tag001” in the figure below, specify “Device1.Group1.Tag001” as the item ID.

Note The item ID for DeviceXPlorer does not include the port name. The port view appears as shown below, but the item ID is “Device1.Tag2”.

- 35 -

- 36 -

4.2.3 Access Path If you specify an access path, you can omit the device name and group name from the item ID. For example, to access “Tag1” of “Device1”, you would normally need to specify “Device1.Tag1”, but if you specify “Device1” as the access path, the item ID becomes “Tag1”. By specifying an access path, you can specify simpler item IDs, which makes it possible for clients to manage separate tags for separate device names.

- 37 -

4.2.4 OPC Custom Interfaces The support statuses of OPC DA custom interfaces are as shown below. The tables should be interpreted as follows: Interface name OPC DA interface name DA2 The OPC DA2.05A interface is shown as “○”. DA3 The OPC DA3.0 interface is shown as “○”. Opt The optional interface is shown as “○”. Member function Name of the member function in that interface Support status OK: Supported, N/A: Not supported [OPC Server Object] These are the main objects that expose the OPC server.

Interface name DA2 DA3 Opt Member function Support status

IOPCCommon Shared interface ○ ○

SetLocaleID OK GetLocaleID OK QueryAvailableLocalIDs OK GetErrorString OK SetClientName OK

IOPCServer Main interface ○ ○

AddGroup OK GetErrorString OK GetGroupByName OK GetStatus OK RemoveGroup OK CreateGroupEnumerator OK

IConnectionPointContainer Interface for accessing the connection points for IOPCShutdown

○ ○ EnumConnectionPoints OK

FindConnectionPoints OK

IOPCItemProperties Interface for browsing the available item properties ○ ○

QueryAvailableProperties OK GetItemProperties OK LookutItemIDs OK

IOPCBrowseServerAddressSpace Interface for browsing the available item IDs ○ ○ ○

QueryOrganization OK ChangeBrowsePosition OK BrowseOPCItemIDs OK GetItemID OK BrowseAccessPaths N/A*1

IOPCServerPublicGroups Interface for managing public groups ○ ○ ○ GetPublicGroupByName N/A

RemovePublicGroup N/A

IPersistFile Interface for storing and reading files of OPC server configuration information

○ ○ ○

IsDirty N/A Load N/A Save N/A SaveCompleted N/A GetCurFile N/A

IOPCBrowse Interface for browsing the address space and obtaining item properties

○ GetProperties OK

Browse OK

IOPCItemIO Interface for directly obtaining an item value without creating a group

○ Read OK

WriteVQT OK

*1 E_NOTIMP will be returned.

- 38 -

[OPCGroup Object] These objects allow the OPC server to manage the item collection.

Interface name DA2 DA3 Opt Member function Support status

IOPCGroupStateMgt Interface that manages the status of the whole group

○ ○

GetState OK SetState OK SetName OK CloneGroup OK

IOPCPublicGroupStateMgt Interface for changing to a public group ○ ○ ○ GetState N/A

MoveToPublic N/A IOPCGroupStateMgt2 Interface for setting and running KeepAlive ○

SetKeepAlive OK GetKeepAlive OK

IOPCItemMgt Interface that controls the operation of items in the group

○ ○

AddItems OK ValidateItems OK RemoveItems OK SetActiveState OK SetClientHandles OK SetDatatypes OK CreateEnumerator OK

IOPCSyncIO Interface for synchronous reading / writing ○ ○

Read OK Write OK

IOPCSyncIO2 Interface for synchronous reading using MaxAge / writing to the quality flag or time stamp

○ ReadMaxAge OK

WriteVQT OK

IOPCAsyncIO Interface for asynchronous access ○ ○

Read OK Write OK Refresh OK Cancel OK

IOPCASyncIO2 Interface for asynchronous access ○ ○

Read OK Write OK Refresh OK Cancel2 OK SetEnable OK GetEnable OK

IOPCASyncIO3 Interface for asynchronous access (using MaxAge) ○

ReadMaxAge OK WriteVQT OK Refresh2 OK

IConnectionPointContainer Interface for accessing the connection points for IOPCShutdown

○ ○ EnumConnectionPoints OK

- 39 -

Interface name DA2 DA3 Opt Member function Support status

IDataObject Interface to run on an OPC group ○ ○

DAdvise OK DUnadvise OK FindConnectionPoint OK

IOPCItemDeadbandMgt Interface for specifying the dead band of an item ○

SetItemDeadband OK GetItemDeadband OK ClearItemDeadband OK

IOPCItemSamplingMgt Interface for specifying the sampling interval for each item

○ ○

SetItemSamplingRate OK GetItemSamplingRate OK ClearItemSamplingRate OK SetItemBufferEnable OK GetItemBufferEnable OK

[EnumOPCItem Attributes Object]

Interface name DA2 DA3 Opt Member function Support status

IEnumOPCItemAttributes Searches the group items and attributes ○ ○

Next OK Skip OK Reset OK Clone OK

- 40 -

4.2.5 OPC Automation Interface The automation interface is a wrapper interface for the purpose of using custom interfaces from interpreter languages such as VB and VBA. It offers the same interface functions as the custom interface. For details, see the OPC DA Automation Interface Specification (issued by the OPC Foundation).

4.2.6 Quality flag The quality flags returned by DeviceXPlorer to the client are as follows. For details of each quality flag, see the OPC DAta Access specification that comes with DeviceXPlorer.

Quality flag Value Description OPC_QUALITY_BAD 0x00 NG OPC_QUALITY_UNCERTAIN 0x40 Value undefined OPC_QUALITY_GOOD 0xC0 OK OPC_QUALITY_CONFIG_ERROR 0x04 Configuration error OPC_QUALITY_NOT_CONNECTED 0x08 Not connected OPC_QUALITY_DEVICE_FAILURE 0x0C Device failure OPC_QUALITY_SENSOR_FAILURE 0x10 Sensor failure

OPC_QUALITY_LAST_KNOWN 0x14 Due to a communication error, the last correctly read value is used

OPC_QUALITY_COMM_FAILURE 0x18 Communication error OPC_QUALITY_OUT_OF_SERVICE 0x1C Out of service (invalid item) OPC_QUALITY_WAITING_FOR_INITIAL_DATA 0x20 Waiting for initial data OPC_QUALITY_LAST_USABLE 0x44 Last usable value OPC_QUALITY_SENSOR_CAL 0x50 Sensor being calibrated

OPC_QUALITY_EGU_EXCEEDED 0x54 Engineering value conversion result exceeded range

OPC_QUALITY_SUB_NORMAL 0x58 Few data sources OPC_QUALITY_LOCAL_OVERRIDE 0xD8 Value forcibly overwritten

- 41 -

4.2.7 Error code When accessing an OPC interface, DeviceXPlorer may return a COM error or an OPC error. These errors are explained in the table below. Note If you are using Visual Basic, the occurrence of a COM error or an OPC error is an exception. By trapping the exception, you can check the error code.

[COM Errors]

COM error Value Description

E_FAIL 0x80004005 Processing failed (this error is returned when write processing failed due to a communication problem)

E_INVALIDARG 0x80070057 Invalid argument E_NOINTERFACE 0x80004002 The interface does not exist E_NOTIMPL 0x80004001 The interface was not implemented E_OUTOFMEMORY 0x8007000E Insufficient memory

CONNECT_E_ADVISELIMIT 0x80040201

The maximum number of connection points is already reached, and no more can be accepted (this error is returned when asynchronous writing is continuously implemented while a communication error is occurring)

OLE_E_NOCONNECTION 0x80040004 The communication point does not exist DV_E_FORMATETC 0x80040064 The format specified in FORMATETC is invalid

- 42 -

[OPC Errors] OPC error Value Description

OPC_E_INVALIDHANDLE 0xC0040001 Invalid handle OPC_E_BADTYPE 0xC0040004 Cannot convert to the specified data type OPC_E_PUBLIC 0xC0040005 Cannot implement for public group

OPC_E_BADRIGHTS 0xC0040006 Operation denied due to the item’s access rights (attempted to write to a ReadOnly file)

OPC_E_UNKNOWNITEMID 0xC0040007 The item ID does not exist (unregistered tag requested of OPC server)

OPC_E_INVALIDITEMID 0xC0040008 Invalid item ID (item ID not specified)

OPC_E_INVALIDFILTER 0xC0040009 Invalid filter string OPC_E_UNKNOWNPATH 0xC004000A Cannot recognize access path OPC_E_RANGE 0xC004000B Value out of range OPC_E_DUPLICATENAME 0xC004000C Duplicate name OPC_S_UNSUPPORTEDRATE 0x0004000D Server does not support the requested rate OPC_S_CLAMP 0x0004000E The written value was clamped

OPC_S_INUSE 0x0004000F Cannot continue operation because the object is in use

OPC_S_UD_COMM_ERROR 0x00048000 Function is succeeded. But quality has problem. OPC_E_UD_COMM_ERROR 0x80048000 Communication is failure. OPC_E_INVALIDCONFIGFILE 0xC0040010 Invalid file format set for server OPC_E_NOTFOUND 0xC0040011 Requested object not found OPC_E_INVALID_PID 0xC0040203 Invalid property ID OPC_E_DEADBANDNOTSET 0xC0040400 No dead band set for the item OPC_E_DEADBANDNOTSUPPORTED 0xC0040401 The item does not support a dead band OPC_E_NOBUFFERING 0xC0040402 A sampling buffer is not supported

OPC_E_INVALIDCONTINUATIONPOINT 0xC0040403 The continuation point for the Browse interface is invalid

OPC_S_DATAQUEUEOVERFLOW 0xC0040404 The server’s sampling buffer overflowed OPC_E_RATENOTSET 0xC0040405 No sampling rate was set

OPC_E_NOTSUPPORTED 0xC0040406 Writing quality flags and time stamps not supported

- 43 -

4.3 OPC A&E Interface DeviceXPlorer supports OPC A&E1.10.

4.3.1 ProgID The Prog. ID for DeviceXPlorer is “Takebishi.Dxp.Ae.5” or “Takebishi.Dxp.Ae”.

4.3.2 ItemID OPC ItemID is the same as that of the view of an OPC DA interface. Please refer to 4.2.2 for details.

In an OPC A&E client, it looks as follows.

Important In order to treat as an alarm tag, it is necessary to configure an alarm tag property appropriately. Please refer to 5.7.7 for an alarm configuration.

- 44 -

4.3.3 Custom Interfaces The support statuses of OPC AE custom interfaces are as shown below.

Object Interface name Opt Member function Support status

OPCEventServer Object

IOPCCommon

SetLocaleID OK GetLocaleID OK QueryAvailableLocalIDs OK GetErrorString OK SetClientName OK

IOPCEventServer

GetStatus OK CreateEventSubscription OK QueryAvailableFilters OK QueryEventCategories OK QueryConditionNames OK QuerySubConditionNames OK QuerySourceConditions OK QueryEventAttributes OK TranslateToItemIDs OK GetConditionState OK EnableConditionByArea OK EnableConditionBySource OK DisableConditionByArea OK DisableConditionBySource OK AckCondition OK CreateAreaBrowser OK

IOPCEventServer2 ○

EnableConditionByArea2 N/A*1 EnableConditionBySource2 N/A*1 DisableConditionByArea2 N/A*1 DisableConditionBySource2 N/A*1 GetEnableStateByArea N/A*1 GetEnableStateBySource N/A*1

IConnectionPointContainer EnumConnectionPoints OK FindConnectionPoint OK

OPCEventAreaBrowser Object IOPCEventAreaBrowser ○

ChangeBrowsePosition OK BrowseOPCAreas OK GetQualifiedAreaName OK GetQualifiedSourceName OK

OPCEventSubscription Object IOPCEventSubscriptionMgt

SetFilter OK GetFilter OK SelectReturnedAttributes OK GetReturnedAttributes OK Refresh OK CancelRefresh OK GetState OK SetState OK

IConnectionPointContainer EnumConnectionPoints OK FindConnectionPoint OK

*1 E_NOTIMP will be returned.

- 45 -

4.4 OPC UA Interface DeviceXPlorer supports OPC UA.

Service The support statuses of OPC UA Service are as shown below.

Service Set Service Function

(Our classification)

Support status

Discoverty Service Set FindServers Enum × GetEndpoints Core ○ RegisterServer Enum ×

Secure Channel Service Set OpenSecureChannel Core ○ CloseSecureChannel Core ○

Session Service Set

CreateSession Core ○ ActivateSession Core ○ CloseSession Core ○ Cancel Core ○

NodeManagement Service Set

AddNodes NodeManager × AddReferences NodeManager × DeleteNodes NodeManager × DeleteReferences NodeManager ×

View Service Set

Browse Browse ○ BrowseNext Browse ○ TranslateBrowsePathToNodeIds Browse ○ RegisterNodes View × UnregisterNodes View ×

Query Service Set QueryFirst Query × QueryNext Query ×

Attribute Service Set

Read DA ○ HistoryRead Historical × Write DA ○ HistoryUpdate Historical ×

Method Service Set Call Method ○

MonitoredItem Service Set

CreateMonitoredItems DA ○ ModifyMonitoredItems DA ○ SetMonitoringMode DA × SetTriggering DA ○ DeleteMonitoredItems DA ○

Subscription Service Set

CreateSubscription DA/A&C ○ ModifySubscription DA/A&C ○ SetPulishingMode DA/A&C ○ Publish DA/A&C ○ Republish DA/A&C ○ TransferSubscriptions DA/A&C × DeleteSubscriptions DA/A&C ○

- 46 -

4.5 DDE/SuiteLink Interfaces DeviceXPlorer supports DDE interface and Wonderware's SuiteLink interface. Important Tags of LONGLONG and ULONGLONG are not supported for DDE/SuiteLink interface.

4.5.1 Application Name The application name for DeviceXPlorer is “DXPSV”. The application name can be changed on the Common Properties screen (Tools -> Options)

Item Description DDE/SuiteLink Application Name

Specify DDE Server name. Default is “DXPSV”.

Nofity Cache first Send cache value of tag at first notification immediately when DDE clients connect the server. You can avoid DDE timeout on DDE client.

- 47 -

4.5.2 Topic Names and Item Names DeviceXPlorer allows you to set a topic name for each device. The default topic name is “Device name” and the default item name is “Tag name”. To access “Tag1” in the figure below, specify “Device1” as the topic name and “Tag1” as the item name.

You can specify a topic name and update interval for each device on the “Device Options Screen”.

Item Description DDE / SuiteLink Place a check in this box to enable the DDE / SuiteLink interface.

Application Name Shows the currently set DDE / SuiteLink application name. This property can be changed only in Common Properties (Tools -> Options).

Topic Name Allows you to set a topic name of your choice for each device. Update Rate Allows you to set the interval for communication with the PLC.

- 48 -

4.6 DxpLink Interface DeviceXPlorer corresponds to the DxpLink interface (HTTP communication) which is an original interface of our company.

4.6.1 DxpLink Server Settings DxpLink Server function can be changed on Common Propertis screen ( menu Tools -> Options).

Item Description Server Function Place a check in this box to enable the DxpLink Server function. Port No Specify the port No of DxpLink Serer.

4.6.2 DxpLink Communication Settings DxpLink communicates per Device. Enable / Disable of DxpLink function can be specified on "Device Options”.

- 49 -

Item Description

Server Function Place a check in this box to enable the DxpLink Interface.

Communication Term Specify the communication term(min) which is communication time after DxpLink client requests.

Update Rate Allows you to set the interval for communication with the PLC.

4.6.3 DxpLink Communication DeviceXPlorer ehas DxpLink Server function and DxpLink Client function. DxpLink is HTTP communications protocol of our original. The environment where DCOM connection is difficult, when the communication interface by the side of PLC is restricted, PLC data can be seamlessly accessed by using a DxpLink function.

- 50 -

- 51 -

4.6.4 DxpLink Protocol Specification The DxpLink communication is realized by exchanging XML documents by POST command of HTTP from the client .

Contents Contents HTTP Version 1.1 Maximum Clients 64 Request Method POST Message Body XML Document (XML1.0)

The XML document for request from DxpLink client and response from DeviceXPlorer is based on the following commands.

4.6.4.1 Enumerate Device (GetDevice) Request

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="GetDevice"/>

Name Kind Type Contents Transportation Command Attribute String Fixed “GetDevice”

Response

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="GetDevice" ErrorCode="0"> <Delimiter Extend=":" Namespace="."/> <Device Name="Device1" Type="MelsecEthernet"/> <Device Name="Device2" Type="LinkClient"/> <Device Name="Device3" Type="MicrexEthernet"/> <Device Name="SYSTEM" Type="SystemDevice"/> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “GetDevice” ErrorCode Attribute 32bit Unsinged

Int

Delimiter Element Delimiter Reffer to type of “Delimiter” Device Element Device Reffer to type of “Device”

Enumerated the number of tags in the target path.

Name Kind Type Contents Delimiter Extend Attribute Character Extend Item Name Delimiter Namespace Attribute Character Namespace Delimiter

Name Kind Type Contents Device Name Attribute String Device Name Type Attribute String The kind of Device (Component name)

- 52 -

4.6.4.2 Enumerate Tag (GetTags) Request

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="GetTags"> <TargetPath Name="Device1"/> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “GetTags” TargetPath Element TargetPath Reffer to type of “TargetPath”

Name Kind Type Contents TargetPath Name Attribute String The target path of device of group to enumerate

tag. eg “Device1Group1”

Response

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="GetTags" ErrorCode="0"> <Delimiter Extend="." Namespace="."/> <TargetPath Name="Device1"> <Tag Name="Tag1" Size="1" Type="SHORT"/> <Tag Name="Tag2" Size="1" Type="STRING"/> <Tag Name="Tag3" Size="6" Type="SHORT | ARRAY"/> </TargetPath> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “GetTags” ErrorCode Attribute 32bit Unsinged

Int

Delimiter Element Delimiter Reffer to type of “Delimiter” TargetPath Element TargetPath Enumerated the number of tags in the target

path.

Name Kind Type Contents Delimiter Extend Attribute Character Extend Item Name Delimiter Namespace Attribute Character Namespace Delimiter

Name Kind Type Contents TargetPath Name Attribute String Device Name Tag Element Tag Reffer to type of “Tag”

Enumerated tags in the target path.

Name Kind Type Contents Tag Name Attribute String Tag Name Size Attribute 32bit Unsinged

Int The number of element of array. “1” is returned when the tag is not array.

Type Attribute String The datatype string of tag. Reffer to “The datatype string of tag.”

- 53 -

- 54 -

4.6.4.3 Read Value of Tag (GetTagsValue) Request

Example <?xml version="1.0" encoding="utf-8"?> <Transportation Command="GetTagValues"> <TargetPath Name="Device1"> <Tag Name="Short" /> <Tag Name="String" /> <Tag Name="ShortArray" /> </TargetPath> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “GetTagValues” TargetPath Element TargetPath Reffer to type of “TargetPath”

Name Kind Type Contents TargetPath Name Attribute String The target path of device of group to enumerate

tag. eg “Device1Group1”

Tag Element Tag Reffer to type of “Tag” Specify tags you want to read.

Response

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="GetTagValues" ErrorCode="0"> <TargetPath Name="Device1"> <Tag Name="Short" Size="1" Type="SHORT"> <Value>0</Value> <TimeStamp>2012/09/27 06:10:24 GMT</TimeStamp> <Quality>192</Quality> </Tag> <Tag Name="String" Size="1" Type="STRING"> <Value>testvalue</Value> <TimeStamp>2012/09/27 06:10:24 GMT</TimeStamp> <Quality>192</Quality> </Tag> <Tag Name="ShortArray" Size="10" Type="SHORT | ARRAY"> <Value>0,0,0,0,0,0,0,0,0,0</Value> <TimeStamp>2012/09/27 06:10:24 GMT</TimeStamp> <Quality>192</Quality> </Tag> </TargetPath> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “GetTagValues” ErrorCode Attribute 32bit Unsinged

Int

TargetPath Element TargetPath Reffer to type of “TargetPath”

Name Kind Type Contents TargetPath Name Attribute String Device Name Tag Element Tag Reffer to type of “Tag”

The tags you specified.

- 55 -

Name Kind Type Contents Tag Name Attribute String Tag name Size Attribute 32bit Unsinged

Int The number of element of array. “1” is returned when the tag is not array.

Type Attribute String The datatype string of tag. Reffer to “The datatype string of tag.”

Value Element String The value which is based on the datatype of tag. TimeStamp Element String Quality Element 16bit Unsinged

Int

4.6.4.4 Write Value of Tag (SetTagsValue) Request

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="SetTagValues"> <TargetPath Name="Device1"> <Tag Name="Tag"> <Value>123</Value> </Tag> </TargetPath> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “SetTagValues” TargetPath Element TargetPath Reffer to type of “TargetPath”

Name Kind Type Contents TargetPath Name Attribute String The target path of device of group to enumerate

tag. eg “Device1Group1”

Tag Element Tag Reffer to type of “Tag” Specify tags you want to write value.

Name Kind Type Contents Tag Name Attribute String Tag Name Value Element String Specify the value which is based on datatype of

tag. Response

Example <?xml version="1.0" encoding="UTF-8"?> <Transportation Command="SetTagValues" ErrorCode="0"> <TargetPath Name="Device1"/> </Transportation>

Name Kind Type Contents Transportation Command Attribute String Fixed “SetTagValues” ErrorCode Attribute 32bit Unsinged

Int

TargetPath Element TargetPath Reffer to type of “TargetPath”

Name Kind Type Contents TargetPath

- 56 -

Name Attribute String Device Name

- 57 -

4.6.4.5 Constants The Datatype String of Tag

Datatype of tag Array The Datatype String of tag for DxpLink BOOL “BOOL” BYTE “BYTE” UBYTE “UBYTE” SHORT “SHORT” USHORT “USHORT” LONG “LONG” ULONG “ULONG” LONGLONG “LONGLONG” ULONGLONG “ULONGLONG” FLOAT “FLOAT” DOUBLE “DOUBLE” STRING “STRING” BOOL O “BOOL | ARRAY” BYTE O “BYTE | ARRAY” UBYTE O “UBYTE | ARRAY” SHORT O “SHORT | ARRAY” USHORT O “USHORT | ARRAY” LONG O “LONG | ARRAY” ULONG O “ULONG | ARRAY” LONGLONG O “LONGLONG | ARRAY” ULONGLONG O “ULONGLONG | ARRAY” FLOAT O “FLOAT | ARRAY” DOUBLE O “DOUBLE | ARRAY” STRING O “STRING | ARRAY”

- 58 -

5 Operation

5.1 Tutorial If you are using DeviceXPlorer for the first time, follow the steps below to make the necessary settings and easily check operation.

5.1.1 Installing and Setting Up an Ethernet Adapter Install an Ethernet adapter to the local PC and open Control Panel -> Local Area Connection -> Properties.

Open the “Internet Protocol (TCP / IP)” properties screen, set the IP address and host name, etc., and click “OK”.

- 59 -

5.1.2 Installing DeviceXPlorer Insert the installation disk into the CD drive of the PC and install DeviceXPlorer. Note Install DeviceXPlorer using an account with Administrator privileges.

5.1.3 Starting DeviceXPlorer From the Programs menu, start “DeviceXPlorer OPC Server 5”->”DeviceXPlorer OPC Server 5”.

5.1.4 Start Page Starting of device Explorer will display a start page as follows. Please push "New Project" and create a new project.

Item Description New Project… Creates a new project. Open project file… Opens a project. My Recent Project Shown recently used project file. Close the page when Reading project file.

Select whether close Start Page when DeviceXPlorer load project file.

Display a page in a startup

Select whether Start Page is displayed when DeviceXPlorer start.

- 60 -

Project Wizard Since a project wizard will be displayed if a new project is created, select the target for communication, and input a Device name and Port name, and click the "OK."

Item Description Effective license The components in which the license is effective are enumerated. Installed Component The components which are installed are enumerated. Project name Specify project name. Location Specify project file path.. Device name Input Device name for creating Device. Port name Input Port name for creating Port.

(1) Specify the port information..You can confirm the existence of the IP address you entered by clicking the “PING” button. For details, refer to 5.3.

- 61 -

(2) S pecify the Device information.. You can check the communication with the PLC by clicking the “Connection test” button . For details, refer to5.4.

(3) Specify the Tag information.. For details, refer to 5.6.

- 62 -

(4) Above, Port settings and Device settings indispensable for communication with partner apparatus, and Tag

settings were completed. The rest should perform addition of a tag and various option setup according to a system.

- 63 -

5.1.5 Accessing DeviceXPlorer from a Client From the Tools menu, select “Start OPC Test Client”.

In the OPC Test Client menu, select “Connect” and connect to “Takebishi.Dxp.5”.

Next, select “Server” and “AddGroup” in “OPC” menu, and add group.

- 64 -

Next, select “Group” and “AddItem” in “OPC” menu, and add tags.

Check that the client successfully obtained data. (If “0xC0” appears under Quality, communication is functioning normally.)

- 65 -

5.2 Screen Layout

[Project Explorer] Project Explorer allows you to visually monitor the setting status of ports, devices, and groups, and allows you to create or edit them. Using the toolbar, you can also sort by device, port, or protocol (PLC).

Icon Name Description

Device View A tree with a device as a root in a hierarchical structure.

Port View A tree with port information as a root in a hierarchical structure.

Protocol View A tree with PLC information as a root in a hierarchical structure.

Device Folder View A tree with Device Folder as a root in a hierarchical structure.

Right-click Project Explorer to view the pop-up menu of related functions.

Project Explore

Tag List etc

Message Register Monitor

Watch Monitor

Property Grid

Diagnostic View

Structure Template

- 66 -

[Diagnostic View] Diagnostic View allows you to check information such as the access status of each interface and the current value of each tag.

[Structure Template] Structure Template allows you to check information of structure defiend.

[Tag List etcc] The property information of Tag List, Structure Template Tag List, Script List etc are shown.

- 67 -

[Property Grid] This grid shows information of selecting Object. And you can configure object.

[Message View/Watch View] This shows messages such as communication error information and diagnostic information.

[Watch Monitor] Arbitrary tags can be registered and you can monitor the current value.

[Register Monitor] Even if there is no ladder tool, the register value on PLC can be monitored.

- 68 -

5.2.1 Menus The menus available in DeviceXPlorer are shown in the table below. [File Menu] Item Description New Creates a new project. Open Opens a project. Close Closes a project. Save Overwrites and saves the project file. Save as Saves the project under a new name.

Import Definition Imports project information. TagMemory Improrts Tag memory and DeviceXPlorer shifts to Offline Mode.

Export Definition Exports project information in the XML or CSV format. TagMemory Exports Tag memory(tag name, value, quality, timestamp).

The recently project list Shown recently used project file. Exit Exists DeviceXPlorer.

[Edit Menu] Item Description Cut Cuts the selected tag(s). Copy Copies the selected tag(s). Paste Pastes tag information. Delete Deletes the selected device, group or tag. Select all Selects all the tags included in the selected devices. Find Searches for a specified tag name. Array Viewer Show array viewer. Write Value to Tag Write current value to tag. Properties Shows the Properties screen for the selected item.

- 69 -

[View Menu] Item Description

Monitor Device monitor

Reads the tag value and displays it to allow you to check the communication status and value. Communication is performed only for the device shown in the window.

Cache monitor Shows the value of the tag being accessed by the client. Values are not shown for tags not being accessed.

Offline Shifts to Offline Mode.

Communication information

Shows the communication status and number of errors for each device.

Message filters

INFO Shows general information messages. WARNING Shows warning messages. ERROR Shows error messages. FATAL ERROR Shows fatal error messages. Script log Shows Script messages. Communication Data Traces the status of communication with the PLC. OPC Interface Access Traces the access status of the OPC interface. DDE/SuiteLink Trace Traces the access status of the DDE/SuiteLink interface. DxpLink Trace Traces the access status of the DxpLink interface. All on Enables all of the above 6 messages. All off Disables all of the above 6 messages.

Window

Project Explorer Shows Project Explorer. Message View Shows Message View. Diagnostics View Shows Diagnostics View. Watch Shows Watch Monitor.( Max 8 view) Monitor Shows Register Monitor.( Max 8 view) Start Page Shows Start Page

Pause Message Display Temporarily pauses the output of trace information. Toolbar Switches the toolbar display on and off. Status bar Switches the status bar display on and off.

Value Format

Binary Specifies tag value format for tag monitor and tag diagnostics.

Octal Decimal Hexadecimal

Update Views Updates the displayed content.

- 70 -

[Project Menu] Item Description

Project wizard Starts the project wizard to generate ports, devices, and tags all at once.

Insert

Port Creates new communication port information. Device Creates new device information. Group Creates new group information. Tag Creates new tag information. Structure Tag Creates new Structure Tag information. Method Crates new Method. Device folder Create new Device folder. Device Generator Starts Device Generator. Port Generator Starts Port Generator. Tag Generator Starts Tag Generator.

Properties

Port (P) Sets communication port information. Device (D) Sets the device information. Group (G) Sets group information. Tag (T) Sets tag information.

Set as startup project Sets the current project file as a startup project.

Project1 properties Opens the Properties screen (configuration information) for the project.

[Tools Menu] Item Description

User Management Configuration Sets the User information. Login Logins Logout Logouts

Start OPC test client Starts the OPC test client. Start DDE test client Starts the DDE test client.

Options Opens the Properties screen (shared information) for the project.

[Help Menu] Item Description

Manuals

User’s Guide (Server Edition) Shows Server Edition. User’s Guide (PLC Connection Edition) Shows PLC Connection Edition.

OPC-DA 3.0 Specification (Custom Interface)

Shows the OPC DA interface specifications. OPC-DA 2.05A Specification (Custom Interface) OPC-DA 2.0 Specification (Automation Interface) OPC-AE 1.10 Specification (Custom Interface) Shows the OPC AE interface specifications.

Online Registration Performs user registration for the product. Send mail to support Starts the mailer. Connect to Product’s Web Site Opens the product information site. License Shows and sets license information. About DeviceXPlorer Shows the versions information for DeviceXPlorer.

- 71 -

- 72 -

5.2.2 Toolbar Toolbar and shortcut key are assigned to following as. FUNCTION ICON SHORTCUT New Ctrl + N

Open Ctrl + O

Save As Ctrl + S

Cut Ctrl + X

Copy Ctrl + C

Past Ctrl + V

Delete DEL

Device Monitor F3

Cache Monitor F4

Create Port Ctrl + P

Create Device Ctrl + D

Create Group Ctrl + G

Create Tag Ctrl + T

Create Structure Tag Ctrl + M

Create Method Ctrl + I

Create Device Folder Ctrl + W

Project Wizard Ctrl + W

Device Generator Ctrl + Shift + D

Port Generator Ctrl + Shift + P

Tag Generator Ctrl + Shift + T

OPC Test Client

DDE Test Client

Option

Project Property Alt + F7

5.2.3 Another Shortcut Key FUNCTION SHORTCUT Write value ( While selecting tag ) Shift + Enter

Array Viewer ( While selecting tag ) Ctrl + Enter

Change the Name ( While selecting Device or Port, etc )F2

- 73 -

5.2.4 Property Grid The property information is expressed to a property grid as the click of the project name on Project Explorer, a Device name, or a Port name, the click of the tag name in a Tag ist view, etc. A check and change of a settings can be performed intuitively, without opening a dialog.

Property Grid icons are assigned to following as. INCON Description INCON Description

Shows properties. Shows Device settings dialog.

Shows properties alphabetical. Shows Group settings dialog.

Apply button ( Properties loaded are update.) Shows Port settings dialog.

5.2.5 Clip of List View A tab clip can be carried out if tabs, such as a Tag list, Structure list, an event script list, are right-clicked. With clipping, it can leave a tab to always display.

- 74 -

5.3 Ports Select Project View -> Ports to view port information. Port information shows a dialog that varies depending on the type of communication port, such as Ethernet or serial.

Important - You can create up to 255 ports. - A Port name is a name on management and is not related to the name space accessed from a client.

The following are displayed in Port Settings of Ethernet. Setting properties differ for every communication port. Please refer to 5.3.3 if you use Ethernet port or refer to 5.3.4 if you user Serial port. For other ports, refer to the “User’s Guide (PLC Connection Edition)”.

- 75 -

5.3.1 Creating New Ports From the Projects menu, select Insert-> Port.

Select the port type and input the Port name.

The port dialog will appear. Enter the communication parameters and click “Finish”.

- 76 -

5.3.2 Changing the Port Name You can change the port name by either clicking on the port name again once it is selected, or by using the F2 key to enable in-place activation. * You cannot change to a port name that already exists.

Port Settings To display Port Setting dialog, - You select a Port name in Project Explore and select Properties->Port. - You click Port Jump button on Tag List View. - You Right-Click and select “Property”. [ Project menu]

[ Port Jump button]

- 77 -

[ Right Click]

The port dialog will appear. Enter the communication parameters and click “OK”. Please refer to 5.3.3 if you use Ethernet port or refer to 5.3.4 if you user Serial port. For other ports, refer to the “User’s Guide (PLC Connection Edition)”.

- 78 -

5.3.3 Setting Ethernet Ports

Item Description

PING Test Sends and receives a Ping command to / from the IP address of the PLC. In the environment where the transmission of a message of the PING command is limited by firewalls of Windows Vista, you cannot use this function.

Machine Shows the computer name. Select Adapter Check if you fix adapter. Adapter Shows a list of the adapters installed on the computer. Explanation Shows Ethernet adapter name. Status Shows “Connect” when a LAN cable is connected. DHCP Shows “Enable” when DHCP is in use. IPv4 Address Shows the IPv4 address of the selected adapter. IPv6 Address Shows the IPv6 address of the selected adapter. Network Select IPv4 or IPv6. Protocol Select TCP/IP or UDP/IP.

Adapter IP address Shows the IP address of the selected adapter. When you does not fix adapter, you can specify the IP address of the adapter or machine name that will communicate with the PLC. When you specify ‘localhost’ or ‘0.0.0.0’, DeviceXPlorer chose available adapter automatically.

Adapter Port No. Specify the port number of the selected adapter. If you specify port number “0”, the OS will automatically assign an available port. The port number can be specified 0 or any numbers between 1024 and 65535.

Target IP address Specify the machine IP address or machine name of the Target. Target Port No. Specify the port number of the Target. Set a number between 0 and 65535.

Send Delay Specify the waiting time before sending the next command after a response is received from the other equipment on the millisecond time scale. Set a number between 0 and 65535.

Timeout Specify the waiting time between sending a request message and receiving a response message. If a response cannot be returned within the specified time, it results in a timeout error. Set a number between 0 and 60.

Retry Count Specify the number of times to retry when a timeout error occurs. Set a number between 0 and 10.

Note

- 79 -

When you specify port number to something other than 0 in using TCP / IP, if the connection of the port has lost, the port becomes TIME_WAIT status. Until the port becomes CLOSED status from TIME_WAIT, the port is not available. This is the specification of TCP/IP. In this time, the DeviceXPlorer cannot communicate with the controller through this port, and DeviceXPlorer outputs the log ‘Open Error(Code=10048)’. If you use TCP / IP, it is recommended to specify 0 to the adapter port number and use unpassive open mode at the PLC side.

[PING] PING is a function that checks the existence of the recipient IP address by sending an ICMP request packet to the set recipient IP address and receiving a response packet. When PING is implemented, the following information is displayed. < Successful: “Reply from …” > < Failed: “Reply Timeout …” >

Important For using PING on Windows Vista or later OS, you should set "Inbound connection" of "Public Profile" in Administration Tools-"Secured Windows Firewall" to "Allow. And if UAC is valid, please start DeviceXPlorer as “run by Administrator”. If UAC is valid and you don’t start as “run by Administrator”, you will see error “socket error [10013]”

- 80 -

5.3.3.1 Timeout Settings for TCP / IP When using the TCP protocol, it is necessary to set an appropriate timeout value and number of retries in DeviceXPlorer. The following is an explanation of the relationship between the TCP communication operation and the timeout setting, assuming that the PC is running on Windows OS. [Sending Commands from PC] After a PC has sent a command, if there is no acknowledgement returned from the PLC, the command is resent at the TCP level at the intervals shown below.

In Windows OS, the default RTO (Retransmission Time-Out) for Ethernet is 0.5 seconds. When the maximum number of retransmissions has been reached (default: 5 times / 31.5 seconds), error 10054 (the connection was reset from the remote side) is returned to the application layer. DeviceXPlorer then cuts the connection and reopens it. The RTO is changed dynamically, and the timeout value increases by doubling and redoubling.

- 81 -

[Sending Response to PC from the PLC (MELSEC-Q)] In the MELSEC-Q series, if there is no acknowledgement from the PC after the PLC has sent a response, retransmission occurs at the TCP level in accordance with the TCP retransmission timer (default: 10 seconds). When the TCP ULP timer value is exceeded, a RESET flag is sent.

While the line is disconnected, the RESET flag cannot reach DeviceXPlorer. Once the connection is restored and a command is sent from DeviceXPlorer, the RESET flag is returned as a response. At the same time, 10054 is returned to the application layer (indicating that the connection was reset from the remote side), so DeviceXPlorer cuts the connection and reopens it. Important If the TCP protocol is selecte, we recommend that the timeout be set to “31.5 seconds or more” and the number of retries be set to “0”.

- 82 -

5.3.4 Serial Port Settings

Item Description Com Port Set COM port number between 1 and 256. Baud rate Select baud rate for communication. Parity Set the parity bit, on or off. Flow control Select “Hardware (RTS / CTS)” to perform RTS / CTS flow control. Data length Specify the data length. Stop bit Set the stop bit.

Send delay Specify the waiting time before sending the next command after a response is received from the other equipment on the millisecond time scale. Set a number between 0 and 65535.

Timeout Specify a number between 0 and 60 (on the second time scale) as the time to wait between sending a request message and receiving a response message.

Retry Times Specify the number of times to retry when a timeout error occurs. Set a number between 0 and 10.

Note In binary communication, communication is 8 bits / character, so the data length must be set to “8”.

- 83 -

5.3.5 Port Generator The package generation of the port setup can be carried out. It can start from a project menu to the Insert ->Port Generator.

Select the port type and input the Port name.

The port dialog will appear. Enter the communication parameters and click “Next”.

- 84 -

Enter the generation number of Port and Increment value and click “Finish”.

Item Description Port Name Shows the 1st Port name. The generation Number of Port Specify the number of creation between 1 and 255.

Properties The property which can be configured changes with communication ports. An increase can be specified depending on the Port property.

- 85 -

5.3.6 Dynamic Port To create port dynamic or to change port properties, SYSTEM device has “$PortParameter”.

Name Type Contents Data Type Attribution

$PortParameter

Global System Tag

The parameter system tag for port generation. STRING R/W

For example, to create Ethernet Port, you write this tag follows.

This string format is different from Port type. You can get this Parameter string from Property Grid.

LibType=Ethernet;Info=Device1Port,2,localhost,0,192.168.19.122,5000,3,3,0,0,0,3,0,1,

- 86 -

5.4 Devices Device has a properties to communicate with target. Select Project View -> Devices to view device information.

Important - A Device name is concerned with the name space accessed from a client.As shown in the above, To accesse Tag001 in Device1, it becomes the name space "Device1.Tag001." - There is no restriction on the maximum number of devices.

Since Device properties differ for every device type, For detail, refer to the “User’s Guide (PLC Connection Edition)”. The following are displayed in Device of MelsecEthernet.

- 87 -

- 88 -

5.4.1 Creating a New Device Setup steps differ by the case whether select a port or not.

5.4.1.1 Not select a Port In Project Explorer, nothing is chosen but the "Insert->Device" from a project menu.

Select the Device and Port type and input Device name and Port name.

Item Description Device Name Specify Device name for creation. Port Name Specify Port name for creation.

- 89 -

According to a wizard, Port Settings, Device Settings, and Device option are Settings.

Create Port and Device by completing settings.

5.4.1.2 Select a Port In Project Explorer, by selecting a port and "Insert->Device" from a project menu.

- 90 -

Select the Device type and input Device name.

Item Description Device Name Specify Device name for creation. Port Name Read-Only.

According to a wizard, Device Settings, and Device option are Settings.

Create Device by completing settings.

- 91 -

5.4.2 Connection Test The "connection test" is prepared for Device Settings, and it can be checked whether it can communicate.

If you push "connection test" button, the following screens will be displayed and a connection test will be performed.

Item Description

Result

Success: Connection Test Success

Error: Connection Test Error

Retry Retry Connection Test. Close Close this window.

Important - Connection Test may be failed in the situations where communication has already been performed, such as under OPC client connection and Device Monitor. ( in exceeding the number connectable simultaneous such as the case which the session of TCP/IP is already established.) - In MODBUS connection, the 1st holding register is used for connection test, and when Modbus controller returns reply message, the Connection test succeeds.( no check for reply message contents)

- 92 -

5.4.3 Changing the Device Name You can change the device name by either clicking on the device name again once it is selected, or by using the F2 key to enable in-place activation. * You cannot change to a device name that already exists.

Device Settings To display Port Setting dialog, - You select a Device name in Project Explore and select Properties->Device. - You click Device Jump button on Tag List View. - You Right-Click and select “Property”. [ Project menu]

[ Port Jump button] [Right-Click]

- 93 -

The following screens are displayed in MELSEC Ethernet. For detail, refer to the “User’s Guide (PLC Connection Edition)”.

5.4.4 Device Options This tab allows you to set proprietary device information that does not depend on the PLC, such as the simulation mode and redundant communication.

- 94 -

Item Description Communication Settings Basic communication setting Update Rate It is a communication cycle used for DDE/SuiteLink, DxpLink , script.

Fix Update Rate Enable to fix 'Update Rate' of Device option. When you don't fix it, DeviceXPlorer communicates by setting in the period when it is most suitable for every tag in the practice period of designation and the script in the update period from OPC client.

Max age The allowed time of the latest value is specified. If 10000msec, it treats as the latest value for 10 seconds. It does not support in DDE/SuiteLink and DxpLink.

Skip communication after Retry

When a timeout error occurs, DXP Server cancel the transmission and reception of the following communication packet.

Slow polling mode Enable slow poling mode. When communication error occurs, DeviceXPlorer slows reading period.

Slow Interval Specify the interval in Slow polling mode. Return error immediately In Slow polling mode, DeviceXPlorer returns error immediately without

communicating. Redundant Commnucation Enable the Redundancy to switch communication path. Standby device This is redundancy communication by using standby device/port.

Standby type Cold / Warm

Cold: When communication trouble occurs, DeviceXPlorer communicates with standby device for the first time. Warm: To switch quickly, usually communicate with standby device.

Switching Type Auto / Manual

Auto: Switching automatically when communication trouble occurs. Manual: Switching by System Tag “$StandBy”.

Return to primary automatically

In the case of warm standby and Automatic, this can change to a basic system automatically at the time of the communication return of the basic system.

Retry by Both System Try to connect a standby system in case that failed to connect. Switching Condition Usually , when timeout occurs and when all retries go wrong, it changes.

The change conditions using a tag can be specified by putting in a check.

Port close when switching Close the port when switching.

Simulation Signal Enable simulation. Sin The simulation value varies with the sine curve.

Ramp The simulation value varies incrementally. Random The simulation value varies randomly. Shared Memroy The simulation value is maintained statically.

DxpLink Enable to DxpLink Communication Term Specify the communication term(min) which is communication time after

DxpLink client requests. DDE/SuiteLink Enable the DDE / SuiteLink interface. Application Name Shows the currently set DDE / SuiteLink application name.

Topic Name Allows you to set a topic name of your choice for each device. Other Other settings Save Unknown Item Automatically registers tag, which is registered from the client, to the Tag

- 95 -

View. Reject Unknown Item Rejects dynamic tags. Display System Tag Shows system tags. System Tag uses $ char Uses the “$” sign at the beginning of system tags.

5.4.5 Changing Ports To change a port assigned to a device, select a device node in the Project Explorer, show the pop-up menu, and click “Port Change… ”.

The available ports will appear. Select the port you wish to change to.

If there is no check in the “Same type of port” checkbox, all the ports will be shown and it will be possible to change to a port of a different type.

- 96 -

Important If you change to a port of a different type, the information set for the device and the tag will be lost.

- 97 -

5.4.6 Device Generator The package generation of the port setup can be carried out. It can start from a project menu to the Insert ->Device Generator.

Select the device and port type and input the Device name and Port name.

Generation wizard steps differ by the case whether select a port or not.

Not selected Port Select Port 1 Port Properties (none) 2 Device Properties Device Properties 3 Device Option Device Option 4 Device Generate Settings Device Generate Settings 5 Port Generate Settings (none)

- 98 -

Enter the generation number of Device and Increment value and click “Finish”.

Item Description Device Name Shows the 1st Device name. The generation Number of Device Specify the number of creation between 1 and 255.

Properties The property which can be configured changes with device type. An increase can be specified depending on the Port property.

- 99 -

5.4.7 Dynamic Device To create device dynamic or to change device properties, SYSTEM device has “$DeviceParameter”.

Name Type Contents Data Type Attribution

$DeviceParameter

Global System Tag

The parameter system tag for device generation. STRING R/W

For example, to create device1, you write this tag follows.

This string format is different from Device type. You can get this Parameter string from Property Grid.

LibType=MelsecEthernet;Port=Device1Port;Info=Device1,4,0,15360,960,188,160,0,0,255,0,1023,10, #OPTION#,0,0,0,,1,Device1,1000,0,0,1,1,0,0,0,0,0,10000,0,1,1,1,1,0,D1,0,0,24,0,1,1,1,1

- 100 -

5.5 Groups A Group is a unit which manages tags. Select Project View -> Groups to view group information.

Important - A Group name is concerned with the name space accessed from a client.As shown in the above, To accesse Tag001 in Group1 of Device1, it becomes the name space "Device1.Group1.Tag001." -There is no restriction on the number of groups.

Usually, Group has only name. But some devices have properties. Since Group properties differ for every device type, For detail, refer to the “User’s Guide (PLC Connection Edition)”. [ Only Group name ] Shared memory etc

[ Some properties ] MelsecEthernet etc

- 101 -

- 102 -

Group can be freely created by a layered structure to a Device subordinate.

5.5.1 Creating a New Group From the Projects menu, select Insert-> Group.

The Group dialog will appear. Enter the Group name and other properties and click “Finish”.

- 103 -

5.5.2 Changing the Group Name You can change the group name by either clicking on the group name again once it is selected, or by using the F2 key to enable in-place activation.

Note It is necessary to set a name that is not duplicated within the same layer.

- 104 -

Group Settings To display Group Setting dialog, - You select a Group name in Project Explore and select Properties->Group. - You click Group Jump button on Tag List View. - You Right-Click and select “Property”. [ Project menu]

[ Group Jump button]

- 105 -

[ Right Click]

The group dialog will appear. Enter the communication parameters and click “OK”. For detail, refer to the “User’s Guide (PLC Connection Edition)”.

- 106 -

5.5.3 Deleting Group To delete Group - You select a Group name in Project Explore and select Edit->Delete. - You Right-Click and select “Delete”.

If you select delete, DeviceXPlorer delete the group and tags which exist under the group.

Important - It cannot delete, when the tag in a group is communicating.

- 107 -

5.6 Device Folder A Device Folder is a unit which manages devices.

Important - Device Folder does not be concerned with the name space.

Device Folder has only name.

- 108 -

Device Folder can be freely created by a layered structure to a Device subordinate.

Important -There is no restriction on the number of Device Folders.

5.6.1 Creating a New Device Folder From the Projects menu, select Insert-> Device Folder.

The Device Folder dialog will appear. Enter the Device Folder name and click “Finish”.

- 109 -

5.6.2 Changing the Group Name You can change the group name by either clicking on the group name again once it is selected, or by using the F2 key to enable in-place activation.

Note It is necessary to set a name that is not duplicated within the same layer.

- 110 -

5.6.3 Deleting Device Folder To delete Device Folder - You select a Device Folder in Project Explore and select Edit->Delete. - You Right-Click and select “Delete”.

If you select delete, DeviceXPlorer delete the group and tags which exist under the Device Folder.

Important - Even if it deletes a Device Folder, the Device of contents, Groups and Tags are not deleted.

- 111 -

5.7 Tags Tags define names and attributes of each register of the PLC and are used by the client to access data.

5.7.1 Dynamic Tags and Static Tags A tag that is defined in advance on DeviceXPlorer is called a “static tag”. Using a static tag allows you to attach a different tag name to the tag, as shown below, and to change the scale conversion settings. You can check the properties of static tags in the Tags tab of the Property View.

It is also possible to access data easily without tag definition. Tags that are not defined in advance are called “dynamic tags”. Dynamic tags are accessed by entering the DeviceXPlorer device name plus the PLC register name. In the below figure, the value from data register “D0” is obtained from the PLC set as “Device1”.

Important DeviceXPlorer has no restriction on the number of tags, so it is necessary to ensure that the CPU performance and memory are high enough to accommodate the system (number of tags) you are using. If the number of PLCs is more than 50 or if the total number of tags is over 100,000, we recommend that you distribute the load to the DeviceXPlorer across several PCs.

- 112 -

- 113 -

5.7.2 Creating a New Tag From the Projects menu, select New -> Tag.

Set the tag parameters and click “Next”.

To perform scale conversion, place a check in the box for “Scale Conversion” ,“Simulation” and “Alarm “set the parameters. < Scale Conversion>

- 114 -

<Simulation>

<Alarm>

5.7.3 Changing a Tag Name Select the tag name you want to change from the Tag List and open the Properties screen from the pop-up menu.

- 115 -

This will allow you to change the set tag name to a name of your choice.

Note It is necessary to set a name that is not duplicated.

- 116 -

5.7.4 Properties (General) This tab allows you to set properties such as the tag name and data format.

The dialog settings for MELSEC Ethernet are as shown in the table below. The settings vary for each PLC; for details, see the User’s Guide (PLC Connection Edition).

Item Description

Tag name Specify a tag name if you want to attach a different name for the PLC device. The access format for dynamic tags is shown to the right of the tag name.

Automatic format Automatically generates a tag name. Comment Allows you to add a comment to the tag name. Device type Specify a type of the PLC device to be accessed.

Device number Specify the device number. Depending on the device type, the device number is entered in either decimal or hexadecimal notation.

Block number Specify a block number if you have specified extended file register (ER) as the device type.

Data type

Select a data type. BOOL: Logical BYTE: 8-bit signed integers UBYTE: 8-bit unsigned integers SHORT: 16-bit signed integers USHORT: 16-bit unsigned integers LONG: 32-bit signed integers ULONG: 32-bit unsigned integers FLOAT: 32-bit real numbers LONGLONG: 64-bit signed integers ULONGLONG: 64-bit unsigned integers DOUBLE: 64-bit real numbers STRING: Character string

Size

Specify the size if you have specified a character string or an array. Character string: If “1” is specified, the space for one word is occupied. Array (BOOL): If “1” is specified, the space for one word (16 bits) is occupied. Array (BYTE): If “1” is specified, the space for one word (2 bytes) is occupied. Array (SHORT): If “1” is specified, the space for one word is occupied. Array (LONG / FLOAT): If “1” is specified, the space for two words is occupied. Array (LONGLONG / DOUBLE): If “1” is specified, the space for four words is occupied.

- 117 -

Item Description Byte position If the BYTE type is selected, select either high or low byte. Bit position If you specified BOOL as the data type, specify the bit position.

Attribution

Specify a tag attribution. ReadWrite: Reading and writing possible ReadOnly: Read only WriteOnly: Write only

System calculation

[BCD calculation] If the data type is BYTE, SHORT, or LONG, you can perform BCD calculation. [Binary/octal/decimal/hexadecimal text type] If the data type is STRING, you can select any format.

Byte swapping To swap the high byte for the low byte, place a check in this box. This is enabled for the SHORT or LONG data types.

Array Place a check in this box to define the tag as an array.

5.7.5 Properties (Scale Settings) Set the scale settings to convert values received from the PLC to engineering values.

Item Description Enable scale conversion Place a check in this box to implement scale conversion processing. Pre-conversion – Min. (M)

Enter the minimum value of the value range that can be obtained from the PLC.

Pre-conversion – Max. (A)

Enter the maximum value of the value range that can be obtained from the PLC.

Post-conversion – Min. (M)

Enter the minimum effective value.

Post-conversion – Max. (A)

Enter the maximum effective value.

Engineering unit Specify this if you are setting a unit. Conversion method Specify “linear” or “square root” or “Power factor” as the conversion method.

Note - The OPC DA dead band function is effective for tags for which scale conversion is set. - If the values obtained from the PLC exceed the pre-conversion range, the quality flag will be 0x50 (Engineering Unit Exceeded).

- 118 -

- 119 -

5.7.6 Properties (Simulation) Enable simulation settings if you want to return values of your choice without communicating with the PLC.

Item Description Enable simulation Perform simulation by tag. Sine Returns values that make a sine curve. Ramp Returns values that increase in increments of 1. Random Returns random values. Shared memory Returns static values. Values written from the client are maintained.

- 120 -

5.7.7 Properties (Alarm) With the value acquired from PLC with an OPC A&E interface, alarm and when carrying out event surveillance, an alarm setup is performed.

Item Description Alarm Comment Specify the Alarm comment.

Level Alarm

LoLo/Low/High/HiHi Select Enable or Disable. Value Specify the threshold value. Priority Specify the priority. Deadband Set the deadband of level Alarm. If a current value returns more than deadband,

the alarm restores.

Ratio Alarm

Change Set the change ratio (percentage) per standard time. Unit Select the time unit “Sec” or “Min” or “Hour” Priority Specify the priority.

Deviation Alarm

Standard value Specify the standard value. Low DV Specify the deviations from Standard value. High DV Specify the deviations from Standard value. Deadband Set the deadband of Deviation Alarm. If a current value returns more than

deadband, the alarm restores.

Discrete Alarm

Event Type This alarm can be defined only in BOOL tag. Select “Single Event” or “Tracking Event” or “Condition Event”.

Occurrence Select the alarm occurrence, “On” or “Off” Priority Specify the priority.

Note - To configure Level alarm, Ratio Alarm and Deviation Alarm, the Tag’s scale conversion should be defined. - To configure Discrete alarm, the Tag can be defined as BOOL .

- 121 -

5.7.8 Saving Settings Save settings by clicking the “Save” button or clicking the “OK” button and closing the dialog.

5.7.9 Adding Tags Continuously If you click the “Save” button and then the “New” button in succession, the device number will be automatically incremented.

5.7.10 Tag Generator Using the tag generator allows you to generate tags of a particular format at once.

Note The number included in the tag name and the device number are automatically incremented.

[Operation] (1) Set the base tag information.

- 122 -

(2)To perform scale conversion, place a check in the box for “Scale Conversion” ,“Simulation” and “Alarm “set the parameters.

(3) Set the number of tags to be generated at once and the increase step.

Item Default Description Start Location (Base Tag Name) The base tag name is shown. Generate Count 10 Specify the count which will be generated. Increase step 1 Specify the increment by which to increase the device number.

Ignore Data Size OFF Ignores the data type and increases the device number in increments of 1.

Digit 9 Specify the digit of auto-generated tag name in Zero Supply. Zero Supply OFF Please check if the tag name need zero supply.

Note If an automatically generated tag name already exists, a serial number is attached after the tag name.

For example, if you generated 10 tags from Tag001, and Tag003 already exists, the generated tag will become “Tag003 (1) ” as shown above.

- 123 -

5.7.11 Extended Tag Name Specification If you are not registering tag information in advance but are registering and accessing items dynamically, specify the device name and data type as extended specification. For extended specification, follow the rules listed below.

Extended specificatio

n Description Note

No Specification

Bit device: Logical type

Word device: 16-bit signed integers

:00-:15 Logical

Cannot specify for bit devices. :L 8-bit signed integers :LU 8-bit unsigned integers :H 8-bit signed integers :HU 8-bit unsigned integers :W 16-bit signed integers :WU 16-bit unsigned integers :D 32-bit signed integers :DU 32-bit unsigned integers :R 32-bit real numbers :I 64-bit signed integers :IU 64-bit unsigned integers :DR 64-bit real numbers :B Integer BCD conversion :OR Read-only :OW Write-only :A99999 Array :S99999 Character string D1.S5 = “ABCDEFGHIJ” :F99999 File Batch Write D1:F5=”C:¥test.txt” :B99999 Binary text D1.B2 = “11111111111111110000111100001111” :O99999 Octal text D1.O5 = “1,1234,77777,0,177777” :D99999 Decimal text D1.D5 = “1,2,32767,-32768,0” :H99999 Hexadecimal text D1.H5 = “1234FFFF99990000ABCD” :V Bit inverse :BL Boolean conversion Only some models correspond. :SS Simulation mode(Sin) :SD Simulation mode(Shared Memory) :SI Simulation mode(Ramp) :SR Simulation mode(Random)

Note To use a combination of more than one extended specification, you can use a colon as a separator. For example, a write-only 32-bit unsigned integer array would be specified as “D1:DU:OW:A100”.

- 124 -

5.7.11.1 No Specification If you are not using extended specification, the standard data type is the 16-bit signed integer for word devices and the logical type for bit devices. Example: For MELSEC, the No. 1000 data register is “D1000”, and the link relay No. 1F is “B1F”.

5.7.11.2 Specifying the Bit Position (:nn) If you specify a separator and bit position at the end of a tag name, it can be handled as if it were the logical type. Example: The 0th bit of D1 is “D1:0” and the 15th bit of D1 is “D1:15”. Note Only certain PLCs can write to these tags.

5.7.11.3 Byte Type (:L, :LU, :H, :HU) By specifying a low byte and a high byte, you can treat the register value as an 8-bit signed or unsigned integer. Example: In “D1:H”, the higher 8 bits of D1 are accessed as an integer.

5.7.11.4 Word Type (:W, :U, :WU) The register value is treated as a 16-bit signed or unsigned integer. Example: In “D1:WU”, D1 is accessed as an unsigned integer.

5.7.11.5 Long Type (:D, :DU) The register value is treated as a 32-bit signed or unsigned integer. Example: In “D1:D”, D1 and D2 are accessed as a 32-bit signed integer.

5.7.11.6 LongLong Type (:I, :IU) The register value is treated as a 64-bit signed or unsigned integer. Example: In “D1:I”, D1 – D4 are accessed as a 64-bit signed integer.

5.7.11.7 Single Precision Real Number Type (:R) The register value is treated as a 32-bit real number. Example: If the two words of D1 and D2 contain “0x42F6CCCD”, “D1:R” is read as “123.4”.

5.7.11.8 Double Precision Real Number Type (:DR) The register value is treated as a 64-bit real number. Example: If the two words of D1 – D4 contain “0x40FE240C9FBE76C9”, “D1:DR” is read as “123456.789”.

- 125 -

5.7.11.9 BCD Type (:B) The register value (BCD value) is converted to BIN value when it is read, and when it is written, the written value (BIN value) is converted to BCD value. If BIN conversion is not possible (when reading is not possible), the quality flag will be “0x54” (Engineering Units Exceeded), and the value will be undefined. If BCD conversion is not possible (when writing is not possible), an error will be returned and the value will not be written. Example: If 1234 (hexadecimal) is contained in D1 and “D1:B” is read, “1234 (decimal)” will be returned. Example: If “5678 (decimal) is” written to “D1.B”, “5678 (hexadecimal)” will be written.

5.7.11.10 Read-only/Write-only (:OR, :OW) The read-only tag attribution can be used to prevent inadvertent writing. In addition, if there are many tags that do not require reading, you can use the write-only tag to improve performance. Example: “D1:OR” allows read-only accesses to D1.

5.7.11.11 Array (:A99999) If you add a separator and specify the number of elements after the tag name, the tag will be treated as an array-type tag. Array-type tags perform batch-access to a PLC, which optimizes the communication time. Example: D1:A10 accesses D1 - D10 as a 16-bit integer array with 10 elements. Example: D1:D:A64 accesses D1 - D64 as a 32-bit integer array with 64 elements. Note - If the number of elements exceeds the batch R/W points, the synchronicity of the data will not be maintained. - The maximum number of elements is 65535.

5.7.11.12 String (:S99999) If you specify “:S99999” (with 99999 being the number of registers to access), the register value is treated as a character string. Example: If D0=0x4241, D1=0x4443, D2=0x4645, D3=0x4847 and D4=0x4A49, if “D0:S5” is accessed, the character string “ABCDEFGHIJ” is obtained. Note - If the number of elements exceeds the batch R/W points, the synchronicity of the data will not be maintained. - The maximum number of elements is 65535.

5.7.11.13 File Batch Write(:F999999) By specifying ":F99999" ( 9999 is between 1 and 65535) behind a tag name, the contents of the text file can be written in at once. You create CSV (comma separated form) file , and writes the path (full path) of a text file in a tag at the time of writing. If it reads, the written-in file path is acquirable. Example: You write CSV file path (full path) to"D0:F5", DeviceXPlorer write values between D0 and D4 by the head of the data of the CSV file.

- 126 -

5.7.11.14 Text Format Binary Type (:B99999) If you specify “B:99999” after the tag name, the register value can be treated as a text format binary type. When requesting writing, if the value to be written contains something other than numbers (0 - 1), that value and subsequent values will be ignored. Example: If D0=0xF0F0, accessing “D0:B1” obtains the character string “1111000011110000”. Example: If “111a0000” is written to “D0:B1”, “111” is written. Note - If the number of elements exceeds the batch R/W points, the synchronicity of the data will not be maintained. - The maximum number of elements is 65535.

5.7.11.15 Text Format Octal Type (:O99999) If you specify “:O99999” after the tag name, the register value can be treated as a text format octal type. When requesting writing, if the value to be written contains something other than numbers (0 - 7), that value and subsequent values will be ignored. Example: If D0=123, D1=99, and D2=1, accessing “D0:O3” obtains the character string “173,143,1”. Example: If “135790” is written to “D0:O1”, “1357” is written. Note - If the number of elements exceeds the batch R/W points, the synchronicity of the data will not be maintained. - The maximum number of elements is 65535.

5.7.11.16 Text Format Decimal Type (:D99999) If you specify “:D99999” after the tag name, the register value can be treated as a text format decimal type. When requesting writing, if the value to be written contains something other than numbers (0 - 9), that value and subsequent values will be written as “0”. Example: If D0=123, D1=99, and D2=1, accessing “D0:D3” obtains the character string “123,99,1”. Example: If “9,a,8” is written to “D0:D3”, the value is written as D0=9, D1=0, and D2=0. Note - If the number of elements exceeds the batch R/W points, the synchronicity of the data will not be maintained. - The maximum number of elements is 65535.

- 127 -

5.7.11.17 Text Format Hexadecimal Type (:H99999) If you specify “:H99999” after the tag name, the register value can be treated as a text format hexadecimal type. When requesting writing, if the value to be written contains something other than numbers (0 - 9), that value and subsequent values will be written as “0”. Example: If D0=0x123 and D1=0x10, accessing “D0:H2” obtains the character string “01230010”. Example: If “98765X” is written to “D0:H3”, the value is written as D0=0x9876, D1=5, and D2=0. Note - If the number of elements exceeds the batch R/W points, the synchronicity of the data will not be maintained. - The maximum number of elements is 65535.

The table below shows the scale conversion matrix for each text format.

Binary Octal Decimal Decimal (unsigned) Hexadecimal 0 0 0 0 0

11111111 377 255 255 FF 111111111111 7777 4095 4095 FFF

0111111111111111 77777 32767 32767 7FFF 1000000000000000 100000 -32768 32768 8000

1111111111111111 177777 -1 65535 FFFF

5.7.11.18 Bit Inverse If you specify “:V” after the tag name, DeviceXPlorer inverse Boolean value. Example:If M0=”False”, accessing “M0:V” obtains the “True”.

5.7.11.19 Boolean conversion If you specify “:BL” after the tag name, DeviceXPlorer converts to Boolean . If value is 0, the tag is False(Off). Otherwise if value is not 0, the tag is True(On). Example: If Field1 is set value 123, "Field1:BL" is True(On). Example: If Field1 is set value 0, "Field1:BL" is False(Off).

5.7.11.20 Simulation mode (Sin) If you specify “:SS” after the tag name, DeviceXPlorer treats the Tag as a simulation(Sin) tag.

5.7.11.21 Simulation mode (Shared Memory ) If you specify “:SD” after the tag name, DeviceXPlorer treats the Tag as a simulation(Shared memory) tag.

5.7.11.22 Simulation mode (Ramp ) If you specify “:SI” after the tag name, DeviceXPlorer treats the Tag as a simulation(Ramp) tag.

5.7.11.23 Simulation mode (Random) If you specify “:SR” after the tag name, DeviceXPlorer treats the Tag as a simulation(Random) tag.

- 128 -

5.7.12 System Tags

5.7.12.1 Global System Tags The following system tags are valid for DeviceXPlorer as a whole. These system tags are in SYSTEM device. (Access example: SYSTEM.$Clock1000, SYSTEM.$TagCount)

Name Tag name Type Attributio

n

Note

Version information $Version VT_BSTR R Ex: “Version 4.0.0.1” License status $License VT_BOOL R Normal: FALSE, Abnormal: TRUE Clock (100 ms) $Clock100 VT_BOOL R Repeats 50 ms on followed by 50 ms off. Clock (200 ms) $Clock200 VT_BOOL R Repeats 100 ms on followed by 100 ms off. Clock (500 ms) $Clock500 VT_BOOL R Repeats 250 ms on followed by 250 ms off. Clock (1000 ms) $Clock1000 VT_BOOL R Repeats 500 ms on followed by 500 ms off.

Clock (2000 ms) $Clock2000 VT_BOOL R Repeats 1 second on followed by 1 second off.

Clock (1 min.) $ClockMin VT_BOOL R Repeats 30 seconds on followed by 30 seconds off.

Clock (1 hour) $ClockHour VT_BOOL R Repeats 30 minutes on followed by 30 minutes off.

Heartbeat $HeartBeat VT_UI4 R Ring counter that increments every second (can check that server is operating)

Always ON $On VT_BOOL R Always OFF $Off VT_BOOL R Self-diagnosis error $Diagnosis VT_BOOL R On while error is occurring Self-diagnosis error code $DiagCode VT_UI4 R/W The last error code that occurred. Self-diagnosis sub error code $DiagSubCode VT_UI4 R/W The last detail error code that occurred. Clock data (hour) $Hour VT_UI4 R

Stores the PC’s time data

Clock data (minute) $Min VT_UI4 R Clock data (second) $Sec VT_UI4 R Clock data (millisecond) $Msec VT_UI4 R Date data (year) $Year VT_UI4 R Date data (month) $Month VT_UI4 R Date data (day) $Day VT_UI4 R

Log save implementation flag $SaveLog VT_BOOL R/W If TRUE is written, the log message is saved, and it is changed to FALSE after the request is received.

Log saving file name $LogFile VT_BSTR R/W

Can specify both absolute and relative paths. If there is no specification (NULL), it is saved in the YYYYMMDDHHMMSS.CSV format.

Script Log flag $DumpScript VT_BOOL R/W Corresponds to View -> Script

Sent/received trace flag $DumpCom VT_BOOL R/W Corresponds to View -> Communication data

DxpLink trace flag $DumpDxpLink VT_BOOL R/W Corresponds to View -> DxpLink DDE/SuiteLink trace flag $DumpDDE VT_BOOL R/W Corresponds to View -> DDE/SuiteLink OPC access log flag $DumpOpc VT_BOOL R/W Corresponds to View -> OPC Access

- 129 -

Trace type flag (INFO) $TraceInfo VT_BOOL R/W Outputs an INFO message Trace type flag (WARNING) $TraceWarning VT_BOOL R/W Outputs a WARNING message Trace type flag (ERROR) $TraceError VT_BOOL R/W Outputs an ERROR message

Trace type flag (ERROR) $TraceFatalError VT_BOOL R/W Outputs an ERROR message

Connected clients $ClientCount VT_UI4 R Number of connected clients Client errors $ClientErrors VT_UI4 R Number of clients experiencing errors

Name Tag name Type Attri

bution

Note

Connected groups $GroupCount VT_UI4 R Number of OPC groups and DDE/SuiteLink topics that are being accessed from outside

Group errors $GroupErrors VT_UI4 R Number of groups experiencing errors Total tags $TagCount VT_UI4 R Total number of active tags Tag errors $TagErrors VT_UI4 R Number of tags experiencing errors Port Paramter $PortParamter VT_BSTR R/W Dynamic Port. Reffer to 5.3.7.

Device Parameter $DeviceParameter VT_BSTR R/W Dynamic Device. Reffer to 5.4.8.

Reset Statistical Information $ResetStatisticalTags VT_ BOOL R/W

By writing TRUE, DeviceXPlorer resets the follow system tags. $ElapseMin,$ElapseMax,$Elapse,$ErrorCounts,$SendCount,$RecievedCounts

- 130 -

5.7.12.2 Device System Tags The following system tags are valid for individual devices. These system tags are in each device. (Access example: Device1.$Status, Device2.$Simulate)

Name Tag name Type Attribution

Note

Communication status $Status VT_BOOL R/W

Communicating: TRUE, Stopped: FALSE In simulation mode, it is free to change the value of this tag.

Message/communication errors $ErrorCounts VT_UI4 R Number of errors that have occurred

Messages sent $SendCounts VT_UI4 R Number of messages sent Messages received $ReceivedCounts VT_UI4 R Number of messages received Max. number of batch R/W of bit device $BitRWRange VT_UI4 R Maximum number of batch R/W of bit

device Max. number of batch R/W of word device

$WordRWRange VT_UI4 R Maximum number of batch R/W of word device $ReadRange VT_UI4 R

Max. number of points for random write of a bit device $BitWRange VT_UI4 R Maximum number of points for random

write of a bit device Max. number of points for random write of a word device $WordWRange VT_UI4 R Maximum number of points for random

write of a word device

Redundant communication standby status $Standby VT_BOOL R/W

Active system when redundant communication is used Communicating on primary device: FALSE Communicating on secondary device: TRUE

Simulation status $Simulate VT_BOOL R/W Running in simulation mode: TRUE Communicating with PLC: FALSE

Communication port name $PortName VT_BSTR R Port name Lap time (current) $Elapse VT_UI4 R The time required for the communication.

If more than one OPC group is accessing the device at once, the lap time is set for each group.

Lap time (minimum) $ElapseMin VT_UI4 R

Lap time (maximum) $ElapseMax VT_UI4 R

Communication load rate (%) $ElapseRate VT_UI4 R Current lap time ÷ update interval x 100 (%)

Update Rate $DeviceUpdateRate VT_UI4 R/W Update rate for defined in Device Option.

Simulation type $SimulationType VT_UI4 R/W

Simulation mode 0:Sin 1:Ramp 2:Random 3:Shared Memroy

Slow Polling Mode $SlowpollingMode VT_BOOL R/W TRUE:Slow Polling FALSE:Normal

Connection Test $ConnectionTest VT_BOOL R Execute “Connection Test”. Reffer to 5.4.2 Primary device Communication Status

$PrimaryStatus VT_BOOL R/W Primary device Communicating: TRUE, Stopped: FALSE

- 131 -

Standby device Communication Status

$SecondaryStatus VT_BOOL R/W Standby device Communicating: TRUE, Stopped: FALSE

- 132 -

5.7.12.3 Connection System Tags The following system tags are valid for individual connections. These system tags are in each connection. These system tags’ value is different per connection. (Access example: SYSTEM.$UpdateInterval, SYSTEM.$Elapse) Name Tag name Type Attri

bution

Note

Update interval $UpdateInterval VT-_UI4 R/W The current update interval. If you specify “0”, communication will stop.

Error code $ErrorCode VT_UI4 R The last error code that occurred. Error text $ErrorText VT_BSTR R The text of the last error that occurred. Message/communication errors $ErrorCount VT_UI4 R Number of errors that have occurred

Messages sent $SendCount VT_UI4 R Number of messages sent Messages received $ReceivedCount VT_UI4 R Number of messages received

Write status $WriteComplete VT_BOOL R “0” when a write request is received and “1” when write processing is finished (successfully completed/failed).

Read status $ReadComplete VT_BOOL R/W

“1” when all active tags are read, returning to “0” when a tag is added, and then becoming “1” again when that tag is read. When “0” is written from a client, it becomes “1” again after all reading is complete.

Registered tags $ItemCount VT_UI4 R Number of registered tags Number of active tags $ActiveItemCount VT_UI4 R Number of active tags Number of error tags $ErrorItemCount VT_UI4 R Tags with quality flags other than “good”. Messages $MessageCount VT_UI4 R Total number of read/write messages

Read requests $PollNow VT_BOOL R/W Refreshes (rereads) all tags as soon as “1” is written. Valid even when “0” is set as the update interval.

Lap time (current) $Elapse VT_UI4 R The time required for the communication Lap time (minimum) $ElapseMin VT_UI4 R

Lap time (maximum) $ElapseMax VT_UI4 R

Communication load rate (%) $ElapseRate VT_UI4 R Current lap time ÷ update interval x 100 (%)

Note In the time of client unit communication invalidity (default configuration), only the following 4 connection tags can be available. - $UpdateInterval - $ItemCount - $ActiveItemCount - $ErrorItemCount

- 133 -

5.7.13 Tag Monitor The current value of static tags can be monitored from the DeviceXPlorer screen regardless of whether or not there is access from a client. [Operation] Select “Device Monitor” or “Cache Monitor” from the View menu.

Item Description Device monitor Communicates with the PLC and monitors live data.

Cache monitor Does not communicate with the PLC but monitors cached values in DeviceXPlorer. The values of only the tags currently accessed by clients are updated.

When tag monitoring is performed, the current values and information such as the quality flags appear on the screen.

Note The update interval when the device monitor function is used is value of Monitor Rate in “Common Properties, General”.

- 134 -

5.7.14 Offline Mode If DeviceXPlorer shifts to off-line mode, it will stop performing communication with target modules entirely, and will process with the cache value which it has in the inside. If DeviceXPlorer shifts to this mode, the processing to a client etc. will also be affected.

A confirmation message is displayed when shifting to off-line mode.

During Offline Mode execution, it is displayed on a lower right status bar as “Offline Monitoring”.

Important If DeviceXPlorer shifts to Offline Mode, it stops performing communications processing entirely with target modules. When you shift during system runing, be careful enough.

- 135 -

5.7.15 Write Tag Value During Ttags monitor, You can write value to a tag. You select the tag, and select “Write Value to Tag…".

Since the follows dialog is displayed, You input a write value and click “OK”. DeviceXPlorer will write the valut to target module.

Note "GUI->Writing Tag value From GUI" needs to be "Permit Writing". of Project Properties(5.12.5).

- 136 -

5.7.16 Watch The watch function allows you to dynamically monitor the current values of tags if you drag & drop the tags you want to monitor from the Tag View.

It is also possible to monitor dynamic tags by directly entering the tag names.

You can also save the tag list registered for the watch function in a file using the pop-up menu.

Note If you register an inappropriate tag, “N/A” will appear.

- 137 -

5.7.17 Array Viewer Array Viewer is the function for monitor tag value of array. Please select “Show Array Viewer” from right-click menu or select tag and push Ctrl + Enter key, so the Array Viewer will show.

You can check the tag value and write value by “Write”. If you write the value, please change the value and push “Write” button.

Item Description Value / Copy Show the tag value. Copy button copies the values to clipboard. Element The number of the element. Value Show the target tag’s value. Write Value Edit each writing values. Clear Write Values Clear all writing values. Write Write the value to the target tag.

- 138 -

5.7.18 Register Monitor Regsiter Monitor allows you to monitor the memory values on target moudule. Register Monitor can be started from View->Window->Monitor->Monitor(1)

The monitor windows are the following windows.

Item Description Device Specify the target Device Register Specify register( memory name ) in the target module.

Important Register Monitor becomes a monitor function for PLC drivers. The models (for example, ODBC Client, DDE Client etc.) which don’t have register area can not use this function.

- 139 -

You select a device, and input register name, and press Enter Key. Register monitor will start. For example, in MELSEC, if D0 is inputted into a register, it can monitor as follows.

The following things can choose a register monitor with a right-click menu.

- 140 -

Item Description Display Select data type for display. Hexadecimal Display values in hexadecimal. Multi-regiseter Many registers are shown as below. ( This is 8 points per line)

Ten points back Many registers are shown as below. ( This is 10 points per line)

Write Value Input a Write Value and write Register.

- 141 -

5.8 Method Tag You can create a method tag with script processing. If you write value is to a method tag, DeviceXPlorer executes the script logic of Method Tag.

5.8.1 Creating a New Method Tag From the Tag List menu, select New -> Method.

Edit script.

Item Description Name Specify the Method Tag name. Period Specify the update rate for refresh tag’s cache value which used in script. Run If you execute script, Check the box. Script Programing. Reffers to *****

- 142 -

5.8.2 Execute Method Tag You create a Method tag like follows.

If a value is written in from a client to this tag, the script will be performed.

About the execution result of a method, when validating a script log, it can check with a message view.

- 143 -

5.9 Structure Tag The model with two or more member variables of a structure is defined, and the same tag structure can be used only by generating a structure tag based on the definition. The structure has 2type Structure Tag and Structure Template.

Item Description Structure Template Definition of structure which has some members. Structure Tag Tag which created based on Structure Template.

Important Tag settings in ODBC Client Connection don’t support Structure Tag.

5.9.1 Define Structure Template To create a Structure Tag, You define a Structure Template is at first. You select "New" in Structure Template View.

“Template01” is created as a Structure Template.

By clicking “Template01”, Member list is shown. You select "Tag”/”Structure” from right-click menu of the component.

- 144 -

You configure the member properties . <Tag>

Item Description Member name Specify a member name. Description Allows you to add a comment to the member. Data type Select a data type. Size Specify the size if you have specified a character string or an array. Attribution Specify a member attribution. System calculation Select a calculation.. Byte swapping To swap the high byte for the low byte, place a check in this box. Array Place a check in this box to define the tag as an array.

<Structure>

Item Description Member name Specify a member name. Description Allows you to add a comment to the member. Structure Type Select a Structure Template which defined already. Member List Show members of selected Structure Template.

- 145 -

By using two or more Structure Templates, the hierarchy Structure Template as follows can be created.

The right-click menu of Structure Template view is as follows.

Item Description New Create a new Structure Template. Change the name Change the selecting Structure Template name. Event Script Create a new Event Script of Structure Template.

Delete Delete the Structure Template.If selected Structure Template is referred from another Structure Template, This structure template doesn’t allow to delete.

Important You can’t delete the selected Structure Template is referred from another Structure Template. You can’t delete the selected Structure Template, if Structure Tag which created based on this Template is communicating.

- 146 -

The right-click menu of Structure Template members list is as follows..

Item Description New Create a new Structure Template member Tag or Structure. Property Configure the member properties. Copy Copy the selected member. Paste Paste the copied member. Delete Delete the selected member. Move Up The row of the member is moved upwards. Move Down The row of the member is moved downwards.

Important You can’t delete the selected Structure Template member, if Structure Tag which created based on this Template is communicating.

- 147 -

5.9.2 Creating a New Structure Tag You select "New->Structure Tag” from right-click menu of the Tag List.

Input the member properties.

Item Description

Structure Tag Name Specify the Structure Tag name. Description Allows you to add a comment to the Structure Tag. Structure Type Select a Structure Template which defined already.

Start Register If you specify start register and push ”Refresh” button, based on the start register, structure member's register will be assigned automatically.

Member List Show members of selected Structure Template. Important A register's contents of a setting change to a character string with extended specification by the register who assigns. For example, if "D0" is inputted into a Float type member and a setup is saved to him, it will be registered as "D0:R."

- 148 -

You can monitor Structure Tags in Tag List.

You can expand members by click [+], collapse by [-]. <Expand members> <Collapse members>

Also, you can expand and collapse all structure tag's members by right-click menu. “Expand All” and “Collapse All”.

- 149 -

5.9.3 How to access Structure Tags from Client When you access from a client, please access as a "Structure Tag name . member" In Switch of the following, it accesses as "Device1.StructTag01.P01.Switch."

It is as follows if it browses from a client.

Important The name accessed from a client is the same as the view of a group. Keep in mind that a group "AAA" and the structure tag "AAA" are treated as the same object.

- 150 -

5.10 Bridge You can transfer the value from Tag to Tag, Group to Group and Device to Device, by using bridge function.

5.10.1 Bridge Setting Tag, Group and Device have bridge function. Event list will be displayed when select [Event] from right-click menu for Device and Group.

Events will be displayed in event list. You can create, modify, delete and run/stop event from right-click menu.

Note No limitation for bridge count. Please be careful because many bridges may influence communication performance.

- 151 -

Input bridge setting.

Item Information Name Setting bridge name.

Run

Specify run state of bridge. If no check, bridge is not performed

Event Specify event condition to execute bridge. [Period] - - - Bridge is performed the specified cycle (fixed cycle). [Tag Change] - - - Bridge is performed when the value of the tag changed. [Run Event] - - - Bridge is performed at the time of event engine starting of the parent Device. (*) [Stop Event] - - - Bridge is performed at the time of event engine stopping of the parent Device. (*)

Tag When “Tag Change” is chosen in Event, a specification tag and conditions can be specified. Static tag and dynamic tag can be specified. While on the other hand, array and string tag cannot be specified. [While ON] - - -While a specification tag turns on, it performs at a case (when it is except zero). [Change] - - - Bridge is performed at the time of specified tag’s Value or Quality or Timestamp changing. [Change(Value)] - - - Bridge is performed at the time of specified tag’s Value changing. [Change (Quality)] - - - Bridge is performed at the time of specified tag’s Quality changing. [Change (Time stamp)] - - - Bridge is performed at the time of specified tag’s Timestamp changing. [Rise] - - - Bridge is performed at the time of specified tag changes to ON from OFF. [Fall] - - - Bridge is performed at the time of specified tag changes to OFF from ON

Period Specify running interval and communication interval of bridge * Event engine starts at the time of starting and stops at the time of application closing. And event engine will reboot to

- 152 -

the timing when user creates, modifies and deletes event.

- 153 -

Item Information Bridge Method Specify the method of bridge.

Destination Specify the path of Tag, Device and Group which will be forwarded value. You can chose the path by direct input upon in-place editing, or Browse dialog (*) which will be shown by clicking […] button.

Source Specify the path of Tag, Device and Group which transferring value. You can chose the path by direct input upon in-place editing, or Browse dialog (*) which will be shown by clicking […] button.

Expression(x) Perform arithmetic operation via script. When you specify Group at Method, cannot perform conversion of value. Example: x * 100

Add Add new bridge setting. Delete Delete the selected bridge settings OK Confirm the editing bridge setting. Cancel Cancel the editing bridge setting. * You can choose Tag, Device and Group, by using Browse dialog function.

- 154 -

5.11 Messages

5.11.1 Message DeviceXPlorer divides messages into four levels of importance for processing (information, warning, error, and fatal error).

The importance of the message is indicated by the icons in the table below. Icon Category Description

Information Information message for communication parameters, etc.

Warning Warning level message

Error Error level message

Fatal error Fatal error message

Script Log Execute script message

DxpLink Log DxpLink communication message

OPC Trace OPC Interface message

- 155 -

It is possible to use the pop-up menu or toolbar to display only the information you need by Icon Filter and Text Filter or to temporarily stop output.

[Pause] Messages output can be suspended. Although the message is outputted in fact, updating on a display is stopped. The display of a message is updated by clicking Pause again. Important The function that saves log file doesn’t be suspended, if you configure “Auto Message Save” as “Save”.

[Clear] Messages are cleared from Message View. [ Icon Filter ]

Item Description Fatal Error Show fatal error message. Error Show error message such as communication error. Warning Show warning message. Info Show information message. Communication Data Show communication data message with PLC. OPC Interface Access Show OPC interface access message with OPC Client. DDE/SuiteLink Trace Show DDE/SuiteLink interface access message with DDE Client. DxpLink Trace Show DxpLink interface access message.

- 156 -

[ Text Filter ]

Item Description Check Box Enable the filter.

Type

Show Show message including the filter message. Show except Show except message including the filter message. Hide Hide message including the filter message. Hide except Hide except message including the filter message.

Filter Input filter message. Case Sensitive Case sensitive check. Filtering Priority Specify filtering priority.

By double-clicking the message line, you can view a detailed dialog. It is possible to copy error messages.

- 157 -

By selecting "Copy" from pop-up menu., you can copy the message to clipboard.

By selecting “Save” from the pop-up menu, you can save the message to csv file.

It is checked after CSV file preservation whether messages are cleared or not.

5.11.2 How to save messages automatically You configure “Auto Message Save” as “Save” in Project Properties(5.12.6).

- 158 -

5.12 Diagnosis You can use the diagnostic function to check the access status of a client or investigate the cause of a problem. Undernoted icons show diagnosis condition.

Icon Description

Condition is Good.

Good and Bad are mixed.

Condition is Bad. Communication error is occurring.

Condition is not Active status.

5.12.1 Interface Diagnosis

Item Description Interface OPC interfaces and DDE/SuiteLink interfaces Connections Number of clients connected to each interface Items Number of registered tags Active items Number of active tags Error items Number of error tags

- 159 -

5.12.2 Client Diagnosis This shows information for the connected clients.

Item Description Client Client handle and client name Groups Number of registered groups Items Number of registered tags Active items Number of active tags Error items Number of error tags Advised The status of advise connection for OPC server object.

5.12.3 Group Diagnosis This shows the information of the group to which the client is registered.

Item Description

Group name OPC group name Items Number of registered tags Active items Number of active tags Error items Number of error tags Update Rate Update interval value set for the group Status Active/InActive status of group Advised The status of advised connection for OPC group object.

- 160 -

5.12.4 Tag Diagnosis This shows information on the tags included in the group.

Item Description

Name Tag name Data Type Tag data type Location Physical address to refer Value The most recent cache value Quality Quality of tag Time stamp Time stamp Attribute Attribute of tag Processing Existence of scale setting Comment Comment of tag Status Active / InActive status of tag

Undernoted icons show the diagnosis condition of tag.

Icon Description

Tag quality is Good.

Tag quality is Uncertain.

Tag quality is Bad. Communication error is occurring.

Tag quality is Waiting for initial data.

Tag condition is not active status.

You can write the value to tag as well as the tag monitor. You can register the tag to the watch view by drag and drop.

- 161 -

5.12.5 Event Diagnosis This shows information on the events.

Item Description

Event Engine Event Engine name Events The number of registered Events Running The number of executing Event Error Count The count of error Event scan(ms) The scan time of Event.( Max scan time)

If you click an Event Engine name, the every event status is shown.

Item Description

Event The name of Event Type The type of Event Object The object name to which an Event belongs Status Status of Event Run times Execute times of Event Error count The count of error Lap time The lap time of Event.( Max scan time)

Important When you use two or more events without the license of enterprise, “License Invalid” occurs in Event Diagnosis.

- 162 -

5.13 Projects Project settings are comprised of common properties and project properties. The settings that affect the application as a whole are “Common Properties”, while the items that are limited to a particular project are set as “Project Properties”. The project settings screen can be opened from “Properties” under the “Projects” menu, or from “Options” under the “Tools” menu.

Note DeviceXPlorer settings are saved to a specified folder as files with the extension “*.dxp”.

- 163 -

5.13.1 Common Properties, General This is where you set the parameters that affect the software as a whole. Item Default Reboot Description

Auto Port Close Close ---

If you select “Close”, the ports will close when there is no access from a client. This improves convenience when more than one application is using a port such as RS232C that must be accessed exclusively. You can specify “Close” or “Not Close”.

Acceptable Max Count of Async Demand (Common)

1,000 Need

Sets the maximum number of asynchronous requests (Script , DxpLink etc) that can be accepted. If asynchronous requests continue to be displayed error message in message view.

Acceptable Max Count of Async Demand (OPC)

1,000 Need

Sets the maximum number of asynchronous requests (OPC interface) that can be accepted. If asynchronous requests continue to be called faster than the actual communication can handle them, once a specified number of requests build up DeviceXPlorer returns CONNECT_E_ADVISELIMIT (0x80040201).

Acceptable Max Count of Async Demand (DDE/SuiteLink)

10,000 Need

Sets the maximum number of asynchronous writing requests (DDE/SuiteLink interface) that can be accepted. If asynchronous requests continue to be called faster than the actual communication can handle them, once a specified number of requests build up DeviceXPlorer returns error.

Protocol Timer Tick 10 (ms) Need

Sets the operating interval for sending and receiving messages. If the value is too small, it increases the CPU usage rate. Normally, a setting within the range of 10 - 100 ms is recommended.

Monitor Rate 600 (ms) --- Specify the interval of monitor function and diagnostics view on OPC Server. CPU usage rises when you set small value. Set recommendable value more than 500msec.

Project file save folder My Document ---

Specify the folder for saving project file. If you specify empty string, project folder will be My Document/TAKEBISHI/Project folder.

Startup File (No specification)

Need Specifies the project file to be loaded automatically when DeviceXPlorer starts. If there is no specification, the last project file used will be loaded.

Process Priority Normal Need Specifies the process priority. [High] [Low] REALTIME > HIGH > NORMAL > LOW

OPC Thread Priority NORMAL Need Specifies the thread priority. [High] [Low] CRITICAL > HIGHEST > NORMAL > LOWEST > IDLE

Start as Service Program Execute as Normal Application

Need

If this is “Service Program”, DeviceXPlorer is run as a Windows service program..* Service Program: Run as Service. Execute as Normal Application: Run as Normal application.

Namespace Delimiter . (Dot) Need Specifies the delimiter for Item ID. Extend Tag Delimiter : (Cologne) Need Specifies the delimiter for extended tag name of dynamic

- 164 -

tag.

Language English ---

Specifies the language of the application. You can specify “Japanese”, “English” or “Chinese (Simplified)” or “Chinese(Traditional)” or “Korean(Hangul)”.

Auto Login User Administrator Need Select the login user when DeviceXPlorer starts.

Running Processer Setting (No specification)

--- Specifies running CPU processer of DeviceXPlorer. If this setting is not specified, DeviceXPlorer runs with all CPU processer.

* When connecting with OPC server which runs as windows service, the DCOM configuration is required. About the DCOM configurations, please refer to5.21.

5.13.2 Common Properties, OPC Item Default Reboot Description

OPC Update Rate 500 (ms) Need

Specifies the interval for notifying an OPC client of data changes. This setting value is used when OPC client specifies OPC UpdateRate as “0”.

Timer Tick for Async Update Mode 10 (ms) Need

Specifies the interval for notification of data changes when the asynchronous update mode is on.

Return cache in error Enabled --- Return cache value when error is occurred. If the setting is disabled, the EMPTY value is returned.

Return success for communication failure at reading

Disable ---

Return success code 'OPC_S_UD_COMM_ERROR(0x00048000)' for communication failure at reading. If this is enabled, return failure code ' OPC_E_UD_COMM_ERROR(0x80048000)'.

Initial DataChange Timeout 15000 ---

The timeout for getting first value when initial DataChange. DeviceXPlorer sets Last Usable Value(0x44) or Waiting for Initial Data(0x20) to the quality of the items that are past timeout, and notifies to the client.

OPC UA Server Disable Need Select whether you use OPC UA Server function is, or not.

[Settings and Internal Operations]

- 165 -

* The “Update Interval” in the figure above is a setting that is made by the OPC client when AddGroup() is running.

OPC Client DeviceXPlorer

Group 1

Group 2

・・・

PLC

Async Update Mode

Group 1

Group 2

Idle Time

Group N

PLC Communication

Send

Receive

Idle Time

Updete Interval

Protocol Timer Tick

Async Timer Tick

OPC Gourp Update Interval

- 166 -

5.13.3 Common Properties, DDE/SuiteLink Item Default Reboot Description DDE/SuiteLink Application Name DXP Need Specifies the DDE/SuiteLink application name.

Nofity Cache first Disable ---

Send cache value of tag at first notification immediately when DDE clients connect the server. You can avoid DDE timeout on DDE client.

5.13.4 Common Properties, DxpLink Item Default Reboot Description

DxpLink Server Function Enable Need Place a check in this box to enable the DxpLink Server

function.

DxpLink Port No 9980 Need Specify the port No of DxpLink Serer.

- 167 -

5.13.5 Project Properties, General This is where you set the parameters that only affect the project. Item Default Reboot Description

Reflect Poke

Reflect cache memory immediately

---

Select the timing that tags cache value is updated on poke. “Reflect cache memory immediately” Immediately when DeviceXPlorer receives a write request . “Reflect cache memory after writing” After execute poke and poke is success. “Not reflect cache memory” Not update cache value on poke.

The Priority of the Writing in processing

Giving Prioriy to Writing

Need

If you select “Giving Priority to Writing”,when writing is requested, writing is performed before reading. You can specify “Giving Priority to Writing” or “Giving Priority to Reading”.

Communication per Client Disable Need

Communicate by a client and a subscription group unit and perform movement of the DXP2007 equivalency. Communication load becomes higher than default(Invalidity). If use this function, Slowpolling mode is not available.

Multi Access Mode Enable Need

Only when “Communication per Client” is “Enable” , this setting is effective. If the multi-access mode is on, when a tag that covers several devices is registered for a single OPC group, parallel processing is performed for each device, which makes it possible to increase throughput. If the multi-access mode is not used, communication proceeds in order one device at a time, so that if a communication failure occurs for one device, the communication processing for the other devices is delayed. You can specify “Enable” or “Disable”.

Multi Access for Snyc Asnyc Disabled Need

Only when “Communication per Client” is “Enable” , this setting is effective. Specify whether to use multi access for sync or async request from clients. If this setting is enable, many threads are made for reading and writing.

Async Update Mode Enable Need

If the asynchronous update mode is on, a DataChange event occurs for the tags that have been read, out of the tags registered for a single OPC group. You can specify “Enable” or “Disable”.

Write Optimization Type Request Order Need

Specify the method of optimization about communicating with PLC to write value. You can select “Request Order”, “Address Order” or “Optimization Priority”.

Reduce write-queue Omit same value Need

Specify the method to reduce writing-queue of async request. This setting influences some internal handling of GUI, script, OPC UA, DxpLink. It do not influence the sync or async writing from OPC DA client, and the writing from DDE client.

- 168 -

'Omit same value' DeviceXPlorer omits requests of writing same value to the same tag in once, so you can reduce the load of the PLC communication appropriately (Default). 'Omit except latest value' DeviceXPlorer omits requests of writing value to the same tag in once. DeviceXPlorer writes only latest value, so you can reduce the load of PLC communication the the maximum. Because the old requests in the writing-queue is not written, you can choose this if you allow omission. 'No Reducing' DeviceXPlorer writes all requests without omitting anything. In the case which a writing speed to PLC is not enough for, the full error of the writing-queue occurs and may not be accepted a new request of writing.

Shared Tag Memory Use Need

The shared tag memory can be used for sharing data among applications and as a work register. If the shared tag memory is not used, it reduces memory consumption. You can specify “Use” or “Not Use”.

Points of Shared Tag Memory 100 (K points) Need

If the shared tag memory is used, this specifies the amount of data (device points) for each shared tag. By changing the number of tag points for each data type, you can reduce memory consumption. Between 1K and 100K points can be set.

Simulation Max 100 --- Specify max value to change value at simulation mode (Sine / Ramp / Random).

Simulation Cycle 1000 --- Specify cycle to change value for Sign and Ramp type at simulation mode.

Write non-numeric values Disable --- Specify whether to write non-numeric values(NaN/Infinite) to floating type tags or not.

Skip bridging for tag which is bad quality

Does not skip bridgung

--- About bridge function.when source tag is bad quality, copying process of this tag is skipped.

Reset of the System Tag(Statistics) None ---

Set the reset timing of the System Tag ($ElapseMin,$ElapseMax,$Elapse,$ErrorCounts,$SendCounts,$RecievedCounts).

Script GarbageCollection 5000 --- Run the Full-Garabage-Collection-Cycle of script(Lua) per specified interval. If 0 is set, user can control garbage collection by self.

- 169 -

5.13.6 Project Properties, GUI This sets the parameters related to the display. Item Default Reboot Description

Writing Tag Value From GUI Permit Writing --- Allows the operator to write values in the Tag View.

You can specify “Prohibit Writing” or “Permit Writing”.

Keep Monitor Value Keep ---

Keeps the current value of the displayed tag if the monitoring is stopped in Tag View. If the value is not kept, it is cleared. You can specify “Keep” or “Clear”.

Put in Task Tray when minimized Not Put in ---

If you select “Put in”, when the window is minimized, it is not shown in the task bar but is stored in the task tray. You can specify “Put in” or “Not Put in”.

Max Display Message 1,000 Need Sets the maximum message lines shown in Message View.

Enable Unknown ItemID Enable --- Allows access to items that have not been registered in advance. You can specify “Enable” or “Disable”.

Auto Add Item Not Add --- If you select “Yes”, when an unregistered item is accessed, the item is automatically registered. You can specify “Add” or “Not Add”.

Display System Tag Hide --- Shows system tags in Tag View. You can specify “Hide” or “Display”.

Starting Window Style Last Style ---

Specifies the window style of when the application starts. Last Style Stores the window style. Normal: Always Window. Minimize: Always Minimize.

COM Starting Windows Style Minimize ---

Specifies the window style of when the application is started automatically by COM.

* The settings you make for “Use of unregistered items”, “Automatic item registration”, and “Show system tags” become the defaults for newly created devices. If you want to change the settings for each device, you can change them on the Device Properties screen

- 170 -

5.13.7 Project Properties, Log This sets the parameters for logging messages shown in Message View. Item Default Reboot Description

Auto Message Save Not Save ---

It is possible to automatically save messages output to Message View. Messages are saved even during a pause in the displayed messages. You can specify “Not Save” or “Save”.

Storage Period 0 (days) --- The stored data is deleted when the specified storage period expires. If you specify “0”, the data is not deleted.

Stop Disk Size 100 (MB) --- If the remaining disk space falls below the specified amount, file saving stops.

Max File Size of Message Log 0 (MB) ---

A name is created for the log file in the “YYYYMMDD-nnn.LOG” format, and when the maximum size is reached, a new file is created. The number nnn is an automatically attached branch number between 001 and 999. If the branch number exceeds 999, the file name becomes YYYYMMDD-1000.LOG. If you specify “0”, the file size will not be checked.

File Path of Saving Message Log

(Current folder) --- Specifies the path for storing log data.

You can specify “Output” or “Not Output”.

Output Information Message Output --- Outputs information messages. You can specify “Output” or “Not Output”.

Output Warning Message Output --- Outputs warning messages. You can specify “Output” or “Not Output”.

Output ERROR Message Output --- Outputs error messages. You can specify “Output” or “Not Output”.

Output FATAL ERROR Message Output --- Outputs fatal error messages.

You can specify “Output” or “Not Output”.

Dump Script Log No Output --- Outputs Script Log. You can specify “Output” or “Not Output”.

Output Communication Message No Output --- Traces communication messages.

You can specify “Output” or “Not Output”.

Output DxpLink No Output --- Outputs DxpLink Interface. You can specify “Output” or “Not Output”.

Outoput DDE/SuiteLink No Output --- Outputs DDE/SuiteLink Interface. You can specify “Output” or “Not Output”.

Output OPC Interface Access Message No Output --- Traces the access status of the OPC interface.

You can specify “Output” or “Not Output”.

Detail OPC Message Enable ---

Specifies whether to save OPC Interface Detail Message automatically. If this setting is “Enable”, OPC Interface Detail Message is outputted to log file and Message View. You can specify “Enable” or “Disable”.

- 171 -

5.14 Service Activation DeviceXPlorer can be started as a Windows service program. Important Please configure after start as “Run as administrator” when UAC is ON in on Windows Vista or later OS. DeviceXPlorer runs on the service session (session 0) of Windows when you use service in Windows Vista or later. DDE clients running on other sessions such as desktop cannot connect to DeviceXPlorer. MELSEC EZSocket and the MELSEC interface board connection do not work in running as service. DCOM setting will be initialized if you register / unregister service.

5.14.1 Registering DeviceXPlorer as a service program (1) Go to Tools -> Options, specify “Startup file”, and set “Start as Service Program” to “Service Program”.

(2) When you exit DeviceXPlorer, it will be registered as a service program. You can check DeviceXPlorer OPC Server 's running status as service program from "Services" of "Administration Tool" in Control Panel.

If you don't launch DeviceXPlorer with "Run as administrator" from right-click menu, following error message will show. This is error and DeviceXPlorer doesn't became service application..

- 172 -

(3) From Control Panel -> Services, open the Properties window for DeviceXPlorer OPC Server.

(4) Open the Logon tab and validate the check of “Allow service to interact with desktop” checkbox.

(5) When you reboot the PC, DeviceXPlorer will operate as a service program. Important - When connecting with OPC server which runs as windows service, the DCOM configuration is required.

About the DCOM configurations, please refer to 5.21. - In Windows10, please clear the check box for "Allow service to interact with desktop".

- 173 -

5.14.2 How to show DeviceXPlorer setting dialog of service program On Windows Vista or later OS, service program could not be displayed. So, if you would like to show DeviceXPlorer setting, please start or restart "Interactive Services Detection" from right-click menu.

Following dialog will be shown and please click "View the message".

Important - In Windows10, the service programs don't support to display the window by detection of the interactive service.

DeviceXPlorer can't be able to display the screen even if you started the detection of the interactive serviceby the above procedure.

- 174 -

5.14.3 Unregister from service program (1) Go to Tools -> Options, set “Start as Service Program” to “Execute as Normal Application”.

(2) From Control Panel -> Services, open the Properties window for DeviceXPlorer OPC Server 5.

(3) And stop the service of “DeviceXPlorer OPC Server 5”.

5.14.4 Unregister from service program on Windows 10 later ( 1 ) Stop the service of “DeviceXPlorer OPC Server 5” from "service" of the control panel. ( 2 ) Run the command prompt as an administrator and go to the installation directory.

( 3 ) Enter "DeviceXPlorer / RegServer" and execute it.

- 175 -

5.15 Importing and Exporting [Import / Export] from File menu, It is possible to output a CSV format or XML format. OPC server to do the export of the tag memory is holding.It is possible import to use at offline mode.

Important This is can Import and Export file create at Ver.4. But this can not import CSV file is created by before Ver.3 OPC Server.When CSV file created by Ver.3, please convert at Project Converter[All Program]-[DeviceXPlorer OPC Server 5] - [Project Converter].

Note When edit to file , please careful attention.

- 176 -

5.15.1 Import[Definition] DeviceXPlorer can import CSV file or XML file than exported.

You select import deta item and file path. When import ,you not select output of the tag sequence.

5.15.2 Export[Definition] You can export CSV file or XML file.that are currently open project file

- 177 -

You can select data item and file path to export.You can select order of the output tag.

5.15.3 Import[TagMemory] You can import TagMemory. You select import target device and file path.

When you import, comfirmation will be whether to Offlime mode.

- 178 -

5.15.4 Export[TagMemory] This function can export tag that OPC Server holding TagMemory(cache, timestamp,quality).You select target device.And, Check [ Data refresh before export ] and export.Then update to the latest vaoue from all data. Next to export.

- 179 -

5.16 Hot Configuration The DeviceXPlorer can change a Device settings and Tag settings also in the connection from a client. Notes are indicated to be an item reflected in below by Hot Configuration.

Object Hot Configraion Note

Common Properties Enable There are some properties to update after PC re-starts.

Project Properties Enable There are some properties to update after PC re-starts.

User Information Enable

Port Enable:Add/Edit Disable:Delete

Disable to change Port name. When change properties, Port is re-connected.

Device Enable:Add/Edit Disable:Delete

Disable to change Device name. When change properties, Port is re-connected in some models.

Device Option Enable Disable to change follows properties,

-Topic name -System Tag uses $ char

Group Enable:Add/Edit Disable:Delete Disable to change Group name.

Tag Enable:Add/Edit Disable:Delete

Method Tag Enable:Add/Edit Disable:Delete

Structure Tag Enable:Only Add Disable to change Structure type. Structure Template Enable:Only Add Disable to edit or delete member.

Script Enable:Add/Edit/Del

Operation of Project Disable Disable to new project, to open project file, to close under communication.

Import / Export Enable When you execute import under communication, Configuration is skipped, not overwrite.

Important Even if an Object cannot delete, it which is not used for communication can be deleted.

- 180 -

5.17 Redundant Communication The redundant communication function continues communication by automatically switching lines when a communication failure occurs. Using this function, you can easily configure a redundant system without worrying about switching communication lines.

[Settings] (1) In the Device Options screen, turn on the redundant communication function. (2) Select “Auto switching”. (3) Select a registered device for the standby device.

In the figure above, communication switches to Device2 when a communication failure occurs at Device1, and returns to Device1 when a communication failure occurs at Device2. For configuration about Redundant, please refer to 5.4.4.

- 181 -

5.17.1 Warm Standby Also during normalcy system communication, it communicates by a standby system and performs a communication check. In the case of Warm Standby, while disconnecting Primary system, when it can communicate by Standby system, it changes to a Standby system. When Standby system is also under disconnection, it communicates with Primary system. (It shifts to slow polling mode at the time of slow polling mode effective.) During disconnection, both systems always perform a return check by both systems, and it changes them to the system which returned.

5.17.2 Cold Standby To the timing which was disconnected, Primary system changes communication pathway to Standby system. When Standby system is also under disconnection, communication pathway is changed to Primary system. Note When automatic switching occurs, communication is not automatically restored to the normal system even when it recovers. If you want to manually return communication to the normal system, write FALSE to the “$Standby” system tag.

5.18 Communication Period The communication period of DeviceXPlorer differs for every interface and configurations.

Interface Communication Period OPC DA Specified by OPC client’s update rate.

But if you check “Fix Update Rate” of Device Option, DeviceXPlorer obeys “Update Rate” of Device Option. OPC UA

OPC A&E

Specified by “Update Rate” of Device Option. DDE SuiteLink DxpLink Script Specified by “Update Rate” of Script. Device Monitor Specified by “Monitor Rate” of Common Properties.

These interfaces perform communications processing a best communication cycle. But to maintain past compatibility, only the OPC DA interface is preparing the mode which does not perform the optimal communications processing. (Client unit communication) You can configure Client unit communication in “Communication per Client” of Project Properties. The difference in operation by setup of the client unit communication in an OPC DA interface is as follows.

Communication per Client Communication Period Disable( Default ) DeviceXPlorer selects best communication cycle

Enable Communications processing is performed the renewal cycle of OPC for every OPC group registered from an OPC client. Compared with the time of “Disable”, Communication Rate becomes high.

- 182 -

5.19 Slow Polling Mode When communication error such as timeout error and open error occurs, DeviceXPlorer reduce communication rate. You can configure it on Device Option. At the time communication status is restored, DeviceXPlorer leaves Slow Polling mode.

For configuration about Slow Polling Mode, please refer to 5.4.4. If $SlowpollingMode is supervised, you can understands whether the device is in Slow Polling Mode or not. If this tag is TRUE, under Slow Polling Mode. If this tag is FALSE, under normal communication. Shows message about Slow Polling.

Message Contents Entering Slowpolling Mode. DeviceXPlorer enters under Slow Polling Mode. Leaving Slowpolling Mode. DeviceXPlorer leaves from Slow Polling Mode.

Note If you’d like to reduce communication time under Slow Polling Mode, please check “Return error immediately”.

- 183 -

5.20 User Management

5.20.1 Configuration You can configure of operators. Usually, it is set up by Administrator authority (with no password), and restriction of operation is absolutely none.

Item Description

Configuration Configure User.

Login

Login user. The user name is displayed in status bar.

Logout

Logout user.Displayed (Logout) in status bar.

Item Description

User name Specify the User name Password Specify the password Password(Confirm) Specify the password for a check

Contents The operation authority of the user who specified is set up. Please refer to 5.19.2 for explanation of each contents. You cannot modify “Administrator” authority.

New Create a new user. Delete Delete a user. You cannot delete “Administrator”.

- 184 -

5.20.2 Contents List

Item Description Port Edit Enable to configure Port

New Enable to create Port Delete Enable to delete Port

Device Edit Enable to configure Device New Enable to create Device Delete Enable to delete Device

Tag Edit Enable to configure Tag New Enable to create Tag Delete Enable to delete Tag

Group Edit Enable to configure Group New Enable to create Group Delete Enable to delete Group

Device Folder Edit Enable to configure Device Folder New Enable to create Device Folder Delete Enable to delete Device Folder

Structure Edit Enable to configure Structure Tag and Structure Template New Enable to create Structure Tag and Structure Template Delete Enable to delete Structure Tag and Structure Template

Script Edit Enable to configure Script New Enable to create Script Delete Enable to delete Script

User Edit Enable to configure User authority New Enable to create User Delete Enable to delete User

Project File New Enable to create new Project file Load Enable to load project file Save Enable to save project file

Setting of Project Edit Enable to configure Common Properties and Project Properties Monitor Read Enable to monitor of Device Monitor,Watch Monitor, Register Monitor.

Write Enable to write from GUI Application Exit Enable to exit DeviceXPlorer Important - To configure license, You need to login as “Administrator” - User authority is invalid to the client at the time of carrying out COM starting. For example, the application which carried out COM starting also in the state of login by the user without the end authority of application carries out the end of application by the connection release from a client.

- 185 -

5.20.3 Auto Login You can specify Login User when DeviceXPlore starts in Common Properties. If you failed to specify Automatic Login User, DeviceXPlorer start as logoff status.

Specify User name and password.

- 186 -

5.21 Change display language dynamically You can change the display language of DeviceXPlorer without restart application. [Settings] (1) Go to Tools -> Options, specify “Language”, and select other language. (2) Click “OK”.

(3) DeviceXPlorer changes the language.

- 187 -

5.22 DCOM Configuration This section describes how to configure DCOM to connect from a remote computer using OPC. The examples provided in this section are typical configuration examples. Please modify each setting based on your system security needs. Note Please refer to related documents on OS for more details on DCOM.

Important When DeviceXPlorer runs as windows service, the DCOM configuration is required. When OPC Client application runs as windows service and connects with DeviceXPlorer, the DCOM configuration is required.

5.22.1 Overview Client user must be authenticated on the machine on which the OPC server is running in order to enable DCOM connection. Authentication of the client machine user is normally done by configuring one user account and one password on both machines running in a work group. From the user account on the client machine, you log on to the local PC, remote log on to the server machine, and run the OPC server. The following description provides an example of configuration on the OPC server machine, unless otherwise indicated. See below for a configuration example of using DCOM:

Machine Field Simple Secure

Server

Authentication Level None Connect Start Access Right Everyone Arbitrary user name Access Right Everyone Arbitrary user name Identity Interactive User Interactive user/Launching user

Client Pre-defined Authentication Level None None * “Simple” configuration is for when security is not emphasized. To use DCOM in a Windows workgroup environment, start “Local Security Policy” from Administrative Tools and set “Network Access: Sharing and security model for local accounts” to “Classic.” This step is not required when you wish to use DCOM in the domain environment.

Important You cannot connect via DCOM if checking the “Windows firewall” in property window of “Local Area Connection” So you should not check this option button. DCOM can be connected by making the firewall effective by setting security.

- 188 -

- 189 -

5.22.2 Procedure [Start DCOM Configuration Utility] From the Start menu, select “Run” and enter “DCOMCNFG.EXE” to launch the DCOM configuration utility. Note You must log on with Administrator rights to configure DCOM.

[Default Properties] Combined utilities start Navigate through “Component Services” -> “Computer” -> “My Computer.” Right mouse click on “My Computer,” open the Properties page from the pop-up menu, and select the “Default Properties” tab.

* Check the “Enable Distributed COM on this Computer” check box. * Set “Default Authentication Level” to “Connect.” * Set “Default Impersonation Level” to “Identify.” Important On the client machine, set “Default Authentication Level” to “None.”

- 190 -

[COM Security] The change in the DCOM setting is needed.

"DCOMCNFG.EXE" is started from the command line or "Component Service" is opened from the management tool of control panel, and "COM security" tab is selected.

The dialog opens when "Edit limits" button of "Access permit" is pushed. "ANONYMOUS LOGON" is selected to access OPCEnum.exe remotely, and "Remote Access" is set to "Allow".

- 191 -

The dialog opens when "Edit limits" button of "Access permit of starting and making actively" is pushed. "Everyone" is selected, and "Remote Launch" and "Remote Activation" are set to "Allow". Important If client application runs as window service, please add permission to INTERACTIVE and SYSTEM.

- 192 -

[Specific Properties (General)] Right mouse click on ”DeviceXPlorer OPC Server” from“DCOM Config” under “My Computer” ,and select Properties from the pop-up menu.

* Set the “Authentication Level” to “None.”

- 193 -

[Specific Properties (Location)] Select the “Location” tab.

*Check “Run application on this computer.”

- 194 -

[Specific Properties (Security)] Select “Customize” in each field and press “Edit.”

*Add “Everyone” and “SYSTEM” to “launch permissions,” “access permissions,” and “configuration permissions.”

- 195 -

[Specific Properties (ID/Identity)] Select the “ID” tab ,and specify the user account that runs the application.

Select “This User” and specify a user that has Administrator rights. Or select “System Account” to run it as a service program. When launching DeviceXPlorer as a service, it becomes a “System Account,” and you cannot specify it as an “Interactive User” or “Launching User.” Important Restart computer with changing DCOM Configuration.

- 196 -

[Firewall(Exceptions])] The Windows firewall is effectively set by default. It explains the method of connecting DCOM with DeviceXPlorer with the firewall made effective since it the next pages. The application to pass the firewall can be specified in "Exceptions" tab. And push "Add Programs" button and add "DeviceXPlorer OPC Server.exe". Moreover, to browse the installed server list from another node with the OPCENUM function, add "OpcEnum.exe".

In addition, port "135" of "TCP" used with DCOM pushing "Add Port" button is added.

- 197 -

5.23 Sample Programs It is shown the sample programs by using Visual Studio. Also refer to the sample project installed to “INSTALL FOLDER¥Sample” after installed the product. Note Please acknowledge not answering the inquiry concerning the sample code, the development language, and the programming introduces in this paragraph.

5.23.1 Accessing from Visual C/C++ 6.0 via OPC It shows the sample program accessing DeviceXPlorer by using Visual C/C++ with COM interface. [CONNECT]

[CREATE OPC GROUP]

- 198 -

[ADDING OPC ITEM]

[READ]

[DISCONNECT]

- 199 -

5.23.2 Accessing from Visual Basic 6.0 via OPC It shows the sample program accessing DeviceXPlorer by using Visual Basic 6.0. [CONNECT]

[CREATE OPC GROUP]

[ADDING OPC ITEM]

[READ]

[DISCONNECT]

- 200 -

5.23.3 Accessing from Visual Basic 6.0 via DDE The text box control and the label control are arranged in the form, and property related to DDE is set. When LinkMode is set to "automatic", the value is read to the TEXT property.

Property Content Exsample LinkTopic DDE ApplicationName + ”|” + Topic Name Dxp|Device1 LinkItem DDE Item Name D0 LinkMode DDE Link Mode (0:NONE, 1:Auto, 2:Manual) 1

[Sample program reading the value from PLC]

[Sample program poking the value to PLC]

- 201 -

5.23.4 Accessing from EXCEL via DDE Enter "=application name|topic name!item name" in the cell in order to access DeviceXPlorer from an EXCEL sheet. See below for an example of accessing the topic name "PLC1" data register "D0":

Use the EXCEL macro and DDE POKE command to describe as follows: Chn = DDEInitiate("MelsecEthernet", "topic name") DDEPoke Chn, "item name", Data_Reference DDETerminate (Chn) Note - Chn indicates the return value of the INITIATE command. - Data_Reference uses the ID of the cell written to with POKE. - Use the TERMINATE command when done to close the channel. - Delay the TERMINATE command in order to ensure POKE is executed. - For other access methods, refer to the sample program included with the product.

- 202 -

6 Script User can input original logic in DeviceXPlorer by using script. Device, Group and Struct Template can have event and methodtag can have event. About methodtag, please check 5.8.

6.1 Event Script Settings Device, Group and Struct Template have event list. Event list will be displayed when select [Event] from right-click menu for Device and Group.

Event will be displayed in event list. You can create, modify, delete and run/stop event from right-click menu.

Note No limitation for script count. Please be careful because many scripts may influence communication performance.

- 203 -

Input script setting.

Item Information Name Set script name. Run Specify run state of script.

If no check, script is not performed. Event Specify event condition.

Period - - - Script is performed the specified cycle (fixed cycle). TagChange- - - Script is performed when the value of the tag changed. Run Event- - - Script is performed at the time of event engine starting of the parent Device. (*) Stop Event- - - Script is performed at the time of event engine stopping of the parent Device. (*)

Tag When "TagChange" is chosen in Event, a specification tag and conditions can be specified. Static tag and dynamic tag can be specified. You cannot use array tag and string tag. [While ON] - - -While a specification tag turns on, it performs at a case (when it is except zero). [Change] - - - Script is performed at the time of specified tag’s Value or Quality or Timestamp changing. [Change(Value)] - - - Script is performed at the time of specified tag’s Value changing. [Change (Quality)] - - - Script is performed at the time of specified tag’s Quality changing. [Change (Time stamp)] - - - Script is performed at the time of specified tag’s Timestamp changing. [Rise] - - - Script is performed at the time of specified tag changes to ON from OFF. [Fall] - - - Script is performed at the time of specified tag changes to OFF from ON.

Period Specify running interval and communication interval of script. Script Describe User logic (script) . There are size restrictions of 32767 characters per one script.

The lists of properties, functions and code-snippet are shown by pushing “Ctrl + Space key”. Tag browse dialog is shown by pushing “Ctrl + B” or “Ctrl + Insert key”.

* Event engine starts at the time of starting and stops at the time of application closing. And event engine will reboot to the timing when user creates, modifies and deletes script.

- 204 -

- 205 -

6.2 Script Specification Script in DeviceXPlorer uses open script language Lua . Please refer to the official reference of Lua for the basic specification of Lua.

6.3 Extend Specification DeviceXPlorer has some extend specifications for Lua.

6.3.1 Reserved Word The word which starts with Dxp cannot be used.

Object Type Information

Dxp Table The constant, a class, a function, etc. are defined as a member of this table.

6.3.2 Constant Value Object Type Table (Dxp.ObjectType )

Constant Value Type Value Information Dxp.ObjectType Tag Number 1 Tag Device Number 2 Device Group Number 3 Group Struct Number 4 Struct Port Number 5 Port Method Number 6 Method EventScript Number 7 EventScript Tag Type (Dxp.TagType)

Constant Value Type Value Information Dxp.TagType Boolean Number 1 Boolean Tag Number Number 2 Number Tag String Number 3 String Tag Boolean Array Number 4 Boolean Array Tag

Number Array

Number 5 Number Array Tag

- 206 -

6.3.3 Classes The following class (table) can be used. The instance of the following classes is acquired by using the access macro provided originally by DeviceXPlorer.

Class Information

BooleanTag NumberTag StringTag BooleanArrayTag NumberArrayTag

Tag Access Class This class offers the function accessed about a property common to some tags. There are five kinds, the object for Boolean Tag, t Number Tag, String Tag, Boolean Array Tag, and Number Array Tag, and it is necessary to use properly according to the data type of a tag.

Group Group Access Class Device Device Access Class. This is derived from the Group Access Class. Struct Struct Intance Access Class. This is derived from the Group Access Class. Port Port Access Class EventScript Event Script Access Class Method Method Access Class Time Time Class

- 207 -

6.3.3.1 Tag Access Class Tag Access Class ( BooleanTag, / NumberTag / StringTag / BooleanArrayTag / NumberArrayTag)

Member Type Attribute Information ObjectType Number R Object type (Dxp.ObjectType.** ) ObjectClassName String R Object type name ( Example : MelsecEthernetTag ) Path String R Path Name String R Tag name Config String R Setting parameter ( csv format )

Value (Different from class)

Boolean Number String

R/W

Boolean type in the case of Boolean Tag. Number type in the case of NumberTag. String type in the case of StringTag or BooleanArrayTag, and NumberArrayTag. Array tag’s value becomes a comma separated value. If a new value is assigned, with a script execution thread, DeviceXPlorer will do asynchronous value writing to PLC in the end of script. Please refer to 6.3.8about writing value.

Quality Number R Quality flag Timestamp Time R Timestamp Location String R Location String TagType Number R Tag’s Type (Return Dxp.TagType.**) VariantType Number R Tag’s data type (Return VARIANT : vt) Comment String R Comment Simulate Boolean R/W Simulation Status.

Function Information

ToString() [Return value] instance information (String) "ObjectTypeName {ClassName, Name, Path, Location, Value }"

ToStringValue() [Return value] string converted from value of the tag (String) HasValue() [Return value] whether tag has value or not (Boolean)

GetValue( element ) (Only Array tag)

[Argument value] element : element index of array (Number) [Return value] specified element value (Number) Boolean type in BooleanArrayTag Number type in NumberArrayTag

SetValue( element, value ) (Only Array tag)

[Argument value] element : element index of array (Number) value : set value (Boolean or Number ) [Return value] None

GetParent() [Return value] Group (Group, Device, Struct)

- 208 -

6.3.3.2 Group Access Class Group Access Class ( Group )

Member Type Attribute Information ObjectType Number R Object type (Dxp.ObjectType.** )

ObjectClassName String R Object type name ( Example : BaseGroup / MelecEthernetGroup )

Path String R Path Name String R Name Config String R Setting parameter ( csv format )

Function Information

ToString() [Return value] instance information (String) “ObjectTypeName{ ClassName, Name, Path }”

ResolvePath( name ) [Argument value] name : Subordinate's relative path (String) [Return value] Fullpath

FindChild( name ) [Argument value] name : Subordinate's relative path (String) [Return value] Object Access Class( BooleanTag , Device etc), Function <Example> local group = @@g( "Group1" ); local tag = group:FindChild( "tag1" );

GetParent() [Return value] Group (Group, Device, Struct) GetEvent(name ) [Argument value] name : event script name (Stirng)

[Return value] Event (EventScript) GetMethod(name ) [Argument value] name : method tag name (Stirng)

[Return value] Method (Method)

6.3.3.3 Device Access Class Device Access Class ( Device )

Member Type Attribute Information Status Boolean R Communication Status. Areas of $Status (SystemTag) Standby Boolean R/W Redundancy Status. Areas of $Standby (SystemTag) Simulate Boolean R/W Simulation Status. Areas of $Simulate (SystemTag)

Function Information

ToString() [Return value] instance information (String) “ObjectTypeName { ClassName, Name, Status, Standby, Simulate }”

GetPortName() [Return value] Port Name (String )

GetPort() [Return value] Port (Port ) The instance of port related with this device is returned. Nil is returned if this function is failed.

GetStandbyDevicePath() [Return value] Full path of standby device( String )

GetStandbyDevice() [Return value] Standby device ( Device ) The instance of standby-device for this device is returned. Nil is returned if the redundant-communication is not specified.

Note

- 209 -

Device Access Class is derived from Group Access Class. The members (properties, functions) of Group Access Class can be used.

- 210 -

6.3.3.4 Struct Access Class Struct Access Class ( Struct )

Member Type Attribute Information TypeName String R Type name

Function Information

ToString() [Return value] instance information (String) “ObjectTypeName{ ClassName, Name, StructTypeName }”

Note Struct Access Class is derived from Group Access Class. The members (properties, functions) of Group Access Class can be used.

6.3.3.5 Port Access Class Port Access Class ( Port )

Member Type Attribute Information ObjectType Number R Object type (Dxp.ObjectType.** ) ObjectClassName String R Object type name ( Example : EthernetPort ) Path String R Path Name String R Port Name Config String R Setting parameter ( csv format )

Function Information

ToString() [Return value] instance information (String) “ObjectTypeName { ClassName, Name }”

6.3.3.6 Event Script Access Class Event Script Access Class ( EventScript )

Member Type Attribute Information ObjectType Number R Object type (Dxp.ObjectType.** ) ObjectClassName String R Object type name ( Example : EventScript ) Path String R Path Name String R Event Script Name Config String R Setting parameter ( csv format ) Enabled Boolean R/W Event status.

Function Information

ToString() [Return value] instance information (String) “ObjectTypeName { ClassName, Name }”

- 211 -

Run()

Run Event Script manually. [Return value] None <Sample1> local device = @d( "Device1" ); local event = device:GetEvent( "script01" ); event:Run(); <Sample2> local event = @e( "Device1.script01" ); event:Run();

6.3.3.7 Method Access Class Method Access Class (Method)

Member Type Attribute Information ObjectType Number R Object type (Dxp.ObjectType.** ) ObjectClassName String R Object type name ( Example : Method ) Path String R Path Name String R Event Script Name Config String R Setting parameter ( csv format ) Enabled Boolean R/W Event status.

Function Information

ToString() [Return value] instance information (String) “ObjectTypeName { ClassName, Name }”

Run()

Run Method manually. [Return value] None <Sample1> local device = @d( "Device1" ); local method = device:GetMethod( "Method01" ); method:Run(); <Sample2> local method = @m( "Device1.method01" ); method:Run();

6.3.3.8 Time Class Time Class ( Time )

Member Type Attribute Information High Number R/W High Value Low Number R/W Low Value

Function Information

Format (format )

[Argument ] format : Time format (String) * elision is OK. [Return value] Time String (String ) <Sample> local time = Dxp.GetCurrentTime(); Dxp.LogInfoMessage( time:Format("%Y/%m/%d %H:%M:%S") ); Specify format of COleDateTime::Format().

- 212 -

Diff( Time ) Get difference of the time of Second [Argument] Time : Time class ( Time ) [Return value] difference second time ( Number )

Year() [Return value] Year ( Number ) Month() [Return value] Month. 1 to 12 ( Number ) Day() [Return value] Day. 1 to 31 ( Number ) Hour() [Return value] Hour. 0 to 23 ( Number ) Min() [Return value] Minute. 0 to 59 ( Number ) Sec() [Return value] Second. 0 to 59 ( Number ) WDay() [Return value] Week day 1(Sunday) to 7 (Saturday) ( Number )

6.3.4 Functions Under the global table Dxp, public and provide the following function.

Function Content Dxp IsTag( path, name )

IsDevice( name ) IsGroup( path, name ) IsStruct( path, name ) IsPort( name ) IsMethod( path, name ) IsEvent( path, name )

This is to confirm whether the object exists for each access class. [Argument] path : Path ( String ) name : Name ( String ) [ Return value ] Whether there is a specified type of object(Boolean)

GetObject( path, name) This will get the object access class. [Argument] path : Path ( String ) name : Name ( String ) [ Return value ] Object access class (BooleanTag, Device etc)

GetObjectType( path, name) This will get the type of object access class. [Argument] path : Path ( String ) name : Name ( String ) [ Return value ] Object type (Number : Dxp.ObjectType.***)

GetObjectTypeString( type ) This will get the name of the class type of object access. [Argument] type : Object Type (Number : Dxp.ObjectType.***) [Return value] Object type name (String)

GetDelimiter() This gets the delimiter character. [Return value] Name space delimiter ( String )

MakePath( fullpath, child ) Which takes the path with a delimiter character. [Argument] fullpath : Absolute path of the parent ( String ) child : Child name ( String ) [Return name] Absolute path of the parent + Name space delimiter + Child name

GetQualityString( quality ) This will get a string of quality flags. [Argument] quality : Quality flag of the tag(Number) [Return value] Quality flag string (String )

IsGoodQuality( quality ) This will determine whether the flag is Good quality. [Argument] quality : Quality flag of the tag ( Number )

- 213 -

[Return value] Good quality flag is whether ( Boolean ) IsBadQuality( quality ) This will determine whether the flag is Bad quality.

[Argument] quality : Quality flag of the tag ( Number ) [Return value] Bad quality flag is whether ( Boolean )

IsUncertainQuality( quality ) This will determine whether the flag is Uncertain quality. [Argument] quality : Quality flag of the tag ( Number ) [Return value] Uncertain quality flag is whether ( Boolean )

CopyTagsValue( dst, src ) This will copy hierarchically to another group, the value of the tag in the group. [Argument] dst : Destination path ( String ) src : Souce path ( String ) [Return value] Whether or not the operation was successful ( Boolean )

SyncRead( tags ) This is done in a synchronous read. [Argument] tags : Table that contains the tag( Tag ) [Returm value] Result Success / Failure (Boolean ) <Example> local tags = {}; -- Set the tag to be read for i=1, 10, 1 do tags[i] = @t( "Device1.Tag" .. i ); end -- Synchronous read local ret = Dxp.SyncRead( tags ); -- Read the results local sum = 0; for i=1, 10, 1 do sum = sum + tags[i].Value; end

SyncWrite( tags ) This is done in a synchronous write. [Argument] tags : Table that contains the tag ( Tag ) [Return value] Result Success / Failure (Boolean ) <Example> local tags = {}; -- Set the tag to be written. Set the value of writing. for i=1, 10, 1 do tags[i] = @t( "Device1.Tag" .. i ); tags[i].Value = 123; end -- Synchronous write local ret = Dxp.SyncWrite( tags );

LogMessage( msg ) This script outputs the log message. [Argument] msg : Output message ( String )

LogInfoMessage( msg ) This will output the info message. [Argument] msg : Output message ( String )

LogWarningMessage( msg ) This will output a warning message. [Argument] msg : Outoput message ( String )

LogErrorMessage( msg ) This will output an error message. [Argument] msg : Output message ( String )

GetCurrentTime() This gets the current time. [Return value] Current time ( Time )

And( num1, num2 ) This is done in various bit operations (AND / OR / XOR / NOR / NAND).

- 214 -

Or( num1, num2 ) Xor( num1, num2 ) Nor( num1, num2 ) Nand( num1, num2 )

[Argument] num1 : Target number 1( Number ) num2 : Target number 2(Number) [Return value] The result of the bitwise operation various (Number)

Not( num ) This is done bit operations ( NOT ) [Argument] num : Target number (Number) [Return value] The result of the bitwise operation ( NOT ) .(Number)

- 215 -

6.3.5 Access Macros DeviceXPlorer provides following macros originally. Access Macros creates the instance of tag, device, group, struct, method and port.

Macro Content

@( fullpath )

Absolute access macro. You can access the structure, methods, and to the port, by enclosed in double quotes followed by at sign, the absolute path The nil is returned if the target object is not found. <Example1> @("Device1.Tag1").Value = 1; <Example2> local tag = @("Device1.Tag1"); tag.Value = 1;

@t( fullpath ) Absolute access macro for tag. This macro creates the instance of the Tag Access Class.

@d( fullpath ) Absolute access macro for device. This macro creates the instance of the Device Access Class.

@g( fullpath ) Absolute access macro for group. This macro creates the instance of the Group Access Class.

@s( fullpath ) Absolute access macro for struct. This macro creates the instance of the Struct Access Class.

@m( fullpath )

Absolute access macro for method. This macro creates the instance of the Method Access Class. This is the sample to call “SetAuto” method when this method is created in the “Device1” device. <Example1> local ret = @m("Device1.SetAuto"):Run(); <Example2> local method = @m("Device1.SetAuto"); local ret = method:Run();

@e( fullpath ) Absolute access macro for event script. This macro creates the instance of the Event Script Access Class.

@p( fullpath ) Absolute access macro for port. This macro creates the instance of the event Port Access Class.

@@ @@( relativePath )

Relative access macros. This macros that you can access the object with a relative path. How to write in the description of enclosed in double quotation marks at the two and a relative path or two at sign. The nil is returned if the target object is not found. @@( "RelativePath" ) - - - Access to child objects relative @@ - - - Themselves (this) This is the sample to output message which has value of “Tag1” tag and name of “Device1” device, when this tag is created in this device. <Example1> Dxp.LogInfoMessage( @@.Name .. " / " .. @@("Tag1"):ToStringValue() ); <Example2> local device = @@; local tag = @@("Tag1");

- 216 -

Dxp.LogInfoMessage( device.Name .. " / " .. tag:ToStringValue() ); @@t( relativePath ) Relative access macro for tag. This macro creates the instance of the Tag Access Class. @@g( relativePath ) Relative access macro for group. This macro creates the instance of the Group Access

Class. @@s( relativePath ) Relative access macro for struct. This macro creates the instance of the Struct Access

Class. @@m( relativePath ) Relative access macro for method. This macro creates the instance of the Method Access

Class. @@e( relativePath ) Relative access macro for event script. This macro creates the instance of the Event

Script Access Class.

- 217 -

6.3.6 Priority of Finding Object Indicates a preference for objects that can be retrieved from the Object access macro(≒GetObject function / GetObjectType function). For example, when there are same pot name and device name, this will be replaced by the process of obtaining a device. If you want to get the port explicitly, please use the port access macro.

Rank Object High Tag, Method | Group, Structure instance | Event script | Device Low Port

6.3.7 Units of Running Script DeviceXPlorer has Lua Engines per device. Scripts run on threads separated by devices. The script on the “Device1” waits for finishing of waiting timeout and retrying, when you use synchronous reading(Dxp.SyncRead) for the child tag(eg Device1.Tag1) while the controller is down. The script on the "Device2" is not affected from waiting for "Device1".

6.3.8 About Script Writing If a new value is assigned to the Value property of a tag access object or a new value is set by the SetValue method of an arrangement tag access object, script engine will do asynchronous write and will write a value to PLC. Asynchronous writing is not performed when a synchronous write-in function is called after value substitution with a script. However, asynchronous writing is performed when value substitution is carried out after a synchronous write-in function call. Demands of asynchronous writing is queueing if script writes repeatly to the device which is down. The demands are processed and write values to the contoller in turn, when the device restored. DeviceXPlorer outputs an error to the message view if the queue count reaches the upper limit. You should stop writing in the script while device is down. Otherwise, you can control by the "Reduce write-queue" at the Project Properties.

- 218 -

6.4 Samples

6.4.1 Basic Example This sample shows the basic example. At first, make the tag (Device1.Tag001) in the Device1.

Make two event scripts in the Device1.

Initialize script(Run Script) initializes the global variables and functions. Scripts are executed in the processing engine per devices (Refer to 6.3.7 Units of Running Script). So global variables and functions are able to be shared between the device and child groups.

Script Example (Initialize) 1 2 3 4 6 7 8

-- define the function function CalcAdd( val1, val2 ) return val1 + val2; end -- declare gloval variable g_counter = 0;

Cycle script(Period) implements the processing that continues always running. You can use global variables and functions which is defined in the Initialize script in this script. You can use “local” keyword to declare the local variable. If you want to access the tags, you can use the Tag Access Macro (@t, @@t). For accessing the properties of tag, you can use dot “.”. For calling the method of tag, you can use colon ”:” (This is the specification which can omit “this” object for first argument in the Lua language.). You can use the functions which is defined under the “Dxp” namespace, e.g. “Dxp.LogMessage()” function.

Script Example (Cycle) 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20

-- Count up global variable g_counter = g_counter + 1; -- Getting tag access object with local variable local tag = @@t( "Tag001" ); -- Calling the function and writing the value of tag tag.Value = CalcAdd( g_counter, 1000 ); -- Output message log (WarningLog) Dxp.LogWarningMessage( "counter=" .. g_counter .. " / tag=" .. tag:ToStringValue() ); -- If example if ( g_counter % 5 == 0 ) then -- For example local i; for i=0, 10, 1 do Dxp.LogInfoMessage( "i=" .. i ); end end

- 219 -

- 220 -

6.4.2 Easy CSV Logging This sample shows a simple example about collecting the values of tags to the CSV file. At first, make the tags in the Device1.

Make event script in the Device1.

Implement the CSV logging about three tags.

Script Example (SimpleLogging) 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

local f, msg = io.open("C:¥¥Work¥¥Log.csv", "a+" ); -- Check the open result if (f == nil) then Dxp.LogErrorMessage( "File Open Error (" .. msg .. ")" ); return; end -- Make CSV local text = ""; text = text .. Dxp.GetCurrentTime():Format(); text = text .. "," .. @@t("Tag001"):ToStringValue(); text = text .. "," .. @@t("Tag002"):ToStringValue(); text = text .. "," .. @@t("Tag003"):ToStringValue(); -- Write to file f:write( text .. "¥n" ); -- Close the file f:close(); -- Dump log Dxp.LogMessage( text );

If you change the code to use the tag of array type, you can realize easily the logging about big continuous data.

Script Example (SimpleLogging) : 9

10 11 12 13 14 :

-- Make CSV local text = ""; text = text .. Dxp.GetCurrentTime():Format(); text = text .. "," .. @@t("ArrayTag"):ToStringValue(); -- Write to file

- 221 -

6.4.3 Example which defines the class in the external file (Bridge) This sample shows how you can define the class in the external file with the bridge example. At first, make the tags (Device1.Tag001 – 005, Device2.Mem001 - 005) in the devices (Device1, Device2).

Make the event script in the SYSTEM.

Initialize script (Run Script) loads the external script file. So you can use BridgeSample class which is defined in the external file. About the instance of BridgeSample class you created, it stores to the global variable. By calling the method of BridgeSample instance, you can register the path that you want.

Script Example (Initialize) 1 2 3 4 5 6 7 8 9

require( "lua/BridgeSample" ); g_bridge = BridgeSample.New(); g_bridge:Add( "Device1.Tag001", "Device2.Mem001" ); g_bridge:Add( "Device1.Tag002", "Device2.Mem002" ); g_bridge:Add( "Device1.Tag003", "Device2.Mem003" ); g_bridge:Add( "Device1.Tag004", "Device2.Mem004" ); g_bridge:Add( "Device1.Tag005", "Device2.Mem005" );

Bridge script(Period) does the bridge by calling the method of BridgeSample instance.

Script Example (Bridge) 1 2 3

g_bridge:BridgeForward();

- 222 -

Make the external exript file in the “Lua” folder. You should make “Lua” folder in the Bin Folder(C:¥Program Files (x86)¥TAKEBISHI¥DeviceXPlorer OPC Server 5¥Bin¥) if it is first time to making the external script file.

Script Example (<Bin Folder>¥Lua¥BridgeSample.lua) 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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59

if (LUA_TKB_BRIDGE_SAMPLE_INCLUDE == nil) then LUA_TKB_BRIDGE_SAMPLE_INCLUDE = 1; -- ******************************************************************* -- BridgeData class -- ******************************************************************* BridgeData = { New = function(_DstTagPath, _SrcTagPath) return { SrcTagPath = _SrcTagPath, DstTagPath = _DstTagPath, SrcTag = nil, DstTag = nil, -- ///////////////////////////////////////////////////////// -- PrepareTag method -- ///////////////////////////////////////////////////////// PrepareTag = function(this) this.SrcTag = Dxp.GetTag( "", this.SrcTagPath ); this.DstTag = Dxp.GetTag( "", this.DstTagPath ); local found = true; if ( this.SrcTag == nil) then Dxp.LogErrorMessage( "BridgeData - Not found SrcTag [" .. this.SrcTagPath .. "]" ); found = false; end if (this.DstTag == nil ) then Dxp.LogErrorMessage( "BridgeData - Not found DstTag [" .. this.DstTagPath .. "]" ); found = false; end if ( found == false ) then this.SrcTag = nil; this.DstTag = nil; end return found; end, -- ///////////////////////////////////////////////////////// -- HasValue method -- ///////////////////////////////////////////////////////// HasValues = function(this) if ( this.SrcTag:HasValue() == false ) then return false; end if ( this.DstTag:HasValue() == false ) then return false; end return true; end, -- ///////////////////////////////////////////////////////// -- BridgeForwared method

- 223 -

60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120

-- ///////////////////////////////////////////////////////// BridgeForward = function(this) this.DstTag.Value = this.SrcTag.Value; end, -- ///////////////////////////////////////////////////////// -- BridgeInverse method -- ///////////////////////////////////////////////////////// BridgeInverse = function(this) this.SrcTag.Value = this.DstTag.Value; end }; end }; -- ******************************************************************* -- BridgeSample -- ******************************************************************* BridgeSample = { New = function() return { Bridges = {}, -- ///////////////////////////////////////////////////////// -- Add method -- ///////////////////////////////////////////////////////// Add = function(this, dstPath, srcPath) -- Create Bridge Data local data = BridgeData.New( dstPath, srcPath ); this.Bridges[#this.Bridges + 1] = data; -- At first, get tag to start communication with PLC for getting values data:PrepareTag(); end, -- ///////////////////////////////////////////////////////// -- BridgeTags method -- ///////////////////////////////////////////////////////// BridgeForward = function(this) -- Wait for getting values for i=1, #this.Bridges, 1 do local data = this.Bridges[i]; if ( data:HasValues() == false ) then return false; -- failed end end -- Do Bridge for i=1, #this.Bridges, 1 do local data = this.Bridges[i]; data:BridgeForward(); end return true; -- succeeded end }; end }; end

- 224 -

6.4.4 Example which defines the class in the external file (Timer) This sample shows how you can define the class in the external file with the timer example. At first, make the tag (SYSTEM.Running).

Make the event script in the SYSTEM.

Initialize script (Run Script) loads the external script file. So you can use TimerSample class which is defined in the external file. About the instance of TimerSample class you created, it stores to the global variable.

Script Example (Initialize) 1 2 3 4 5 6

require( "lua/TimerSample" ); -- Timer g_timer = TimerSample.New(); g_timer:Stop();

StartStop script(SYSTEM.Running : Change(Value)) starts and stops the timer by calling the method of TimerSample instance.

スクリプト例(StartStop) 1 2 3 4 5 6 7 8

if ( @t("SYSTEM.Running").Value == true ) then g_timer:Start(); Dxp.LogInfoMessage("Timer Start"); else g_timer:Stop(); Dxp.LogInfoMessage("Timer Stop"); end

Timer script(Period) checks the time-up(10 second) and outputs the log message and repeats it.

Script Example (Timer) 1 2 3 4 5

if ( g_timer:Elapsed(10) == true ) then Dxp.LogInfoMessage( "Time up !" ); g_timer:StartAdd(10); end

Make the external exript file in the “Lua” folder. You should make “Lua” folder in the Bin Folder(C:¥Program Files (x86)¥TAKEBISHI¥DeviceXPlorer OPC Server 5¥Bin¥) if it is first time to making the external script file.

Script Example (<Bin Folder> ¥Lua¥TimerSample.lua) 1 2 3 4

if (LUA_TKB_TIMER_SAMPLE_INCLUDE == nil) then LUA_TKB_TIMER_SAMPLE_INCLUDE = 1; -- *******************************************************************

- 225 -

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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

-- TimerSample class -- ******************************************************************* TimerSample = { New = function() return { Running = true, LastTime = os.time(), -- ///////////////////////////////////////////////////////// -- Start method -- ///////////////////////////////////////////////////////// Start = function( this ) this.LastTime = os.time(); this.Running = true; end, -- ///////////////////////////////////////////////////////// -- StartAdd method -- ///////////////////////////////////////////////////////// StartAdd = function( this, sec ) local nowTime = os.time(); this.LastTime = this.LastTime + sec; if ( this:Elapsed(sec) == true ) then this.LastTime = nowTime - sec; end this.Running = true; end, -- ///////////////////////////////////////////////////////// -- Elapsed method -- ///////////////////////////////////////////////////////// Elapsed = function( this, sec ) if ( this.Running == false ) then return false; end local planTime = this.LastTime + sec; local nowTime = os.time(); local diffSec = os.difftime( planTime, nowTime ); if ( diffSec <= 0 ) then lastTime = planTime; return true; -- Time up ! end return false; -- Not time up end, -- ///////////////////////////////////////////////////////// -- Stop method -- ///////////////////////////////////////////////////////// Stop = function( this ) this.Running = false; end }; end; }; end

- 226 -

7 Troubleshooting

7.1 Error Messages Error messages showed in log view are listed below.

Message Contents Open error (Code=XXXX) Error occurred when opening port Send error (Code=XXXX) Error occurred when transmitting Receive error (Code=XXXX) Error occurred when receiving Response timeout error (wait=xxx, got=xxx) Response timed out. Wait=xxx indicates the byte size that the OPC Server is

waiting. Got=xxx indicates the byte size that have been received actually Size error of transmitted message Size of the data that was actually sent was different from that of the send data.

This error occurs if the cable is disconnected when the computer uses RS232C. Size error of received message Size of the data that was actually received was different from that of the data

that it was supposed to receive. This error also occurs in RS232C communication.

Header error of received message The head of received data is abnormal. Received NAK (Code=XXXX) NAK is received from PLC. Communication Error Any other error Sum check error The sum check results of received data do not correspond to the data of the

message. Bad com port handle Requested device mode cannot be configured. Receive queue overflow Receive queue is overflow. Receive overrun Overrun error occurred when receiving data. Communicate by lowering the

baud rate. Receive parity error Parity error occurred. Receive framing error Framing error occurred. Received BREAK BREAK was found in channels. I/O Error I/O error occurred. Transmit queue overflow Transmit queue is overflow.

* Contents of Code=XXXX depend on the port you use.

7.1.1 The source of the Response timeout error in the Ethernet connection The outbreak factor that the Response timeout error in Ethernet connection is follows mainly. The trouble of the network adapter may be the outbreak factor. No. Source Solution 1 High network load (Chronic / Momentary ) Please reduce the workload of network. 2 CPU-hogging (Chronic / Momentary ) Please reduce the workload of CPU.

3 Windows ARP ( the case which time-out error occurs every 10 minutes )

Please change ARP cache settings of Windows OS.

4 Time of time-out of Ethernet port is short. Please extend the time of Time-out of Ethernet port on DeviceXPlorer.

Below is source of timeout error in case of UDP/IP (In case of TCP/IP, Open error occurs by these source 5 and 6.)

5 PLC power is off or the LAN cable is break. Please check the power condition and LAN cable.

6 The Ethernet parameter of PLC and DeviceXPlorer may be mistake.

Please check the Ethernet parameter of PLC and DeviceXPlorer.

Note

- 227 -

TCP/IP communication is stable communication protocol. So if you can select UDP/IP or TCP/IP, please use TCP/IP.

- 228 -

7.1.2 Ethernet Error Code (Winsock Error Code)

Code Contents 10024 There are no available file descriptors. 10022 Socket is not bound yet to address. 10035 Connection could not be completed because of unblocking socket. Time-out error occurred. 10036 Windows socket operation that is currently executed is blocked. 10038 Descriptor is not a socket. 10039 Address is required. 10040 Datagram was shortened because it was too long to fit the specified buffer.

10048 The defined address is currently occupied. (This error happens when you set the number other than 0 as the port number.)

10049 The specified address is not available from the local machine. 10050 Windows socket implement found out an error of network subsystem. 10051 Now it is unable to reach network from host. 10052 Windows socket implement dropped a socket. You should reset the connection. 10053 Virtual circuit is aborted because of time-out error or some other error. Check Ethernet cable.

10054 Virtual circuit was reset from the Remote. This error happens when CPU has been reset and power has been turned off.

10055 There is no available buffer range. Socket cannot be connected. Please reduce the number of connections of TCP.

10056 Socket has already been connected. 10057 Socket is not connected. 10058 Socket was shut down.

10060 Connection was attempted but not completed because it timed out. Check the Ethernet channels and PCL programming.

10061 Connection was attempted but rejected. Previous connection remains in the PLC. Reset CPU or turn off the signal for open request. Check the port number.

258 Connecting PLC is failed by timeout. Please confirm whether the PLC works well or not.

39321

7.1.3 Serial Error Code

Code Contents 2 Specified port does not exist. 5 Specified port already open by other process.

- 229 -

8 Appendix

8.1 How to use of the OPC Test Client Please refer Client Sample Manual. You can open the manual at “Client Sample Manual” at “Client Sample” at “DeviceXPlorer” at “programs” at Start Menu of Windows.

8.2 About Sample Programs Sample programs are stored in the Samples folder of the folder of DeviceXPlorer installation directory. Please refer to the "Samples" folder of installation media for the other sample program. For details, please refer to a DeviceXPlorer client sample guide.

8.3 User Support TAKEBISHI offers a user support service to customers who have completed user registration. If you have any questions about how to set up or operate DeviceXPlorer, please contact the support service detailed below. When you contact the support service, you will be asked to confirm the following information, so please have it ready.

(1) Product name, serial number (written on the CD, license certificate and user registration card) (2) PC model, OS/service packs (3) PLC CPU type, communication unit model (4) Client software version/service pack/development language

Note The support service may not be able to answer questions that do not relate to DeviceXPlorer, such as how to set up the hardware and device driver or how to program the sequence programs and sample programs.

User Support TEL 075-325-2261/FAX 075-325-2273 [email protected] Open: 9:00 - 12:00 / 13:00 - 17:00

- 230 -

8.4 Copyright Information The copyright information on the third party software currently used by DeviceXPlorer is shown.

8.4.1 Scintilla License for Scintilla and SciTE Copyright 1998-2003 by Neil Hodgson <[email protected]> All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

8.4.2 Lua Copyright(C) 1994-2012 Lua.org, PUC-Rio. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

8.4.3 tolua++ Copyright (C) 2009 Ariel Manzur. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

- 231 -

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

8.4.4 CGridListCtrlEx Copyright 2012 by Rolf Kristensen, under CPOL ( The Code Project Open License ).

F10191S-A016 December 2018

DeviceXPlorer OPCServer User’s Guide

Server Edition

Instalaciones en Getaria

Larraioz Etxea, Eizaga Auzoa, Garate Mendi E-20808

GETARIA (Gipuzkoa), Spain

Instalaciones América Latina

Carlos Calvo 2480, B8000XAVBuenos Aires (Buenos Aires),

Argentina

Dirección postal

Larraioz Electrónica Industrial, S.L. Apartado de Correos 193 E-20800 ZARAUTZ

(Gipuzkoa), Spain

Instalaciones centrales

Francisco Aristeguieta Centro Tecnológico (F.A.C.T.)GI-3162 (Zarautz – Urdaneta) km 2,2

E-20809 AIA (Gipuzkoa), Spain

Tel. (+34) 943 140 139Fax. (+34) 943 140 327

E-mail. [email protected]

www.larraioz.com

SERVICIO TÉCNICO, CONSULTORÍA, TRAINING Y CANAL DE VENTA OFICIAL

Industry 4.0 VisionIndustrial AutomationMechatronics & Robotics