Sie sind auf Seite 1von 254

Industrial IT Quality Control 4.

0
powered by 800xA extended automation Theory of Operation Guide System Version 4.0

3BUS208222 R4001

NOTICE
The information in this document is subject to change without notice and should not be construed as a commitment by ABB. ABB assumes no responsibility for any errors that may appear in this document. In no event shall ABB be liable for direct, indirect, special, incidental or consequential damages of any nature or kind arising from the use of this document, nor shall ABB be liable for incidental or consequential damages arising from use of any software or hardware described in this document. This document and parts thereof must not be reproduced or copied without written permission from ABB, and the contents thereof must not be imparted to a third party nor used for any unauthorized purpose. The software or hardware described in this document is furnished under a license and may be used, copied, or disclosed only in accordance with the terms of such license. This product meets the requirements specified in EMC Directive 89/336/EEC and in Low Voltage Directive 72/23/EEC.

Copyright 2005 ABB All rights reserved. Release: January 2005 Document Number: 3BUS208222 R4001

ii

3BUS208222 R4001

TRADEMARKS
Registrations and trademarks used in this document include: Windows is a registered trademark of Microsoft Corporation. Acrobat Reader is a registered trademark of Adobe Systems Inc. IndustrialIT is a trademark of ABB.

3BUS208222 R4001

iii

About This Book


General
This book describes the theory of operation and troubleshooting tools and procedures for Industrial IT Quality Control 4.0. The targeted audience includes ABB Project and Service engineers. The user of this guide is expected to have experience with ABB IndustrialIT products and the Industrial IT Quality Control 4.0 and to have attended the appropriate training courses.

Intended User Use of Warning, Caution, Information, and Tip Icons


This publication includes Warning, Caution, and Information where appropriate to point out safety related or other important information. It also includes Tip to point out useful hints to the reader. The corresponding symbols should be interpreted as follows: Electrical warning icon indicates the presence of a hazard, which could result in electrical shock. Warning icon indicates the presence of a hazard, which could result in personal injury. Caution icon indicates important information or warning related to the concept discussed in the text. It might indicate the presence of a hazard, which could result incorruption of software or damage to equipment/property. Information icon alerts the reader to pertinent facts and conditions. Tip icon indicates advice on, for example, how to design your project or how to use a certain function. Although Warning hazards are related to personal injury, and Caution hazards are associated with equipment or property damage, it should be understood that operation of damaged equipment could, under certain operational conditions, result in degraded process performance leading to personal injury or death. Therefore, comply fully with all Warning and Caution notices.

iv

3BUS208222 R4001

Document Conventions
The following conventions are used for the presentation of material: 1. The words in names of screen elements (for example, the title in the title bar of a window, the label for a field of a dialog box) are initially capitalized. 2. Capital letters are used for the name of a keyboard key if it is labeled on the keyboard. For example, press the ENTER key. 3. Lowercase letters are used for the name of a keyboard key that is not labeled on the keyboard. For example, the space bar, comma key, and so on. 4. Press CTRL+C indicates that you must hold down the CTRL key while pressing the C key. In this case, CTRL+C copies the selected object. 5. Press ESC E C indicates that you press and release each key in sequence. In this case, ESC E C copies the selected object. 6. The names of push and toggle buttons are boldfaced. For example, click OK. 7. The names of menus and menu items are boldfaced. For example, the File Menu. 8. The following convention is used for menu operations: MenuName > MenuItem > CascadedMenuItem. For example: select File > New > Type. 9. The Start menu name always refers to the Start menu on the Windows Task Bar. 10. System prompts or messages are shown in the Courier font. For example, if the user enters a value out of range, the system might reply with the following message: Entered value is not valid. The value must be 0 to 30. 11. User responses or inputs are shown in the boldfaced Courier font. For example, a user may be required to enter the string TIC132 in a field. The string is shown as follows in the procedure: TIC132 12. Variables are shown using lowercase letters. sequence name

3BUS208222 R4001

Terminology
The following is a list of terms associated with the Theory of Operation Guide that you should be familiar with. The list contains terms and abbreviations that are unique to ABB or have a usage or definition that is different from standard industry usage.
Term ActiveX Aspect Description Microsoft standard for integration of user interface components, based on definition of software interfaces. An aspect is a description of some properties of a real world entity. The properties described could be mechanical layout, how the object is controlled, a live video image, name of the object etc. In the Aspect Integrator Platform is an aspect residing in an Aspect Object. Some examples are circuit diagram, process display, and control logic. A computer representation of a real world entity like a pump, a valve, an order or a virtual object like a service. This computer representation is implemented by the Aspect Integrator Platform. An Aspect Object works like an information container for its aspects. PC server that hosts the various QCS Object/Aspects and serves as the primary gateway to external aspects systems. PC server that hosts MeasureIT and ControlIT applications and serves as the primary connection between the QCS LAN and the outside world. IndustrialIT is ABBs solution, that creates a business enterprise where your plant automation, asset optimization, and collaborative business systems are seamlessly linked in real time. ABBs Quality Control Solution consisting of MeasureIT Scanners/Sensors, ControlIT controllers (AC450, AC800M, and/or PC), ProfileIT actuators, OperateIT Process Portal consoles, and MeasureIT /ControlIT software applications. Integrated with Pulp and Paper Making Suite 3.0. A computer communicating an a network e.g. the Internet, Plant, Control or IO network. Each node typically has a unique node address with a format depending on the network it is connected to. An application programming interface defined by the OPC Foundation. The standard defines how to access large amounts of real-time data between applications. The OPC standard interface is used between automation/control applications, field system/devices and business/office applications. The name for the collection of products for daily operation and supervision of an automated process. An application that is used to create, delete and organize Aspect Objects and Aspects within the Aspect Integrator Platform. The plant explorer organizes the Aspect Objects in structures of the plant. Product containing functionality for efficient control and supervision of an automated process. Key functions are presentation of process graphics, process dialogs and presentation of alarms and trends.

Aspect Objects

Aspect Server Connectivity Server IndustrialIT

Industrial IT Quality Control 4.0

Node

OPC

OperateIT Plant Explorer

Process Portal A

vi

3BUS208222 R4001

Term Property

Description A data field on an aspect on Aspect Object that can be accessed through OPC using the standard Aspect Object reference syntax. A data field on an ActiveX control accessible from the Visual Basic editor. A hierarchical tree organization of Aspect Objects. Each structure is used to define a certain kind of relation between Aspect Objects. The functional structure for example, defines how a function can be divided into sub functions, the location structure defines how different objects are executed by tasks, controllers etc. An Aspect Object can be located in several structures, for example both in a functional structure and in a location structure. An Aspect can have several ways to be presented depending on the task performed, like viewing or configuration. Each presentation form is called a view.

Structure

View

3BUS208222 R4001

vii

Abbreviations
Term CD CPU DHCP DNS DPI GB IP address MB Mbps MHz NetBIOS NTFS OEM OPC OLE OS PC RAM SCSI SVGA TCP/IP WINS Compact Disk Central Processing Unit Dynamic Host Configuration Protocol Domain Name Server Dots per inch GB Gigabyte Internet Protocol address Megabyte Megabits per second Megahertz Network Basic Input Output System NT File System Original Equipment Manufacturing OLE for Process Control Object Linking and Embedding Operating System Personal Computer Random Access Memory Small Computer System Interface Super Video Graphics Adapter Transmission Control Protocol/Internet Protocol Windows Internet Name Services Description

viii

3BUS208222 R4001

Related Documentation
Category 800xA System Installation Title Industrial IT, 800xA System Version 4.0, Automated Installation Industrial IT, 800xA System Version 4.0, Installation Industrial IT, 800xA System Version 4.0, Upgrade and Installation Industrial IT, 800xA System Version 4.0, Post Installation Setup 800xA System Administration 800xA Software Industrial IT, 800xA System, Administration and Security Industrial IT, 800xA System, Automation System Network Design and Configuration Industrial IT, 800xA System, System Guide Industrial IT, 800xA System, Release Notes Industrial IT Quality Control 4.0 Installation Industrial IT Quality Control 4.0, Installation Guide Industrial IT Quality Control 4.0, Upgrade Guide Industrial IT Quality Control 4.0, Administrators Guide Description 3BSE034679R4001

3BSE034678R4001 3BSE036342R4001

3BUA000156R4001

3BSE037410R4001

3BSE034463R4001

3BSE038018R4001 3BSE038357R4001 3BUS208220R4001 -This book describes how you install the Industrial IT Quality Control 4.0 3BUS208226R4001 -This book describes how you upgrade from Industrial IT Quality Control 3.0 to Industrial IT Quality Control 4.0 3BUS208217R4001 - This book describes how you configure the Industrial IT Quality Control 4.0 application and how you then perform maintenance. 3BUS208221R4001 - This book describes how an operator can control and operate Industrial IT Quality Control 4.0. 3BUS208218R4001 - This book is a guide for plant engineering functions related to Industrial IT Quality Control 4.0. 3BUS208222R4001 - This book describes the theory of operation for Industrial IT Quality Control 4.0 and provides troubleshooting guidance.

Industrial IT Quality Control 4.0, Operations User Guide Industrial IT Quality Control 4.0, Engineering Methods Reference Manual Industrial IT Quality Control 4.0, Theory of Operation Guide

3BUS208222 R4001

ix

Category Industrial IT Quality Control 4.0 Features

Title Industrial IT Quality Control 4.0, CD Tuning Guide Industrial IT Quality Control 4.0, MD Tuning Guide Industrial IT Quality Control 4.0, Service Workstation Getting Started Manual Industrial IT Quality Control 4.0, Coat Weight & Computed Sensors Manual Industrial IT Quality Control 4.0, Color Control Guide Industrial IT Quality Control 4.0, Multi-Ply Controls Tuning Guide Industrial IT Quality Control 4.0, Color Measurement Operations Use Guide

Description 3BUS208224R4001 - This book describes how to setup and tune the Industrial IT Quality Control 4.0 CD Control feature. 3BUS208223R4001 - This book describes how to setup and tune the Industrial IT Quality Control 4.0 MD Control features. 3BUS208230R4001 - This book describes how to install and configure the Industrial IT Quality Control 4.0 Smart Platform Service Workstation 3BUS208229R4001 - This book describes how to configure and verify coat weight, calculated measurements and synchronized scanning. 3BUS208227R4001 - This book describes how to configure, verify and tune Color Controls. 3BUS208228R4001 - This book describes how to configure, verify and tune Multi-Ply Controls. 3BUS208232R4001 - This book describes how to operate Color Measurement.

3BUS208222 R4001

Table of Contents
CHAPTER 1 THEORY OF OPERATION ................................................................... 23 1.1 1.2 1.3 1.4 Overview .............................................................................................................................23 Physical Architecture.........................................................................................................23 1.2.1 Devices...................................................................................................................23 Software Package Deployment..........................................................................................24 Application Architecture ...................................................................................................25 1.4.1 Startup and Shutdown ............................................................................................25 Client Connectivity ................................................................................................26 1.4.2 Quality Control PC Applications...........................................................................27 1.4.3 Scanners, Sensors and Advanced Scanning...........................................................27 Operation ...............................................................................................................28 Configuration and Startup......................................................................................32 1.4.4 Production Accumulation ......................................................................................32 1.4.5 Reporting ...............................................................................................................33 Networking..........................................................................................................................33 Job Order Configuration...................................................................................................33 1.6.1 Overview................................................................................................................33 1.6.2 Database.................................................................................................................33 1.6.3 Configuration File Generation ...............................................................................34 Overview................................................................................................................34 XSLT Transforms ..................................................................................................34 Main.xslt ................................................................................................................34 DirectStruct.xslt .....................................................................................................35 1.6.4 Configuration File Deployment .............................................................................39 Overview................................................................................................................39 Graphical User Interface ........................................................................................40 Directory structure at configuration Tool PC ........................................................40 Destination Directory Structure .............................................................................42 Actions ...................................................................................................................44 1.6.5 Troubleshooting .....................................................................................................44 General...................................................................................................................44 Configuration File Deployment .............................................................................44 OPC Server .........................................................................................................................45 1.7.1 Overview................................................................................................................45 1.7.2 Role of OPC...........................................................................................................45 1.7.3 Data Dictionary......................................................................................................45 1.7.4 Publishing ..............................................................................................................45 OPC Transporter ...............................................................................................................47 OPC Direct IT ......................................................................................................................47 1.9.1 Overview................................................................................................................47

1.5 1.6

1.7

1.8 1.9

1.10 Tag Lookup .........................................................................................................................47

3BUS208222 R4001

xi

1.10.1 1.10.2 1.10.3

1.10.4

Overview................................................................................................................47 Usage......................................................................................................................50 Configuration .........................................................................................................50 Startup.xml.............................................................................................................50 HSI server XML file ..............................................................................................52 HSI tags XML file .................................................................................................53 Revision ID (RevID)..............................................................................................54 Troubleshooting .....................................................................................................54 Task Manager ........................................................................................................55 Debug Message Viewer (ABB Debug Client).......................................................55 Windows Event Viewer .........................................................................................55 OPC Direct IT View................................................................................................55 OPC Inspector........................................................................................................55 TagLookUp Viewer ...............................................................................................55

1.11 Startup Engine....................................................................................................................57 1.11.1 Overview................................................................................................................57 1.11.2 Usage......................................................................................................................57 1.11.3 Configuration .........................................................................................................57 1.12 System Status Reporting....................................................................................................57 1.12.1 Overview................................................................................................................57 1.12.2 Configuration .........................................................................................................57 1.13 DCOM .................................................................................................................................58 1.13.1 Overview................................................................................................................58 1.13.2 Usage......................................................................................................................58 1.13.3 Configuration .........................................................................................................58 CHAPTER 2 ASPECTS AND OBJECTS ................................................................... 60 2.1 2.2 2.3 2.4 2.5 Overview .............................................................................................................................60 Object Type Structure .......................................................................................................60 Aspect categories and Filtering.........................................................................................60 Quality control aspect functionality .................................................................................61 Process Graphics ................................................................................................................62 2.5.1 Overview................................................................................................................62 2.5.2 Tag Lookup............................................................................................................62 Grade Code Handling ........................................................................................................62 2.6.1 Overview................................................................................................................62 2.6.2 Usage......................................................................................................................62 2.6.3 Configuration .........................................................................................................62 Coldstart File Handling .....................................................................................................62 2.7.1 Overview................................................................................................................62 2.7.2 Usage......................................................................................................................62 2.7.3 Configuration .........................................................................................................62 MD Control .........................................................................................................................62 2.8.1 Overview................................................................................................................62 2.8.2 Configuration .........................................................................................................63

2.6

2.7

2.8

xii

3BUS208222 R4001

2.8.3 2.8.4 2.9

AC800M Control Project.......................................................................................63 AC800M Control Libraries....................................................................................63 Operator Interface Configuration...........................................................................63 Default Tuning and Configuration Data ................................................................64 OPC Transporter Configuration.............................................................................64 Project Configuration File .....................................................................................64 Configuration Verification.....................................................................................65 Operation Verification ...........................................................................................67

CD Control..........................................................................................................................69 2.9.1 Overview................................................................................................................69 2.9.2 Application Framework Dependencies..................................................................70 ABB QCS Service..................................................................................................70 OPC Publishing......................................................................................................70 OPC Transporter Service .......................................................................................71 TagsLookup ...........................................................................................................71 ABB Health Watch ................................................................................................73 2.9.3 Configuration .........................................................................................................74 Required Job Order Information............................................................................74 Deployment Directory Structure............................................................................75 XML Documents ...................................................................................................76 2.9.4 Interface to Dependent Application.......................................................................77 Frame and Sensor Transporters .............................................................................77 Actuator Transporters ............................................................................................78 Grade Data Transporter .........................................................................................78 2.9.5 Verify Configuration and Operation......................................................................79 QC Server Node.....................................................................................................79 Process Portal Functional Structure.......................................................................80 Error/Event Log File..............................................................................................81

2.10 CD Control Coater Operation ..........................................................................................82 2.10.1 Overview................................................................................................................82 2.10.2 Application Framework Dependencies..................................................................82 ABB QCS Service..................................................................................................82 OPC Publishing......................................................................................................83 OPC Transporter Service .......................................................................................83 TagsLookup ...........................................................................................................84 ABB HealthWatch .................................................................................................84 2.10.3 Configuration .........................................................................................................85 Required Job Order Information............................................................................85 Deployment Directory Structure............................................................................86 XML Documents ...................................................................................................86 2.10.4 Interface to Dependent Application.......................................................................87 CD Control.............................................................................................................87 Grade Data .............................................................................................................87 2.10.5 Verify Configuration and Operation......................................................................88 QC Server Node.....................................................................................................88 Process Portal Functional Structure.......................................................................89 Error/Event Log File..............................................................................................90 2.11 Local Variability (LV) Control .........................................................................................91

3BUS208222 R4001

xiii

2.11.1 2.11.2

2.11.3

2.11.4 2.11.5

Overview................................................................................................................91 Application Framework Dependencies..................................................................91 ABB QCS Service..................................................................................................91 OPC Publishing......................................................................................................92 OPC Transporter Service .......................................................................................92 TagsLookup ...........................................................................................................92 ABB HealthWatch .................................................................................................94 Configuration .........................................................................................................94 Required Job Order Information............................................................................94 Deployment Directory Structure............................................................................95 XML Documents ...................................................................................................95 Interface to Dependent Application.......................................................................96 Verify Configuration and Operation......................................................................96 QC Server Node.....................................................................................................96 Process Portal Functional Structure.......................................................................98 Error/Event Log File..............................................................................................98

2.12 CD Actuator Agent.............................................................................................................99 2.12.1 Overview................................................................................................................99 2.12.2 Application Framework Dependencies..................................................................99 ABB QCS Service..................................................................................................99 OPC Publishing....................................................................................................100 OPC Transporter Service .....................................................................................100 TagsLookup .........................................................................................................101 2.12.3 Configuration .......................................................................................................101 Required Job Order Information..........................................................................101 Deployment Directory Structure..........................................................................103 XML Documents .................................................................................................104 2.12.4 Interface to Dependent Application.....................................................................105 2.12.5 Verify Configuration and Operation....................................................................105 QC Server Node...................................................................................................105 Process Portal Functional Structure.....................................................................107 Error/Event Log File............................................................................................108 CHAPTER 3 TROUBLESHOOTING ........................................................................ 110 3.1 3.2 Quality Control Diagnostics Aspect................................................................................110 3.1.1 Configuration .......................................................................................................110 Debug Message Viewer ....................................................................................................111 Key.......................................................................................................................111 3.2.2 Application Menu ................................................................................................112 Mode ....................................................................................................................112 Activity ................................................................................................................113 Windows Event Viewer....................................................................................................114 System Status Viewers .....................................................................................................114 3.4.1 Quality Control Status Viewer.............................................................................114 3.4.2 Nodes Status Viewer............................................................................................115 3.4.3 AC800M Controller Status Viewer .....................................................................115 License Viewer..................................................................................................................115

3.3 3.4

3.5

xiv

3BUS208222 R4001

3.6 3.7 3.8

Task Manager...................................................................................................................116 OPC Inspector ..................................................................................................................117 OPC Direct IT Viewer.......................................................................................................117 3.8.1 Top Window - Active OPC Server Monitors ......................................................118 3.8.2 Bottom Window Active Data Points.................................................................119 Control Builder.................................................................................................................121

3.9

3.10 Measurement Spreadsheets.............................................................................................121 3.11 Service Workstation.........................................................................................................121 3.12 Performance Monitor ......................................................................................................121 3.13 Collecting Information for Technical Support..............................................................121 3.13.1 Information to Collect..........................................................................................121 3.13.2 How To ................................................................................................................122 Screen Captures ...................................................................................................122 Debug Message Viewer Contents........................................................................122 Event Log Contents .............................................................................................122 3.14 Trouble Shooting Flowcharts..........................................................................................123 APPENDIX A. OPC TRANSPORTER ........................................................................ 128 A.1 Introduction ......................................................................................................................128 A.1.1Purpose ......................................................................................................................128 A.1.2Overview ...................................................................................................................128 A.1.3Limitations, Restrictions, Caveats.............................................................................128 A.1.4XML Basics...............................................................................................................128 A.2 Transporter File ...............................................................................................................129 A.2.1File Content ...............................................................................................................129 A.2.2Element Definitions...................................................................................................130 <transporter>........................................................................................................130 <sourceOPC> & <targetOPC> ............................................................................131 <group>................................................................................................................131 <branch> ..............................................................................................................132 <input> & <output>.............................................................................................133 <assign> ...............................................................................................................133 <quality >.............................................................................................................134 <timestamp> ........................................................................................................134 <transport >..........................................................................................................135 <breakArray>.......................................................................................................136 <makeArray> .......................................................................................................137 <breakFlag> .........................................................................................................138 <makeFlag> .........................................................................................................139 <trigger> & <triggeredBy>..................................................................................140 <watchdog> & <heartbeat> .................................................................................141 <sub> ...................................................................................................................142 <global> ...............................................................................................................144 A.2.3Data References.........................................................................................................145 Variable Name .....................................................................................................145

3BUS208222 R4001

xv

Data Type.............................................................................................................146 Arrays...................................................................................................................146 A.2.4Transporter Programming Language.........................................................................146 Comments ............................................................................................................146 Declarations .........................................................................................................146 Arithmetic Expressions........................................................................................147 Assignment Statement .........................................................................................148 If Statement..........................................................................................................148 Select Statement...................................................................................................148 Example <sub> Element......................................................................................149 A.3 Operation ..........................................................................................................................149 A.3.1Invocation..................................................................................................................149 A.3.2Error recording ..........................................................................................................150 Event Log.............................................................................................................150 Debug modes .......................................................................................................150 A.3.3Error recovery............................................................................................................151 A.4 Document Type Definition...............................................................................................152 A.5 TPL Formal Definition ....................................................................................................154 A.5.1<program> ::= <declarations> <statements> ............................................................154 APPENDIX B. ACTIVEX CONTROLS LIST ............................................................... 156 B.1 Introduction ......................................................................................................................156 B.2 ActiveX Controls ..............................................................................................................156 APPENDIX C. TAGLOOKUP ACTIVEX CONTROLS ................................................ 163 C.1 Introduction ......................................................................................................................163 C.2 ABB Auto Grid .................................................................................................................163 C.2.1Introduction ...............................................................................................................163 C.2.2Functionality..............................................................................................................163 Supported Data Types..........................................................................................163 Visual Appearance ...............................................................................................163 Scalar AttriIDs only .............................................................................................163 Array AttriIDs only..............................................................................................164 Mixed scalar and array AttriIDs ..........................................................................164 Mixed AttriIDs within a TagID ...........................................................................164 User Interface.......................................................................................................165 Show OPC Tag ....................................................................................................166 Set Decimal Places...............................................................................................166 Export to Excel ....................................................................................................166 Copy Data to Clipboard .......................................................................................166 OperateIT context extension................................................................................166 C.2.3XML Configuration ...................................................................................................167 XML Keywords ...................................................................................................167 Example Configuration........................................................................................168 C.2.4Dependencies.............................................................................................................169 C.3 ABB Auto Plot ..................................................................................................................169

xvi

3BUS208222 R4001

C.3.1Introduction ...............................................................................................................169 C.3.2Functionality..............................................................................................................170 Supported Plot Types and Data Requirements ....................................................170 User Interface.......................................................................................................178 Display Options Dialog .......................................................................................180 Rulers ...................................................................................................................182 Zooming and Scrolling ........................................................................................182 Stacking and Merging Plots.................................................................................183 Rearranging Plots.................................................................................................184 C.3.3XML Configuration ...................................................................................................184 XML Keywords ...................................................................................................184 Example XML Configuration ..............................................................................188 C.3.4Dependencies.............................................................................................................189 C.4 ABB Command Button ....................................................................................................190 C.4.1Introduction ...............................................................................................................190 C.4.2Functionality..............................................................................................................190 Basic XML Structure ...........................................................................................190 Properties .............................................................................................................190 C.4.3DisplayType...............................................................................................................190 C.4.4NumberOfButtons......................................................................................................191 XML Key Word...................................................................................................191 C.4.5RevID.........................................................................................................................191 C.4.6HelpID .......................................................................................................................191 C.4.7Resource ....................................................................................................................192 C.4.8Request ......................................................................................................................192 C.4.9State ...........................................................................................................................192 C.4.10Confirm, ConfirmRes ..............................................................................................192 C.4.11Writable, NotWritable .............................................................................................193 Right Click Menu.................................................................................................193 C.4.12Show OPC Tag ........................................................................................................193 C.4.13XML Keywords .......................................................................................................195 C.4.14Example of XML File..............................................................................................196 C.5 ABB Indicator Control ....................................................................................................196 C.5.1Introduction ...............................................................................................................196 C.5.2Functionality..............................................................................................................197 Basic XML Structure ...........................................................................................197 C.5.3XML Key Word.........................................................................................................197 C.5.4RevID.........................................................................................................................197 C.5.5HelpID .......................................................................................................................197 C.5.6Resource ....................................................................................................................198 C.5.7Value..........................................................................................................................198 C.5.8IndBackColor, IndForeColor.....................................................................................198 C.5.9ReverseFlag ...............................................................................................................198 Right Click Menu.................................................................................................199 C.5.10Show OPC Tag ........................................................................................................199 C.5.11Example of XML File..............................................................................................199 C.6 ABB CD Mapping Control ..............................................................................................200 C.6.1Introduction ...............................................................................................................200

3BUS208222 R4001

xvii

C.6.2Functionality..............................................................................................................200 C.6.3RevID.........................................................................................................................200 C.6.4HelpID .......................................................................................................................201 C.6.5Resource ....................................................................................................................201 C.6.6Confirm, ConfirmRes ................................................................................................201 C.6.7Writable, NotWritable ...............................................................................................201 Right Click Menu.................................................................................................202 C.6.8Show OPC Tag ..........................................................................................................202 C.6.9XML Keywords .........................................................................................................202 C.6.10Example of XML File..............................................................................................203 C.7 ABB Enhanced Auto Grid Control.................................................................................204 C.7.1Introduction ...............................................................................................................204 C.7.2Tags XML..................................................................................................................205 Basic Structure .....................................................................................................205 Attribute Key Words............................................................................................206 3.14.2 Event KeyWords..................................................................................................214 C.8 ABB Tag Lookup Selector Control.................................................................................216 C.8.1Introduction ...............................................................................................................216 C.8.2Tags XML..................................................................................................................216 Basic Structure .....................................................................................................216 Attribute Key Words............................................................................................217 C.8.3Example .....................................................................................................................218 XML.....................................................................................................................219 C.9 ABB AC800 Auto Grade Change Button.......................................................................221 C.9.1Introduction ...............................................................................................................221 C.9.2Functionality..............................................................................................................221 C.9.3XML Key Word.........................................................................................................221 C.9.4Example Of XML File...............................................................................................222 C.10 ABB AC800 Auto Grade Change Current Info ............................................................222 C.10.1Introduction .............................................................................................................222 C.10.2Functionality............................................................................................................222 C.10.3XML Key Word.......................................................................................................222 C.10.4Example Of XML File.............................................................................................223 C.11 ABB AC800 Auto Grade Change Previous....................................................................224 C.11.1Introduction .............................................................................................................224 C.11.2Functionality............................................................................................................224 C.11.3XML Key Word.......................................................................................................224 C.11.4Example Of XML File.............................................................................................224 C.12 ABB OPC Tag AGC Level 1 Control .............................................................................225 C.12.1Introduction .............................................................................................................225 C.12.2Functionality............................................................................................................225 C.12.3XML Key Word.......................................................................................................225 C.12.4Example Of XML File.............................................................................................227 C.13 ABB OPC Tag AGC Level2 Control ..............................................................................228 C.13.1Introduction .............................................................................................................228 C.13.2Functionality............................................................................................................229

xviii

3BUS208222 R4001

C.13.3XML Key Word.......................................................................................................229 C.13.4Example Of XML File.............................................................................................231 C.14 ABB OPC Tag Level 1 singleline ....................................................................................232 C.14.1Introduction .............................................................................................................232 C.14.2Functionality............................................................................................................233 C.14.3XML Key Word.......................................................................................................233 C.14.4Example Of XML File.............................................................................................235 C.15 ABB OPC Tag Level 1 grid .............................................................................................235 C.15.1Introduction .............................................................................................................235 C.15.2Functionality............................................................................................................236 C.15.3XML Key Word.......................................................................................................236 C.15.4Example Of XML File.............................................................................................238 C.16 ABB OPC Tag Level 1 Vertical ......................................................................................239 C.16.1Introduction .............................................................................................................239 C.16.2Functionality............................................................................................................240 C.16.3XML Key Word.......................................................................................................240 C.16.4Example Of XML File.............................................................................................242 C.17 ABB OPC Tag Level 2 singleline ....................................................................................242 C.17.1Introduction .............................................................................................................242 C.17.2Functionality............................................................................................................243 C.17.3XML Key Word.......................................................................................................243 C.17.4Example Of XML File.............................................................................................246 C.18 ABB OPC Tag Level 2 grid .............................................................................................246 C.18.1Introduction .............................................................................................................246 C.18.2Functionality............................................................................................................246 C.18.3XML Key Word.......................................................................................................246 C.18.4Example Of XML File.............................................................................................249 C.19 ABB OPC Tag Speed Control .........................................................................................250 C.19.1Introduction .............................................................................................................250 C.19.2Functionality............................................................................................................250 C.19.3XML Key Word.......................................................................................................250 C.19.4Example Of XML File.............................................................................................253

3BUS208222 R4001

xix

List of Figures
Figure 1-1 Example system architecture ............................................................................................ 24 Figure 1-2 Software component architecture with example installation components ........................ 25 Figure 1-3 Quality Control Application Architecture Overview............................................................ 26 Figure 1-4 Main.xslt flow chart ............................................................................................................ 35 Figure 1-5 Batch file location for Job Order configuration .................................................................. 40 Figure 1-6 After configuring system chose Deploy Job button ........................................................... 40 Figure 1-7 Directory structure on configuration tool PC ..................................................................... 40 Figure 1-8 - Quality Control Object Server Overview ......................................................................... 46 Figure 1-9 Tag Lookup flowchart on server ........................................................................................ 49 Figure 1-10 Tag Lookup on client ....................................................................................................... 50 Figure 1-11 Tags XML Information Pop-up contains tag look-up information for the system ............ 56 Figure 1-12 Scanner Object Setup ..................................................................................................... 58 Figure 2-1 Object Type Structure example......................................................................................... 60 Figure 2-2: Example of MD Project Create Tool Message for Variable Name Discrepancy.............. 65 Figure 2-3: Example of Status Viewer ................................................................................................ 66 Figure 2-4: Example of MD Objects in Functional Structure .............................................................. 66 Figure 2-5: Example of MD Objects in Control Structure ................................................................... 67 Figure 2-6: Simulation Configuration .................................................................................................. 68 Figure 2-7: Example Faceplate........................................................................................................... 68 Figure 2-8: Example Right Click Menu ............................................................................................... 69 Figure 2-9: CD control job order configuration tab ............................................................................ 75 Figure 2-10: ABB Debug Client for startup of CD control .................................................................. 80 Figure 2-11: Status viewer example for CD control ........................................................................... 81 Figure 2-12: Functional structure example for CD Control ................................................................ 81 Figure 2-13: CD control job order configuration tab with CD Coat Weight as an option for the CD Type ............................................................................................................................................ 85 Figure 2-14: ABB Debug Client for startup of CDCTW...................................................................... 89 Figure 2-15: Status viewer example for CDCTW............................................................................... 90 Figure 2-16: CD control job order configuration tab with LVC checkbox........................................... 94 Figure 2-17: ABB Debug Client for startup of LVC ............................................................................ 98 Figure 2-18: Status viewer example for LVC ..................................................................................... 98 Figure 2-19: CD actuator agent job order configuration tab ............................................................. 103 Figure 2-20: ABB Debug Client for startup of CD actuator agent.................................................... 107 Figure 2-21: Status viewer example for CD actuator agent............................................................. 108 Figure 2-22: Functional structure example for CD actuator agents................................................. 108 Figure 3-1 Quality Control Diagnostics Aspect in the Functional Structure...................................... 110 Figure 3-2 Quality Control Diagnostics Example Display ................................................................. 110 Figure 3-3 Debug Message Viewer Tool example ........................................................................... 111 Figure 3-4 Toolbar icons functionality ............................................................................................... 112 Figure 3-5 Available Application Debug Mode Selection for Scanner.............................................. 112 Figure 3-6 Available Application Debug Mode Selection for OPC Transporter................................ 113 Figure 3-7 Application Activity status properties for Measurement Basis Weight ............................ 113 Figure 3-8 Application Activity status properties for OPC Transporter ............................................. 113 Figure 3-9 Windows application log on Event Viewer ...................................................................... 114 Figure 3-10 Quality Control Status Viewer example......................................................................... 115 Figure 3-11 License Manager Utility ................................................................................................. 116 Figure 3-12 Windows Task Manager aids in troubleshooting .......................................................... 117 Figure 3-13 OPC Direct IT Viewer .................................................................................................... 118 Figure 3-14 OPC Direct IT Viewer Top Area .................................................................................... 118 Figure 3-15 OPC Direct IT Viewer Bottom Area ............................................................................... 119 Figure 3-16 OPC Direct IT buttons ................................................................................................... 120 Figure 3-17 OPC Direct IT Configuration........................................................................................... 121 Figure 3-18 Windows message with OPC Server and tag information ............................................ 166 Figure 3-19 Set decimal places using Windows pop-up................................................................... 166 Figure 3-20 Target dialog pop-up ..................................................................................................... 173 Figure 3-21 Actuator profile modes and setpoints pop-up................................................................ 175 Figure 3-22 Reflected Plot example.................................................................................................. 176

xx

3BUS208222 R4001

Figure 3-23 Reflected Target Plot example ...................................................................................... 177 Figure 3-24 Reflected Target Plot pop-up for individual points ........................................................ 177 Figure 3-25 X-Y plot example ........................................................................................................... 178 Figure 3-26 User Interface OPC Tag information message box ...................................................... 179 Figure 3-27 Right click in plot area to get pop-up menu options ...................................................... 179 Figure 3-28 Measurement plot display options................................................................................. 180 Figure 3-29 Target Plot Display Options........................................................................................... 180 Figure 3-30 Actuator Array Plot Display Options .............................................................................. 181 Figure 3-31 Reflected Plot Display Options...................................................................................... 181 Figure 3-32 Reflected Target Plot Display Options .......................................................................... 181 Figure 3-33 X-Y Plot Display Options ............................................................................................... 182 Figure 3-34 Vertically stacked plots .................................................................................................. 183 Figure 3-35 Merging Plots................................................................................................................. 184 Figure 3-36 Keywords for all plot types ............................................................................................ 184 Figure 3-37 ABB Auto Plot example ................................................................................................. 189 Figure 3-38 Display Type.................................................................................................................. 190 Figure 3-39 DisplayType=1 ndtVerical ........................................................................................ 190 Figure 3-40 DisplayType=2 ndtHorizontal................................................................................... 190 Figure 3-41 Buttons resulting from XML file implementation............................................................ 191 Figure 3-42 Button state On.............................................................................................................. 192 Figure 3-43 Button state Off.............................................................................................................. 192 Figure 3-44 Using reserved resource string ..................................................................................... 193 Figure 3-45 Button not writeable....................................................................................................... 193 Figure 3-46 Button writeable............................................................................................................. 193 Figure 3-47 Show OPC tag gives server names and tags associated with button .......................... 194 Figure 3-48 CD Overview Indicator messages ................................................................................. 197 Figure 3-49 CD Mapping ActiveX control ......................................................................................... 200 Figure 3-50 Using reserved resource string ..................................................................................... 201 Figure 3-51 Show OPC tag gives server and tag names ................................................................. 202 Figure 3-52 Heirarchy Levels............................................................................................................ 218 Figure 3-53 Automatic Grade Change button................................................................................... 221 Figure 3-54 Automatic Grade Change Current Information Example .............................................. 222 Figure 3-55 Automatic Grade Change Previous Pop-up Example ................................................... 224 Figure 3-56 Automatic Grade Change Level 1 Control Pop-up Example......................................... 225 Figure 3-57 Automatic Grade Change Level 2 Control Pop-up Example......................................... 229 Figure 3-58 OPC Tag Level 1 SingleLine example .......................................................................... 233 Figure 3-59 Level 1 Control Grid Example ....................................................................................... 236 Figure 3-60 OPC Tag Level 1 Vertical Example............................................................................... 240 Figure 3-61 OPC Tag Level 2 SingleLine Example .......................................................................... 243 Figure 3-62 OPC Tag Level 2 Grid Example .................................................................................... 246 Figure 3-63 OPC Tag Speed Control Example ................................................................................ 250

3BUS208222 R4001

xxi

List of Tables
Table 1-1Industrial IT Quality Control 4.0 PC nodes and software .................................................... 23 Table 1-2 System Status Reporter S_Status property meanings....................................................... 57 Table 1-3 Aspects used to support Quality Control System Status Viewer Aspect............................ 57 Table 2-1: OPC Transporter Groups for MD Control.......................................................................... 64 Table 2-2: CD control TagsLookup ControlID.................................................................................... 72 Table 2-3: CD control job order information....................................................................................... 74 Table 2-4: CD control XML documents.............................................................................................. 76 Table 2-5: CDCTW TagsLookup ControlID ....................................................................................... 84 Table 2-6: CDCTW XML documents ................................................................................................. 86 Table 2-7: LVC TagsLookup ControlID.............................................................................................. 93 Table 2-8: LVC XML documents........................................................................................................ 95 Table 2-9: CD actuator agent TagsLookup ControlID ..................................................................... 101 Table 2-10: CD actuator agent job order information ...................................................................... 101 Table 2-11: CD actuator agent XML documents .............................................................................. 104 Table 3-1 Active X Control names, file name, and interface definitions ........................................... 156 Table 3-2 Array value and ratio table................................................................................................ 164 Table 3-3 Mixed scalar and array AttriIDs ........................................................................................ 164 Table 3-4 Mixed AttriIDs within a TagID ........................................................................................... 165 Table 3-5 XML keywords supported by ABB Auto Grid................................................................... 167 Table 3-6 Display information ........................................................................................................... 169 Table 3-7 Measurement Plot inputs .................................................................................................. 170 Table 3-8 Actuator Array Plot inputs ................................................................................................. 173 Table 3-9 Reflected Plot input........................................................................................................... 176 Table 3-10 Reflected Target Plot input ............................................................................................. 176 Table 3-11 X-Y Plot inputs ................................................................................................................ 177

xxii

3BUS208222 R4001

Chapter 1 Theory of Operation


1.1 Overview
Industrial IT Quality Control 4.0 is an application providing measurement and control solutions for the paper manufacturing process. The primary features are: 1. Scanning and measurement 2. Machine direction control of scanning measurement parameters (weight, moisture, ash, ) 3. Advanced controls (speed change, automatic grade change, headbox, ) 4. Cross direction (profile) control of scanning measurement parameters 5. Reporting

1.2 Physical Architecture


1.2.1 Devices
The normal Industrial IT Quality Control 4.0 consists of the following PC nodes and software.

Table 1-1Industrial IT Quality Control 4.0 PC nodes and software


Node Type Quality Control Connectivity Server & AC800M Connectivity Server Function Provides Quality Control measurement and control functionality and access to AC800M controller. Standard Process Portal Aspect Server Functionality Software Required Process Portal OPC Server for AC800M/C Control Builder M Professional Industrial IT Quality Control 4.0 Process Portal AC800M Connect Industrial IT Quality Control 4.0 Process Portal Client Standard Process Portal Client Functionality Process Portal AC800M Connect Industrial IT Quality Control 4.0 AC800M Controller MD and Level 1 Control Latest AC800M Firmware

Process Portal Aspect Server

3BUS208222 R4001

23

The normal Industrial IT Quality Control 4.0 will consist of one System 800xA Process Portal Aspect Server, one System 800xA Process Portal Connectivity Server (Quality Control and AC800M) and some number of System 800xA Process Portal Clients.

Figure 1-1 Example system architecture

1.3 Software Package Deployment


The diagram below illustrates, at a high level, the software components that for each type of application PC node and the installation options for installing those components.

24

3BUS208222 R4001

Figure 1-2 Software component architecture with example installation components

1.4 Application Architecture


The Industrial IT Quality Control 4.0 PC based applications provide access to all of the system features except for machine direction and level 1 control, which are implemented in the AC800M Controller. The Quality Control applications are COM EXE type applications and are referred to as components here.

1.4.1 Startup and Shutdown


Refer to Figure 1-3 Quality Control Application Architecture Overview. The QCS Service is normally configured for automatic startup. It will run when the computer is started, even if no user logs on to the Quality Control Connectivity server machine. The QCS Services main function is to launch the ABBQCSApplication component. This component is the top level Quality Control application. It launches and coordinates all of the other Quality Control applications.

3BUS208222 R4001

25

Figure 1-3 Quality Control Application Architecture Overview

The ABBQCSApplication component uses a Startup Engine component to launch the other Quality Control application components and utility applications. The Startup Engine component starts the applications configured in the startup.xml file. This file is created and deployed to the ../System/config directory by the job order configuration tool. The contents of startup.xml depend upon the number and type of Quality Control devices and application features configured. Typically there will be a separate component for each system feature or subsystem. Refer to the Startup Engine section later in this document for more details. Each Quality Control application component implements COM interfaces that allow the ABBQCSApplication component to coordinate their activities. The ABBQCSApplication uses these interfaces to tell the Quality Control Application components when to connect to their OPC server, when to publish their OPC tags, when to shutdown, etc. When the ABB QCS Service is stopped, it tells the ABBQCSApplication to shutdown. The ABBQCSApplication then uses the standard COM interfaces of each Quality Control application component to tell the application components to shutdown. Client Connectivity Refer to Figure 1-3 Quality Control Application Architecture Overview, above. Quality Control process graphic displays do not normally use the normal OperateIT graphic elements. Most Quality Control process graphic displays are based upon special process graphic aspect categories that contain logic for connecting to the Quality Control connectivity server. See the Aspects and Objects section later in this document for more details on these special process graphic Aspect Categories. Many of the Quality Control process graphic Aspects contain ActiveX controls that display / modify OPC tags. These ActiveX controls use a tag lookup server to locate the OPC tags that they use. See the OPC Direct IT section below.

26

3BUS208222 R4001

1.4.2 Quality Control PC Applications


The Quality Control applications are COM EXE type applications and are referred to in this description as application components or just components. While application components each tend to implement only one subsystem or feature of the entire system, they frequently have a need to communicate with each other. To this end there are two methods used to interface from application component-to-component and to the outside world. These are 1) via COM interfaces and 2) via OPC tags. The majority of communication between components is through the COM interfaces which are common method or subroutine calls. A description of the data or command sequencing for several features will be found in the detailed descriptions below, and they make frequent reference to these COM interface methods. Due to the object-oriented nature of the application component implementation the interaction between components can be quite complex with several back-and-forth transactions required to accomplish a relatively simple task. The advantage of this approach is that the software is modular and feature independent, allowing easy addition or removal of features and isolating functional responsibility for ease of diagnosis. The primary Industrial IT Quality Control 4.0 application components are: 1. Scanner and Sensor 2. Color Measurement 3. Reporting Accumulation 4. Reporting 5. Reporting History 6. Roll Set 7. Speed Input 8. Grade and Shade File Handling 9. High Frequency Trending

1.4.3 Scanners, Sensors and Advanced Scanning


The application COM component ABBSmartPlatform.exe is responsible for all interaction with the scanner and its complement of sensors. At startup, a separate ABBSmartPlatform object is created for each scanner in the system. Once in operation, the ABBSmartPlatform object coordinates the activities of a group of ABBSmartMeasurement objects, one started for each measurement configured on that scanner. The scanner object acts as the owner of the measurements and insures that all its measurements understand the current operating conditions, such as the desired measurement mode, the position of the head package, etc. The scanner object insures that all the sensor results are tabulated and reported in a coordinated fashion and that the measurement results align with each other in time. In general, operator communication with the scanner and measurement objects flows through the COM interfaces associated with each object.

3BUS208222 R4001

27

Between the objects and the real-world physical devices reside the QC Object Server (QCOS) and its OPC tag-set. The Job Order Configuration Tool is used to define the physical complement of scanners and sensors that will be available to talk to. Each scanner and measurement object subscribes to the full set of OPC tags available from that device. The scanner keeps a list of its measurement objects that can be accessed through the scanner COM interface. Some of the measurement specific operator commands (e.g., sample check mode, compensation values, etc.) use this list to directly access specific measurement objects on a specific scanner. In this case, once they have identified the desired measurement object, they use the measurement COM interface to talk directly to that measurement object. Operation
Positioning

Operationally, the scanners command OPC tag is the direct connection from the scanner object to the physical scanner through the OPC interface. Once an operator command has been received by the scanner object via the COM interface, it flows through this OPC tag. The commands are general in nature, asking the scanner to assume a particular state (e.g. offsheet, scanning, etc.) and waiting for the response in the mode OPC tag. No direct head package control is performed by the scanner component. The CurrentHeadPosition OPC tag returns the current physical position of the head package to the scanner object.
Advanced Scanning

Advanced Scanning is an optional, licensed, value-added feature that allows multiple scanners to see the same part of the process. In a moving sheet process with several scanners distributed along the length, it is useful to insure that each discrete measurement window measures the same material, especially when there are mathematical relationships between the measurements on different scanners. For example, a weight difference that subtracts one weight from another on two different scanners is obviously more precise when both measurements are from the same location on the process. The difficulty with this is that the measurements occur at different times by virtue of their separation on the process. The mechanism for accomplishing this is to insure that different scanners start their scans at the same command point on the process which is tracked between the scanners based upon their relative separation and the line speed of the process. This feature is referred to as Synchronized Scanning. A global component ABBGlobalScanner is responsible for recognizing and coordinating individual scanner components, ABBSmartPlatform. It makes decisions about which scanner is most upstream and insures that scanner is aware that it is the leader. The leader is responsible for starting new command points that will be followed by downstream scanners followers. The software components of the Connectivity Server are entirely responsible for operation of this feature. When activated, this feature causes each ABBSmartPlatform component to override normal independent scanning operation of its connected Smart Platform by changing the Smart Platforms mode from scan-at-will to scan-on-command. Downstream follower scanners accept new command points from the leader and track them from the leader to themselves by monitoring the process line speed. Each individual scanner is assigned a relative position on the process at startup which is used to decide when the command point has reached them and should be obeyed. The synchronization mechanism for the downstream scanners is designed in such a way that the origin (leader) of a command point is irrelevant and simply has to match the position of the specific downstream scanner. The lead scanner may change at any time by virtue of its availability (local, out-of-operation, maintenance, etc.). The change of leadership is one of the commands that is synchronized

28

3BUS208222 R4001

between scanners so that intervening commands (and potentially measurements) are not lost to downstream scanners.
Missing Scans

By virtue of the fact that downstream scanners are dependent on synchronization for their start-scan command, it is possible for downstream scanners to miss scans. In these cases the next best possibility for measurement is to wait for the next command point on this side of the process sheet to arrive; in other words to quit scanning until a complete bi-directional scan is tracked to this scanner. Some of the scenarios for missed scans and the mechanisms implemented to reduce their occurance are:
Change of line speed

Since the line speed determines when a command point will reach a downstream scanner, a change in line speed will obviously have an impact. In general a decrease in line speed is benign in the sense that the start-scan command will eventually reach the scanner, its just delayed for a while. There is a delayed scan feature built into the tracking that will allow a downstream scanner to proceed with a scan (and measurement) only if it can be in position to receive the next command point in the tracking queue based on the current line speed. In other words, if the scanner can successfully reach the other side of the process sheet and return to the current position before the next start-scan command will arrive, then scanning is allowed to proceed. There are special considerations to handle or discard mis-aligned measurements in this case see Inter-scanner Measurement, below. An increase in scan speed is a potential problem in that command points may flow by the downstream scanner before it is in a position to accept them i.e., the scanner is still moving for the previous scan. This is physically an unsolvable dilemma that is somewhat alleviated by the fact that due to the higher line speed subsequent scan points on this side of the process sheet will arrive sooner than originally scheduled. Start-scan command points that are missed are discarded, however some commands are honored regardless for example, a change of tracking leadership or a standardize request will be honored immediately.
Scanner activities

Activities of downstream scanners may affect their ability to start scanning when a command point becomes available. For example, a substantially slower scan time may insure that a downstream scanner misses the command point scan request and subsequently loses the opportunity to measure for a complete forward and reverse scan. This sort of scenario will result in periodic skipping of scans on a downstream scanner. The mechanism described above (Change of line speed) will insure that a scan will eventually occur, however, subsequent scans will fall further behind until they are discarded and a catch-up is required. This could be severe enough that only alternate scans are honored. A second activity that impacts scanning is standardize duration. A downstream scanner may have a substantially longer standardize duration than the lead scanner, since this is sensor dependent. A self-tuning feature has been implemented that considers the relative duration of standardizes between scanners and causes the lead scanner to delay its scan until it is sure that all scanners will have sufficient time to catch its first start-scan command point after a global standardize. In effect the lead scanner takes on the standardize duration of the longest downstream scanner duration. This is controlled by the ABBGlobalScanner component. An initial value for this duration is provided in a coldstart value. Some additional comments about standardize requests for standardize are classified as either individual or global, depending upon whether the request is issued via a specific scanners interface or the global scanners interface. The difference between these two is that tracking is considered only for the global type, not for the individual. An individual standardize request, whether via button or timer causes that scanner to become unavailable for synchronization.
3BUS208222 R4001

29

The effect for downstream scanners is to step out of synchronization temporarily, but to return as soon as standardize is complete note that when they return they may be totally out of alignment with respect to the leader and may have to wait a full bi-directional scan to get properly aligned. The effect for the lead scanner is similar, except that leadership is reassigned to the next most downstream scanner. In this case when returning from standardize it will reclaim leadership, which may result in downstream scanners waiting for scans. A feature to force measurement quickly after a standardize causes downstream scanners to perform an immediate scan after returning on-sheet after standardize regardless of synchronization. The concept allows quick measurement and simply defers the wait for command point to the far sheet edge.
Operator intervention

Requests from the operator to disable a scanner or to cause it to operate in a different mode will impact synchronization. As mentioned above, standardize requests may affect scanning of both the lead scanner and downstream followers. Also, any operator intervention to take the scanner out of computer control will obviously affect synchronization. If the lead scanner is put out-of-service, a new lead scanner will be selected by ABBGlobalScanner component. When scanners are returned to operation, they will resume synchronized scanning. If they are the most upstream, they will be assigned as the lead scanner.
Independent Operation Mode

A independent mode is provided via operator request that completely disassociates the scanner from the ABBGlobalScanner component and all synchronization. Once placed in independent mode, the scanner will operate totally independently from other scanners, including scanning. When in independent mode, the scanner will not participate in synchronization and cannot become the lead scanner.
Measurement

All measurement processing is performed exclusively on 5-second data by the scanner component and its measurement objects. The measurement objects and their subordinate objects are responsible for building profiles from this 5-second data. The profiles and their related statistical data are published as OPC tags at every edge-of-sheet. The scanner monitors the OPC tag TBM5SecDataReadyTrigger. This tag is sent from the Smart Platform to indicate that all measurements for this 5-second time slice (TBM) have been completed. When this trigger is seen, the data box and head position arrays are read from the Smart Platform. The scanner component uses the collection of measurements configured on this scanner to iteratively ask all measurement arrays to be read and processed and on-going profile construction to be performed. When an edge-of-sheet is detected in the scanners data box array the profile processing is completed, the profile result is published and the profile is initialized in preparation for the next scan. The scanner expects a returned result from each measurement as a data object of class CABBDataObject which contains the processed TBM array, the TBM average, the scan average, and a status among other things.
Calculated Measurement

Measurements that calculate their result by reference to some other measurement are known as calculated measurements. A calculated measurement is an object instance of a (new) CABBCalcMeas class which supports the same COM interface (IABBMeasurementIF) as real measurements. The concept of the calculated measurement is tightly coupled to the entire ABBSmartPlatform component design and impacts the functionality of all measurement features and as such is implicit and not optional.

30

3BUS208222 R4001

Calculated measurements are made aware of their measurement dependencies at startup via a contributors list. The relationship between the calculated measurement and its contributors is determined by an algorithm which is defined in the std_algorithms.xml file and is also established at startup. In general, any local (this scanner) or upstream (different scanner) measurement is fair-game as a contributing measurement; even other contributing measurements may contribute. Conversely, downstream measurements are inaccessible as contributors (although their grade information is available). Processing of calculated measurements follows the same initial sequence as real measurements. After seeing the scanners data ready trigger, the scanner object asks each calculated measurement to read and process its measurement arrays. The scanner object is unaware of the different measurement types and only expects the returned result to be consistent (a CABBDataObject instance). When a calculated measurement receives its processing request from the scanner object it asks each of its contributing measurements for their TBM array and forwards this data to the algorithm processor. The accessing of TBM array data from the contributing measurements differs depending upon whether they are local measurements (this scanner) or whether they reside on a different (upstream) scanner (see Measurement Tracking, below). The finished TBM array, its average and status are all returned in the CABBDataObject.
Measurement Tracking

Measurement tracking is the proprietary mechanism that allows the measurements from multiple scanners to be properly aligned in both the machine and cross-machine directions. Measurement tracking, or tracking as it is referred to herein, is tightly coupled to the entire ABBSmartPlatform component design and impacts the functionality of all measurement features and as such is implicit and not optional. The implementation of tracking rests on the two object classes CABBVirtualScanner and CABBVirtualMeasurement. [Software detail: These classes act as agents for a calculated measurement and represent an upstream scanner or upstream measurement respectively to the local scanner or owner-scanner. When a calculated measurement object is first started, its contributors list is examined for residence of each measurement. A new virtual scanner object is created for every unique scanner identified from this list. This virtual scanner retains COM interface ties to its target (upstream) scanner which will be used during subsequent measurement processing. A new virtual measurement object is created for each measurement that is identified from the contributors list that resides on that scanner and likewise retains COM interface ties to its target (upstream) measurement. The virtual scanner keeps a collection of these virtual measurements in a similar fashion to how the scanner component keeps its collection of real measurements.] The virtual scanner object (CABBVirtualScanner) is primarily responsible for recognizing when a tracked measurement has reached the owner-scanner and for distributing the tracked data to the virtual measurements that it contains. An incidental (but very important) responsibility is to track scanning commands for the Synchronized Scanning feature. The virtual measurement object (CABBVirtualMeasurement) has two primary responsibilities. First is to populate a living profile with tracked measurement from its target upstream measurement. When notified by the virtual scanner that new tracked measurement is available, the new data is overlaid onto a permanent profile array. Second, when requested, examine this living profile for a prescribed set of boxes and create an artificial TBM array for this contributing measurement. This is the TBM array that will eventually be used in the calculated measurements algorithm as described above.

3BUS208222 R4001

31

Configuration and Startup


Scanner

A separate configuration entry is found in the startup.xml file for each scanner. An assumption is made that the configured scanner physically exists and has been configured in the Job Order Configuration Tool prior to startup. If this is not true then system startup will not finish properly and will generate numerous errors. An argument in the startup.xml file (At_reel) allows configuration of whether this scanner is the reel scanner.
Measurement

Each scanner in the startup.xml file contains a list bracket entry that encloses all of its own measurements. A separate configuration entry is found in the scanners list for each measurement. An assumption is made that the configured measurement physically exists and has been configured in the QC Object Servers Job Order Configuration Tool prior to startup. If this is not true then system startup will not finish properly and will generate numerous errors. With respect to calculated measurements, the order that measurements appear in the list is important. Any measurements on that scanner that are used by a calculated measurement should appear before the calculated measurement.

1.4.4 Production Accumulation


The application COM component ABBMIS.exe is responsible for accumulation and publishing of production data. The Production Summary aspect (part of the IndustrialIT Quality Control object type structure) contains two Generic Control (GC) grid displays. Fig 1-xx shows a typical aspect configuration in which three work shifts are configured. The GC grid can be modified via editing the associated XML file. The XML file is located within the following directory structure: Quality Control Solutions\Measure IT\HSI. The XML file is called PMxMITHSIProductionSummary.xml where PMx refers to the machine instance.

Figure 1-xx Production Summary Aspect Overview

32

3BUS208222 R4001

1.4.5 Reporting
All MeasureIT reporting is based upon historical data stored on a SQL database named ABBMeasureHistory. A SQL server (MSDE) is installed when MeasureIT server is installed. This SQL server is configured to start up automatically when the machine is started, so it is always available. The ABBMeasureHistory database is typically left completely open to access by other nodes on the QCS LAN network, as remote client operator stations require access. The database may be accessed by remote customer nodes as well for detailed QCS information. All report data originates with accumulations that are published on the OPC Server. On an event basis these OPC accumulations are gathered, stored on the ABBMeasureHistory SQL database and reset for subsequent accumulation. In general each event generates a single new database record. Some of the events that cause report data storage are: reel turnup, grade change, standardize, end of day, etc.

1.5 Networking
Refer to the Administrators Guide for information for information on the network configuration for the Industrial IT Quality Control 4.0.

1.6 Job Order Configuration


1.6.1 Overview
The Job Order Configuration project will produce a toolset that project engineers will use to configure IndustrialIT Quality Control 3.0. The project engineer will enter the job order configuration via a graphical user interface. When the project engineer has entered all configuration information he will request the tool to build the job order dependent configuration files. The job order tool will build a project folder on the project engineers PC and create sub-folders for each application computer node. The configuration tool will store the job order dependent files for each application node in the sub-folder for that node. When the project engineer has loaded the application software on the application nodes he will connect his computer to the application network and request the configuration tool to deploy the job order dependent files to the application nodes. The configuration tool will copy those files to the appropriate directories on the application nodes. The project engineer will then download the AC800M controller and build the application grade codes using other tools supplied by the controller platform group and by the Infrastructure project.

1.6.2 Database
The job order configuration database is a Microsoft Access database containing the tables, relationships, queries, forms and code that represent the configuration information for Quality Control system job orders. The user enters the configuration information and requests creation and deployment of the job order configured output files via Access forms.

3BUS208222 R4001

33

1.6.3 Configuration File Generation


Overview The job order configuration entered into the Microsoft Access database is converted into an XML document when the user requests the tool to build the job. The configuration XML file contains the system configuration information used to build the various configuration dependent files (Startup engine, scanner and actuator OPC tags, grade code, AC800M controller programs and I/O, ABB Object and Aspects). XSLT (Extensible Style Sheet Language Transforms) and custom code are used to create the configuration dependent files. XSLT Transforms The job order configuration tool uses XSLT (with some embedded script) to create the job order configuration dependent XML files. The main XSLT file (Main.xslt) creates folders for each application node and invokes the XSLT transforms required to create the configuration files for that node. The main XSLT file outputs an HTML log file containing the actions performed and error information. Main.xslt Main.xslt is the driver for generating all configured files. It uses a combination of XSL templates and embedded script to create the configuration files for the job order. The following flowchart illustrates the processing performed by Main.xslt.

34

3BUS208222 R4001

Figure 1-4 Main.xslt flow chart


jotemp.xml jotemp1.xml joconfigex.xslt
Pre-processing phase 1. Add attributes to existing elements to facilitate later processing.

jotemp1.xml joconfig.xml joconfigex.xslt

Pre-processing phase 2. Add grouping elements and other processing dependent upon phase 1 to facilitat e later processing.

joconfig.xml deploy.bat deploy.xslt

Generate file deployment batch file (contains one Xcopy command per application PC node).

For Each Application PC Node

Loop over each application node creating a mirror of the application nodes directory structure and generating the configured files for each folder in the structure. This will allow us to copy the structure to the application node with the deploy .bat file.

Create PC Node Directory under projects/joborder folder


No

joconfig.xml DirectStruct.xml DirectStruct.xslt

Process DirectStruct.xml (create folders, copy files, perform XSL transforms, invoke executables based upon XML commands in DirectStruct.xml)

The majority of the work is done here. The contents of DirectStruct.xslt determ ine what outputs are creat ed and where they are deployed.

All Nodes Completed?

Yes

Done

DirectStruct.xslt DirectStruct.xslt contains an XML representation of the application directory structure for the application PC nodes. Various XML elements cause Main.xslt to create folders, copy files, perform XSLT transforms and launch executable programs as described in the flowchart for Main.xslt. A description of the syntax of the XML elements in DirectStruct.xslt follows:

**************************************************************************************

3BUS208222 R4001

35

Key: **************************************************************************************

[...] a | b

optional content alternation, one of the alternatives

************************************************************************************** fld element ************************************************************************************** Description Creates a folder. May contain other elements (xfrm, rexe, xcp, ...) that May also contain nested fld

cause outputs to be placed in the folder.

elements (creates hierarchical directory structure).

Syntax <fld>name="text" [nodename="text" | nodetype="NodeType"] [cflag="flag"]</fld>

name nodename nodetype cflag

folder name if specified, only process if nodename matches if specified, only process if nodetype matches flag (process if flag > 0)

Example

<fld name="HSI"> <xfrm input="joconfig.xml" xslt="MD_HSITags.xslt" output="{$TagsFileName}" nodename="{$AC800MNode}"/> <xfrm input="joconfig.xml" xslt="MD_HSIServer.xslt" output="{$ServerFileName}" nodename="{$AC800MNode}"/> </fld>

************************************************************************************** xfrm element ************************************************************************************** Description Under each '<fld>' element may be one or more '<xfrm>' elements. This

36

3BUS208222 R4001

element is used to invoke an XSLT transformation name, and outpath attributes. file and output file.

The element has input,

These are the name of the xml input, xslt

The xml input file is assumed to be located in the top with the

level folder for the job order (created by main.xslt and named JobOrder attribute). elements.

Each <xfrm> element may contain 0 to n <pm>

The <pm> elements are used to specify paramters to be Each <pm> element has a name and

passed to the XSLT transform. value attribute.

The name attribute specifies the parameter name and

the value attribute specifies the parameter value.

Syntax <xfrm>input="xmlfile" xslt="xsltfile" output="outputfile" [nodename="text" | nodetype="NodeType"] [cflag="flag"]> [<pm>name="param_name" value="param_value"</pm>] . . </xfrm>

Attribute Definitions input order xslt output nodename nodetype cflag input xml file for xslt transform, located in top level folder for job

xslt transform file, located in JOCONFIG\bin directory output file, placed in folder of containing <fld> element optional, only process if nodename matches optional, only process if nodetype matches (see NodeTypes.xslt) flag (process if flag > 0)

Example <xfrm input="joconfig.xml" xslt="MD_GlobalVariables.xslt" output="gvIO.xml" nodename="{$AC800MNode}"> <pm name="IOOnly" value="'True'"/> </xfrm>

Notes Each xslt transform invoked from the <xfrm>..</xfrm> elements is passed two parameters in addition to the <pm>..</pm> parameters. additonal parameters are NodeType and OutputFolder. The two

The node types are

3BUS208222 R4001

37

defined in NodeTypes.xslt.

The output folder is the path to the folder

where the output file is placed (defined by <fld>..</fld> element containing the <xfrm>..</xfrm> element.

************************************************************************************** rexe element ************************************************************************************** Description Under each '<fld>' element may be one or more '<rexe>' elements. element is used to launch an executable. This

The element has an exepath attribute.

The exepath attribute specifies the path of the executable to launch.

Syntax <rexe> exename="exepath" [spaceDelimiter="" | commaDelimiter=""] [nodename="text" | nodetype="NodeType"] [cflag="flag"]> [<arg>name="param_name" value="param_value"</arg>] . . </rexe>

Attribute Definitions exepath spaceDelimiter commaDelimiter nodename nodetype cflag executable file path optional, specifies delimiting arguments with spaces optional, specifies delimiting arguments with commas optional, only process if nodename matches optional, only process if nodetype matches (see NodeTypes.xslt) flag (process if flag > 0)

name string value

optional, argument name, if specified argument is passed as name=value

argument value

Example <rexe exename="{concat($BinPath, '\', 'JOTemplateTool.exe')}"> <arg value="0"/> <arg value="{$joconfigFile}"/>

38

3BUS208222 R4001

<arg value="transform-cd-opc.xml"/> <arg value="{$XSLPath}"/> <arg path=""/> </rexe>

************************************************************************************** xcp element ************************************************************************************** Description Under each '<fld>' element may be one or more '<xcp>' elements. This

element is used to copy a file into the folder defined by the <fld> element.

Syntax <xcp srcpath="path" [nodename="text" | nodetype="NodeType"] [cflag="flag"]/>

Attribute Definitions srcpath nodename nodetype cflag file path of file to copy to this folder optional, only process if nodename matches optional, only process if nodetype matches (see NodeTypes.xslt) flag (process if flag > 0)

Example <xcp srcpath="{concat($SchemaPath, '\', 'OPCtransporter.dtd')}"/>

1.6.4 Configuration File Deployment


Overview The user can connect the configuration tool PC to the Quality Control System network and request the tool to deploy the configuration files to the application nodes. The tool invokes a batch file (deploy.bat) containing XCopy commands to copy the configuration files to the appropriate directories on the application nodes. This requires that the installation package for the application nodes creates a network share Quality Control Solutions for the installation directory. The location of the batch file deploy.bat for the Job Order JOINTEGRATE is shown as:

3BUS208222 R4001

39

Figure 1-5 Batch file location for Job Order configuration

Graphical User Interface The Deploy Job button shown from the following picture is used to deploy the job order.

Figure 1-6 After configuring system chose Deploy Job button

Directory structure at configuration Tool PC

Figure 1-7 Directory structure on configuration tool PC

40

3BUS208222 R4001

<Drive>:\Program Files\ABB Industrial IT\Quality Control Solutions\Engineer IT\JOCONFIG\ bin all binaries, application OCXs, and XSLT files DB configured database file and help file IOWorkSheets IO templates and configuration file Projects folder for job orders JOINTEGRATE a job order configured ABB-QC1 a node configured from the tool Quality Control Solutions shared drive for objects and aspects icons Communicate IT root directory for QC OPC server o Dictionary scanner and actuator OPC Tag files Control IT root directory for control project CD control data files for cross direction control project o config static data files that define the configuration o data data files that may be routinely modified o OPC OPCTransporter & other OPC tag mapping files o HSI TagLookup and other client display assist files o IOWorkSheets IO templates and configuration files MD control data files for machine direction control project o config static data files that define the configuration

3BUS208222 R4001

41

data data files that may be routinely modified OPC OPCTransporter & other OPC tag mapping files o HSI TagLookup and other client display assist files o Signal Processing data files for measurement signal processing config static data files that define the configuration data data files that may be routinely modified OPC OPCTransporter & other OPC tag mapping files HSI TagLookup and other client display assist files Custom data files for custom projects Grade Grade code files Shade Shad code files Measure IT root directory for the measurement project o Quality Control data files for the measurement project config static data files that define the configuration data data files that may be routinely modified OPC OPCTransporter & other OPC tag mapping files HSI TagLookup and other client display assist files Profile IT root directory for the profiler project o CD actuator data files for CD actuator project config static data files that define the configuration data data files that may be routinely modified OPC OPCTransporter & other OPC tag mapping files HSI TagLookup and other client display assist files System data files shared by multiple projects config static data files that define the configuration data data files that may be routinely modified o o

Destination Directory Structure \\Target Node\Quality Control Solutions bin backup installation import & help network share in the target all binaries and application OCXs backup area for files replaced during AFW files in sub-folders containing objects aspects system on-line help files
3BUS208222 R4001

42

doc icons grade shade System o config o data Measure IT o Quality Control config data OPC files HSI files Control IT o MD Control project config data OPC files HSI files o IOWorkSheets o CD Control config data OPC files HSI files o Signal Processing config data OPC files HSI files o Profile IT CD actuator config data OPC files HSI files

user documentation in .PDF format objects and aspects icons grade code configuration shade code configuration data files shared by multiple projects static data files that define the configuration data files that may be routinely modified data files for the measurement project static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist

data files for machine direction control static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist IO templates and configuration files data files for cross direction control project static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist data files for measurement signal processing static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist

data files for CD actuator project static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist

3BUS208222 R4001

43

MeasSignalProcessing o config o data o OPC files o HSI files Custom o config o data o OPC files o HSI files Communicate IT o Dictionary Engineer IT Reports o Production o Sensors

data files for measurement signal processing static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist data files for custom projects static data files that define the configuration data files that may be routinely modified OPCTransporter & other OPC tag mapping TagLookup and other client display assist root directory for QC OPC server scanner and actuator OPC tag files root directory for job order configuration directory for roll set analysis production reports sensor reports

Actions When a job order is deployed, each folder under <drive>:\Program Files\ABB Industrial IT\Quality Control Solutions\Engineer IT\JOCONFIG\Projects\JOINTEGRATE will be copied from configuration tool PC to configured application nodes, if there is any file(s) existing underneath as leaf(s).

1.6.5 Troubleshooting
General If the Job Order configuration tool crashes or exhibits other unusual behavior you may have a complete (not just run-time) version of MS Access installed. Verify that the MS Access Visual Basic Editor is set to break on unhandled errors, not break on all errors. To check the setting, open an Access Database and open the Visual Basic Editor. Use the Tools-Options menu to open the options dialog. The error handling section is under the General tab. Configuration File Deployment If the configuration files are not copied to the application PC, check: PC Name Verify that the name of the Application PC matches the name specified in the configuration. Network Connection Verify the network connection to the application PC by using the ping command from a DOS command window.

44

3BUS208222 R4001

Quality Control Installation Verify that the Industrial IT Quality Control 4.0 Connectivity was installed on the application PC. Network Share Use Windows Explorer on the configuration PC and browse to the application PC under My Network Places. Verify that there is a shared folder named Quality Control Solutions. The install tool creates the network share. Access Rights Verify that you have write permission to the application PC application folder under the Quality Control Solutions network share.

1.7 OPC Server


1.7.1 Overview
The Quality Control OPC server is central to Industrial IT Quality Control 4.0. It provides connectivity to the Scanning Platform and Smart Actuator devices and is the primary means of connectivity between Quality Control applications.

1.7.2 Role of OPC


OPC is used for connectivity to Smart Platforms and Smart Actuators and is also used to for coupling Quality Control applications. The Quality Control OPC server is uploaded into the Process Portal Control Structure. This allows access to the Quality Control OPC tags by Process Portal services and applications, including the Property Transfer Service and Process Graphics.

1.7.3 Data Dictionary


For AC800M solutions the Data Dictionary is now obsolete. The Job Order Configuration Tool is now used to configure the Quality Control OPC server. For Industrial IT Quality Control 4.0 its use is limited to Smart Platforms and Actuators. The AC800M Controller has its own separate OPC server.

1.7.4 Publishing
The Quality Control OPC server supports a proprietary means of publishing data into the OPC server. Quality Control applications such as scanner, measurement, control and report applications publish data into the Quality Control OPC server using this proprietary interface. The tags that are available in the OPC server are a combination of device tags (Scanning Platform and Actuator) and published tags.

3BUS208222 R4001

45

Figure 1-8 - Quality Control Object Server Overview

ABB Qualtiy Control Object Server Overview


TCP communication link between devices and OPC server using ASI protrocol TCP Communication link between OPC Server and OPC Client

ASI Device

Object Server

OPC Client

ASI Device ASI Comm Engine OPC 2.05a Server Run Time Tag Data Base The XML Tag configuration file contains ASI Device and tag info. The QCOS will use this info to configure ASI devices and add the tags to the runtime database when QCOS starts up.

ASI Device

XML Configuration File OPC Publish Engine Publishing Client

DataDict.MDB

Data Dictionary Admin

Named Pipe Protocol used to communicate between publishing client and OPC Server Publishing client defines its own tags and data and adds the tags to the runtime database dynamically. The Publishing client is normally on the same node as the QCOS in order to avoid additional network overhead used by named pipe protocol. Data Dictionary Admin tool configures a unique database which specifies the tags on each ASI device that will be used. The ASI devices are configured when the QCOS starts up and at this time the ASI device tags are added to the runtime database.

Master DataDictionary

November 21, 2003 Bob Tournoux QCS Systems

46

3BUS208222 R4001

1.8 OPC Transporter


The OPC Transporter is used to transport data between different branches in the same OPC server or between different OPC servers. The OPC Transporter is used to connect Quality Control applications to other Quality Control applications and to foreign applications and devices. As an example, measurement data is transferred to the AC800M controller by an OPC Transporter configured to transport the measurement data from the Quality Control OPC server to the AC800M OPC server. Refer to Appendix A for a complete description of the OPC Transporter.

1.9 OPC Direct IT


1.9.1 Overview
OPC Direct IT is a client side component, used by clients to access data in an OPC server. OPC Direct IT provides the following features not available using the standard OPC server interface. 10. OPC Direct IT monitors the connection to an OPC server, and notifies its clients when the OPC server is available (UP) or unavailable (DOWN), without blocking client applications. Reconnections to OPC server are made by OPC Direct IT, and not the client applications. 11. OPC Direct IT can keep data groups, defined by client applications, alive in memory even after the client applications terminate. The next time a client application runs, its data is available immediately (no waiting on the OPC server connection path to be rebuilt). Clients using OPC Direct IT receive data exactly the same way as if they connected directly to the OPC server themselves. OPC Direct IT is designed to limit the number of threads produced by OPC servers. This is done by creating only one OPC Group object for each refresh rate required by OPC Direct IT clients. For example, if 7 different OPC Direct IT clients subscribe to data in an OPC server at refresh rate of 5 seconds, then OPC Direct IT places all subscriptions into one OPC Group object (with refresh rate of 5 sec). If 3 clients want 1 sec data and 4 want 5 sec data from an OPC server, then OPC Direct IT creates 2 OPC Group objects. A 1 second refresh object and a 5 sec refresh object. See OPC Direct IT Viewer for graphical representation of the internal structure of OPC Direct IT.

1.10 Tag Lookup


1.10.1 Overview
There are three kind methods to communicate between the HSI display and OPC server: The first one is using interface and component object, the second is using OPC DirectIT, an the third is using TagLookup. The first method will create OPC group on the server PC, and all clients will share those OPC groups. The second method will create OPC group on the client side. Both those two methods require embedded application knowledge and specific data tags
3BUS208222 R4001

47

inside HSI controls or component. If a tag been renamed, or removed, or added, or moved to the different location in OPC server, the HSI program code need be changed and recompiled. For the flexible maintenance and future reusable of ActiveX control, the TagLookup service along with enhanced OPC Direct IT method is used. The TagLookUp Service is a XML based application. It includes a server side component, interface, and implementation on the client side. On the server side, it is activated by the Startup Engine. It reads XML files that contain the tags and server information and passes that information to the client. Once an ActiveX control on the client side acquires the data tag identification, OPC Direct IT is used to update and get updated of the data tag information. Those ActiveX controls that designed with TagLookup interface are general purpose controls, the prior embedded application knowledge is not required. The following diagram illustrates, at a high level, how TagLookUp works on server and client side.

48

3BUS208222 R4001

Figure 1-9 Tag Lookup flowchart on server


QCS Service 1 OPC Server 5 QCS Applications QCSConnector

2 4 System Startup 3 XML file


(Depend on the content of the XML file, it will start OPC Server, TagsLookUp Service, )

TagsLookUpService (Using ABBFile Server)

Other component need to be started (Its not limited on same PC)

5 Tags Information XML file 1

5 Server Information XML file

. . .
Tags Information XML file n

3BUS208222 R4001

49

Figure 1-10 Tag Lookup on client


Call QCSConnect

Using persistence file?

No
Connect to QCS server node

Connected

No
Yes
Call TagLookup.getControlID

Yes

Equal to user inputted control ID?

No

Yes
Call TagLookup.getControlInfo to get a group of tags and attributes information

Clean up / Exit

Based on tags and attributes information from TagLookup, or persistence file using OPCDirectIT method to create OPC groups.

DataChange event in OPC group

Is RevID

No

Update display / ActiveX control

Yes
Clean up

1.10.2 Usage
All MD, CD tuning and operator displays are using the TagLookup. Some of MIT display: Measurement Overview and Color Measurement are using the TagLookup also.

1.10.3 Configuration
The startup XML file, tags and server information XML files are currently generated from the Job Order Configuration Tool. Startup.xml TagLookUp service will be activated by the Startup Engine; there is a startup.xml file that will specify the components that are required to be started. For a complete description, see

50

3BUS208222 R4001

Startup Engine section. A brief description is provided here to describe how to setup the TagLookup in startup.xml. Example:
<fileserver type="XML"> ABBFileServer.CXMLServer </fileserver> <OPCserver type="QCSOS">AccuRay.Object.Server.1 </OPCserver> <application name="PM1"> <collection> TagsLookUpControls </collection> <component ID="TagLookup" class="TagsLookUpControls"> <progID>ABBTagsLookUp.CABBTagsLookUpService</progID> <param argID="XMLPath">\\abbbuildtest01\Paper Quality Control\Control IT\CD Control\HSI</param> <param argID="XMLPath1">\\abbbuildtest01\Paper Quality Control\Control IT\MD Control\HSI</param> <param argID="XMLPath2">\\abbbuildtest01\Paper Quality Control\Control IT\Signal Processing\HSI</param> <param argID="XMLPath3">\\abbbuildtest01\Paper Quality Control\Profile IT\CD Actuator\HSI</param> <param argID="XMLPath4">\\abbbuildtest01\Paper Quality Control\Measure IT\Quality Control\HSI</param> <param argID="XMLPath5">\\abbbuildtest01\Paper Quality Control\Custom\HSI</param> </component> </application>

<fileserver type="XML"> ABBFileServer.CXMLServer </fileserver>

Description: ABBFileServer is used by TagLookup to read XML file.

<OPCserver type="QCSOS">AccuRay.Object.Server.1 </OPCserver>

Description: The TagLookup may need to publish tags to the AccuRay Object Server.

<collection> TagsLookUpControls </collection>

Description: The TagsLookUpControls is a collection name. It is passed from the ABBQCSApplication, and will be used by all ActiveX controls.

<component ID="TagLookup" class="TagsLookUpControls"> <progID>ABBTagsLookUp.CABBTagsLookUpService</progID>

3BUS208222 R4001

51

Description: The <component> element causes an application component to be created and activated. It must begin with the <progID> element. In this example, the ABBTagsLookUp.CABBTagsLookUpService is a registry key that identifies a component; this new object will be created and will have a key TagLookup in the TagsLookUpControls collection.

<param argID="XMLPath">\\abbbuildtest01\Paper Quality Control\Control IT\CD Control\HSI</param> <param argID="XMLPath1">\\abbbuildtest01\Paper Quality Control\Control IT\MD Control\HSI</param> <param argID="XMLPath2">\\abbbuildtest01\Paper Quality Control\Control IT\Signal Processing\HSI</param> <param argID="XMLPath3">\\abbbuildtest01\Paper Quality Control\Profile IT\CD Actuator\HSI</param> <param argID="XMLPath4">\\abbbuildtest01\Paper Quality Control\Measure IT\Quality Control\HSI</param> <param argID="XMLPath5">\\abbbuildtest01\Paper Quality Control\Custom\HSI</param>

Description: The number 1, 2, 3, after XMLPath means the number of XML file path. The content of the XML elements is a folder name. The HSI server XML and HSI tags XML are under this folder. Refer to the Startup Engine section for a complete description. HSI server XML file The HSI server XML file contains information about the PC node name, OPC Server name, and alias tag path that will be used in HSI tag information file. Example:

<?xml version="1.0"?> <Root xmlns="x-schema:HSIServer.xsd" > <Server ID="OPC"> <SvrName ID="Svr01">localhost:AccuRay.Object.Server</SvrName> </Server> <Server ID="PM"> <SvrName ID="PM01">PM1</SvrName> </Server> </Root>

52

3BUS208222 R4001

HSI tags XML file The HSI tags XML file contains information about OPC tags. The control ID is a unique identifier and is case sensitive, every ActiveX control will use this ID to retrieve a specific set of data. Each control must have one or more tag elements associated with it, and each tag element must have one or more tag attributes associated with it. The Tag ID and Attri ID should be case insensitive. Each ActiveX control will have different tag IDs and attribute IDs based on the needs of each control. Many of the keywords are control specific. The following list identifies some commonly used attribute IDs: 12. Value This keyword is commonly used to identify the value for a single tag. This keyword is most often used in instances where the tag ID represents the description of the data. 13. Resource This keyword is used to identify the index into an associated resource file. It is used in association with translatable strings that will appear to the end user. 14. Writable This keyword is used to indicate that the preceding attribute is writable. It can be empty or can include a reference OPC tag. A Boolean value of True indicates that this value can be written to be the end user. 15. Not Writable This keyword is used to indicate that the preceding attribute is not writable by the end user. It can be empty or can include a reference to an OPC tag. A Boolean value of True indicates that this can not be written to by the end user. 16. Confirm This keyword is used to indicate that the preceding attribute cannot be changed without the user selecting the value in a confirmation window. This is used to prevent the user from accidentally performing major operations such as turning a machine control on or off. It should be used sparingly. 17. HelpID This keyword specifies a string ID that is used by ABBHelpUtility.dll to retrieve the associated help file name and contextID from an INI file. Each ActiveX control has a HelpFileName property. If HelpFileName property is empty or is null, the content of HelpID in XML file will be used, otherwise the values of HelpFileName and HelpContextID properties will be used to open a context sensitive help file. If HelpFileName property is null and a HelpID entry does not exist in XML file, the Help option in right click popup menu will be disabled. See example below:
<Control ID="A Control ID"> <!-- Revision ID --> <Tag ID="RevID"> <Attri ID="Value">PM13CDTagSvr:PM13CDHSI:ARevID</Attri> </Tag>

3BUS208222 R4001

53

<!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag> <!-- Indicators--> <Tag ID="Profile Response Simulation Active"> <Attri ID="Resource">8527</Attri> <Attri ID="Value">PM13CD01Svr:PM13CD01Tag:DPT.psimon</Attri> </Tag> </Control>

Please refer to Appendix C for a complete description of HSI tag XML. Revision ID (RevID) The TagLookup provides a feature to allow tags and server XML files be modified after a server component has already been started without restarting all components over again. The RevID tag is utilized by the TagLookup to inform the control that its underlying dataset has changed. Once the RevID tag has changed, the TagLookup will reparse XML files on the server side, and all clients (ActiveX control) will be notified through the OPC server, and reacquire the data tags information from the TagLookup. There are two kinds RevID, one will be published on Accuray OPC server (see Example 1), another one will not be published and it is assumed that this tag exists and is maintained by some other process (Example 2, it has a key word NotPub). Example 1
<Tag ID="RevID"> <Attri ID="Value">PM13CDTagSvr:PM13CDHSI:PM13CD01OperInd01Rev</Attri> </Tag>

Example 2
<Tag ID="RevID"> <Attri ID="Value">PM13CDTagSvr:PM13CDHSI:PM13CD01OperInd01Rev</Attri> <Attri ID=NotPub></Attri> </Tag>

1.10.4 Troubleshooting
If TagLookUp is not work properly, using following tools to debug:

54

3BUS208222 R4001

Task Manager Check if server components are running normally. For more information, see Task Manager on Troubleshooting. Debug Message Viewer (ABB Debug Client) Check if there are any messages from the TagLookUp (CABBTagsLookUpService). If the error message is tag publishing related, make sure OPC server is running properly and tags are correctly defined in XML file. After fixing the problem, restart the whole system. If it is XML associated, check the tags and server XML file that specified in startup.xml. See if the XML files syntax is correct (for details on how to check XML syntax or parse XML files see XML section). After fixing the problem, change the value of RevID in OPC Inspector, the TagLookUp will reparse the tags and server information XML files; a restart the whole system is not required. For other messages, correct the errors follow the description on the debug viewer. For more information on how to use Debug Message, see Debug Message Viewer section on Troubleshooting. Windows Event Viewer Open Windows Event viewer, see if there is any DCOM or license related information. Refer to the DCOM section for DCOM setting. Refer to the License Viewer on Troubleshooting section for detail description on how to check the OPC server and QCS applications license. See Windows Event Viewer on Troubleshooting section for how to use it. OPC Direct IT View Open OPC Direct IT view on the client site to see if there are any missing tags or tags marked as bad quality. If any tags are undefined, correct the tag paths in tags and server XML file. After the problem is fixed, update the value of RevID in OPC Inspector, the TagLookUp will reparse the XML files (see the description of Revision ID (RevID) earlier in this TagLookUp section). See OPC Direct IT View for a complete description of how works. OPC Inspector For a complete description see OPC Inspector on Troubleshooting section. TagLookUp Viewer There is a tool TagLookUpInfo.exe which is located on the network share Paper Quality Control\bin directory. This tool shows the information that is sent from the TagLookUp service.
3BUS208222 R4001

55

The following steps show how this tool works: Specify the server node name on ABBQCSApplicationNode entry, or select Connect to Local Server option if this tool is running on the same PC with ABB QCS application. Click the Connect button, all control IDs that are provided from TagLookUp will be displayed on Control ID list view. Click the content of Control ID list, the correspond Data ID, Tags ID, Tags Name, Attribute Tags ID, and Attribute Tags Name will be displayed. Click the content of Data ID list, correspond field will be displayed.

Figure 1-11 Tags XML Information Pop-up contains tag look-up information for the system

56

3BUS208222 R4001

1.11 Startup Engine


1.11.1 Overview 1.11.2 Usage 1.11.3 Configuration

1.12 System Status Reporting


1.12.1 Overview
The Quality Control System Status Viewer displays the status of the Quality Control applications. Refer to the Troubleshooting Techniques section of this document for information on the System Status Viewer Aspect.

1.12.2 Configuration
The Quality Control System Status Viewer is configured during the installation and configuration procedure when you run the BuildObjects.bat file (Refer to the Paper Quality Control Installation Guide). Each Quality Control Object that displays status information in the Status Viewer Aspect must have the properties S_STATUS and S_DESCRIPTION and a System Status Reporter Aspect. The values of the S_STATUS property have the following meanings.

Table 1-2 System Status Reporter S_Status property meanings


S_STATUS 0 1 2 Meaning OK Error Warning

The S_DESCRIPTION property contains text describing the cause of the error or warning status. The values of the S_STATUS and S_DESCRIPTION properties are obtained from OPC tags located either in the HealthWatch branch of the Quality Control OPC server or from the AC800M OPC Server. These tag values are moved to the property values by a Property Transfer Definition Aspect located on the Quality Control Object. The following Aspects are used in supporting the Quality Control System Status Viewer Aspect.

Table 1-3 Aspects used to support Quality Control System Status Viewer Aspect
Aspect QCStatus Props Function Contains S_STATUS and S_DESCRIPTION

3BUS208222 R4001

57

properties QCStatusPropTransfer System Status Reporter Moves values from OPC tags into S_STATUS and S_DESCRIPTION properties Communicates with System Status Viewer Aspect

The following figure shows a Scanning Platform1200 Object

Figure 1-12 Scanner Object Setup

1.13 DCOM
1.13.1 Overview
DCOM (Distributed Component Object Model) is a Microsoft technology used for building distributed applications. The PC-based Industrial IT Quality Control 4.0 applications and the Quality Control OPC server are DCOM applications.

1.13.2 Usage
The Industrial IT Quality Control 4.0 applications are DCOM applications. Some of these applications are directly accessed by clients (such as process graphics) while others publish data into the Quality Control OPC server and the OPC server is the connection point for the clients.

1.13.3 Configuration
The Industrial IT Quality Control 4.0 applications DCOM settings are configured by the installation tool. The installation tool invokes script files to configure the DCOM settings for each application component. The DCOM settings include the default settings and the settings for each application. These script files are available in the C:\Program Files\ABB Industrial IT\Quality Control Solutions\bin directory and are called: DCOMCONFIG.VBS DCOMCONFIG_BASE.VBS DCOMCONFIG_AOS.VBS DCOMCONFIG_MIT.VBS

58

3BUS208222 R4001

DCOMCONFIG_CLIENT.VBS

Only System Administrators with experience of DCOm should run these scripts.

3BUS208222 R4001

59

Chapter 2 Aspects and Objects


2.1 Overview
The Industrial IT Quality Control 4.0 Objects and Aspects are packaged as a system extension in the same manner as other system extension such as the AC800M system extension. The Quality Control system extension contains all of the ActiveX controls, DLLs and afw files making up the Industrial IT Quality Control 4.0 Objects and Aspects for all Quality Control features. The Industrial IT Quality Control 4.0 Objects and Aspects are intended to be integrated into the ABB Pulp & Paper ABB Objects for product and process objects. The Pulp & Paper Object types provide a common framework for all ABB Pulp and Paper products. The Installation and Job Order Configuration process, described in the Paper Quality Control Installation and Configuration Guide, automatically populates the Functional Structure with the Quality Control Objects required for the system configuration.

2.2 Object Type Structure


The Industrial IT Quality Control 4.0 Objects are defined in the Object Type Structure. Some features implement template objects which are used as the inheritance base for specific types. The illustration below illustrates the concept but is not an actual implementation.

Figure 2-1 Object Type Structure example

2.3 Aspect categories and Filtering


The IndustrialIT platform provides the ability to filter aspects by aspect category. It is possible to define multiple filters and to assign filters to individual users. The filter affects the aspects that are visible in context menus, application bar shortcut menus and other navigation schemes.

60

3BUS208222 R4001

The following aspect categories are used to implement Quality Control process graphics. 1. System Process Display 2. System Setup Display 3. Measurement Process Display 4. Measurement Setup Display 5. Color Process Display 6. Color Setup Display 7. MD Process Display 8. MD Setup Display 9. CD Process Display 10. CD Setup Display 11. ABB Engineer Display

2.4 Quality control aspect functionality


The Quality Control graphics displays provide a mechanism by which properties can be set and the Connect and Disconnect methods can be invoked at run-time. This implementation uses special Process Graphic Aspect Categories with additional logic to invoke code contained in the ARGraphicAssist DLL. Each QC ABB Object may contain a special properties aspect of category QCS Properties. The ARGraphicAssist DLL will set properties of the same name on ActiveX controls contained in the process graphic and invoke the Connect / Disconnect methods at the appropriate times. The ARGraphicAssist DLL first applies the QCS Properties on the root Quality Control object and then applies the properties on the local object (object containing the process graphic aspect). The properties defined on the local object have precedence because they are applied last. After applying all properties, the ARGraphicAssist DLL calls the Connect / QCSConnect methods on each ActiveX control.

3BUS208222 R4001

61

2.5 Process Graphics


2.5.1 Overview 2.5.2 Tag Lookup

2.6 Grade Code Handling


2.6.1 Overview 2.6.2 Usage 2.6.3 Configuration

2.7 Coldstart File Handling


2.7.1 Overview 2.7.2 Usage 2.7.3 Configuration

2.8 MD Control
2.8.1 Overview
The MD control features are implemented in the AC800M controller using the IEC-61131 standard control language. For detailed description of the AC800M controller hardware and programming structure refer to the ControlIT documentation set. The most relevant manuals related to the MD control implementation are: 1. Control IT IEC 61131 Control Languages Introduction, (3BSE 021 358 R201 Rev B) 2. Engineer IT Control Builder M Version 3.2 Getting Started Introduction and Installation (3BSE 028 807 R201 Rev B) 3. Engineer IT AC 800M/C Version 3.2 Application Programming Strategy and Design (3BSE 028 765 R201 Rev B) 4. Control IT AC 800M/C Version 3.2 Alarm and Event Handling Objects and Design (3BSE 028 808 R201)

62

3BUS208222 R4001

5. Control IT AC 800M/C Version 3.2 Analog Process Control Objects and Design (3BSE 028 809 R101 Rev B) 6. Control IT AC 800M/C Connect Version 3.2 Integration to Process Portal A Configuration and Engineering (3BSE 028 812 R201 Rev A) 7. Control IT AC 800M Version 2.1 Controller Hardware and Operation (3BSE 027 941 R201) The MD control features are implemented using two of the five IEC-61131 languages which are FBD (function block diagram) and ST (structured text).

2.8.2 Configuration
The following section outlines the general configuration of the MD control features. MD control is composed of the several general configuration files which are AC800M control project, AC800M control libraries, operator interface configuration, default tuning and configuration data, OPC transporter configuration, and project configuration file. AC800M Control Project The AC800M control project is created during the installation by running the MD Open Interface Project Create Tool under Start -> Programs -> ABB Industrial IT -> Quality Control Solutions -> Control IT. The project can normally be found under the directory C:\ABB Industrial IT Data\Engineer IT Data\Control Builder M Professional 3.2\Projects\PM4MD01. There should be no reason to modify any of the files in the AC800M control project. The project file is created as Application_machineidMD01.app (machineid is the paper machine ID). The controller hardware configuration file as Controller_machineidNOD01.con) AC800M Control Libraries The AC800M control libraries are copied from the QCS control IT directory (C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\MD Control\Libraries) to the AC800M control project directory (C:\ABB Industrial IT Data\Engineer IT Data\Control Builder M Professional 3.2\Projects\Libraries) when the AC800M control project is created. The run time control project uses the libraries that are located in the AC800M control project directory. When the MD Open Interface Project Create Tool is run the libraries are copied to the project directory if they dont already exist in this location. If the libraries already exist in the AC800M control project directory a prompt will appear asking if the libraries should be over written. Operator Interface Configuration All of the MD displays are based on the Taglookup interface which allows the OPC tags that are displayed to be easily changed by editing the MD display XML configuration file. A detailed description of the TagLookup interface can be found in section 1.10. There are two files for the MD control display configuration which are the server definition file (e.g. PM4MD01_TagsServer.xml) and the actual OPC tag file (e.g. PM4MD01_Tags.xml). Both of
3BUS208222 R4001

63

these file are normally located under the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\MD Control\HSI. Default Tuning and Configuration Data After the MD control project has been created with the MD Open Interface Project Create Tool default tuning and configuration data can be loaded into the controller. The default tuning file contains a set of tuning values that can be used for operator training or software verification. The default tuning is a starting point for the MD control tuning but is not meant to be used for actual customer control loop tuning. The configuration data is used load job order configuration data into the controller. Both the default tuning and configuration data files only need to be loaded once in the controller. After these files have been loaded the controller data will be saved in the AC800M project cold retain data files. The default tuning data file (e.g. PM4MD01_DefaultTune.xml) and configuration data file (e.g. PM4MD01_DefaultConfig.xml) are normally located in the folder C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\MD Control\data. OPC Transporter Configuration All of the level 2 scanner measurements and grade data are transferred to and from the AC800M controller through the OPC transporter interface. The OPC transporter configuration file (e.g. PM4MD01_L2Transporter.xml) is located in the folder C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\MD Control\OPC. A detailed description of the OPC transporter can be found in section 1.8. The following table summarizes the transporter groups that are configured for MD control.

Table 2-1: OPC Transporter Groups for MD Control


Group Name (machineid paper machine ID from job order configuration) machineid_MDMeasDataToAC800 machineid_MDGCMDataToAC800 machineid_MDGCMDataFromAC800 Description

Level 2 measurement from measurement signal processing to AC800M OPC server Grade data from QCS object server to AC800M OPC server Grade data target from AC800M OPC server to QCS object server

Project Configuration File The MD control project configuration file is create by the job order configuration tool and is used by the MD Open Interface Project Create Tool when creating the MD control project file for the AC800M. This file (e.g. PM4MD01_Project.xml) is normally located in the folder C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\MD Control\config. When the MD AC800M project is create a text file is also created (MD_AddedVariables.txt) which provides a list of any additional variables that were created by the MD open interface tool that were needed based on the job order configuration. The only time this file should contain variable names is when process tag names were defined in the job order configuration level 1 measurement or level 1 control worksheets and are not

64

3BUS208222 R4001

contained in the Excel I/O worksheets. When this condition exists a message is also displayed during the MD project creation that gives the user the option to create the variables that were not found in the I/O worksheets. An example of this message is shown in the following figure.

Figure 2-2: Example of MD Project Create Tool Message for Variable Name Discrepancy

2.8.3 Configuration Verification


After the job order configuration has been deployed and the installation procedure has been completed the following items can be used to verify MD control configuration is complete. Using Plant Explorer check the System Status Viewer display on the main QCS object Industrial IT Quality Control. The MD control features should all be green and OK. Only the MD feature configured should be displayed. The available MD control features include Level 1 Control, Drystock, Headbox, Scan Level Control, Speed Control, Auto Grade Change, and Dryer Control.

3BUS208222 R4001

65

Figure 2-3: Example of Status Viewer


1. Under the functional structure the MD control objects should appear under Quality Control PMx ->PMx -> Machine. Headbox control may be under a different object based on what section this feature was assigned to in the job order configuration. An example of the MD object in the functional structure is shown in the following figure.

Figure 2-4: Example of MD Objects in Functional Structure


2. Under the Control Structure the MD control programs should all appear below the Application object (e.g. Root -> Control Network -> Application_PM4MD01 -> Applications -> Application_PM4MD01 -> Programs). The following figure shows an example of the control structure for the MD control programs.

66

3BUS208222 R4001

Figure 2-5: Example of MD Objects in Control Structure

2.8.4 Operation Verification


The following procedure can be used to verify some of the basic operation of MD control features. This procedure is not meant to test all features but only check some of the basic functionality. The Paper Quality Control Operator Manual can be used to verify all the MD control operational features. Ensure all procedures related to MD control installation and configuration have been completed as defined by the IndustrialIT OperateIT Paper Quality Control Installation Guide. In Plant Explorer go to the functional structure and find all of the MD control objects which will normally be located under Quality Control PMx -> PMx -> Machine. The MD objects are (only features configured will appear): Auto Grade Change Dryer Control Drystock Headbox Level 1 Scan Level Simulation
3BUS208222 R4001

67

Speed Control On each MD control object select each MD display aspect (look for QCS icon Verify that each display shows data. ).

Go to the simulation setup display and check the Simulation Reset and Simulation Enable check boxes. After 5 to 10 seconds clear the Simulation Reset check box. Set the remaining check boxes as shown in the following figure.

Figure 2-6: Simulation Configuration


Go to the Scan Level object and MD Control Overview display should appear. Left click once on the mode display of one of the level 1 controllers and a faceplate should appear. Right click on the mode and a menu should appear that allows the mode to be changed.

Figure 2-7: Example Faceplate

68

3BUS208222 R4001

Figure 2-8: Example Right Click Menu


Place the Stock flow in Auto mode and then enter a setpoint on the weight control close to the current measurement (measurement frame should be scanning or frame simulation should be enabled). Place the weight control in Auto and the stock flow should go to E1. Change the stock flow back to Auto mode and the weight control should go back to manual and a red alarm indicator should appear. The alarm list should also have a new alarm for the weight control abort. Right click the weight control alarm indicator and then select the MD_Abort_Suspend menu item which should open a display that identifies the abort condition that occurred.

2.9 CD Control
2.9.1 Overview
Sheet properties such as weight, moisture and caliper have sensor measurements that vary in both the machine-direction (MD) and cross-machine direction (CD). MD is defined as the direction of sheet travel, whereas CD is defined as the direction perpendicular to the MD. A CD control is an application designed to correct variations in the CD by applying control actions to CD actuators (e.g. headbox slice, water spray, and infrared dryer). The control requires existence of a scanner and measurement sub-system, and a CD actuator sub-system to perform its intended tasks. CD control is designed as a soft control for deployment in an ABB QCS Server. The control is implemented with an OPC interface to handle data flow via an OPC Transporter service with the scanner and measurement sub-system, and the CD actuator sub-system. This control implementation methodology requires that the two sub-systems, to which the CD control passes data, have their tags available in an OPC server. For the integrated ABB QCS solution, this requirement is fulfilled to the extent of creating the XML documents needed by the OPC Transporter service for passing data back and forth. In total, the CD control application is dependent on the following ABB QCS Application Framework to start up and to expose its OPC data to other ABB QCS applications: 1. QC Object Server

3BUS208222 R4001

69

2. ABB QCS Service 3. OPC Transporter service 4. OPC Publishing 5. TagsLookup 6. ABB Health Watch

2.9.2 Application Framework Dependencies


ABB QCS Service ABB QCS service is used to launch the CD control application when the server machine, in which CD control exists, is started up. The following entries are added to the startup.xml document by the job order configuration tool to schedule startup of the CD control application:
<component class="PCCDControls" ID="PCDControl1"> <progID>ABBCDControl.CABBBasCDSupervisor</progID> <param argID="ConfigFile">\\server_name\Paper Quality Control\Control IT \CD Control\config\PMxCDMasterConfig.xml</param> <param argID="ErrorFile">ErrorLog.log</param> </component>

In the above code example, the server_name is the machine name of the ABB QCS Server, in which CD control exists, and PMx is the paper machine label assigned in the job order configuration. The main roll of ABB QCS Service includes the following: 7. Pass the configuration file corresponding to the ConfigFile parameter and launch the CD control class CABBBasCDSupervisor. 8. Notify the CD control application of successful startup of the QC Object Server so that the CD control application can publish its OPC tags. 9. Request termination of the CD control application when the ABB QCS Service is stopped. OPC Publishing OPC tags for the CD control are created in the QC Object Server by the OPC Publishing software application. During startup, the CD control application publishes tags for each of the control instance present in the server machine. The following OPC branch structure is used to organize the published tags PMx - CDControls - Standard - CD01 - Act + Act1 + Sim1 - Meas

(1st instance of CD control) (interface tags to true actuator system) (interface tags to CD process response simulator)

70

3BUS208222 R4001

+ +

+ Meas1 + Sim1 + DPT + SPT CD02 CDnn

(interface tags to true frame and sensor system) (interface tags to CD process response simulator) (scalar data in the CD control application) (array data in the CD control application (2nd instance of CD control) (n-th instance of CD control)

where PMx is the paper machine label assigned in the job order configuration and nn, in CDnn, is a two character numbering instance of the CD control. In the above branch structure, the - denotes branches that are fully expanded and the + denotes branches that are collapsed. The actual published tags exist under the branches Act1, Meas1, Sim1, DPT, and SPT. At startup, the tags under branches DPT and SPT are created and initialized. Tags that are tuning parameters are set to persisted values. All other tags are initialized to the value of zero. The tags under branches Act1, Meas1 and Sim1 are created without initialization, resulting in a tag quality of uncertain. The tag quality remains uncertain until it is written to either by an internal write from the CD control or an external write by a client application. OPC Transporter Service The OPC Transporter service is used by the CD control to move data between the control application and other QCS applications (e.g. CD actuator, frame, sensor, grade data and simulation). The job order configuration tool generates the following four types of transporter XML documents for each CD control instance: 10. PMxCDnnMeasXPort.xml 11. PMxCDnnActXPort.xml 12. PMxCDnnGDXPort.xml 13. PMxCDnnSimXPort.xml Additional information about these XML documents is provided in section 2.9.3. The first three types of transporter files are copied to a directory that has been registered as an active processing path for the OPC Transporter service. For CD control, the active processing path is typically C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\OPC XML documents that can be validated by the OPCTransporter.dtd scheme and are placed in this directory are automatically started by the OPC Transporter service when the QCS Server node starts up. The fourth XML file in the above list is intentionally left out of the active processing path to avoid startup of simulation transporters. TagsLookup The TagsLookup component is used to define groups of OPC tags (call ControlID) to interface with specialized ActiveX controls. These ActiveX controls generate OPC Direct groups with the tag information formatted in the ControlIDs. The ControlID format further provides visual presentation instructions to the ActiveX control. In total, CD control visual aspects are created from the following list of ActiveX controls:
3BUS208222 R4001

71

1. ABBAutoPlotCtl 2. ABBAutoCfgGrid 3. ABBCommandButtons 4. ABBIndicator 5. ABBCDMapping 6. ABBMSFlexGrid_TL CD control operator and engineering information is captured in 11 visual aspects. Table 2-2 presents the visual aspects and identifies the TagsLookup ControlIDs corresponding to each of the ActiveX controls used on these aspects.

Table 2-2: CD control TagsLookup ControlID


Aspect Name Control Overview ActiveX Control and ControlID ABBAutoPlotCtl: PMxCDnnOperPlt01 ABBAutoCfgGrid: PMxCDnnOperGrd01 ABBAutoCfgGrid: PMxCDnnOperGrd02 ABBIndicator: PMxCDnnOperInd01 ABBCommandButtons: PMxCDnnOperCmd01 ABBAutoPlotCtl: PMxCDnnTargPlt01 ABBAutoCfgGrid: PMxCDnnTargGrdTL01 ABBCommandButtons: PMxCDnnTargCmd01 ABBAutoCfgGrid: PMxCDnnMappGrd01 ABBAutoCfgGrid: PMxCDnnMappGrd02 ABBCommandButtons: PMxCDnnMappCmd01 ABBCommandButtons: PMxCDnnMappCmd02 ABBIndicator: PMxCDnnMappInd01 ABBCDMapping: PmxCDnnMappPix01 ABBAutoCfgGrid: ABBAutoCfgGrid: ABBAutoCfgGrid: ABBAutoCfgGrid: PMxCDnnTuneGrd01 PMxCDnnTuneGrd02 PMxCDnnTuneGrd03 PMxCDnnTuneGrd04

Profile Target

Actuator to Profile Mapping

Control Tuning

Profile Processing Spatial Response Model

ABBAutoPlotCtl: PMxCDnnFiltPlt01 ABBAutoCfgGrid: PMxCDnnFiltGrd01 ABBAutoPlotCtl: PMxCDnnRespPlt01 ABBAutoCfgGrid: PMxCDnnRespGrd01 ABBCommandButtons: PMxCDnnRespCmd01 ABBAutoCfgGrid: PMxCDnnBmp1Grd01 ABBAutoCfgGrid: PMxCDnnBmp1Grd02 ABBAutoCfgGrid: PMxCDnnBmp1Grd03 ABBIndicator: PMxCDnnBmp1Ind01 ABBCommandButtons: PMxCDnnBmp1Cmd02

Bumptest Setup

72

3BUS208222 R4001

Aspect Name Bumptest Analysis

ActiveX Control and ControlID ABBAutoPlotCtl: PMxCDnnBmp2Plt01 ABBAutoPlotCtl: PMxCDnnBmp2Plt02 ABBAutoCfgGrid: PMxCDnnBmp2Grd01 ABBAutoCfgGrid: PMxCDnnBmp2Grd02 ABBCommandButtons: PMxCDnnBmp2Cmd01 ABBAutoPlotCtl: PMxCDnnSetpPlt01 ABBAutoCfgGrid: PMxCDnnSetpGrd01 ABBCommandButtons: PMxCDnnSetpCmd01 ABBCommandButtons: PMxCDnnSetpCmd02 ABBAutoPlotCtl: PMxCDnnEdgePlt01 ABBAutoCfgGrid: PMxCDnnEdgeGrd01 ABBAutoCfgGrid: PMxCDnnEdgeGrd02 ABBAutoCfgGrid: PMxCDnnEdgeGrd03 ABBCommandButtons: PMxCDnnEdgeCmd01 ABBAutoPlotCtl: PMxCDnnSBrkPlt01 ABBCommandButtons: PMxCDnnSBrkCmd01 ABBAutoCfgGrid: PMxCDnnSBrkGrd01 ABBAutoCfgGrid: PMxCDnnSBrkGrd02 ABBAutoCfgGrid: PMxCDnnSBrkGrd03 ABBAutoCfgGrid: PMxCDnnSBrkGrd04

Setpoint Save/Restore

Edge Handling

Sheetbreak Recovery

ABB Health Watch The ABB HealthWatch component is accessed to report both good and bad status regarding the CD control application. The status information for each CD control instance is reflected on the PPA Status Report Viewer by a symbol and text messages. CD control exposes the following status information to the ABB HealthWatch component: 1. Application Heartbeat a value generated by CD control that is periodically incremented by one 2. Application License Error a valid license could not be obtained for the CD control instance 3. OPC Error tag publishing or connection to the OPC server could not be established 4. Transporter Watchdog Error OPC Transporter service did not detect a heartbeat signal from the corresponding measurement system or actuator system in the allotted time period 5. Transporter Update Error CD control did not receive a new watchdog update from the OPC Transporter service in the allotted time period for the connection to the measurement system or actuator system 6. Application Startup Error CD control could not be started up due to any of the above error conditions or because of a bad CD control master configuration XML file

3BUS208222 R4001

73

2.9.3 Configuration
Required Job Order Information The job order configuration tool is used to configure all the necessary XML documents for CD control. In order to achieve this task, the information presented in Table 2-3 is required for each CD control instance being configured. In Figure 2-9, the Figure Reference numbers shown in Table 2-3 are identified as callouts, outlined with a box.

Table 2-3: CD control job order information


Configuration Labels Description Figure Referenc e 1

CD Type

The CD type field defines the application for which the CD control instance is being configured. The type is selected from an option list that includes CD Weight, CD Moisture, CD Caliper, CD Coat Weight, CD Gloss, and CD Smoothness. The type should be chosen in accordance to the features appearing in the purchase order. The configured CD types will be checked for valid licenses. The description field is a user-defined entry for identifying the CD control instance. This description will be captured in the functional structure of PPA. The node field identifies the QCS server name where the CD control instance is to reside. The node name is selected from a list of names that are entered in the Nodes tab of the configuration tool. The actuator field identifies the profiling actuator that the CD control instance is interfaced to. The selection of actuator is selected from a list of names that are entered in the CD Actuators tab of the configuration tool. The machine section field identifies the machine processing section that the CD control instance is most closely associated with. The machine section is selected from a list of names that are entered in the General tab of the configuration tool. The selected machine section will be the location in the PPA functional structure for placement of all aspects associated with the CD control instance. The 1st profile (primary) measurement ID field identifies a sensor profile name that is controlled by the CD control instance. The measurement ID is selected from a list of sensor names that are entered in the Measurement tab of the configuration tool.

Description

Node

Actuator

Machine Section

Measurement ID (1st profile)

74

3BUS208222 R4001

Configuration Labels

Description

Figure Referenc e 7

Measurement ID (2nd profile)

If desired, the 2nd profile (secondary) measurement ID field identifies a sensor profile name that is controlled by the CD control instance. The measurement ID is selected from a list of sensor names that are entered in the Measurement tab of the configuration tool.

3 2 1 4 5

7 6

Figure 2-9: CD control job order configuration tab


Deployment Directory Structure When a project job is deployed, the configuration tool copies all XML documents related to CD control into predetermined CD control application directories. These application directories include 7. ..\Control IT\CD Control\config Includes a configuration file for starting up all CD control instances and CD simulation files. 8. ..\Control IT\CD Control\data Includes tuning persistence files, setup files and log files for each CD control instances. 9. ..\Control IT\CD Control\HSI Includes TagsLookup definition files for each CD control instances.
3BUS208222 R4001

75

10. ..\Control IT\CD Control\OPC Includes transporter XML files for each CD control instances to interface to other QCS applications (e.g. CD actuators, frame and sensor, and grade data) The base directory leading up to the CD control application directories is the installation directory for the application framework. If the default directory is accepted when the application framework is installed, then the base directory will be C:\Program Files\ABB Industrial IT\Quality Control Solutions\ XML Documents XML documents are used to store information required by CD control. These documents are generated by the job order configuration tool and copied to designated directories as identified in the above section. Table 2-4 lists all XML documents related to CD control. The content of this table is offered as information. These XML documents should not be modified. In the table, the label PMx signifies the machine name (e.g. PM4 or PM13) and the label CDnn is a numbering sequence (e.g. CD01, CD02, CD03, etc.) used to identify the CD control instances. Both labels are entered during execution of the job order configuration tool.

Table 2-4: CD control XML documents


File Name PMxCDMasterConfig.x ml Directory Config Description CD control configuration file, one for all CD control instances. This file contains information necessary to dimension CD control arrays and references to the other XML documents that are used by the CD control instances. CD tuning file, one per CD control instance. This file contains tuning values that are periodically persisted so that they can be loaded on system restarts. CD profile target file, one per CD control instance. This file contains setup parameters necessary for recreating target profiles. CD saved setpoint file, one per CD control instance. This file contains multiple stored setpoint values. These setpoint values are available for on-demand restoration. CD alarms and events, one per CD control instance. This file contains OPC published alarms and events. HSI TagsLookup alias file, one for all CD control instances. This file contains aliases for the QC Object Server name and the OPC branch names of all CD control instances.

PMxCDnnTuning.xml

Data

PMxCDnnTarget.xml

Data

PMxCDnnSPSave.xml

Data

PMxCDnnAlarms.xml

Data

PMxCDServer.xml

HSI

76

3BUS208222 R4001

File Name PMxCDnnTags.xml

Directory HSI

Description HSI TagsLookup tag definition file, one per CD control instance. This file contains all the OPC tags (organized as ControlID) necessary to support the visual aspects created for CD control. Frame and sensor transporter file, one per CD control instance. This file contains transporters for passing frame and sensor data to the CD control. Actuator transporter file, one per CD control instance. This file contains transporters for passing actuator setpoints, actuator feedback, zone status, and actuator system status between the CD control and the actuator system. Grade data transporter file, one per CD control instance. This file contains a transporter for passing grade dependent CD tuning values on a grade change (automatic or manual) event. CD simulator configuration file, one for all CD control instances. This file contains parameters for defining the actuator system, frame system and profile response. CD simulator transporter file, one per CD control instance. This file contains transporters for passing simulated frame, sensor and actuator data to and from the CD control.

PMxCDnnMeasXPort.x ml

OPC

PMxCDnnActXPort.xm l

OPC

PMxCDnnGDXPort.xm l

OPC

PMxCDSimConfig.xml

Config

PMxCDnnSimXPort.x ml

Config

2.9.4 Interface to Dependent Application


Data transfer between CD control and other QCS applications is achieved entirely by OPC transporters. The following sections identify the specific transporter groups created by the job order configuration. Frame and Sensor Transporters The transporter XML document created for transferring frame and sensor data to CD control is PMxCDnnMeasXPort.xml

This transporter document contains only unidirectional transporter groups. The transporter groups contained within and their function are as follows: 1. PMxCDnnMSPFrame Transports data from the frame (SP branch) to CD control. Transported data
3BUS208222 R4001

77

includes databox width, home frame limit, home sheet position, far sheet position, auto-edge-of-sheet status, and current frame head position 2. PMxCDnnMSPMeas1 Transports data from time-based measurement (CONTROLMEAS branch) to CD control. Transported data includes scan time, number of databoxes, frame offsheet status, frame sheetbreak status, first databox number with profile data, last databox number with profile data, high-resolution profile, and profile average. 3. PMxCDnnMSPMeas2 This transporter group is created only if a second profile measurement is assigned to the CD control. Transports data from time-based measurement (CONTROLMEAS branch) to CD control. Transported data includes highresolution profile, and profile average. Actuator Transporters The transporter XML document created for transferring actuator data with CD control is PMxCDnnActXPort.xml

This transporter document contains bi-directional transporter groups. The transporter groups contained within and their function are as follows: 1. PMxCDnnActOutput Transports data from CD control to actuator (CDActuators branch). Transported data includes new actuator setpoints generated automatically or manually from the CD control. 2. PMxCDnnActInput Transports data from actuator (CDActuators branch) to CD control. Transported data includes actuator measurement feedback, bad actuator status, bad measurement feedback status, actuator not moveable status, actuator in local status, actuator request to suspend CD control flag, actuator request to abort CD control flag. Grade Data Transporter The transporter XML document created for transferring grade data to CD control is PMxCDnnGDXPort.xml

This transporter document contains a unidirectional transporter group. The transporter group contained within and its function is as follows: 1. PmxCDnnGradeData

78

3BUS208222 R4001

Transports data from grade data (SQCS.GD branch) to CD control. Transported data includes CD response model, setpoint smoothing factor, tuning gains, MD and CD filter factors, control high and low setpoint limits, setpoint 1st and 2nd order difference limits, maximum setpoint change limit, and non-linear mapping table.

2.9.5 Verify Configuration and Operation


QC Server Node After the job order configuration has been deployed and the installation procedure has been completed, startup of CD control by ABB QCS Service can be monitored in the ABB Debug Client. Figure 2-10 gives an example of the ABB Debug Client with messages related to startup of the CD control application. In the client window, a successful startup of CD control will generate the following messages in sequence: 1. CABBBasCDSupervisor: Beginning startup of CD system. Config file: \\ This message is displayed as result of ABB QCS Service launching the supervisor class and passing it the CD control configuration file.

2. CABBBasCDSupervisor: Begin creating new CD control instance. This message is displayed for each CD control instance, indicating creation of a CD control object.

3. CABBBasCDSupervisor: Initializing CD Control package CDnn. This message is displayed for each CD control instance, indicating internal initialization of arrays and tuning value.

4. CABBBasCDSupervisor: CD Control package CDnn initialized. This message is displayed for each CD control instance, indicating completion of internal initialization.

5. CABBBasCDSupervisor: Publishing tags for CD Control package CDnn. This message is displayed for each CD control instance, indicating creation of OPC tags in the QC Object Server. This step of the CD control startup is postponed until the ABB QCS Service notifies the CD supervisor that the target QC Object Server has successfully started up.

6. CABBBasCDSupervisor: Checking license for CD Control package CDnn. This message is displayed for each CD control instance, indicating that license is being checked.

3BUS208222 R4001

79

7. CABBBasCDSupervisor: Connecting to OPC Server for CD Control package CDnn. This message is displayed for each CD control instance, indicating that the CD control application has established a link with the QC Object Server. If a license for the CD control instance could not be validated, the connection to the QC Object Server is not performed.

8. CABBBasCDSupervisor: CDnn started successfully. This message is displayed for each CD control instance, indicating successful startup of the CD control instance.

Figure 2-10: ABB Debug Client for startup of CD control


Process Portal Functional Structure After the job order configuration has been deployed and the installation procedure has been completed the following items can be used to verify that PPA configuration for CD control is complete. 1. Using Plant Explorer, check the System Status Viewer display on the main QCS object Industrial IT Quality Control. The CD control features should all have a green circle in the Status column. Only the CD control features configured should be displayed. In Figure 2-11, Dilution CD Weight and CD Moisture are shown as examples.

80

3BUS208222 R4001

Figure 2-11: Status viewer example for CD control


2. In the functional structure, the CD control objects should appear under Quality Control - PMx, Industrial IT Quality Control > PMx, Paper Machine > Machine Section, Paper Machine Section where PMx is a label for the paper machine and Machine Section is a label for process section. These labels are created during execution of the job order configuration tool. In the aspects lists, 11 visual aspects should be present. In Figure 2-12, Dilution CD Weight and CD Moisture are shown as examples.
Machine Section

CD Type Description

Visual Aspects

Figure 2-12: Functional structure example for CD Control


Error/Event Log File An error and event log file is maintained for each CD control instance. This log file is typically created in the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\data with the naming convention PMxCDnnErrorLog.log,

3BUS208222 R4001

81

where PMx is a machine name label (e.g. PM4 or PM13) and CDnn is a numbering sequence (e.g. CD01, CD02, CD03, etc.) used to identify the CD control instances. The log file is erased on restart of the CD control application and is populated with messages from that point until the next restart. The content of the log file includes the startup sequence messages, application code error, transporter errors, and data persistence events. If the content of the log file is important for troubleshooting, it is essential to copy the file into a safe location before restarting the CD control application. As mentioned in the above paragraph, the log file is erased on restart of the CD control application.

2.10 CD Control Coater Operation


2.10.1 Overview
CD control coater operation, or CD coat weight control (CDCTW), is a supervising application for a standard CD control. CDCTW is designed to handle sequence needs of coat operations (e.g., blade change, different blade types, sheet splicing). When applied, CDCTW is associated with a specific CD control package. Data communication between CDCTW and the standard CD control and grade data are transferred via the OPC Transporter service. The CDCTW application and its corresponding CD control package are deployed in the same ABB QCS Server. The CDCTW application is dependent on the following ABB QCS Application Framework to start up and to expose its OPC data to other ABB QCS applications: 1. QC Object Server 2. ABB QCS Service 3. OPC Transporter service 4. OPC Publishing 5. TagsLookup 6. ABB Health Watch

2.10.2 Application Framework Dependencies


ABB QCS Service ABB QCS service is used to launch the CDCTW application when the server machine is started up. The following entries are added to the startup.xml document by the job order configuration tool to schedule startup of the LVC application:
<component class="CDCTWControls" ID="CDCTWControl1"> <progID>ABBCDCoatControl.CCDCTWSupervisor</progID> <param argID="ConfigFile">\\server_name\Paper Quality Control\Control IT\ CD Control\Config\PMxCoatWtMasterConfig.xml</param> </component>

In the above code example, the server_name is the machine name of the ABB QCS Server and PMx is the paper machine label assigned in the job order configuration.

82

3BUS208222 R4001

The main roll of ABB QCS Service includes the following: 1. Pass the configuration file corresponding to the ConfigFile parameter and launch the CDCTW class CCDCTWSupervisor. 2. Notify the CDCTW application of successful startup of the QC Object Server so that the CDCTW application can publish its OPC tags. 3. Request termination of the CDCTW application when the ABB QCS Service is stopped. OPC Publishing OPC tags for CDCTW are created in the QC Object Server by the OPC Publishing software application. During startup, the CDCTW application publishes tags for each of the instances configured in the server machine. The following OPC branch structure is used to organize the published tags PMx - CDControls - CoatWt - CD02 - Data + CD05 + CDnn

(instance of CDCTW corresponding to 2nd CD control) (instance of CDCTW corresponding to 5th CD control) (instance of CDCTW corresponding to nnth CD control)

PMx is the paper machine label assigned in the job order configuration and nn, in CDnn, is a two character numbering instance of the CD control associated with the CDCTW instance. In the above branch structure, the - denotes branches that are fully expanded and the + denotes branches that are collapsed. The actual published tags exist under the branch Data. OPC Transporter Service The OPC Transporter service is used by CDCTW to move data between CDCTW and its corresponding CD control and grade data. The job order configuration tool generates the following transporter XML document for each CDCTW instance: 1. PMxCDnnCoatWtXPort.xml 2. PMxCDnnCoatWtGDXPort.xml These transporter files are copied to a directory that has been registered as an active processing path for the OPC Transporter service. For CD control and its applications, the active processing path is typically C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\OPC XML documents that can be validated by the OPCTransporter.dtd scheme and are placed in this directory are automatically started by the OPC Transporter service when the QCS Server node starts up.

3BUS208222 R4001

83

TagsLookup The TagsLookup component is used to define groups of OPC tags (call ControlID) to interface with specialized ActiveX controls. These ActiveX controls generate OPC Direct groups with the tag information formatted in the ControlIDs. The ControlID format further provides visual presentation instructions to the ActiveX control. For each CDCTW instance configured, definition of the ControlIDs are given in an XML document with the filename format of 1. PMxCDnnCoatWtTags.xml This XML document is typically located in the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\HSI In total, CDCTW visual aspects are created from the following list of ActiveX controls: 1. ABBAutoPlotCtl 2. ABBAutoCfgGrid 3. ABBCommandButtons 4. ABBIndicator 5. ABBCDMapping CDCTW operator and engineering information is captured on 2 visual aspects. Table 2-5 presents the visual aspects and identifies the TagsLookup ControlIDs corresponding to each of the ActiveX controls used on these aspects.

Table 2-5: CDCTW TagsLookup ControlID


Aspect Name CD Coat Weight Operations ActiveX Control and ControlID ABBAutoPlotCtl: PMxCDnnCoatWtOperationsPlt01 ABBCommandButtons: PMxCDnnCoatWtOperationsCmd01 ABBCommandButtons: PMxCDnnCoatWtOperationsCmd02 ABBCommandButtons: PMxCDnnCoatWtOperationsCmd03 ABBAutoCfgGrid: PMxCDnnCoatWtOperationsGrd01 ABBAutoCfgGrid: PMxCDnnCoatWtOperationsGrd02 ABBAutoCfgGrid: PMxCDnnCoatWtOperationsGrd03 ABBIndicator: PMxCDnnCoatWtOperationsInd01 ABBAutoPlotCtl: PMxCDnnCoatWtAModelPlt01 ABBAutoCfgGrid: PMxCDnnCoatWtAModelGrd01 ABBAutoCfgGrid: PMxCDnnCoatWtAModelGrd02 ABBCommandButtons: PMxCDnnCoatWtAModelCmd01

CD Coat Weight Adaptive Model

ABB HealthWatch The ABB HealthWatch component is accessed to report both good and bad status regarding the CDCTW application. The status information for each CDCTW instance is reflected on the

84

3BUS208222 R4001

PPA Status Report Viewer by a symbol and text messages. CDCTW exposes the following status information to the ABB HealthWatch component: 1. Application Heartbeat a value generated by CDCTW that is periodically incremented by one 2. Application License Error a valid license could not be obtained for the CDCTW instance 3. OPC Error tag publishing or connection to the OPC server could not be established 4. Transporter Watchdog Error OPC Transporter service did not detect a heartbeat signal from the corresponding CD control instance in the allotted time period 5. Transporter Update Error CDCTW did not receive a new watchdog update from the OPC Transporter service in the allotted time period for the connection to the corresponding CD control instance 6. Application Startup Error CDCTW could not be started up due to any of the above error conditions or because of a bad CDCTW master configuration XML file

2.10.3 Configuration
Required Job Order Information The job order configuration tool is used to configure all the necessary XML documents for CDCTW. Configuration of CDCTW is determined by selection of the CD Type, on the CD Control tab. If CD Coat Weight is select for CD Type, then CDCTW is configured for that specific CD control instance. In Figure 2-13, an example of the CD Control tab is given with CD Coat Weight shown as one of the possible CD Type selections.

Figure 2-13: CD control job order configuration tab with CD Coat Weight as an option for the CD Type

3BUS208222 R4001

85

Deployment Directory Structure When a project job is deployed, the configuration tool copies all XML documents related to CDCTW into predetermined application directories. These application directories include 1. ..\Control IT\CD Control\config Includes a configuration file for starting up all CDCTW instances. 2. ..\Control IT\CD Control\data Includes tuning persistence files and log files for each CDCTW instances. 3. ..\Control IT\CD Control\HSI Includes TagsLookup definition files for each CDCTW instances. 4. ..\Control IT\CD Control\OPC Includes transporter XML files for each CDCTW instances to interface to its corresponding CD control instance. The base directory leading up to the CD control application directories is the installation directory for the application framework. If the default directory is accepted when the application framework is installed, then the base directory will be C:\Program Files\ABB Industrial IT\Quality Control Solutions\ XML Documents XML documents are used to store information required by CDCTW. These documents are generated by the job order configuration tool and copied to designated directories as identified in the above section. Table 2-6 lists all XML documents created for CDCTW. The content of this table is offered as information. These XML documents should not be modified. In the table, the label PMx signifies the machine name (e.g. PM4 or PM13) and the label CDnn is a numbering sequence (e.g. CD01, CD02, CD03, etc.) used to identify the CD control instance corresponding to the configured CDCTW instance. Both labels are determined from data entered in the job order configuration tool.

Table 2-6: CDCTW XML documents


File Name PMxCoatWtMasterConfig.xml Directory Config Description CDCTW configuration file, one for all CDCTW instances. This file contains information necessary to dimension CDCTW arrays and references to the other XML documents that are used by the CDCTW instances. CDCTW tuning file, one per CDCTW instance. This file contains tuning values that are periodically persisted so that they can be loaded on system restarts.

PMxCDnnCoatWtTuning.xml

Data

86

3BUS208222 R4001

File Name PMxCDnnCoatWtAlarms.xml

Directory Data

Description CDCTW alarms and events, one per CDCTW instance. At this time, no OPC published alarms and events are defined; therefore, this file is presently empty. To generate application alarms or events, PPA alarm and event uploaded should be configured for the specific CDCTW OPC tag. HSI TagsLookup tag definition file, one per CDCTW instance. This file contains all the OPC tags (organized as ControlID) necessary to support the visual aspects created for CDCTW. Transporter file to communicate between CDCTW and its corresponding CD control instance, one per CDCTW instance. Transporter file to communicate between CDCTW and grade data, one per CDCTW instance.

PMxCDnnCoatWtTags.xml

HSI

PMxCDnnCoatWtXPort.xml

OPC

PMxCDnnCoatWtGDXPort.xml

OPC

2.10.4 Interface to Dependent Application


Data transfer between CDCTW and its corresponding CD control and grade data is achieved entirely by OPC transporters. The following sections identify the specific transporter groups created by the job order configuration. CD Control The transporter XML document created for transferring CDCTW data with CD control is PMxCDnnCoatWtXPort.xml This transporter document contains bi-directional transporter groups. The transporter groups contained within and their function are as follows: 1. PMxCDnnCoatWtDataInput Transports data from CD control to CDCTW. 2. PMxCDnnCoatWtDataOutput Transports data from CDCTW to CD control. Grade Data The transporter XML document created for transferring grade data information to CDCTW is PMxCDnnCoatWtGDXPort.xml

3BUS208222 R4001

87

The transporter groups contained within and their function are as follows: 1. PMxCDnnCoatWtGradeData Transports data from grade data to CDCTW.

2.10.5 Verify Configuration and Operation


QC Server Node After the job order configuration has been deployed and the installation procedure has been completed, startup of CDCTW by ABB QCS Service can be monitored in the ABB Debug Client. Figure 2-14 gives an example of the ABB Debug Client with messages related to startup of the CDCTW application. In the client window, a successful startup of CDCTW will generate the following messages in sequence: 1. CDCoatControl: CCDCTWSupervisor: Beginning startup of system. Config file: \\ This message is displayed as a result of ABB QCS Service launching the supervisor class and passing it the CDCTW configuration file.

2. CDCoatControl: CCDCTWSupervisor: Valid license obtained. This message is displayed for each CDCTW instance, indicating that license checking was successful.

3. CDCoatControl: CCDCTWSupervisor: Begin creating new object. This message is displayed for each CDCTW instance, indicating creation of a CDCTW object.

4. CDCoatControl: CCDCTWSupervisor: Begin initializing CDnn. This message is displayed for each CDCTW instance, indicating internal initialization of arrays and tuning value.

5. CDCoatControl: CCDCTWSupervisor: CDnn started successfully. This message is displayed for each CDCTW instance, indicating successful startup of the CDCTW instance.

88

3BUS208222 R4001

Figure 2-14: ABB Debug Client for startup of CDCTW


Process Portal Functional Structure After the job order configuration has been deployed and the installation procedure has been completed the following items can be used to verify that PPA configuration for CDCTW is complete. 1. Using Plant Explorer, check the System Status Viewer display on the main QCS object Industrial IT Quality Control. The CDCTW features will appear as a child node to its corresponding CD control instance. The CDCTW features should all have a green circle in the Status column. Only the CDCTW features configured should be displayed. In Figure 2-15, CD Top Coat Weight is shown as the CD control instance that is configured with CDCTW.

3BUS208222 R4001

89

Figure 2-15: Status viewer example for CDCTW


2. In the functional structure, the CD control objects corresponding to the CDCTW instances should appear under Quality Control - PMx, Industrial IT Quality Control > PMx, Paper Machine > Machine Section, Paper Machine Section where PMx is a label for the paper machine and Machine Section is a label for process section. These labels are created during execution of the job order configuration tool. The object type for these CD controls should be of type CD Coat Weight. The aspect list should include the 11 visual aspects that are standard for CD control and an additional 3 visual aspects for the CDCTW application. Error/Event Log File An error and event log file is maintained for each CDCTW instance. This log file is typically created in the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\data with the naming convention PMxCDnnCoatWtErrorLog.log, where PMx is a machine name label (e.g. PM4 or PM13) and CDnn is a numbering sequence (e.g. CD01, CD02, CD03, etc.) used to identify the CD control instance corresponding to the CDCTW instance. The log file is erased on restart of the CDCTW application and is populated with messages from that point until the next restart. An archive of the log file is made prior to the erase operation. The content of the log file includes the startup sequence messages, application code error, transporter errors, and data persistence events.

90

3BUS208222 R4001

2.11 Local Variability (LV) Control


2.11.1 Overview
Local Variability Control (LVC) is a supervising application for CD control. LVC is designed to optimize the CD control mapping and the CD control setpoint smoothness to gain improved profile variability performance. When applied, LVC is associated with a specific CD control package. Data communication between CD control and LVC are transferred via the OPC Transporter service. The LVC application and its corresponding CD control package are deployed in the same ABB QCS Server. The LVC application is dependent on the following ABB QCS Application Framework to start up and to expose its OPC data to other ABB QCS applications: 1. QC Object Server 2. ABB QCS Service 3. OPC Transporter service 4. OPC Publishing 5. TagsLookup 6. ABB Health Watch

2.11.2 Application Framework Dependencies


ABB QCS Service ABB QCS service is used to launch the LVC application when the server machine is started up. The following entries are added to the startup.xml document by the job order configuration tool to schedule startup of the LVC application:
<component class="PCLVControls" ID="PCLVControl1"> <progID>ABBLVControl.CLVCSupervisor</progID> <param argID="ConfigFile">\\server_name\Paper Quality Control\Control IT\ CD Control\Config\PMxLVCMasterConfig.xml</param> </component>

In the above code example, the server_name is the machine name of the ABB QCS Server and PMx is the paper machine label assigned in the job order configuration. The main roll of ABB QCS Service includes the following: 1. Pass the configuration file corresponding to the ConfigFile parameter and launch the LVC class CLVCSupervisor. 2. Notify the LVC application of successful startup of the QC Object Server so that the LVC application can publish its OPC tags. 3. Request termination of the LVC application when the ABB QCS Service is stopped.

3BUS208222 R4001

91

OPC Publishing OPC tags for LVC are created in the QC Object Server by the OPC Publishing software application. During startup, the LVC application publishes tags for each of the instances configured in the server machine. The following OPC branch structure is used to organize the published tags PMx - CDControls - LVC - CD02 - Data + CD05 + CDnn

(instance of LVC corresponding to 2nd CD control) (instance of LVC corresponding to 5th CD control) (instance of LVC corresponding to nnth CD control)

PMx is the paper machine label assigned in the job order configuration and nn, in CDnn, is a two character numbering instance of the CD control associated with the LVC instance. In the above branch structure, the - denotes branches that are fully expanded and the + denotes branches that are collapsed. The actual published tags exist under the branch Data. OPC Transporter Service The OPC Transporter service is used by LVC to move data between LVC and its corresponding CD control. The job order configuration tool generates the following transporter XML document for each LVC instance: PMxCDnnLVCXPort.xml

This transporter file is copied to a directory that has been registered as an active processing path for the OPC Transporter service. For CD control and its applications, the active processing path is typically C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\OPC XML documents that can be validated by the OPCTransporter.dtd scheme and are placed in this directory are automatically started by the OPC Transporter service when the QCS Server node starts up. TagsLookup The TagsLookup component is used to define groups of OPC tags (call ControlID) to interface with specialized ActiveX controls. These ActiveX controls generate OPC Direct groups with the tag information formatted in the ControlIDs. The ControlID format further provides visual presentation instructions to the ActiveX control. For each LVC instance configured, definition of the ControlIDs are given in an XML document with the filename format of PMxCDnnLVCTags.xml

This XML document is typically located in the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\HSI

92

3BUS208222 R4001

In total, LVC visual aspects are created from the following list of ActiveX controls: 1. ABBAutoPlotCtl 2. ABBAutoCfgGrid 3. ABBCommandButtons 4. ABBIndicator 5. ABBCDMapping LVC operator and engineering information is captured on 6 visual aspects. Table 2-7 presents the visual aspects and identifies the TagsLookup ControlIDs corresponding to each of the ActiveX controls used on these aspects.

Table 2-7: LVC TagsLookup ControlID


Aspect Name LVC Overview ActiveX Control and ControlID ABBAutoPlotCtl: PMxCDnnLVCOverviewPlt01 ABBIndicator: PMxCDnnLVCOverviewInd01 ABBCommandButtons: PMxCDnnLVCOverviewCmd01 ABBAutoCfgGrid: PMxCDnnLVCOverviewGrd01 ABBAutoCfgGrid: PMxCDnnLVCOverviewGrd02 ABBAutoPlotCtl: PMxCDnnLVCCurveViewPlt01 ABBAutoCfgGrid: PMxCDnnLVCCurveViewGrd01 ABBAutoCfgGrid: PMxCDnnLVCCurveViewGrd02 ABBAutoPlotCtl: PMxCDnnLVCMonitorSetupPlt01 ABBIndicator: PMxCDnnLVCMonitorSetupInd01 ABBCommandButtons: PMxCDnnLVCMonitorSetupCmd01 ABBAutoCfgGrid: PMxCDnnLVCMonitorSetupGrd01 ABBAutoCfgGrid: PMxCDnnLVCMonitorSetupGrd02 ABBAutoCfgGrid: PMxCDnnLVCMonitorSetupGrd03 ABBIndicator: PMxCDnnLVCOptSetupInd01 ABBCommandButtons: PMxCDnnLVCOptSetupCmd02 ABBAutoCfgGrid: PMxCDnnLVCOptSetupGrd01 ABBAutoCfgGrid: PMxCDnnLVCOptSetupGrd02 ABBAutoCfgGrid: PMxCDnnLVCOptSetupGrd03 ABBAutoCfgGrid: PMxCDnnLVCOptSetupGrd04 ABBAutoCfgGrid: PMxCDnnLVCOptSetupGrd05 ABBAutoCfgGrid: PMxCDnnLVCOptSetupGrd06 ABBAutoPlotCtl: PMxCDnnLVCParamSavePlt01 ABBAutoCfgGrid: PMxCDnnLVCParamSaveGrd01 ABBCommandButtons: PMxCDnnLVCParamSaveCmd01 ABBCommandButtons: PMxCDnnLVCParamSaveCmd02 ABBCommandButtons: PMxCDnnLVCParamSaveCmd03 ABBAutoPlotCtl: PMxCDnnLVCMapMismatchPlt01 ABBAutoCfgGrid: PMxCDnnLVCMapMismatchGrd01 ABBCommandButtons: PMxCDnnLVCMapMismatchCmd01

LVC Optimization Curve View LVC Monitor Setup

LVC Optimization Setup

LVC Parameter Save/Restore

LVC Mapping Mismatch

3BUS208222 R4001

93

ABB HealthWatch The ABB HealthWatch component is accessed to report both good and bad status regarding the LVC application. The status information for each LVC instance is reflected on the PPA Status Report Viewer by a symbol and text messages. LVC exposes the following status information to the ABB HealthWatch component: 1. Application Heartbeat a value generated by LVC that is periodically incremented by one 2. Application License Error a valid license could not be obtained for the LVC instance 3. OPC Error tag publishing or connection to the OPC server could not be established 4. Transporter Watchdog Error OPC Transporter service did not detect a heartbeat signal from the corresponding CD control instance in the allotted time period 5. Transporter Update Error LVC did not receive a new watchdog update from the OPC Transporter service in the allotted time period for the connection to the corresponding CD control instance 6. Application Startup Error LVC could not be started up due to any of the above error conditions or because of a bad LVC master configuration XML file

2.11.3 Configuration
Required Job Order Information The job order configuration tool is used to configure all the necessary XML documents for LVC. Configuration of LVC is controlled by a checkbox under the column label LVC, on the CD Control tab. By checking this checkbox, LVC is configured for that specific CD control instance. The LVC checkbox is left unchecked if LVC is not desired for an instance of CD control. In Figure 2-16, an example of the CD Control tab is given with the LVC checkbox highlighted.

Figure 2-16: CD control job order configuration tab with LVC checkbox

94

3BUS208222 R4001

Deployment Directory Structure When a project job is deployed, the configuration tool copies all XML documents related to LVC into predetermined application directories. These application directories include ..\Control IT\CD Control\config Includes a configuration file for starting up all LVC instances. ..\Control IT\CD Control\data Includes tuning persistence files and log files for each LVC instances. ..\Control IT\CD Control\HSI Includes TagsLookup definition files for each LVC instances. ..\Control IT\CD Control\OPC Includes transporter XML files for each LVC instances to interface to its corresponding CD control instance. The base directory leading up to the CD control application directories is the installation directory for the application framework. If the default directory is accepted when the application framework is installed, then the base directory will be C:\Program Files\ABB Industrial IT\Quality Control Solutions\ XML Documents XML documents are used to store information required by LVC. These documents are generated by the job order configuration tool and copied to designated directories as identified in the above section. Table 2-8 lists all XML documents created for LVC. The content of this table is offered as information. These XML documents should not be modified. In the table, the label PMx signifies the machine name (e.g. PM4 or PM13) and the label CDnn is a numbering sequence (e.g. CD01, CD02, CD03, etc.) used to identify the CD control instance corresponding to the configured LVC instance. Both labels are determined from data entered in the job order configuration tool.

Table 2-8: LVC XML documents


File Name PMxLVCMasterConfig.xml Directory Config Description LVC configuration file, one for all LVC instances. This file contains information necessary to dimension LVC arrays and references to the other XML documents that are used by the LVC instances. LVC tuning file, one per LVC instance. This file contains tuning values that are periodically persisted so that they can be loaded on system restarts.

PMxCDnnLVCTuning.xml

Data

3BUS208222 R4001

95

File Name PMxCDnnLVCAlarms.xml

Directory Data

Description LVC alarms and events, one per LVC instance. At this time, no OPC published alarms and events are defined; therefore, this file is presently empty. To generate application alarms or events, PPA alarm and event uploaded should be configured for the specific LVC OPC tag. HSI TagsLookup tag definition file, one per LVC instance. This file contains all the OPC tags (organized as ControlID) necessary to support the visual aspects created for LVC. Transporter file to communicate between LVC and its corresponding CD control instance, one per LVC instance.

PMxCDnnLVCTags.xml

HSI

PMxCDnnLVCXPort.xml

OPC

2.11.4 Interface to Dependent Application


Data transfer between LVC and its corresponding CD control is achieved entirely by OPC transporters. The following identifies the specific transporter groups created by the job order configuration. The transporter XML document created for transferring LVC data with CD control is PMxCDnnLVCXPort.xml This transporter document contains bi-directional transporter groups. The transporter groups contained within and their function are as follows: PMxCDnnLVCDataInput Transports data from CD control to LVC. PMxCDnnLVCDataOutput Transports data from LVC to CD control.

2.11.5 Verify Configuration and Operation


QC Server Node After the job order configuration has been deployed and the installation procedure has been completed, startup of LVC by ABB QCS Service can be monitored in the ABB Debug Client. Figure 2-17 gives an example of the ABB Debug Client with messages related to startup of the LVC application. In the client window, a successful startup of LVC will generate the following messages in sequence: 1. LVControl: CLVCSupervisor: Beginning startup of LV Control system. Config file: \\ This message is displayed as a result of ABB QCS Service launching the

96

3BUS208222 R4001

supervisor class and passing it the LVC configuration file.

2. LVControl: CLVCSupervisor: Valid LV control license obtained. This message is displayed for each LVC instance, indicating that license checking was successful.

3. LVControl: CLVCSupervisor: Begin creating new LVControl object. This message is displayed for each LVC instance, indicating creation of a LVC object.

4. LVControl: CLVCSupervisor: Begin initializing LVCnn. This message is displayed for each LVC instance, indicating internal initialization of arrays and tuning value.

5. LVControl: CLVCSupervisor: LVCnn started successfully. This message is displayed for each LVC instance, indicating successful startup of the LVC instance.

3BUS208222 R4001

97

Figure 2-17: ABB Debug Client for startup of LVC


Process Portal Functional Structure After the job order configuration has been deployed and the installation procedure has been completed the following items can be used to verify that PPA configuration for LVC is complete. 1. Using Plant Explorer, check the System Status Viewer display on the main QCS object Industrial IT Quality Control. The LVC features will appear as a child node to its corresponding CD control instance. The LVC features should all have a green circle in the Status column. Only the LVC features configured should be displayed. In Figure 2-18, Dilution CD Weight is shown as the CD control instance that is configured with LVC.

Figure 2-18: Status viewer example for LVC


2. In the functional structure, the CD control objects corresponding to the LVC instances should appear under Quality Control - PMx, Industrial IT Quality Control > PMx, Paper Machine > Machine Section, Paper Machine Section where PMx is a label for the paper machine and Machine Section is a label for process section. These labels are created during execution of the job order configuration tool. The object type for these CD controls should be of type CD LV Control. The aspect list should include the 11 visual aspects that are standard for CD control and an additional 10 visual aspects for the LVC application. Error/Event Log File An error and event log file is maintained for each LVC instance. This log file is typically created in the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Control IT\CD Control\data with the naming convention PMxCDnnLVCErrorLog.log,

98

3BUS208222 R4001

where PMx is a machine name label (e.g. PM4 or PM13) and CDnn is a numbering sequence (e.g. CD01, CD02, CD03, etc.) used to identify the CD control instance corresponding to the LVC instance. The log file is erased on restart of the LVC application and is populated with messages from that point until the next restart. An archive of the log file is made prior to the erase operation. The content of the log file includes the startup sequence messages, application code error, transporter errors, and data persistence events.

2.12 CD Actuator Agent


2.12.1 Overview
CD control is an application designed to correct variations in the CD by applying control actions to CD actuators (e.g. headbox slice, water spray, and infrared dryer). In order to function correctly, the control requires the existence of a CD actuator sub-system to perform its intended tasks. The CD actuator agent is designed to provide the CD control system with an interface to an existing CD actuator. The CD actuator agent is designed as a software interface to an actuator system for deployment in an ABB QCS Server. The actuator agent is implemented with an OPC interface to handle data flow via an OPC Transporter service to the CD control system. For the integrated ABB QCS solution, this requirement is fulfilled to the extent of creating the XML documents needed by the OPC Transporter service for passing data back and forth. The communication to the actuator sub-system itself utilizes standard networking protocols. The particular protocol used is determined by the type of actuator chosen in the configuration session. The CD actuator agent application is dependent on the following ABB QCS Application Framework to start up and to expose its OPC data to other ABB QCS applications: 1. QC Object Server 2. ABB QCS Service 3. OPC Transporter service 4. OPC Publishing 5. TagsLookup 6. ABB Health Watch

2.12.2 Application Framework Dependencies


ABB QCS Service ABB QCS service is used to launch the CD actuator agent application when the server machine, in which CD actuator agent exists, is started up. The following entries are added to the startup.xml document by the job order configuration tool to schedule startup of the CD actuator agent application:

3BUS208222 R4001

99

<component class=" PCCDActuators " ID=" PCDActuator1"> <progID> ABBCDActInterface.CAISupervisor </progID> <param argID="ConfigFile">\\server_name\Paper Quality Control\Profile IT \CD Actuator\config\PMxActMasterConfig.xml</param> <param argID="ErrorFile">ErrorLog.log</param> </component>

In the above code example, the server_name is the machine name of the ABB QCS Server, in which CD control exists, and PMx is the paper machine label assigned in the job order configuration. The main roll of ABB QCS Service includes the following: 1. Pass the configuration file corresponding to the ConfigFile parameter and launch the CD actuator agent class CAISupervisor. 2. Notify the CD actuator agent application of successful startup of the QC Object Server so that the CD actuator agent application can publish its OPC tags. 3. Request termination of the CD actuator agent application when the ABB QCS Service is stopped. OPC Publishing OPC tags for the CD actuator agent are created in the QC Object Server by the OPC Publishing software application. During startup, the CD actuator agent application publishes tags for each of the instances present in the server machine. The following OPC branch structure is used to organize the published tags PMx - CDActuators - Instances - Act01 + Data + Act02 + Actnn

(1st instance of CD actuator agent) (Data tags for in the CD actuator agent application) (2nd instance of CD actuator agent) (n-th instance of CD actuator agent)

where PMx is the paper machine label assigned in the job order configuration and nn, in Actnn, is a two character numbering instance of the CD actuator agent. In the above branch structure, the - denotes branches that are fully expanded and the + denotes branches that are collapsed. The actual published tags exist under the branches labeled Data. At startup, the tags under the Data branch are created and initialized. Tags that are tuning parameters are set to persisted values. All other tags are initialized to the value of zero. The tag quality remains uncertain until it is written to either by an internal write from the CD actuator agent or an external write by a client application. OPC Transporter Service For some actuators, the OPC Transporter service is used by the CD actuator agent to move data between the actuator agent application and tags created in the Job Order Configuration Tool to communicate with those actuators. The Job Order Configuration Tool generates the following transporter XML documents: PMxActnnDeviceXPort.xml

100

3BUS208222 R4001

Additional information about these XML documents is provided in section 2.12.3. The required transporter files are copied to a directory that has been registered as an active processing path for the OPC Transporter service. For the CD actuator agent, the active processing path is typically C:\Program Files\ABB Industrial IT\Quality Control Solutions\Profile IT\CD Actuator\OPC XML documents that can be validated by the OPCTransporter.dtd schema and are placed in this directory are automatically started by the OPC Transporter service when the QCS Server node starts up. TagsLookup The TagsLookup component is used to define groups of OPC tags (call ControlID) to interface with specialized ActiveX controls. These ActiveX controls generate OPC Direct groups with the tag information formatted in the ControlIDs. The ControlID format further provides visual presentation instructions to the ActiveX control. The CD actuator agent visual aspect is created with the use of four ActiveX controls: 4. ABBAutoPlotCtl 5. ABBAutoCfgGrid 6. ABBCommandButtons 7. ABBIndicator CD actuator agent operator and engineering information is captured on one visual aspect. Table 2-9 presents a thumbnail of this aspect and identifies the TagsLookup ControlIDs corresponding to each of the ActiveX controls used on this aspect.

Table 2-9: CD actuator agent TagsLookup ControlID


Aspect Name Actuator Overview 1. 2. 3. 4. 5. ActiveX Control and ControlID ABBAutoPlotCtl: PmxActnnOperPlt01 ABBAutoCfgGrid: PmxActnnOperGrd01 ABBAutoCfgGrid: PmxActnnOperGrd02 ABBIndicator: PmxActnnOperInd01 ABBCommandButtons: PmxActnnOperCmd01

2.12.3 Configuration
Required Job Order Information The job order configuration tool is used to configure all the necessary XML documents for the CD actuator agent. In order to achieve this task, the information presented Table 2-10 is required for each CD actuator agent instance being configured. In Figure 2-19, the Figure Reference numbers shown in Table 2-10 are identified as callouts, outlined with a box.

Table 2-10: CD actuator agent job order information

3BUS208222 R4001

101

Configuration Labels Actuator Type

Description

Figure Reference 1

The actuator type field defines the type of actuator for which the CD actuator agent is being configured. The type is selected from an option list that includes the following items:

Smart Weight Profiler Smart Calendar Profiler CoatWeight Profiler Dilution Profiler Smart CoatWeight Profiler Smart Consistency Profiler Accuray Serial Weight Accuray Serial Caliper Accuray Serial Moisture Impact IR serial Impact Thermajet Serial Impact Stepper Motor Serial MX 200/100 Serial Thermatrol MX 200/100 Serial Dynatrol MX 200/100 Serial Caltrol MX 200/100 Serial Aquatrol VIB Serial Steambox

The type should be chosen in accordance to the features appearing in the purchase order. The configured CD actuator agent types will be checked for valid licenses. Description The description field is a user-defined entry for identifying the CD actuator agent instance. This description will be captured in the functional structure of PPA. The num zones field indicates the number of zones in the specified CD actuator. This number is used to configure data points in the CD actuator agent. Actuators that support communications via TCP/IP require an actuator IP Address. A valid IP Address format is in dotted octet form: 171.64.20.1. Serial communications devices do not require an IP Address. For serial devices the default value is sufficient. For third-party actuator support, select the system type from the drop-down list: Third-Party Link Node None (Default) Voith OPC Link AC800 Direct I/O Link AC800 Modbus Link N/A 2

Num Zones

IP Address

Third-Party Link Type

N/A

For third-party actuators enter the node (PC machine name) where the third-party software will run.

102

3BUS208222 R4001

Figure 2-19: CD actuator agent job order configuration tab


Deployment Directory Structure When a project job is deployed, the configuration tool copies all XML documents related to the CD actuator agent into predetermined CD actuator agent application directories. These application directories include 1. ..\Profile IT\CD Actuator\config Includes a configuration file for starting up all CD actuator agent instances and CD actuator agent simulation files. 2. ..\Profile IT\CD Actuator\data Includes tuning persistence files, setup files and log files for each CD actuator agent instance. 3. ..\Profile IT\CD Actuator\HSI Includes TagsLookup definition files for each CD actuator agent instance. 4. ..\Profile IT\CD Actuator\OPC Includes transporter XML files for each CD actuator agent instance to interface with any required OPC tags. The base directory leading up to the CD actuator agent application directories is the installation directory for the application framework. If the default directory is accepted when the application framework is installed, then the base directory will be C:\Program Files\ABB Industrial IT\Quality Control Solutions\
3BUS208222 R4001

103

The Job Order Configuration tool will produce all OPC tags associated with the actuator for the QCS OPC Server in the ..\CommunicateIT\Dictionary directory. XML Documents XML documents are used to store information required by CD actuator agent. These documents are generated by the job order configuration tool and copied to designated directories as identified in the above section. Table 2-11 lists all XML documents related to the CD actuator agent. The content of this table is offered as information. These XML documents should not be modified. In the table, the label PMx signifies the machine name (e.g. PM4 or PM13) and the label ACTnn is a numbering sequence (e.g. Act01, Act02, Act03, etc.) used to identify the CD actuator agent instances. Both labels are entered during execution of the job order configuration tool.

Table 2-11: CD actuator agent XML documents


File Name PMxActMasterConfig.x ml Directory Config Description CD actuator agent configuration file, one for all CD actuator agent instances. This file contains information necessary to dimension arrays and references to the other XML documents that are used by the CD actuator agent instances. CD actuator agent tuning file, one per CD actuator agent instance. This file contains tuning values that are periodically persisted so that they can be loaded on system restarts. CD actuator agent alarms and events, one per CD actuator agent instance. This file contains OPC published alarms and events. HSI TagsLookup alias file, one for all CD actuator agent instances. This file contains aliases for the QC Object Server name and the OPC branch names of all CD control instances. HSI TagsLookup tag definition file, one per CD actuator agent instance. This file contains all the OPC tags (organized as ControlID) necessary to support the visual aspects created for CD actuator agents. Device data transporter, one per CD actuator agent that interfaces to Job Order Config generated OPC tags for communication to the actuator system. CD actuator agent simulation configuration file, one for each CD actuator agent instance. This file contains parameters for defining the actuator system in simulation.

PMxActnnConfig.xml

Data

PMxActnnAlarms.xml

Data

PmxActServer.xml

HSI

PMxActnnTags.xml

HSI

PMxActnnDeviceXPor t.xml

OPC

PmxActnnSimMasterC onfig.xml

Config

104

3BUS208222 R4001

File Name PmxCDnnSimAlarms.x ml

Directory Data

Description CD actuator agent simulator tuning file, one per CD actuator agent instance. This file contains tuning values that are periodically persisted so that they can be loaded on system restarts. CD actuator agent simulator alarms and events, one per CD actuator agent instance. This file contains OPC published alarms and events.

PmxCDnnSimConfig.x ml

Data

2.12.4 Interface to Dependent Application


Data transfer between the CD actuator agent and other QCS applications is achieved entirely by OPC transporters. The following sections identify the specific transporter groups created by the job order configuration.

PMxActnnDevicetXPort.xml

This transporter document contains bi-directional transporter groups. The transporter groups contained within and their function are as follows: PMxACTnnDevice1Output Transports data from the CD actuator agent to the actuator defined in the Job Order Configuration Tool. Transported data includes new actuator setpoints generated automatically or manually from the CD control. PMxACTnnDevice1Input Transports data from the actuator to the CD actuator agent. Transported data includes actuator measurement feedback, bad actuator status, bad measurement feedback status, actuator not moveable status, actuator in local status, actuator request to suspend CD control flag, actuator request to abort CD control flag.

2.12.5 Verify Configuration and Operation


QC Server Node After the job order configuration has been deployed and the installation procedure has been completed, startup of the CD actuator agent by ABB QCS Service can be monitored in the ABB Debug Client. Figure 2-20 gives an example of the ABB Debug Client with messages related to startup of the CD actuator agent application. In the client window, a successful startup of the CD actuator agent will generate the following messages in sequence: 1. CABBAISupervisor: Beginning startup for actuator interface system. Config file: \\ This message is displayed as result of ABB QCS Service launching the

3BUS208222 R4001

105

supervisor class and passing it the CD actuator agent configuration file.

2. CABBAISupervisor: Begin creating new actuator interface object. This message is displayed for each CD actuator agent instance, indicating creation of a CD new actuator agent object.

3. CABBAISupervisor: Initializing actuator interface object ACTnn. This message is displayed for each CD actuator agent instance, indicating internal initialization of arrays and tuning values.

4. CABBAISupervisor: Actuator interface object ACTnn initialized. This message is displayed for each CD actuator agent instance, indicating completion of internal initialization.

5. CABBAISupervisor: Publishing tags for actuator interface object Actnn . This message is displayed for each CD actuator agent instance, indicating creation of OPC tags in the QC Object Server. This step of the CD actuator agent startup is postponed until the ABB QCS Service notifies the actuator agent supervisor that the target QC Object Server has successfully started up.

6. CABBAISupervisor: Checking license for actuator interface object Actnn. This message is displayed for each CD actuator agent instance, indicating that license is being checked.

7. CABBAISupervisor: Connecting to OPC Server for actuator interface object Actnn. This message is displayed for each CD actuator agent instance, indicating that the CD actuator agent application has established a link with the QC Object Server. If a license for the CD actuator agent instance could not be validated, the connection to the QC Object Server is not performed.

8. CABBAISupervisor: Actnn started successfully. This message is displayed for each CD actuator agent instance, indicating successful startup of the CD actuator agent instance.

106

3BUS208222 R4001

Figure 2-20: ABB Debug Client for startup of CD actuator agent


Process Portal Functional Structure After the job order configuration has been deployed and the installation procedure has been completed the following items can be used to verify that PPA configuration for CD actuator agent is complete. 1. Using Plant Explorer check the System Status Viewer display on the main QCS object Industrial IT Quality Control. The CD actuator agent features should all have a green circle in the Status column. Only the CD actuator agents configured should be displayed. In Figure 2-21, a CD Weight actuator is shown as an example.

3BUS208222 R4001

107

Figure 2-21: Status viewer example for CD actuator agent


2. In the functional structure, the CD actuator agent objects should appear under Quality Control - PMx, Industrial IT Quality Control > PMx, Paper Machine > Machine Section, Paper Machine Section where PMx is a label for the paper machine and Machine Section is a label for process section. These labels are created during execution of the job order configuration tool. In the aspects lists, the visual aspect titled Actuator overview should be present. Figure 2-22, a CD Weight Actuator is shown as an example.

Figure 2-22: Functional structure example for CD actuator agents


Error/Event Log File An error and event log file is maintained for each CD actuator agent instance. This log file is typically created in the directory C:\Program Files\ABB Industrial IT\Quality Control Solutions\Profile IT\CD Actuator\data with the naming convention PMxActnnErrorLog.log,

108

3BUS208222 R4001

where PMx is a machine name label (e.g. PM4 or PM13) and Actnn is a numbering sequence (e.g. ACT01, ACT02, ACT03, etc.) used to identify the CD control instances. The log file is erased on restart of the CD actuator agent application and is populated with messages from that point until the next restart. The content of the log file includes the startup sequence messages, application code error, transporter errors, and data persistence events. If the content of the log file is important for troubleshooting, it is essential to copy the file into a safe location before restarting the CD actuator agent application. As mentioned in the above paragraph, the log file is erased on restart of the CD actuator agent application.

3BUS208222 R4001

109

Chapter 3 Troubleshooting
3.1 Quality Control Diagnostics Aspect
The Quality Control Diagnostics Aspect provides a central location for accessing common troubleshooting displays and tools. The Quality Control Diagnostics Aspect is an Aspect of the main IndustrialIT Quality Control Object in the Functional Structure.

Figure 3-1 Quality Control Diagnostics Aspect in the Functional Structure

Figure 3-2 Quality Control Diagnostics Example Display

3.1.1 Configuration
Override this Aspect and edit it to set the Aspect for the Controller Status and Node Status Aspect links. The Controller Status should link to the AC800M Status Viewer Aspect in the Control Structure and the Nodes Status should link to the System Status Viewer on the All Nodes Group in the Node Administration Structure. The buttons on this Aspect are links to various graphics displays and tools that may contain useful fault tracing information.

110

3BUS208222 R4001

3.2 Debug Message Viewer


The Debug Message Viewer tool displays debug messages from Quality Control applications. You can launch this tool from the Start Menu or from the Quality Control Diagnostics Aspect. You can save the contents of the message viewer to a file by using the Copy contents to Clipboard feature and then pasting the result into Notepad or another text editor.

Figure 3-3 Debug Message Viewer Tool example

Key The Toolbar icons perform the following functions.

3BUS208222 R4001

111

Figure 3-4 Toolbar icons functionality

3.2.2 Application Menu


The Application menu has two menu items, Mode and Activity. Mode The Mode menu item allows the user to control the debug message logging and other activities of the selected application. The modes vary with the application. The two examples below illustrate the available modes for a scanner and an OPC Transporter. The Disable mode disables the modes enabled below it.

Figure 3-5 Available Application Debug Mode Selection for Scanner

112

3BUS208222 R4001

Figure 3-6 Available Application Debug Mode Selection for OPC Transporter

Activity The Activity menu item allows the user to monitor the status and activity of the selected application. The status properties and activities available vary with the application. The two examples below show the status properties and activities for a measurement and an OPC Transporter.

Figure 3-7 Application Activity status properties for Measurement Basis Weight

The HealthWatch error and warning items indicate an error and / or warning condition for the application if non-zero. The HealthWatch heartbeat should increment periodically.

Figure 3-8 Application Activity status properties for OPC Transporter

Refer to Appendix A OPC Transporter for information on the Activity fields for OPC Transporters.

3BUS208222 R4001

113

3.3 Windows Event Viewer


The Windows Event Viewer may contain useful troubleshooting information. The Event Viewer can be launched from the Quality Control Diagnostics Aspect or from the Start Menu Administrative Tools. You should use the Action Properties menu to allow the Event Viewer to overwrite older events as needed. Otherwise, event logging will stop if the event log buffer is full. You can save the contents of the selected log to a file by using the Action Save Log File As menu item. To view the details of an individual log entry either double-click on the entry or select the log entry and use the Action Properties menu item.

Figure 3-9 Windows application log on Event Viewer

3.4 System Status Viewers


3.4.1 Quality Control Status Viewer
The Quality Control System Status Viewer is an Aspect of the main IndustrialIT Quality Control Object in the Functional Structure. The System Status Viewer can also be accessed from the Quality Control Diagnostics Aspect. The System Status Viewer Aspect contains the status of the Quality Control applications. A good status is indicated by a green circle. A yellow circle indicates a warning condition and a red circle indicates an error condition.

114

3BUS208222 R4001

Figure 3-10 Quality Control Status Viewer example

3.4.2 Nodes Status Viewer


The System Status Viewer Aspect of the All Nodes group in the Node Administration Structure displays the status of the Afw Services for the Aspect Server and Connectivity Server nodes.

3.4.3 AC800M Controller Status Viewer


The AC800M Controller System Status Viewer Aspect displays the status of the AC800M applications and I/O.

3.5 License Viewer


The ABB QCS License Manager utility allows users to View, Add licenses to and Delete licenses from the QCS.

3BUS208222 R4001

115

Figure 3-11 License Manager Utility

The License Manager utility is presented in a traditional tree-view format. The left-hand window displays the logical license groups that exist in the QCS whilst the right-hand window displays the licenses currently installed for the selected logical license group. An All license group has been made available so that all installed licenses can be displayed at once. The license information displayed contains the license feature name, soft feature name, description, license type, total number of license available, current number of licenses used and the license version. Additional information regarding the licenses owning client can be retrieved by right clicking any license and selecting the Client Info. option from the popup menu. In addition to providing the user with the ability to view licenses the License Manager utility also allows licenses to be added to or deleted from the QCS. To add a license the user simply selects the Add New License(s) option from the Edit menu. The user will then be prompted by the utility to select all license files that need to be installed on the system. To delete a license the user must first select one or more licenses to be removed. Again, using the Edit menu the user should select the Delete Licenses option.

Note: Deleting licenses only temporarily removes the licenses from the system. Once the QCS is restarted the licenses will become available again.

3.6 Task Manager


The Windows Task manager displays the running applications and processes. To launch the Task Manager right-click on an empty section of the Windows toolbar and select Task Manager. The Processes tab displays a list of running processes. Click on the Image Name heading to sort the processes by name. The View -> Select Columns menu item allows the user to select various task parameters for monitoring.

116

3BUS208222 R4001

Figure 3-12 Windows Task Manager aids in troubleshooting

3.7 OPC Inspector 3.8 OPC Direct IT Viewer


This viewer displays all data OPC Direct IT is currently handling. The window is divided into two parts. The top part displays a list of OPC servers currently connected to by OPC Direct IT. The bottom part displays all data points connected with OPC Direct IT. These lists comprises of all data requested from all OPC Direct IT clients.

3BUS208222 R4001

117

Figure 3-13 OPC Direct IT Viewer

Figure 3-14 OPC Direct IT Viewer Top Area

3.8.1 Top Window - Active OPC Server Monitors


This window is populated by the ABBOPCMonitor component. This component monitors OPC servers, and notifies its clients when servers are reachable (UP) or not (DOWN). This component polls the OPC servers to test the connection state. OPC Direct IT is one of its clients, since OPC Direct IT needs to know when OPC servers go UP and DOWN. OPC Server NodeName \ ServerName of an OPC server 3. State Can be Up, Down, or Poll. Up - OPC Server is responding to polls Down - OPC server is not responding to polls Poll OPC server is being polled Clients Normally, OPC Direct IT is its only client, and the number is 1. 4. Shut Downs Number of ShutDown events received by OPC Direct IT from the OPC server. OPC servers issue ShutDown events when they are formally stopped. 5. Poll Time Out Number of times OPC Direct IT did not receive poll response from OPC server within the Poll timeout period. This counter increments when communication is lost with OPC server, and no ShutDown event was received (e.g. network cable cut).

118

3BUS208222 R4001

6. Poll Secs Number of seconds between polls. A poll fails if a poll response is not received by the start of the next poll period.

3.8.2 Bottom Window Active Data Points


This window displays all data subscribed to by OPC Direct IT clients. This tree view starts with the OPC server and branches out to data tags.

Figure 3-15 OPC Direct IT Viewer Bottom Area

OPC Server branches show 7. Node name OPC server is running on 8. OPC Server name 9. Total number of client groups created by OPC Direct IT clients for this OPC server 10. Total number of data tags contained in the Client groups for this OPC server Refresh Rate branches show the different OPC groups created. See OPC Direct IT overview for a description of this branch. Client Group Name branches show 11. Group name assigned by OPC Direct IT client who initially created the group 12. Number of tags in the Client Group 13. Group timeout assigned by OPC Direct IT client who initially created the group. When a group has no clients, the elapse timer begins. When a group has 1 or more clients, the elapse timer is reset to 0. When the timeout expires, the group is deleted. Tag Name branch shows full tag name and the tags access rights as defined in the OPC server. Read/Write tags show a blue icon, Read Only tags show a yellow icon. If the assess right could not be read, the tag is marked as (Bad) with a red icon. It is normal that Write Only tags are marked as (Bad).

3BUS208222 R4001

119

Tag attributes shows Value, OPC quality and Data Type of the tag. If the tag has Write access, then the Value attribute appears blue, and can be left clicked to modify. All Value attributes update in real time when the Tag-Name branch is expanded. Client groups can be deleted by left-clicking the group and pressing the Delete key. This feature is used to delete bad groups that were accidentally created for some reason. Buttons at the top of viewer, as shown below, perform the following functions:

Figure 3-16 OPC Direct IT buttons

14. Components started shows the time ABBOPCDirectIT.exe (main OPCDirect IT component) began executing. 15. Refresh refreshes the entire viewer. 16. Show Current Clients changes Client group names to bold if they have subscribers. This is handy to determine what groups are associated with a particular display. Go to the display in question. This causes the display to subscribe to various Client groups. Then press the Show Current Clients button to show the Client groups being subscribed to. 17. Configure allows configuring OPC Direct IT on an OPC server basis. The Report Errors to Debug window should remain unchecked unless actively trouble shooting a problem. The descriptions of the various configuration data is explained on the dialog box.

120

3BUS208222 R4001

Figure 3-17 OPC Direct IT Configuration

3.9 Control Builder 3.10 Measurement Spreadsheets 3.11 Service Workstation 3.12 Performance Monitor 3.13 Collecting Information for Technical Support
3.13.1 Information to Collect
18. Debug Trace Output(s) 19. Event Log Contents (System and Application) 20. System Status Viewer Hardcopy or Screen Capture 21. Task Manager Process List Hardcopy or Screen Capture 22. Detailed Fault Symptoms 23. Release level

3BUS208222 R4001

121

3.13.2 How To
Screen Captures To capture the screen contents press the Print Screen button. This copies the entire screen to the Clipboard. To capture the contents of the Active Window press Alt-Print Screen. This copies only the contents of the Active Window to the Clipboard. You can then perform a Paste operation in WordPad, Paint or other programs that support bitmap images. Debug Message Viewer Contents See the description of the Debug Message Viewer earlier in this document for information on saving the contents of the Debug Message Viewer. Event Log Contents See the description of the Windows Event Viewer earlier in this document for information on saving the contents of the Windows Application and System Event logs.

122

3BUS208222 R4001

3.14 Trouble Shooting Flowcharts


1

Basic Checklist
1) Verify Connectivity Server was added to System. Config Wizard 2) Verify Aspect Server and Connectivity Server are started. Config Wizard, Nodes Structure System Status Viewer 3) Verify Quality Control Services are started on Connectivity Server (QCS Service, AccuRayObjectServer, OPC Transporter, OPC Trending) Services Applet 4) Verify ABB Quality Control Applications are running on Connectivity Server (ABBSmartPlatform, ABBQCSApplication, ABBSpeeds, ) Task Manager Processes tab 5) Verify all required system extensions (AC 800M/C Connect, ABBMenu, Quality Control Solutions) were installed on all nodes and added to the Process Portal System. Add / Remove Programs on Control Panel, Config Wizard 6) Verify Network Connectivity to all PC nodes, scanners, controllers, actuators. Ping command 7) Verify IndustrialIT Domain User Group configuration. Process Portal Installation Guide. 8) Verify AccuRay Object Server is uploaded in Control Structure. Paper Quality Control Installation and Configuration Guide. 9) Verify AC800M Controller is mirrored in Control Structure. Paper Quality Control Installation and Configuration Guide. 10) Use Quality Control Diagnostics Aspect to obtain information. Nodes Structure All Nodes System Status Viewer ABB Quality Control Solutions Debug Client (Debug Message Viewer) Quality Control System Status Viewer OPC Inspector (verify data quality) Windows Event Viewer DCOM Configuration (See DCOM section earlier in this document) Other tools available on Quality Control Diagnostics Aspect) 11) Verify Alarm & Event Configuration Service Structure, Paper Quality Control Installation and Configuration Guide 12) Verify Property Transfer Service Configuration Service Structure, Paper Quality Control Installation and Configuration Guide. 12) Verify Licenses are Installed License Viewer, Debug Client Message Viewer, Paper Quality Control Installation and Configuration Guide. 13) Verify QCSApplicationNode and QCSMachineID properties are correct. QCS Properties Aspect on Industrial IT Quality Control Object in Functional Structure. This should be configured during system configuration by BuildObjects.bat (Paper Quality Control Installation and Configuration Guide). 14) Verify OPC Connectivity Smart Platform tags vali d and updating Published tags valid and updating 15) Use Troubleshooting Flowchart

3BUS208222 R4001

123

Start

General Process Portal Related Problem?

Yes

No

AC800M Related Problem?

Yes

No

Quality Control Display Problem?

Yes

No

Quality Control Report Problem?

Yes

No 7

124

3BUS208222 R4001

General Process Portal Problem

Does Plant Explorer Open?

No

Verify Aspect Server is Up and Running (Config Wizard).

Yes

Quality Control Displays Problem?

Yes

5 Verify AC800M is mirrored in Control Structure.

No

Verify Quality Control OPC Server is Uploaded in Control Structure. Verify Connectivity Server is Running (Config Wizard, Nodes Structure Status Viewer) Verify Alarm&Event Service Basic Service Group and Service Providers are configured for AC800M OPC Server and for AccuRay Object Server in Service Structure.

Alarm Problem?

Yes

No

Trending Problem

Yes

Verify Basic History Service Provider is Running. Verify History was installed on Clients.

No 7

Verify History Source Aspect exists on or above (in Structure) of Object being historized. Verify History Log Configuration Aspect exists on Object being historized.

AC800M Controller Problem

3BUS208222 R4001

125

Quality Control Display Problem Verify ABB QCS Service and AccuRayObjectServer services are started. Verify QCSApplicationNode and QCSMachineID property values on QCS Properties Aspect on Industrial IT Quality Control Object. Verify OPC data quality using OPC Inspector. No

Missing Data on Multiple Displays?

Error Message Displayed in place of Display?

Attempt to Redeploy Display

No

Quality Control Report Problem

126

3BUS208222 R4001

Collect Troubleshooting Information and Call Hotline Product Release level Detailed Fault Symptoms How to Trigger Fault Debug Message Viewer Contents Event Log Contents (System and Application) Quality Control System Status Viewer Hardcopy or Screen Capture Task Manager Process List Hardcopy or Screen Capture

3BUS208222 R4001

127

Appendix A. OPC Transporter


A.1 Introduction
A.1.1 Purpose
The OPC Transporter automates the transfer of data from devices supported by one OPC server to devices supported by the same or a different OPC server and vice versa. Data can be exchanged between two devices without the user having to neither know the details of the OPC interface nor develop his own OPC client to accomplish the same functionality. It permits the data to be converted or operated upon during the transport and it permits mapping from 1 tag to N tags and from N tags to 1 tag. The OPC Transporter supports transfers amongst a plurality of OPC servers.

A.1.2 Overview
The OPC Transporter is a software process that accepts a configuration file(s) and based upon that file, subscribes to tags belonging to one or two OPC servers: one OPC server called the source and one OPC server called the target. As data is received from the source, it may either be sent to the target as-is or a user-written conversion statement may be used to derive the targets value from the source and other parameters. The OPC Transporter configuration file is an XML file. XML is becoming a standard for sharing information between dissimilar computers. Numerous products are available for editing and validating an XML file. Because it is an ASCII file, it is ideal even for storing and sharing information within the same computer.

A.1.3 Limitations, Restrictions, Caveats


OPC does not support accessing individual elements of an array, so mappings to or from a particular element or range of elements is not supported. The OPC Transporter does permit reading an entire array and then processing only selected elements, or populating selected elements and then writing the entire array.

A.1.4 XML Basics


XML is a meta-language. The OPC Transporter file will only require the use of a standard subset of this language. Anyone modifying the OPC Transporter file should know about elements and attributes. An element is akin to a statement or structure that can be nested such as, loops in procedural languages. An element is defined with the notation <tag> </tag>, where tag is the name of the element used to open and close the content of an element. The ellipses represent the content of the element, which may be text or other elements. An empty element is represented by the shortcut notation <tag/>. Elements may have named attributes associated with them. They appear inside the opening tag. Attributes have string values which must be quoted; for example, <tag att1=value1 att2=value2> has two attributes defined with string values.

128

3BUS208222 R4001

The XML meta-language has reserved characters that must be escaped if used as output text. The characters & and < in particular cause problems when trying to support expressions supporting the less than operator or bit-wise-and operations. The escape sequence is not very readable although some XML tools do perform the substitution before displaying the text. XML does provide an escape mechanism that applies to an entire block of text called CDATA sections. For this application, CDATA sections permit very readable conversion statements, so they will be used primarily for defining the conversion algorithm as opposed to using the strict XML syntax.

A.2 Transporter File


A.2.1 File Content
An XML file begins with an XML version header statement and document type definition. The version header specifies to which release the syntax adheres. The document type definition (DTD) file defines the syntax of the OPC Transporter configuration file and must not be modified. The first element in the configuration file is the parent, in this case called <OPCtransporter>; it must always be first per the XML specification. All other elements are children to this parent.
<?xml version="1.0" standalone="no"?> <!DOCTYPE OPCtransporter SYSTEM "OPCtransporter.dtd"> <OPCtransporter> child elements </OPCtransporter>

The above DOCTYPE declaration requires that the DTD file be placed in the same folder as the configuration file. The line can be modified to provide an absolute or relative path to the DTD instead. Appendix A provides the content of the DTD file. It strictly defines the layout of the configuration file as expected by the OPC Transporter. It is documented herein in case the file is lost or corrupted. The meaning behind the cryptic syntax is explained in subsequent paragraphs and sections. The <OPCtransporter> root element can have various numbers of two kinds of child elements: <sub> and <transporter>. They must appear is a specified order. All <sub> elements must be enumerated first. These are used to define conversion algorithms that are globally shared by subsequent <transporter> elements. The transfer configuration is organized by source-target pairings defined with the <transporter> element. This defines a single-direction beam from a source OPC server to a target OPC server. A second <transporter> element may be used to reverse that flow to create bi-directional transfers. The number of <transporter> elements is not restricted. The first two children of the <transport> element define the source and target OPC servers for that transporter. Within a <transporter>, transfers are organized in groups that may have different OPC update rates. All mappings appear as children to the <group> element. Mappings are accomplished using the <transport>, <makeArray>, <breakArray>, <makeFlag>, and <breakFlag> elements.
3BUS208222 R4001

129

The basic XML file organization:


<OPCtransporter> <sub> </sub> <transporter> <sourceOPC> </sourceOPC> <targetOPC> </targetOPC> <group> <transport> </transport> <makeArray> </makeArray> </group> <group> <breakArray> </breakArray> </group> </transporter> <transporter> </transporter> </OPCtransporter>

A.2.2 Element Definitions <transporter>

The <transporter> element defines one transport path between a source OPC server and a target OPC server. It has a required set of child elements that must appear in a specified order. The source OPC server and the target OPC server must first be declared before the mappings are defined. Mappings must be organized as children of <group> elements. The optional attribute id is intended to support the ABB Debug trace facility by providing a meaningful identifier by which the appropriate OPC Transporter can be selected for viewing. It must be unique and to enforce this requirement, the attribute is defined to be of the ID attribute type. This causes an XML parser to validate the ID as being a unique name. The element <transporter> may only appear as the child of the root <OPCtransporter> element.
<OPCtransporter> <transporter id=example>

130

3BUS208222 R4001

child elements </transporter> </OPCtransporter>

<sourceOPC> & <targetOPC> The first required child element of the <transporter> element is named <sourceOPC>. It will be used to declare the name of the source OPC server. This second required child element is called <targetOPC> and obviously is used to declare the target OPC server. Both of these elements have only text content. The optional attribute node specifies the computer on which the named server may be located if different than the one the OPC Transporter is running in.
<OPCtransporter> <transporter id=example> <sourceOPC node=ABBSVR02 > QCS.Object.Server </sourceOPC> <targetOPC > QCS.Object.Server </targetOPC> other child elements </transporter> </OPCtransporter>

<group> Source OPC tags, which are subscribed to by the OPC Transporter, are organized into collections called OPC groups. A user can control the flow of data from the OPC server by such groups. Consequently, the <group> element is used to logically organize mappings into source OPC groups. The optional attribute rate is used to define the fastest frequency at which the OPC server will update the OPC source tags in the group. The attribute specifies a value in milliseconds; the default value is 1000 (one second). The optional attribute deadband is used to define the deadband to be applied to analog tags within this group. The source OPC server will use it to control the transmission of noisy analog signals. The attribute specifies a value in percent of full range; the default value is 0 (no deadband). The optional attribute poll is used to override the default operation of the transports within that group. Typically, data traffic is reduced by subscribing to source tags. In his mode, the OPC server will notify the OPC Transporter only when data changes in value or quality. This standard operation can be replaced with polling in which the primary source tags of each embedded transport function are refreshed cyclically. The period is dictated by the rate attribute truncated to the nearest tenth of a second. The value of the poll attribute is true to select polling. It defaults to false if not present. Note: The VIB controller that is connected to an ABB Quality Control Object Server does not support subscriptions. For this device, the poll attribute must be used to refresh data periodically. Another optional attribute, onfirst dictates if the first data change is to be ignored or not. The OPC Transporter is driven by data change notices from the source OPC server. The initial data change is the one generated by the source OPC server upon subscribing to a tag. It
3BUS208222 R4001

131

is sent regardless of an actual change in value of the source tag. Setting onfirst=true will cause the first data change of an input tag to be processed; setting it to false will cause the first data change to be ignored. The default value is true. The value of this attribute affects all transport elements within this group except for <global> elements. The optional attribute id is intended for the future feature that will allow a user to control the state of a group. It must be unique; the attribute is defined to be of the ID attribute type. The element <group> may only appear as the child of <transporter>.
<OPCtransporter> <transporter id=example> <sourceOPC node=ABBSVR02 > QCS.Object.Server </sourceOPC> <targetOPC > QCS.Object.Server </targetOPC> <group rate=5000 onfirst=false> child elements </group> <group rate=5000 poll=true> child elements </group> </transporter> </OPCtransporter>

<branch> A <branch> element is used to provide a base path in an OPC servers browse tree. This base path will be applied to all tag references that follow this element. This permits a shorthand notation for specifying the tags. The <branch> element has one required attribute to specify which OPC server the branch applies to. The value of attribute OPC may be either source or target. This element may appear as frequently as needed to redefine base paths for either OPC server. It may appear as the child of <transporter> or the child of <group>. When appearing within a <group> element, its scope is confined to the tags within that group. Any delimiter required between the base path and the tag name that will be appended to it must be included in the <branch> value.
<OPCtransporter> <transporter id=example> <sourceOPC node=ABBSVR02 > QCS.Object.Server </sourceOPC> <targetOPC > QCS.Object.Server </targetOPC> <branch OPC=source> PM1.AC450B.FRAME1. </branch> <group rate=5000> <branch OPC=target> SQCS.Scanner1. </branch> child elements </group> </transporter>

132

3BUS208222 R4001

</OPCtransporter>

<input> & <output> The <input> and <output> elements declare a specific tag in either the source OPC server namespace or the target OPC server namespace, respectively. These elements are child elements used in various data mapping elements to define the tags involved in the operation. The value of this element, the OPC tag, is appended to the path specified in the last <branch> element to form the full tag name. Both the <input> and <output> elements have an optional attribute called access. This attribute may be required by some OPC servers to define the access path to certain OPC items or tags. See the OPC specification for use of access paths. The <output> element has an optional initial value attribute. This value is sent to the target tag upon successful connection to the target OPC server regardless of the status of the source OPC server or the input tag. If the target tag is an array, each element is assigned the initial value. The initial value must be coercible into the data type of the target tag. The elements also supports an optional index attribute to allow mapping a select number of array elements. This attribute is further discussed in the array mapping elements.
<mapping element> <input> a_sourceOPC_tag </input> <output initial=100> a_targetOPC_tag </output> </ mapping element >

<assign> The <assign> element is used to declare a simple arithmetic expression to be applied to the source OPC tags in data mapping elements. The expression has one result that is sent to the target OPC tag. Operands may be numeric literals and the source OPC (a.k.a. <input>) tags. Input tags are mapped to variables in the expression using the optional var attribute on the <input> element. The value of var may be any legal variable name as described in section 2.3. If there is only one <input> element, its association with a variable in the expression is implied, so no explicit var declaration is required. Before any OPC value is used in an expression, its OPC quality must be good; otherwise, no value is sent to the target OPC tag. The type of operators used in the arithmetic expression includes all that are supported in the Transporter Programming Language described in section 2.3. However, the operators that include the ampersand (&) and less-than (<) characters conflict with the XML meta-language. They must be escaped using either the hexadecimal character equivalent or the special escape sequences: &amp; and &lt; respectively. These escape sequences leave the expression somewhat tedious to decipher. Many XML parsers convert the escape sequences to their literal equivalents before displaying them, but some do not. If the expression requires bitwise operations, it is suggested the <sub> element be used instead.
<mapping element> <assign> x*100-80 </assign> <input> a_sourceOPC_tag </input> <output> a_targetOPC_tag </output>

3BUS208222 R4001

133

</ mapping element > <mapping element> <assign> x*100+y </assign> <input var=x> a_sourceOPC_tag </input> <input var=y> another_sourceOPC_tag </input> <output> a_targetOPC_tag </output> </ mapping element >

<quality > If the quality of any of the source tags in a mapping element is not OK, no value is sent to the <output> elements. The element <quality> can be used to learn of the quality of the inputs. It defines another child output tag to the target OPC server for data mapping elements. The value written to the quality tag may be defined using the optional good, bad, and ugly attributes. The value of these attributes must be consistent with the target tag data type. The ugly attribute applies to the UNCERTAIN OPC quality. If some of these attributes exist, then only those qualities will be sent. If no attribute is provided, the OPC numerical value of the worst quality of any of the source tags is sent; in this case the target tag must be an integer. See the OPC specification for the numerical definition of OPC quality. Note: the subcodes are not transported; only the codes representing good, bad and uncertain are sent. The <quality> element supports the optional attribute access in case an access path is required for the target tag. See the OPC specification for use of access paths.
< mapping element > <input> a_sourceOPC_tag </input> <output> a_targetOPC_tag </output> <quality good=FALSE bad=TRUE ugly=TRUE> targetOPC_boolean </quality> </ mapping element> < mapping element > <input> a_sourceOPCarray_tag </input> <output> targetOPC_tag1 </output> <quality> targetOPC_integer </quality> </ mapping element>

<timestamp> The timestamp of a source tag can also be obtained and directed to a target OPC server using the <timestamp> element. It defines another output tag to the target OPC server for the data mapping elements and watchdog elements. The timestamp is only the timestamp associated with the first <input> element. The target tag should be compatible with the date data type. The <timestamp> element supports the optional attribute access in case an access path is required for the target tag. See the OPC specification for use of access paths.

134

3BUS208222 R4001

< mapping element > <input> a_sourceOPC_tag </input> <output> a_targetOPC_tag </output> <timestamp> targetOPC_date </timestamp> </ mapping element>

<transport > The <transport> data mapping element declares a mapping from source OPC tags to target OPC tags. The mapping may be from 1-to-1, 1-to-N, N-to-1, and even N-to-N. The child elements for <transport> are <assign>, <triggeredBy>, <input>, <output>, <quality>, and <timestamp>. These must appear as child elements in this same order. The <triggeredBy> element is described in a later paragraph. A typical 1-to-1mapping without any special processing will have one <input> child element and one <output> child element. The content of these children are the respective source OPC and target OPC tags:
<transport> <input> a_sourceOPC_tag </input> <output> a_targetOPC_tag </output> </transport>

To map 1-to-N in the above example, just add more <output> elements. An <assign> element may be added to provide some simple manipulation of the source data before it is sent to the target OPC in the form of a simple arithmetic expression:
<transport> <assign> x*100+15.5 </assign> <input> a_sourceOPC_tag </input> <output> a_targetOPC_tag </output> </transport>

In the above example, the target of the assign is implied to be the sole output tag. The input to the arithmetic expression, represented by the variable x, is implied to be the sole input tag. If the mapping is from N-to-1, the input tags must somehow be mated with variables in the expression. This is accomplished with the optional var attribute on the <input> element:
<transport> <assign> x*100+y </assign> <input var=x> a_sourceOPC_tag </input> <input var=y> another_sourceOPC_tag </input> <output> a_targetOPC_tag </output> </transport>

3BUS208222 R4001

135

Note that mapping N-to-1 without a conversion algorithm is nonsensical and would generate an error. In the above example, to map the same result to multiple outputs (N-to-N), just add more <output> elements. The <transport> element has an optional attribute, do. Its purpose is described in a subsequent paragraph regarding the <sub> element. Fundamentally, a function is applied to the input data to produce output data. It is similar in usage to the <assign> element but is treated like a subprogram in any procedural language.
<transport do=line_function> <input var=x> a_sourceOPC_tag </input> <input var=y> another_sourceOPC_tag </input> <output> a_targetOPC_tag </output> </transport>

When there are multiple source arrays, the mapping and conversion is performed element-byelement for element indices within the bounds of all source arrays. Other special array handling is described under
<makeArray> and <breakArray>.

When there are multiple <input> elements, the default is to subscribe to the tag in the first <input> element and read the other tags synchronously from the source OPC server. In this manner, the arrival of new data for the first tag becomes the triggering mechanism for the transport to the target. Optionally, all inputs can trigger the transport to the target. This mode is referred to as asynchronous; the target tags are written to in response to a change in each or any source tag. To select asynchronous mode, use the optional attribute mode and set it to async. This attribute can also be set to sync, but this is the default if the attribute is missing.
<transport mode=async> <assign> x*100+y </assign> <input var=x> a_sourceOPC_tag </input> <input var=y> another_sourceOPC_tag </input> <output> a_targetOPC_tag </output> </transport>

A third way to cause the transport to occur is to use the <triggeredBy> element. This element refers to a global tag that is used to trigger the exchange as described in another section. It will override the default mode and the explicit async mode. The trigger tag cannot be used as an input source. The <triggeredBy> element must appear after the optional <assign> and before the first <input> element. <breakArray> The mapping element <breakArray> is to be used to map a source array to discrete target tags. The child elements for <breakArray > are <assign>, <triggeredBy>, <input>, <output>, <quality>, and <timestamp> in that order. As children of <breakArray>, provide one <input> element that is the source array and then list all the <output> elements in the order of the desired mapping. A conversion algorithm can still be applied to each element of the

136

3BUS208222 R4001

source array using an inline <assign> element or the do attribute exactly like the <transport> element. The <output> element supports an optional index attribute to allow mapping a select number of array elements to the set of target tags. This index must be appropriate for the source array as defined by the lower and upper bounds of the array. The input array is indexed into by the index attribute to acquire the value to map to the target tag. Array element indexing is 1-based. The optional var attribute is ignored by the <breakArray> element since there can only be one <input> element and the <output> elements collectively represent one output array.
<breakArray> <assign> x*10-2 </assign> <input> sourceOPCarray_tag </input> <output> targetOPC_tag1 </output> <output> targetOPC_tag2 </output>

<output> targetOPC_tagN </output> </breakArray> <breakArray> <input> sourceOPCarray_tag </input> <output index=3> targetOPC_tag1 </output> <output index =7> targetOPC_tag2 </output> <output index = 11> targetOPC_tag3 </output> </breakArray>

By default, the <breakArray> transfer will occur upon a change in value of the source array. A second way to cause the transport to occur is to use the <triggeredBy> element as described in another paragraph. The <triggeredBy> element must appear after the optional <assign> and before the <input> element. <makeArray> The mapping of discrete source tags into a single target array is complicated by the asynchronous arrival of source data. If the OPC Transporter subscribed to each source tag, then the target array would be sent once per element change. If the OPC Transporter would wait until a full set of source values has arrived before sending the target array, the target system may never get the array if one of the elements never changes. The mapping element <makeArray> is used to map discrete source tags into a single target array. The source tags are accumulated asynchronously, but at a specified frequency, they are sent as an array to the target OPC server. The child elements for <makeArray > are <assign>, <triggeredBy>, <input>, <output>, <quality>, and <timestamp> in that order. As children of <makeArray>, list all the <input> elements that will be used to form the array in the desired order from the lower bound to the upper bound of the target array. These are followed by a single <output> element. A
3BUS208222 R4001

137

conversion algorithm can still be applied to each element of the source tags using an inline <assign> element or the do attribute exactly like the <transport> element. If the source tags need to be mapped to a select set of target array elements, the optional index attribute may be used with the <input> element. This index must be appropriate for the bounds of the target array. The remaining unpopulated elements of the target array will be filled with the value of the filler attribute of the <makeArray> element. The default value of filler is 0 (zero). The rate attribute specifies how frequently the array is to be sent to the target OPC server. For consistency, it is in units of milliseconds, but has a granularity of 1 tenth of a second. The default value is 10 seconds (10000 milliseconds).
<makeArray rate=30000> <assign> x*10-2 </assign> <input> sourceOPC_tag1 </input>

<input> sourceOPC_tag2 </input> <input> sourceOPC_tagN </input> <output> targetOPCarray_tag </output> </makeArray>

<makeArray rate=30000 filler=1.0> <input index=2> sourceOPC_tag1 </input> <input index=6> sourceOPC_tag2 </input> <input> index=8sourceOPC_tag3 </input> <output> targetOPCarray_tag </output> </makeArray>

Another way to cause the output tag to be updated is to use the <triggeredBy> element as described in another section. The <triggeredBy> element must appear after the optional <assign> and before the first <input> element. <breakFlag> The mapping element <breakFlag> is used to map a source tag composed of bit flags to discrete target tags. The source tag must be an integer and the bit values will be coerced into the target data types. The child elements for <breakFlag > are <input>, <output>, <quality>, and <timestamp> in that order. As children of <breakFlag>, provide one <input> element that is the source integer and then list all the <output> elements in the order of the desired mapping starting with the right-most bit. The <output> element supports an optional index attribute to allow mapping selected bits in the flag to the target tags. This index assumes the right-most bit, a.k.a. least-significant bit, is numbered 0 (zero).

138

3BUS208222 R4001

There is one optional attribute to invert any or all of the bits in the flag before writing to the target tags. The attribute invert must be a string of digits, 0s (zeroes) and 1s (ones), where those bits in the flag corresponding to the 1s will be inverted. The right-most digit in the string corresponds to the right-most bit in the flag. Commas may be used to separate a set of digits.
<breakFlag> <input> sourceOPCflag_tag </input> <output> targetOPC_tag1 </output> <output> targetOPC_tag2 </output>

<output> targetOPC_tagN </output> </breakFlag> <breakFlag invert=1000,0000,0000,0000,0000,0000,0000,0000> <input> sourceOPCflag_tag </input> <output index=0> targetOPC_tag1 </output> <output index = 31> targetOPC_tag3 </output> </breakFlag>

<makeFlag> The mapping element <makeFlag> takes a set of discrete source tags and creates a single target bit flag from them. Because each source tag is considered to represent an event or state, when any source tag changes in value, the target flag will be created and sent even if all of the source tags have not changed. The target tag must be an integer. The source tags will be coerced into a 0 (zero) or 1 (one) value. Any nonzero value is mapped into 1. The child elements for <makeFlag > are <input>, <output>, <quality>, and <timestamp> in that order. As children of <makeFlag>, list all the <input> elements that will be used to form the bit flag in the desired order starting with the right-most bit, followed by a single <output> element. If the source tags need to be mapped to selected bits in the target flag, the optional index attribute may be used with the <input> tags. This index is relative to 0 -- it being the index of the right-most bit, a.k.a least-significant bit, of the target tag. There is one optional attribute to invert any or all of the bits in the composed flag before writing to the target tag. The attribute invert must be a string of digits, 0s (zeroes) and 1s (ones), where those bits in the flag corresponding to the 1s will be inverted. The right-most digit in the string corresponds to the right-most bit in the flag. Commas may be used to separate a set of digits.
<makeFlag> <input> sourceOPC_tag1 </input> <input> sourceOPC_tag2 </input> <input> sourceOPC_tagN </input>

3BUS208222 R4001

139

<output> targetOPCflag_tag </output> </makeFlag> <makeFlag invert=1000,0000> <input index=2> sourceOPC_tag1 </input> <input index=6> sourceOPC_tag2 </input> <input> index=7sourceOPC_tag3 </input> <output> targetOPCflag_tag </output> </makeFlag>

<trigger> & <triggeredBy> Some source tags need to be sent on a particular event rather than a change in its value. Arrays fall into this category where each array element that changes in value would cause the entire array to be transferred. The <trigger> element defines a tag that may be used by <transport>, <makeArray>, and <breakArray> elements to trigger their transfers. The same trigger may be used for multiple mapping elements. Even though a trigger is defined within a specific group, its range is global within the same <transporter> element; however, the <trigger> element must appear earlier in the XML file than any element that refers to it. The value of the trigger tag is not used; only a change in value causes the trigger to occur. The element <trigger> has one required attribute, called var, to give the tag a variable name that can be referenced by other elements. This name must be unique throughout the XML file and must adhere to the variable name restrictions. It has the attribute type ID to ensure uniqueness. The optional attribute, access, may be required by some OPC servers to define the access path to certain OPC items or tags.
<trigger var=anyname> a_sourceOPC_tag </trigger>

The element <trigger> is referenced in a <triggeredBy> element. The <triggeredBy> element is a child element of <transport>, <makeArray>, or <breakArray>. The presence of the child element <triggeredBy> overrides the default or any explicit transfer mode (synchronous, asynchronous, or periodic) of the parent element. The element <triggeredBy> has one required attribute, called var, to refer to a variable name that has previously been assigned to a <trigger> element. It has the attribute type IDREF to ensure a match exists.
<triggeredBy var=a_trigger/>

Example:
<group rate=1000> <trigger var=trg> triggerTag </trigger> </group>

<group> <transport> <triggeredBy var=trg/> <input> inputTag1 </input> <output> outputTag1 </output>

140

3BUS208222 R4001

</transport> <transport> <triggeredBy var=trg/> <input> inputTag2 </input> <output> outputTag2 </output> </transport> </group>

Note that the poll option on the <group> element that is parent of the <trigger> element will affect the operation of the trigger mechanism. Instead of a change in value causing the transfer to occur, the periodic refresh forced by the polling operation will cause a transfer regardless of value returned. <watchdog> & <heartbeat> The <watchdog> element is a variation of the <transport> element but no source OPC data is transferred to the target OPC. It is used for the target to learn of the demise of the connection to the source OPC server and to force reconnection to lost OPC servers. This element can have five attributes: rate, ok, alarm, restart, and poll. It takes two forms. The first form monitors a source OPC tag as defined by an <input> element. While changes in the value of the source tag are received, a user-defined value is sent to an optional target OPC tag as defined by an <output> element. If the source tag does not change in value within a certain period or its quality is not good, the <watchdog> element will write another special value to the target tag. This monitoring functionality is repetitive so multiple timeouts are possible. If no <input> tag is provided, the OPC Transporter assumes the second form is opted and will poll the status of the source OPC server. If the interface times out or the server state is not OPC_STATUS_RUNNING, a watchdog alarm is sent to an optional target tag as defined by an <output> element; otherwise, another value is sent to the same target tag to indicate the status is OK. In this polling form, the watchdog timeout will occur only once. The rate attribute specifies how frequently (in milliseconds, but granularity of 1000 milliseconds) the source must arrive or the status polled before a watchdog alarm value is sent to the target OPC. The default value for rate is 180 seconds. In the monitor form, the source tag is subscribed to with an update rate of 1 second. The alarm attribute is what is to be written to the <output> element tag when a watchdog alarm is generated. The ok attribute is the value sent as long as the source tag is received or the OPC interface is functioning. The values of ok and alarm must be compatible with the target tag. In the first example, the value of ok is used to set a timer in the target machine that is used as a countdown device to detect if there is an OPC Transporter failure. The first example is the monitoring form and the second example is the polling form.
<watchdog rate=10000 alarm=0 ok=12> <input> sourceOPC_tag </input> <output> targetOPC_tag </output> </watchdog>

3BUS208222 R4001

141

<watchdog rate=30000 alarm=TRUE ok=FALSE> <output> targetOPC_tag </output> </watchdog>

The OPC Transporter can be instructed to reestablish connections to lost OPC servers. This is accomplished with the restart attribute. This optional attribute may have two values: manual and auto. The default value is manual in which case the OPC Transporter will not reconnect to the OPC servers. In auto, the connections will be retried after 30 seconds and then for every 15 seconds thereafter until successful. Upon detection of an OPC server failure, both connections are terminated. An OPC failure is determined by the watchdog form. If the form is polling the source OPC server status, the failure is a bad returned status or no response. If the form is monitoring a source tag, the failure is a timeout on the update of the tag, or the quality of the tag remaining bad for the timeout period. A target OPC server access failure will force a watchdog timeout on all watchdogs configured and thus in turn force a reconnection if so opted. The VIB controller that is connected to an ABB Quality Control Object Server does not support subscriptions. For this device, the poll attribute must be used to cause the watchdog OPC group to be refreshed periodically (once per second). The default value of the poll attribute is false. Set it to true for such watchdogs. Unfortunately, this method may suffer from DCOM side effects and thus may not be very prompt in reporting watchdog timeouts. The <heartbeat> element is similar to the <watchdog> element but sends an internal value to the target OPC server; it does not interact with the source OPC server. The value sent is called a heartbeat and is incremented once per second by the OPC Transporter. It can be used for the OPC Transporter to learn of the demise of the connection to the target OPC server and to force reconnection to both OPC servers for situations where the source OPC server might be relatively quiet. The <heartbeat> element has one child element, <output>, to define the target OPC tag and can have two attributes: rateand restart. The rate defines the frequency at which the heartbeat will be sent (in milliseconds, but granularity of 1000 milliseconds). Its default value is 10 seconds (10000).
<heartbeat rate=5000 restart=auto> <output> targetOPC_tag </output> </heartbeat>

The restart attribute operates the same as for the <watchdog> element. The combination of watchdogs and heartbeats dictate automatic reconnections after OPC server failures. If a target OPC server fails and in the absence of any <heartbeat> elements, a <watchdog> element will cause the reconnection no matter what its value of restart is. If a target OPC server fails and a <heartbeat> is provided, the reconnection is performed based upon the <heartbeat>s restart attribute. <sub> The <sub> element is used to define a complex conversion algorithm in the form of a procedural language. The content of the <sub> element is described in detail in a later paragraph on the Transporter Programming Language (TPL), but in essence, it permits multiple assignment statements and some flow control features. As with the <assign> element, the intent of <sub> is to produce output from the given input. It supports N inputs

142

3BUS208222 R4001

and N outputs. The inputs are mated with variables inside the <sub> in the same manner <input> elements were mated with variables in the <assign> element. In the same fashion, output variables (targets of assignments) are mated with <output> elements using the optional var attribute. The <sub> element has one required attribute, id, of XML attribute type ID. The value of id is essentially the name of the <sub>. Attribute types ID and IDREF are handled specially by an XML parser. If an element has an attribute of type IDREF, then there must be another element whose ID attribute matches its value. Some mapping elements have an optional attribute called do of type IDREF. The value of do must match a <sub>s id. The <sub> element must be a child element of the root <OPCtransporter> element. All <sub> elements must appear before any <transporter> element. This forces an organization that is easier to view and emphasizes the potential shared use of <sub> elements by mappings within all <transporter> elements. As with the <assign> element, the var attributes on the inputs and outputs may be omitted as long as it is not ambiguous. To apply a <sub> to a set of inputs and outputs:
<OPCtransporter> <sub id=linear> <![CDATA[ input x input y output a output b a = 10 * x + y; b = 100 * x + y; ]]> </sub> <transporter id=example> <sourceOPC node=ABBSVR02 > QCS.Object.Server </sourceOPC> <targetOPC > QCS.Object.Server </targetOPC> <branch OPC=source> PM1.AC450B.FRAME1. </branch> <branch OPC=target> SQCS.Scanner1. </branch> <group> <transport do=linear> <input var=x> a_sourceOPC_tag </input> <input var=y> another_sourceOPC_tag </input> <output var=a> a_targetOPC_tag </output> <output var=b> another_targetOPC_tag </output> </transport>

3BUS208222 R4001

143

</group> </transporter> </OPCtransporter>

<global> The handling of multiple source tags to produce one or more target values requires special attention. Source tags are typically subscribed to and a target value is generated when notification of a change in source value is received. If two or more sources are used, then, by default, the tag in the first <input> child element is subscribed to and the others are read synchronously. On the other hand, if the asynchronous mode option is used, the data may be written to the target OPC more often than desired. Using global variables is an alternative that avoids the overhead and delay of synchronous reads and the extra writes caused by asynchronous updates. A <global> element defines a source tag that will be used in multiple conversion algorithms (see <sub>) as a global variable. Even though its value changes asynchronously, it will not be used until required by the algorithm invoked by a mapping element. Like <input>, the content of <global> is the name of a source OPC tag. A global variable must be a scalar of Boolean, real or integer data type. It has one required attribute, called var, to give the global tag a variable name that is referenced in conversion algorithms. This name must be unique throughout the XML file and must adhere to the variable name restrictions. It has the attribute type ID to ensure uniqueness. The optional attribute, access, may be required by some OPC servers to define the access path to certain OPC items or tags. The <global> element is a child of a <group> element.
<OPCtransporter> <sub id=linear> <![CDATA[ input x input y output a output b a = slope * x + y; b = 10 * slope * x + y; ]]> </sub> <transporter id=example> <sourceOPC node=ABBSVR02 > QCS.Object.Server </sourceOPC> <targetOPC > QCS.Object.Server </targetOPC> <branch OPC=source> PM1.AC450B.FRAME1. </branch> <branch OPC=target> SQCS.Scanner1. </branch> <group> <global var=slope> a_sourceOPC_tag </global>

144

3BUS208222 R4001

<transport do=linear> <input var=x> a_sourceOPC_tag </input> <input var=y> another_sourceOPC_tag </input> <output var=a> a_targetOPC_tag </output> <output var=b> another_targetOPC_tag </output> </transport> </group> </transporter> </OPCtransporter>

A.2.3 Data References


Variable Name A variable name must begin with an alphabetic character and the rest composed of only alphanumeric characters. Keywords may not be used as variable names. Variable names are case-sensitive, but keywords are not. This convention applies to var attributes (parameter names), local names in TPL, and <global> names. Keywords: 24. if 25. then 26. else 27. end 28. select 29. case 30. to 31. true 32. false 33. input 34. output 35. integer 36. real 37. boolean

3BUS208222 R4001

145

Data Type The data type of input variables is defined by the source OPC server. These may be scalars and arrays of all data types supported by the OPC standard. Appropriateness for arithmetic operations is defined by Visual Basic. Outputs also have standard data types, but these do not affect intermediate calculations. The input or the result of a conversion algorithm is coerced to the output data type if at all possible. The target OPC server does this coercion if the result is a scalar; otherwise, the OPC transporter will coerce an array when necessary. Global variables must be scalars of Boolean, single, double, or one of the integer types. Local variables in TPL can be scalars of longs, doubles, and Booleans. Arrays Both input tags and output tags may be arrays. Whether any given array can be mapped to an output tag is left to the target OPC server to decide. In conversion algorithms, the format of the output tag is ignored until the result is ready to be sent to the target OPC server. If any input to a conversion algorithm is an array, all outputs will assumed to be arrays as well. The bounds of an output array are determined by examining the lower and upper bounds of all input arrays to find the highest lower bound and lowest upper bound. The data type of the output array is matched to the input array that is declared first in the XML file. This may then have to be coerced into the actual data type.

A.2.4 Transporter Programming Language


The Transporter Programming Language (TPL) provides a means of specifying a complex conversion from the source tags into the target tag or tags. TPL is a small subset or variation of other common languages such as Basic. It provides for rich manipulation of data plus two flow control structures. TPL is primarily presented in the CDATA section of the <sub> element to avoid complications with the XML meta-language. The arithmetic expression may be employed in the inline <assign> element as well. A TPL program has three sections: the first section to define the parameters, the second section to declare local variables, and the algorithm section consisting of various statements. A statement is defined to be an assignment statement, an if-then-else statement, or a selectcase statement. Where applicable, these statements may be nested. Statements are free form but white space must be used to separate keywords from variables and literals. Comments Comments may appear anywhere in the program. They are set off with the special character ! at the beginning and end of the comment:
! a comment containing anything except exclamation points !

Declarations Input and output parameters to the <sub> element must be declared. This is primarily to force documentation of the number of and the variable names assigned to the inputs and outputs. These declarations must appear first in the program.

146

3BUS208222 R4001

input name output name

The output declaration may be omitted where only one output will be generated and the implicit assignment statement form is used. Local variables must also be declared. Their scope is only within that invocation of the <sub> element. A local variable declaration takes the form:
data_type name

where data_type may be either integer, real or boolean. All integer variables are retained as 32-bit values. All real values are retained in double precision. Arithmetic Expressions An arithmetic expression can consist of the four primary operators (add (+), subtract (-), multiply (*) and divide (/)), four bit-wise operators (or (|), not (~), exclusive-or (^), and (&)), and two shift operators (left shift (<<) and right shift (>>)). Operands may be literals, parameter names, global names, and local names. Operand types must be consistent with the operation. The shift operators take the number of bits to shift as the second operand. Right shifts cause the sign bit to be replicated in the leftmost bit. Left shifts result in a 0 be shifted into the rightmost bit. A negative shift count reverses the direction of the shift. An expression may also use the relational operators equal to (==), less than (<), less than or equal to (<=), greater than (>), greater than or equal to (>=), not equal to (<>), equal to or higher than (=>), and equal to or lower than (=<). These latter two operators permit comparisons of unsigned integers. These operators compare two expressions and produce a Boolean result. The operator precedence from highest to lowest priority is: unary operators, shift operators, (*, /, and &), (+, -, |, and ^), relational operators. Operators have left to right precedence within a priority level. Literals are numeric, Boolean, and string constants. Integers may be presented as binary, decimal, octal, or hexadecimal values. The characters 0b must prefix binary constants, 0o must prefix octal constants, and 0x must prefix hexadecimal constants. Real numbers may be represented in the standard decimal point form or in scientific notation: d.dddddEsxx, where d is a decimal digit, s is a sign, and x is a decimal digit in the exponent. To form a double precision literal, the E may be replaced with D. String literals must appear within quotation marks or within apostrophes to form a literal. The standard rule for inserting the delimiter (whether it be quotes or apostrophes) into the string applies: repeat the delimiter sequentially. Special Boolean literals are TRUE and FALSE. In mixed mode operations, FALSE takes on the value of 0 and TRUE is 1.

3BUS208222 R4001

147

Assignment Statement An assignment statement is a local variable or output parameter followed by the equal sign (=) then an arithmetic expression or a string literal. This is the conventional format of an assignment statement. The character ; must be used to terminate assignment statements composed of arithmetic expressions. An arithmetic expression without an explicit assignment to a variable is also valid; the sole output parameter is the implicit destination. This is called an implicit assignment.
a = x*100 y; (n+1)*50; s = high limit

If after processing the algorithm, no assignment to the output variable (implicit or explicit) is executed, no value will be sent to the target tag. If Statement A statement may be a conditional if-then or if-then-else statement. These conditional statements may be nested. The if-clause consists of the keyword if followed by an expression. The then-clause begins with the keyword then followed by a statement. Likewise, the else-clause begins with the keyword else followed by a statement. The if-then and if-then-else statement must be terminated with the keyword end. In the if-clause, a non-Boolean expression evaluating to a nonzero value is considered true and zero is considered false.
if a < 0 then x = a + 200; else if a == 0 then x = 0; end end

Select Statement Another conditional structure is the select statement. It is a multi-part statement in which values of the source are mapped into ranges and a corresponding statement is then processed to produce a result. The first clause begins with the select keyword followed by a variable name used to compare against the literals in the remaining clauses. Each clause after that begins with the keyword case followed by a range literal, a colon, and then a statement or statements. Ranges may be formed by using the to keyword as in case 1 to 4. Ranges may also be formed by using an appropriate relational operator in front of a literal as in case >= 5. For all values of the source not explicitly mapped, the optional else-clause can be used to set the target. This clause is simply the keyword else followed by a statement or statements. The select statement is terminated with the keyword end. The case clause terminates with the next case clause, the else clause or the end keyword.
select x case 0: 0;

148

3BUS208222 R4001

case 1 to 4: case >= 5: if y > 0 then else end else 4; end 2; 3;

1;

Example <sub> Element


<sub ID=sample> <![CDATA[ input ad Boolean flag ! bflag and cflag are global !

flag = (bflag & 0x0010) | (cflag >> 2); if (flag & 0x10) <> 0 then select ad case < =0: 0; case > 10: 1; case >100: 2; case > 1000: end else ad * 100 + 10; end ]]> </sub> 3;

A.3 Operation
A.3.1 Invocation
The OPC Transporter runs under a service that will operate upon XML configuration files created by another process or processes. The service, OPCTService.exe, must be installed using either the RUN command line or the Command Prompt window:
OPCTService.exe i

3BUS208222 R4001

149

The primary OPC Transporter module is OPCtransporter.exe. It must be registered in order for the service to be able to run it. The service and main module both should be located in the same directory. The OPC Transporter and its service log events to the application event log. In order to translate the event codes, the event viewer must be supplied a resource file containing the messages. This file is OPCTmsgs.dll; it must be copied to the same directory as the other OPC Transporter executables. It is intended that the OPC Transporter can support multiple configuration files that may have been independently developed. The service needs to locate these XML configuration files upon activation. These files must be registered in the Registry under the path HKEY_LOCAL_MACHINE/SOFTWARE/ABB Inc./OPCTransporter in a user-named folder. The folder must contain the value name XMLfilepath and its value must be a fully qualified path name to an XML file. For a system that requires a large number of files, the value name XMLfolderpath can be used to define a folder containing any number of XML files. The OPC Transporter will try to process each file that qualifies as an OPC Transporter file. The OPC Transporter also makes use of the ABB debug utility for debugging activities such as displaying current state and enabling the display messages as data is processed. This utility, ABBDebug.exe, must be registered and configured to run under the account of a particular user. Using dcomcnfg modify the identity properties of ABBDebugTool.CABBTraceEvents. ABBDebugClient.exe must be used to view the debug utility messages and enable OPC Transporter output to the utility.

A.3.2 Error recording


Event Log The OPC Transporter files errors it detects with the NT system event log as a registered application, namely, OPCTransporter. The OPC Transporter will record informational, warning and fatal errors messages. All compilation errors are reported here. Temporal warnings due to loss of connections may appear frequently if the system is unstable. The service also reports errors via this same log; its name is OPCTservice. The event log requires a message file for displaying language-dependent text. This file is called OPCTmsgs.dll. The path to OPCTmsgs.dll is assumed to be the same as the OPC Transporter executable. Debug modes The OPC Transporter operation can be observed using the ABB debug utility using either the Mode or Activity menu options. The OPC Transporter will direct output to the trace window for Mode selections. The mode selections are: 38. Enable input/output messages 39. Display event log messages 40. Enable poll/watchdog messages The Activity window displays the following integer values:

150

3BUS208222 R4001

41. Transporter state 42. Source OPC server state 43. Target OPC server state 44. OPC data change events 45. Watchdog cycles 46. Poll cycles 47. Reconnect cycles The state information is intended for an ABB engineer, but in short, zero is good and nonzero isnt:
1 = inactive 2 = initializing 3 = bad tag in configuration file 4 = bad xml configuration file 5 = bad assign element in configuration file 6 = mismatch of data types 7 = setup error 8 = no connection to OPC server 9 = disconnected from OPC server 10 = shutdown requested by OPC server 11 = group error reported by OPC server 12 = process error (runtime error of various flavors) 13 = data type coercion error 14 = tag access error 15 = lost reference to OPC server

A.3.3 Error recovery


The module OPCtransporter, as a result of a connection loss with an OPC server, performs error recovery; otherwise, all errors are considered fatal. Upon initial activation and if there is no connection to either OPC server, an attempt will be made to establish a connection once every 15 seconds. If an OPC server shuts down some time after a connection had been established, the module will wait 30 seconds before trying to connect again, and then it will retry every 15 seconds. When connection to an OPC server is lost without it being a formal shut down by the OPC server, recovery can be automatically initiated via an option with the <watchdog> element.

3BUS208222 R4001

151

A.4 Document Type Definition


<!ELEMENT OPCtransporter (sub*, transporter*)> <!ELEMENT transporter (sourceOPC, targetOPC, (group | branch | watchdog | heartbeat)*)> <!ATTLIST transporter id ID #IMPLIED> <!ELEMENT sourceOPC (#PCDATA)> <!ATTLIST sourceOPC node CDATA #IMPLIED> <!ELEMENT targetOPC (#PCDATA)> <!ATTLIST targetOPC node CDATA #IMPLIED> <!ELEMENT group (branch | global | trigger | transport | breakArray | makeArray | breakFlag | makeFlag)*> <!ATTLIST group rate CDATA "1000" deadband CDATA "0" poll (false | true) "false" onfirst (false | true) "true" id ID #IMPLIED> <!ELEMENT branch (#PCDATA)> <!ATTLIST branch OPC (source | target) #REQUIRED> <!ELEMENT global (#PCDATA)> <!ATTLIST global var ID #REQUIRED access CDATA #IMPLIED> <!ELEMENT trigger (#PCDATA)> <!ATTLIST trigger var ID #REQUIRED access CDATA #IMPLIED> <!ELEMENT assign (#PCDATA)> <!ELEMENT sub (#PCDATA)> <!ATTLIST sub id ID #REQUIRED> <!ELEMENT input (#PCDATA)> <!ATTLIST input var CDATA #IMPLIED index CDATA #IMPLIED access CDATA #IMPLIED> <!ELEMENT output (#PCDATA)> <!ATTLIST output var CDATA #IMPLIED index CDATA #IMPLIED initial CDATA #IMPLIED

152

3BUS208222 R4001

access CDATA #IMPLIED> <!ELEMENT quality (#PCDATA)> <!ATTLIST quality good CDATA #IMPLIED bad CDATA #IMPLIED ugly CDATA #IMPLIED access CDATA #IMPLIED> <!ELEMENT timestamp (#PCDATA)> <!ATTLIST timestamp access CDATA #IMPLIED> <!ELEMENT triggeredBy EMPTY> <!ATTLIST triggeredBy var IDREF #IMPLIED> <!ELEMENT transport (assign?, triggeredBy?, input+, output+, quality?, timestamp?)> <!ATTLIST transport do IDREF #IMPLIED mode (sync | async) "sync"> <!ELEMENT breakArray (assign?, triggeredBy?, input, output+, quality?, timestamp?)> <!ATTLIST breakArray do IDREF #IMPLIED> <!ELEMENT makeArray (assign?, triggeredBy?, input+, output, quality?, timestamp?)> <!ATTLIST makeArray do IDREF #IMPLIED filler CDATA "0" rate CDATA "10000"> <!ELEMENT breakFlag (input, output+, quality?, timestamp?)> <!ATTLIST breakFlag invert CDATA "0"> <!ELEMENT makeFlag (input+, output, quality?, timestamp?)> <!ATTLIST makeFlag invert CDATA "0"> <!ELEMENT watchdog (output? | (input, output?, timestamp?))> <!ATTLIST watchdog rate CDATA "180000" restart (auto | manual) "manual" poll (false | true) "false" alarm CDATA #REQUIRED ok CDATA #REQUIRED> <!ELEMENT heartbeat (output)> <!ATTLIST heartbeat rate CDATA "10000" restart (auto | manual) "manual">

3BUS208222 R4001

153

A.5 TPL Formal Definition


A.5.1 <program> ::= <declarations> <statements>
<declarations> ::= <declaration> | <declarations> <declaration> <declaration> ::= <parameter_declarator> | <local_declarator> <parameter_declarator> ::= input name | output name <local_declarator> ::= <type_specifier> name <type_specifer> ::= integer | real | boolean <variable> ::= output_parameter | local_name <identifier> ::= input_parameter | output_parameter | global_name | <boolean_literal> ::= true | false <statements> ::= <statement> | <statements> <statement> <statement> ::= <assignment> | <if_statement> | <select_statement> <assignment> ::= <expression>; | <variable> = <expression>; | string_literal | <variable> = string_literal <if_statement> ::= if <expression> <then_clause> end | if <expression> <then_clause> <else_clause> end <then_clause> ::= then <statements> <else_clause> ::= else <statements> <select_statement> ::= select <identifier> <case_clauses> end | select <identifier> <case_clauses> <else_clause> end <case_clauses> ::= <case_clause> | <case_clauses> <case_clause> <case_clause> ::= case <range> : <statements> <signed_literal> ::= numeric_literal | -numeric_literal <range> ::= string_literal | <boolean_literal> | <signed_literal> | | <signed_literal> to <signed_literal> local_name

<relational_op> <signed_literal> <unary_op> ::= - | ~ <shift_op> ::= >> | << <primary_op> ::= * | / | & <secondary_op> ::= + | - | | | ^

<relational_op> ::= == | <> | > | >= | => | < | <= | =< <binary_op> ::= <shift_op> | <primary_op> | <secondary_op> | <relational_op> <factor> ::= numeric_literal | <boolean_literal> | <identifier> | (<expression>) <expression> ::= <factor> | <unary_op> <factor> | <expression> <binary_op> <factor>

154

3BUS208222 R4001

string_literal is a sequence of characters delimited by or by . To include the delimiter in the string, use or , respectively. numeric_literal is integer or real. Integers are a sequence of digits 0 to 9 depending upon the base and A to E if hexadecimal. Binary integers are prefixed by 0B, octal integers by 0O, and hexadecimal integers by 0X. Real constants permit the standard decimal point form or scientific notation: d.dddddEsdd or d.dddddDsdd; where d is a decimal digit and s is the sign + or -, E is for single precision, and D for double precision. Numeric literals are not sensitive to case. name is an identifier that begins with an alphabetic character followed by a sequence of alphanumeric characters and must not match a keyword. Names are sensitive to case. input_parameter, output_parameter, global_name, and local_name are classes of name. Comments are delimited by !; they are treated as whitespace.

3BUS208222 R4001

155

Appendix B. ActiveX Controls List


B.1 Introduction
There are three methods to communicate between the ActiveX controls and OPC server: 1. Component based ActiveX controls: OPC groups will be created on the server PC, and all clients (ActiveX controls) will share those OPC groups. The application knowledge needs to be embedded in server components. 2. OPC Direct IT ActiveX controls: OPC groups will be created on the client PC, and every client has its own OPC groups. The application knowledge needs to be embedded in each ActiveX control. 3. TagLookup ActiveX controls: OPC groups will be created on the client PC, and every client has its own OPC groups. The application knowledge is not embedded in the server component or the ActiveX controls. The server TagLookup component will read configurable XML documents that contains application information, and pass those application information to each ActiveX controls. Some of ActiveX controls are designed as Primitive, those controls may be used by other ActiveX controls, and do not need to communicate to OPC server by itself. Some of ActiveX controls are created as a container, those controls include several other ActiveX controls, we call those controls Video Page. The following table provides a complete list of ActiveX controls that developed by ABB Quality Control.

B.2 ActiveX Controls


Table 3-1 Active X Control names, file name, and interface definitions
Index 1 ActiveX Control Name ABB 3D Color Plot ABB AC800 Auto Grade Change Button ABB AC800 Auto Grade Change Current Info ABB AC800 Auto Grade Change Previous ActiveX Control File Name ABBMIT3DColPlot.ocx Interface Component TagLookUp ABBOPCTagAgcButton.ocx TagLookUp ABBOPCTagAgcCurrent.ocx TagLookUp ABBOPCTagAgcPrevious.ocx

156

3BUS208222 R4001

5 6 7 8 9 10 11 12

ABB Alarm and Event Display ABB Animated Command Button ABB Auto Grid ABB Auto Plot ABB CD Actuator Profile 2 ABB CD Mapping ActiveX Control ABB Chart Control ABB Command Button ABB Enhanced Auto Grid (Used Tag Lookup Service) ABB Grade Change Control ABB Indicator Control ABB Measure IT Big Graphic Display Control ABB Measure IT Contour Map Control ABB Measure IT Frame & Measurement Popup Selection ABB Measure IT Frame & Measurement Selection Library ABB Measure IT Frame Overview Control ABB Measure IT Frames Panel Control ABB Measure IT Production Summary Control ABB Measure IT Profile Control

AEdisplay.ocx ABBAnCmd.ocx ABBAutoCfgGrid.ocx ABBAutoPlotCtl.ocx ABBCDActProf.ocx ABBCDMapping.ocx ABBChart.ocx ABBCommandButtons.ocx Primitive TagLookUp TagLookUp Component TagLookUp Primitive TagLookUp

TagLookUp ABBMSFlexGrid_TL.ocx ABBMITGradeChange.ocx ABBIndicator.ocx Component TagLookUp OPC Direct IT ABBMITNumberDisplay.ocx ABBMITContour.ocx Component

13 14 15

16 17

Component ABBMITFrameMeasPopup.ocx

18

Component ABBMITFrameMeasSelect.ocx Component ABBMITFrameOverview.ocx Component ABBMITFramesPanel.ocx Component ABBMITProductionSum.ocx ABBMITProfile.ocx Component

19

20

21

22 23 3BUS208222 R4001

157

24

ABB Measure IT Sample Check Setup Control (SP) ABB Measure IT Scanner Operation/Indication Control ABB Measure IT Sensor Results Control ABB Measure IT Sensor Status Control ABB Measure IT SP Global Standardize Interval Control ABB Measure IT SP Measure Setup Control - Composite Scale Factor ABB Measure IT SP Scan Setup Control ABB Measure IT SP Single Point Setup Control - Operator Entry ABB MeasureIT Active & Preliminary Grade/Shade Code Viewer ABB MeasureIT Color Reflectance Plot ActiveX Control ABB MeasureIT Excel Sensor Reporting ActiveX Control ABB MeasureIT Preliminary Grade/Shade Code Selector ABB MIT Color Meas Selector ABB MIT Color Measurement Overview

OPC Direct IT ABBMITSamChkSUSP.ocx

Component ABBMITSPOpInd.ocx Component ABBMITSensorResults.ocx Component ABBMITSensorStatus.ocx OPC Direct IT ABBMITSPGlobalStdz.ocx

25

26

27

28

OPC Direct IT ABBMITSPMeasSetup.ocx ABBMITSPScanSetup.ocx Component

29 30

Component/ OPC Direct IT ABBMITSPSinglePtSetup.ocx

31

Component ABBMITAPCodeViewer.ocx TagLookUp ABBMITColorRefl.ocx

32

33

34

ABBMITExcelRpts.ocx

OPC Direct IT ABBMITPrelimSelect.ocx ABBMITColorSelector_TL.ocx TagLookUp

35 36

TagLookUp ABBMITColorMOV.ocx

37

158

3BUS208222 R4001

38 39 40 41 42 43 44 45 46 47 48 49 50 51 52

ABB MIT Color Sensor Status ABB MIT Color Trends ABB MIT Scanner Position Display ABB MSFlexGrid ABB Multi Plot ABB Numeric Text Box Control ABB OPC Banner Control ABB OPC Tag AGC Level 1 Control ABB OPC TAg AGC Level 2 Control ABB OPC Tag Level 1 grid ABB OPC Tag Level 1 singleline ABB OPC Tag Level 1 Vertical ABB OPC Tag Level 2 grid ABB OPC Tag Level 2 singleline ABB OPC Tag Speed Control ABB OPC Trend Control (QCS Independent) ABB OPCDirectIT Viewer ABB Resize ActiveX Control ABB Roll Data Grid Control ABB Roll Set Profile Display Control ABB RollSet Chart Control

ABBMITColSenSts.ocx ABBMITColorTrends.ocx ABBMITSPPosDsp.ocx ABBMSFlexGrid.ocx ABBMultiPlotCtl.ocx ABBNumericTextBox.ocx ABBOPCBanner.ocx ABBOPCTagAGCL1.ocx ABBOPCTagAGCL2.ocx ABBOPCTagL1.ocx ABBOPCTagL1C.ocx ABBOPCTagL1V.ocx ABBOPCTagL2.ocx ABBOPCTagL2C.ocx ABBOPCTagSpeed.ocx

Component Component Component Primitive Primitive Primitive OPC Direct IT TagLookUp TagLookUp TagLookUp TagLookUp TagLookUp TagLookUp TagLookUp TagLookUp

53 54 55 56 57 58 3BUS208222 R4001

ABBOPCTrends2.ocx ABBOPCDirectITViewer.ocx ABBResizeControl.ocx ABBRollDataGrid.ocx ABBRollSetProfile.ocx ABBRSChart.ocx Primitive Component Component

Primitive

159

59 60 61 62 63 64 65 66 67 68

ABB RollSet Configuration Control ABB Scanner Operation/Indication ABB Scanner Position Display ABB Split Controls ABB SWS Alarm Label Control ABB SWS Ash Sensor Control ABB SWS Basis Weigth Sensor ABB SWS Caliper Control ABB SWS Chart Component ABB SWS Color Control ABB SWS Fiber Orientation Sensor Control ABB SWS Frame Control ABB SWS Gap Sensor Control ABB SWS Gloss Control ABB SWS Grid Control ABB SWS Microwave Moistrue Control ABB SWS Moisture Control ABB SWS Optipack Control ABB SWS Ratio Control ABB SWS Smoothness Control ABB SWS

ABBRollSetConfig.ocx ABBSPOpInd.ocx ABBSPPosDsp.ocx ABBSplitControl.ocx LabelAlarm.ocx ABBSWSAshCtl.ocx ABBSWSWeight.ocx AbbCaliper.ocx ABBSWSCharting.ocx ABBSWSColor.ocx

Component Component Component Primitive

Component

Primitive Component/ OPC Direct IT

69 70 71 72 73 74 75 76 77 78 79

ABBSWSFiber.ocx ABBSWSFrame.ocx ABBSWSGap.ocx ABBSWSGloss.ocx ABBGrid.ocx microwave.ocx ABBSWSMoisture.ocx ABBSWSOptipak.ocx ABBSWSRatio.ocx ABBSWSSmoothness.ocx ABBSWSTemperature.ocx Primitive

160

3BUS208222 R4001

Temperature Sensor Control ABB Tag Lookup Menu Selector ActiveX Control ABB Text Entry Box ABB Video for Measure IT Color Reports ABB Video for Measure IT Combined Roll Set Summary Display ABB Video for Measure IT Fiber Orientation Display ABB Video for Measure IT Frame Overview ABB Video for Measure IT Measurement Status ABB Video for Measure IT MIS Reports ABB Video for Measure IT Profile Contour Maps ABB Video for Measure IT Sensor Reports ABB Video for Roll Set Summary (Current Set Data) ABB Video for Roll Set Summary Last Set Data ABB Video MIT Multi Scanner Setup Display ABB3DScatterGraph ABBMenu ABBOPCMonitorVie w TagLookUp ABBTagLookupSelector.ocx ABBTextEntryBox.ocx Primitive Video Page ABBVideoColorReports.ocx

80 81

82

Video Page ABBVideoMITRollSet.ocx Video Page ABBVideoMITFOCtrl.ocx Video Page ABBVideoMITFrmOverview.ocx Video Page ABBVideoMITMeasStatus.ocx Video Page ABBVideoMITMISReports.ocx Video Page ABBVideoMITContour.ocx ABBVideoMITSensorReports.oc x Video Page

83

84

85

86

87

88

89

Video Page ABBVidRSCurrSetData.ocx Video Page ABBVideoLastRollSet.ocx Video Page ABBVideoMITSPSetup.ocx ABB3DScatterGraph.ocx ABBMENU.OCX ABBOPCMonitorView.ocx Primitive

90

91

92 93 94 95

3BUS208222 R4001

161

96

AR Menu Assist 1.2 Control

ARMenuAssist.ocx

Primitive

162

3BUS208222 R4001

Appendix C. TagLookUp ActiveX Controls


C.1 Introduction
All ActiveX controls follow the TagLookUp guideline on tags XML setting. However, different controls have different usage; some controls require a special XML setting. The following topic provides user guide and tags XML setting for most commonly used ActiveX control.

C.2 ABB Auto Grid


C.2.1 Introduction
The ABB Auto Grid ActiveX control is a general-purpose grid for data display and entry. It supports most basic data types, is XML configurable and allows the user to change some visual aspects of the display at runtime.

C.2.2 Functionality Supported Data Types


The ABB Auto Grid supports the following data types: 1. Integer VB data types vbInteger or vbLong as either scalar values or arrays. 2. Float VB data types vbSingle or vbDouble as either scalar values or arrays. 3. Duration Time VB data type vbLong as either scalar values or arrays that represent a value in milliseconds. The value is displayed and entered using the IOS standard duration time format. 4. Boolean VB data type vbBoolean as either scalar values or arrays. The value can be displayed as either the Boolean value (True or False) or as a check box. 5. String VB data type vbString as either scalar values or arrays.

Visual Appearance
The manner in which data is presented depends on whether the data is a scalar value, an array of values or a mixture of scalars and arrays.

Scalar AttriIDs only


<Control ID="MyGrid"> <Tag ID="Reel Weight"> <Attri ID="Value">Svr02:PM03CD1:DPT.scalar1</Attri> </Tag> <Tag ID="Reel Moisture"> <Attri ID="Ratio">Svr02:PM03CD1:DPT.scalar2</Attri>

3BUS208222 R4001

163

<Attri ID="Value">Svr02:PM03CD1:DPT.scalar3</Attri> </Tag> </Control>

Array AttriIDs only


<Control ID="MyGrid"> <Tag ID="Reel Weight"> <Attri ID="Value">Svr02:PM03CD1:DPT.array1</Attri> </Tag> <Tag ID="Reel Moisture"> <Attri ID="Value">Svr02:PM03CD1:DPT.array2</Attri> <Attri ID="Ratio">Svr02:PM03CD1:DPT.array3</Attri> </Tag> </Control>

Table 3-2 Array value and ratio table


Reel Weight Value 0 1 2 N Array1(0) Array1(1) Array1(2) Array1(n) Value Array2(0) Array2(1) Array2(2) Array2(n) Reel Moisture Ratio Array3(0) Array3(1) Array3(2) Array3(n)

Mixed scalar and array AttriIDs


<Control ID="MyGrid"> <Tag ID="Reel Weight"> <Attri ID="Value">Svr02:PM03CD1:DPT.scalar1</Attri> </Tag> <Tag ID="Reel Moisture"> <Attri ID="Value">Svr02:PM03CD1:DPT.array2</Attri> <Attri ID="Ratio">Svr02:PM03CD1:DPT.array3</Attri> </Tag> </Control>

TagIDs containing scalar only AttriIDs will be presented at the top of the grid.

Table 3-3 Mixed scalar and array AttriIDs


Value Reel Weight Scalar1 Reel Moisture Value 0 1 2 n Array2(0) Array2(1) Array2(2) Array2(n) Ratio Array3(0) Array3(1) Array3(2) Array3(n)

Mixed AttriIDs within a TagID

164

3BUS208222 R4001

<Control ID="MyGrid"> <Tag ID="Reel Weight"> <Attri ID="Value">Svr02:PM03CD1:DPT.scalar1</Attri> </Tag> <Tag ID="Reel Moisture"> <Attri ID="Value">Svr02:PM03CD1:DPT.array2</Attri> <Attri ID="Max">Svr02:PM03CD1:DPT.Maxscalar1</Attri> <Attri ID="Ratio">Svr02:PM03CD1:DPT.array3</Attri> <Attri ID="Max">Svr02:PM03CD1:DPT.Maxscalar2</Attri> <Attri ID="Min">Svr02:PM03CD1:DPT.Minscalar</Attri> </Tag> </Control>

TagIDs containing scalar only AttriIDs will be presented at the top of the grid. When TagIDs contain both scalar and array AttriIDs, the scalar AttriIDs apply to the array AttriID they follow. In this case, if scalar AttriIDs precede the definition of any array AttriID, an error is generated.

Table 3-4 Mixed AttriIDs within a TagID


Value Reel Weight Scalar1 Reel Moisture Value Max Min 0 1 2 n Array2(0) Array2(1) Array2(2) Array2(n) Maxscalar1 Ratio Maxscalar2 Minscalar Array3(0) Array3(1) Array3(2) Array3(n)

User Interface
The ABB Auto Grid offers the user the ability to change values in any cell that has not been set to NotWritable by left clicking the mouse in the data cell. Navigation between cells is by use of the arrow keys or the mouse. Changes are sent when the user leaves the cell or presses the enter key. By default, all values are not writable. The width of columns and the height of rows may be changed to produce a more usable view of the data. Any change is persisted. The ABB Auto Grid provides the user four options in a right click popup menu. Some options may not be available depending on the content of the cell. 6. Show OPC Tag 7. Set Decimal Places 8. Export to Excel 9. Copy Data to Clipboard

3BUS208222 R4001

165

10. OperateIT context extension

Show OPC Tag


When the user right clicks on a cell containing data and selects the Show OPC Tag option, a Windows message box is presented with a list of all OPC server nodes, server names and tags associated with the cell.

Figure 3-18 Windows message with OPC Server and tag information Set Decimal Places
When the user right clicks on a cell containing floating point data and selects the Set Decimal Places option, a Windows message box is presented allowing the user to enter a value for the number of decimal places desired. If the cell is a member of an array, all values in the array will be changed.

Figure 3-19 Set decimal places using Windows pop-up Export to Excel
If Microsoft Excel is installed on the system, the option to Export to Excel will be available. Selecting this option will create an Excel Book formatted to match the grid and containing a snap shot of all the data currently presented.

Copy Data to Clipboard


Selecting the Copy Data to Clipboard will create a tab delimited fill to be generated in the Windows clipboard. This data can be pasted into any text application which is aware of the Windows clipboard.

OperateIT context extension

166

3BUS208222 R4001

If the ABB Auto Grid is running in the ABB OperateIT environment, an objects and aspects menu extension will be appended to the end of the ABB Auto Grid right click menu.

C.2.3 XML Configuration XML Keywords


XML Keywords are special Attri ID strings used to control either the visual appearance or the functionality of a data item. All XML Keywords are case insensitive. The keywords supported by the ABB Auto Grid are:

Table 3-5 XML keywords supported by ABB Auto Grid


Keyword Applies to Tag Type Tag Valu e String Definition

RevID Writable

ControlID Last data tag

Integ er None Boole an True False

None None None

Revision level for the Control ID The previous data tag is writable The previous data tag is writable The previous data tag is NOT writable

NotWritable

Last data tag

None Boole an True False

None None

The previous data tag is NOT writable The previous data tag is NOT writable The previous data tag is writable

Resource

Last data tag Last data tag Last data tag Last data tag Last data tag Last data tag

None

Integ er

None

The ABBErrorTranslation.dll resource value used to translate the last Attri ID string The previous data tag is to be displayed as a checkbox Display a confirmation message box if the user attempts to change the value of the previous data tag The previous data tag is to be displayed as a duration time This data tag is to be used as the index value for all array data tags in the current Control ID A literal delimited string of text messages indexed by the last data

Checkbox Confirm

None None

None None

DurationTime ArrayIndex

None Long () None

None None

TextArray

Delimi ted

3BUS208222 R4001

167

string TextArrayRes ource WriteTo Last data tag Last data tag None Delimi ted string

tag A literal delimited string of numeric values used for language translation of TextArray Write the previous data tag changes to this tag

Sam e as last data tag

Example Configuration
The following example is from a real system configuration for a CD Overview display.
<Control ID="CD01OperGrd01"> <Tag ID="RevID"> <Attri ID="Value"> Svr02:PM03CDHSI:CD01OperGrd01Rev </Attri> </Tag> <Tag ID="Reel Weight"> <Attri ID="Resource">8003</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.sr1men</Attri> <Attri ID="Resource">3443</Attri> <Attri ID="Ratio">Svr02:PM03CD1:DPT.procmp</Attri> <Attri ID="Resource">3126</Attri> <Attri ID="Writable"></Attri> <Attri ID="Confirm"></Attri> <Attri ID="Variability">Svr02:PM03CD1:DPT.sr1var</Attri> <Attri ID="Resource">8006</Attri> <Attri ID="High Value">Svr02:PM03CD1:DPT.sr1hival</Attri> <Attri ID="Resource">8007</Attri> <Attri ID="Low Value">Svr02:PM03CD1:DPT.sr1loval</Attri> <Attri ID="Resource">8008</Attri> </Tag> <Tag ID="Reel Moisture"> <Attri ID="Resource">8004</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.sr2men</Attri> <Attri ID="Ratio">Svr02:PM03CD1:DPT.procent</Attri> <Attri ID="Variability">Svr02:PM03CD1:DPT.sr2var</Attri> <Attri ID="High Value">Svr02:PM03CD1:DPT.sr2hival</Attri> <Attri ID="Low Value">Svr02:PM03CD1:DPT.sr2loval</Attri> </Tag> <Tag ID="Combined Profile"> <Attri ID="Resource">8002</Attri> <Attri ID="Variability">Svr02:PM03CD1:DPT.sg2hrs</Attri> <Attri ID="High Value">Svr02:PM03CD1:DPT.ehrhih</Attri> <Attri ID="Low Value">Svr02:PM03CD1:DPT.ehrlow</Attri> </Tag> <Tag ID="Mapped Profile"> <Attri ID="Resource">8005</Attri> <Attri ID="Variability">Svr02:PM03CD1:DPT.sg2act</Attri> <Attri ID="High Value">Svr02:PM03CD1:DPT.epfhih</Attri> <Attri ID="Low Value">Svr02:PM03CD1:DPT.epflow</Attri> </Tag> <Tag ID="Control Counter"> <Attri ID="Resource">8009</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.ctlcnt</Attri> </Tag> <Tag ID="Setpoint Average"> <Attri ID="Resource">8010</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.actravg</Attri> <Attri ID="Variability">Svr02:PM03CD1:DPT.actrvar</Attri> <Attri ID="High Value">Svr02:PM03CD1:DPT.actrhival</Attri> <Attri ID="Low Value">Svr02:PM03CD1:DPT.actrloval</Attri> </Tag> <Tag ID="Feedback Average"> <Attri ID="Resource">8011</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.fdbkavg</Attri> <Attri ID="Variability">Svr02:PM03CD1:DPT.fdbkvar</Attri> <Attri ID="High Value">Svr02:PM03CD1:DPT.fdbkhival</Attri> <Attri ID="Low Value">Svr02:PM03CD1:DPT.fdbkloval</Attri> </Tag> </Control>

168

3BUS208222 R4001

Table 3-6 Display information


Value Reel Weight Reel Moisture Combined Profile Mapped Profile Control Counter Setpoint Average Feedback Average 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 Ratio 100 0.0 Variability 0.0 0.0 0.0 0.0 High Value 0.0 0.0 0.0 0.0 Low Value 0.0 0.0 0.0 0.0

C.2.4 Dependencies
The ABBAutoCfgGrid.ocx ActiveX control requires the VB6 runtime to be installed on the host computer and the following ABB controls and libraries: 1. ABBOPCDisplayController.dll ABB OPC data quality display utility 2. ABBOPCDirect.exe 3. ABBQCSAppIF.dll 4. ABBQCSMonitor.dll ABB OPC Direct Objects ABB QCS Application Interfaces ABB QCS Monitor Component

5. ABBTagsLookUpInterface.dll ABB Tags Look Up Interfaces 6. ABBUtilities.dll 7. ABBUtilitiesIF.dll 8. ABBGDIUtilities.dll 9. ABBErrorTranslations.dll 10. ARMenuAssist.ocx ABB Utilities ABB Utilities Interfaces ABB GDI API Utility ABB Error Translations

Quality Control Aspect Context Menu Assistance

If the Export to Excel menu function is desired, Microsoft Excel 2000 or later must also be installed.

C.3 ABB Auto Plot


C.3.1 Introduction
The ABB Auto Plot ActiveX control is a multi-purpose data plotting display element. It supports six basic process plot types, is configured by an XML configuration file and allows the user to change many of the visual aspects at runtime.

3BUS208222 R4001

169

C.3.2 Functionality Supported Plot Types and Data Requirements


The ABB Auto Plot supports the following types of plots: 1. Measure Plot Plots an array of measurement data with reference to the average value. Also optionally displays CD actuator mapping data. 2. Target Plot Plots an array of target data with adjustment handles and a dialog for manipulating the target data. 3. Actuator Array Plot Plots an array of CD actuators with loop status and feedback indication and provides a dialog for manipulating auto/manual status and setpoint data. 4. Reflected Plot similar to Measurement Plot, but plots from the center in both directions to provide a reflection. Useful in modeling and response plot applications. 5. Reflected Target Plot similar to Target Plot, but plots from the center in both directions to provide a reflection. Useful in modeling and response plot applications. 6. X-Y Plot Plots two arrays of VB data type vbSingle representing the X and Y values of each data point.

Visual Appearance Measurement Plot

Table 3-7 Measurement Plot inputs


Keyword Profile Status Required Description Array of VB data type vbSingle representing the values of a measurement array Array of VB data type vbSingle representing the values of a CD Actuator mapping stop table. Array of VB data type vbSingle representing the values of a CD Actuator mapping start table A literal string representing the value to be multiplied by the displayed X value of all points. (Defaults to 1.0;

ActStop

Optional

ActStart

Optional

DisplayXSlope

Optional

170

3BUS208222 R4001

Optional) DisplayXOffset Optional A literal string representing the value to be added to the displayed X value of all points. (Optional) A literal string representing the text to be used when displaying the X value (Optional) A literal string representing the text to be used when displaying the Y value (Optional) Sets the current Tag Ids initial plot style PointToPoint OR Rectangular OR Scatter If present, causes the measurement plot type to plot relative to the absolute high and low range values rather than using the high and low range values as offsets from the average.

DisplayXName

Optional

DisplayYName

Optional

LineStyle

Optional

AbsoluteY

Optional

Note: The displayed X value = DisplayXSlope * X + DisplayXOffset


XML:
<Tag ID="Moisture 1"> <Attri ID="Resource">8002</Attri> <Attri ID="Profile">Svr02:PM03CD1:SPT.epfpix</Attri> <Attri ID="ActStart">Svr02:PM03CD1:SPT.MapStartDataBox</Attri> <Attri ID="ActStop">Svr02:PM03CD1:SPT.MapStopDataBox</Attri> <Attri ID=" DisplayXOffset">32.75</Attri> <Attri ID=" DisplayXSlope">11.5</Attri> <Attri ID=" AbsoluteY"></Attri> Popup displays </Tag>

Snapshot Hide Tag ID

data under cursor Time Stamp

Leftmost data point displayed Average plot value Deviation from average DIALOG:

Rightmost data point displayed Selected actuator mapping indication

3BUS208222 R4001

171

The Measurement Plot does not currently support a dialog. Target Plot
Keyword Target Status Required Description Array of VB data type vbSingle representing the values of a target array Array of VB data type vbBoolean indicating which values in the target array are fixed Array of VB data type vbSingle for inputting user changes to target values Array of VB data type vbBoolean for inputting user changes to fixed array Array of VB data type vbSingle representing the values of a target array

Fixed

Required

NewTarget

Required

NewFixed

Required

Target

Required

Associated XML:
<Tag ID="Target 1"> <Attri ID="Resource">8065</Attri> <Attri ID="Target">Svr02:PM03CD1:SPT.TargEditVal1</Attri> <Attri ID="NewTarget">Svr02:PM03CD1:SPT.TargEditVal1</Attri> <Attri ID="Fixed">Svr02:PM03CD1:SPT.TargEditFix1</Attri> <Attri ID="NewFixed">Svr02:PM03CD1:SPT.TargEditFix1</Attri> </Tag>

Absolute values displayed Open dialog

DIALOG: The target dialog may be opened by selecting the Open Dialog command button or doubleclicking in the plot area. By default, the dialog opens listing only the selected target points, however the user may choose to view all target points by selecting the Show all Points option.

172

3BUS208222 R4001

The dialog allows the user to change individual target values by making entries under the New Value column or groups of values by using the Point Value input box. The value of the Fixed attribute can be changed using the check boxes under the Fixed column.

Figure 3-20 Target dialog pop-up


Actuator Array Plot

Table 3-8 Actuator Array Plot inputs


Keyword Setpoint Required Status Description Array of VB data type vbSingle representing the values of an actuator setpoint array Array of VB data type vbSingle for inputting user changes to an actuator setpoint array Array of VB data type vbSingle representing the values of an actuator feedback array Array of VB data type vbBoolean representing the values of an actuator auto/manual array Array of VB data type vbBoolean for inputting user changes to an actuator auto/manual array Array of VB data type vbBoolean representing the values of an actuator movable/not-movable array Array of VB data type vbBoolean representing the values of an actuator bad/not-

NewSetpoint

Required

Feedback

Required

Manual

Required

NewManual

Required

NotMove

Required

Bad

Required

3BUS208222 R4001

173

bad array BeginAct EndAct ActuatorStatus Optional Optional Optional Scalar of vbLong indicating the first actuator on control Scalar of vbLong indicating the last actuator on control Array of VB data type vbLong representing the index into the ActuatorStatusText of the message indicating the status of an actuator. A literal delimited string of text messages indexed by ActuatorStatus A literal delimited string of numeric values used for language translation of ActuatorStatusText Array of VB data type vbLong representing the index into the FeedbackStatusText of the message indicating the status of actuator feedback A literal delimited string of text messages indexed by FeedbackStatus A literal delimited string of numeric values used for language translation of FeedbackStatusText

ActuatorStatusText

Optional

ActuatorStatusResource

Optional

FeedbackStatus

Optional

FeedbackStatusText

Optional

FeedbackStatusResource

Optional

Associated XML:
<Tag ID="Weight Profiler"> <Attri ID="Resource">8001</Attri> <Attri ID="Setpoint">Svr02:PM03CD1:SPT.setpnt</Attri> <Attri ID="Feedback">Svr02:PM03CD1:SPT.measmt</Attri> <Attri ID="Manual">Svr02:PM03CD1:SPT.actmanstat</Attri> <Attri ID="NewManual">Svr02:PM03CD1:SPT.stsend</Attri> <Attri ID="NotMove">Svr02:PM03CD1:SPT.actnotmove</Attri> <Attri ID="Bad">Svr02:PM03CD1:SPT.actbadstat</Attri> <Attri ID="NewSetpoint">Svr02:PM03CD1:SPT.spsend</Attri> <Attri ID="BeginAct">Svr02:PM03CD1:DPT.begact</Attri> <Attri ID="EndAct">Svr02:PM03CD1:DPT.endact</Attri> </Tag>

Absolute values displayed Open dialog

174

3BUS208222 R4001

DIALOG: The actuator dialog may be opened by selecting the Open Dialog command button or double-clicking in the plot area. By default, the dialog opens listing only the selected actuators; however the user may choose to view all actuators by selecting the Show all Actuators option. The dialog allows the user to change individual actuator setpoint values by making entries under the New SP column or all selected actuator setpoint values by using the Setpoint input box. The value of the auto/manual attribute can be changed using the check boxes under the Man column or all selected actuators can be changed by using the Mode buttons.

Figure 3-21 Actuator profile modes and setpoints pop-up


XML with optional actuator and feedback status:
<Tag ID="SmartWeight Profiler"> <Attri ID="Setpoint">ActSvr01:PMAct01:Setpoint</Attri> <Attri ID="NewSetpoint">ActSvr01:PMAct01:NewSetpoint</Attri> <Attri ID="Feedback">ActSvr01:PMAct01:Feedback</Attri> <Attri ID="Manual">ActSvr01:PMAct01:Manual</Attri> <Attri ID="NewManual">ActSvr01:PMAct01:NewManual</Attri> <Attri ID="NotMove">ActSvr01:PMAct01:NotMove</Attri> <Attri ID="Bad">ActSvr01:PMAct01:Bad</Attri> <Attri ID="ActuatorStatus">ActSvr01:PMAct01:ActuatorStatus</Attri> <Attri ID="ActuatorStatusText">|OK|Not In Auto|Open Circuit|Short Circuit|Removed From Service|In Limited Service|</Attri> <Attri ID="ActuatorStatusResource">|8500|8501|8502|8503|8504|8505|</Attri> <Attri ID="FeedbackStatus">ActSvr01:PMAct01:FeedbackStatus</Attri> <Attri ID="FeedbackStatusText">|OK|Invalid|Upper Hard Limit Reached|Lower Hard Limit Reached|Upper Soft Limit Reached|Lower Soft Limit Reached|First Order Bend Limit Reached|Second Order Bend Limit Reached|</Attri> <AttriID="FeedbackStatusResource">|8510|8511|8512|8513|8514|8515|8516|8517|</Attri > </Tag>

When the optional Actuator and Feedback status text messages are present, the indexed messages are added to the popup data display and the Actuator dialog. Reflected Plot
3BUS208222 R4001

175

Table 3-9 Reflected Plot input


Keyword Mprofile Required Status Description Array of VB data type vbSingle representing the values of a reflected profile array

Associated XML:
<Tag ID="Mprofile 1"> <Attri ID="Resource">6361</Attri> <Attri ID="MProfile">Svr02:PM03CD1:SPT.rmodel</Attri> </Tag>

Figure 3-22 Reflected Plot example


DIALOG: The Reflected Plot does not currently support a dialog. Reflected Target Plot

Table 3-10 Reflected Target Plot input


Keyword Mtarget Required Status Description Array of VB data type vbSingle representing the values of a reflected target array Array of VB data type vbSingle for inputting user changes to target values

NewMTarget

Required

Associated XML:
<Tag ID="MTarget 1"> <Attri ID="Resource">6361</Attri> <Attri ID=" MTarget ">Svr02:PM03CD1:SPT.rmodel</Attri> <Attri ID="NewMTarget">Svr02:PM03CD1:SPT.pmodel</Attri> </Tag>

176

3BUS208222 R4001

Figure 3-23 Reflected Target Plot example


DIALOG: The reflected target dialog may be opened by selecting the Open Dialog command button or double-clicking in the plot area. By default, the dialog opens listing only the selected target points, however the user may choose to view all target points by selecting the Show all Points option. The dialog allows the user to change individual target values by making entries under the New Value column or groups of values by using the Point Value input box. . The value of the Fixed attribute can be changed using the check boxes under the Fixed column.

Figure 3-24 Reflected Target Plot pop-up for individual points


X-Y Plot

Table 3-11 X-Y Plot inputs


Keyword PlotX Required Status Description Array of VB data type vbSingle representing the X values of an X-Y plot Array of VB data type vbSingle representing the Y values of an X-Y plot A literal string representing the value to be multiplied by the displayed X value of all points. (Defaults to 1.0; Optional)

PlotY

Required

DisplayXSlope

Optional

3BUS208222 R4001

177

DisplayXOffset

Optional

A literal string representing the value to be added to the displayed X value of all points. (Optional) A literal string representing the text to be used when displaying the X value (Optional) A literal string representing the text to be used when displaying the Y value (Optional) Sets the current Tag Ids initial plot style PointToPoint OR Rectangular OR Scatter If this keyword is present, the X-Y Plot will automatically scale both the X and Y axis to keep all data points visible.

DisplayXName

Optional

DisplayYName

Optional

LineStyle

Optional

AutoRange

Optional

Note: The displayed X value = XYDisplayXSlope * X + XYDisplayXOffset Associated XML:


<Tag ID="Random 1"> <Attri ID="Resource">6361</Attri> <Attri ID=" PlotX">Svr02:PM03CD1:SPT.plotx</Attri> <Attri ID=" PlotY">Svr02:PM03CD1:SPT.ploty</Attri> <Attri ID=" DisplayXOffset">32.75</Attri> <Attri ID=" DisplayXSlope">11.5</Attri> <Attri ID=" AutoRange"></Attri> </Tag>

Figure 3-25 X-Y plot example


DIALOG: The X-Y Plot does not currently support a dialog.

User Interface
In addition to the individual plot dialogs, the user has many more methods for controlling the appearance of the plots and retrieving data associated with each plot. Right Click Menu

178

3BUS208222 R4001

Right clicking on the name of any plot will produce a message box displaying the source of the data used for the plot.

Figure 3-26 User Interface OPC Tag information message box


By right clicking in any plot area, the user is presented with a popup menu offering the options shown here.

Figure 3-27 Right click in plot area to get pop-up menu options
1. Select All will set all actuators and target points to be selected. 2. Default View, Engineer View and Operator View provide a method for saving three different arrangements of the elements within the control. Any view may be changed during viewing, but only changes to the Engineer and Operator view will be persisted. 3. Export to Excel will produce an Excel workbook containing a tabulation of all data currently being displayed provided Excel has been installed on the system. 4. Copy Data to Clipboard provides an alternative method for capturing the data currently being displayed. The data is written to the Windows clipboard in a tabdelimited form suitable for pasting into any application that supports the clipboard. 5. Display Options opens the Display Options dialog discussed later.

3BUS208222 R4001

179

6. Show Tool Tips provides a method for enabling or disabling the data popup that appears when the cursor touches a plot. 7. Help opens the compiled HTML help file for the control. (Currently not supported) If the ABB Auto Plot control is running in the ABB OperateIT environment, an objects and aspects menu extension will be appended to the end of the ABB Auto Plot menu.

Display Options Dialog


The Display Options Dialog offers the user a variety of visual settings that can be changed at runtime to provide a more usable data presentation. The following screen captures illustrate the options available for each type of plot.

Figure 3-28 Measurement plot display options

Figure 3-29 Target Plot Display Options

180

3BUS208222 R4001

Figure 3-30 Actuator Array Plot Display Options

Figure 3-31 Reflected Plot Display Options

Figure 3-32 Reflected Target Plot Display Options

3BUS208222 R4001

181

Figure 3-33 X-Y Plot Display Options Rulers


Measurement plots, target plots and actuator plots can be configured to include a ruler in the plot area. The ruler tick increment and display type ticks only or ticks with numbers, are configured from the display options dialog for each plot.

Ticks with numbers Tick increment = 20 Zooming and Scrolling

Ticks without numbers Tick increment = 20

The plots displayed can be expanded horizontally to provide more detail by pressing the left mouse button in the plot area and dragging left or right to enclose an area to be expanded. The scroll bar beneath the plot represents the relative position and size of the expanded view and can be used to scroll the view window left or right.

click

drag

release

182

3BUS208222 R4001

Unzoom button

Stacking and Merging Plots


Plots are by default displayed stacked vertically with each plot occupying a unique drawing space. The user can merge plots into a single drawing space to allow closer comparison of data.

Figure 3-34 Vertically stacked plots

3BUS208222 R4001

183

Figure 3-35 Merging Plots Rearranging Plots


Plots can be rearranged vertically by pressing the left mouse button on the name of a plot and dragging it up or down to a new location.

click

drag

release

C.3.3 XML Configuration XML Keywords


XML Keywords are special Attri ID strings used to control either the visual appearance or the functionality of a data item. XML Keywords are case insensitive. The keywords supported by the ABB Auto Plot are:

Figure 3-36 Keywords for all plot types


Keyword RevID NewWindow Merged Applies to ControlID Current Tag ID Current Tag ID Tag Integ er None None String None None None Definition Revision level for the Control ID Create a new plot window with the current Tag ID Make the plots in the current window merged. This keyword should follow

184

3BUS208222 R4001

the NewWindow if present. Reverse Resource Current Tag ID Last data tag None None None Integer Draw the plot associated with the current Tag ID reversed The ABBErrorTranslation.dll resource value used to translate the last Tag ID string

Keywords for measurement type plots Keyword Applies to Tag String Definition

Profile ActStart ActStop DisplayXSlop e DisplayXOffse t DisplayXNam e DisplayYNam e LineStyle

Current tag Current tag Current tag Current Tag ID Current Tag ID Current Tag ID Current Tag ID Current Tag ID

Singl e() Singl e() Singl e() None

None None None Single

The current tag is a measurement type plot The current tag is an actuator mapping start array The current tag is an actuator mapping stop array A literal string representing the value to be multiplied by the displayed X value of all points. (Defaults to 1.0; Optional) A literal string representing the value to be added to the displayed X value of all points. (Optional) A literal string representing the text to be used when displaying the X value (Optional) A literal string representing the text to be used when displaying the Y value (Optional) Sets the current Tag Ids initial plot style

None

Single

None

String

None

String

None

PointToPoi nt OR Rectangul ar OR Scatter

AbsoluteY

Current Tag ID

None

None

If present, causes the measurement plot type to plot relative to the absolute high and low range values rather than using the high and low range values as

3BUS208222 R4001

185

offsets from the average. Keywords for mirrored CD modeling type plots Mprofile Current tag Single() None The current tag is a mirrored model type plot

Keywords for Target type plots Target NewTarget Fixed NewFixed Current tag Current tag Current tag Current tag Single() Single() Boolean () Boolean () None The current tag is a target type plot None None None The current tag is for writing new target values The current tag is a target fixed point array The current tag is for writing new target fixed points

Keywords for X-Y type plots PlotX PlotY DisplayXSlop e DisplayXOffse t DisplayXNam e DisplayYNam e LineStyle Current tag Current tag Current Tag ID Current Tag ID Current Tag ID Current Tag ID Current Tag ID Single() Single() None None None Single The current tag is the X values for the plot The current tag is the Y values for the plot A literal string representing the value to be multiplied by the displayed X value of all points. (Defaults to 1.0; Optional) A literal string representing the value to be added to the displayed X value of all points. (Optional) A literal string representing the text to be used when displaying the X value (Optional) A literal string representing the text to be used when displaying the Y value (Optional) Sets the current Tag Ids initial plot style

None

Single

None

String

None

String

None

PointToPoi nt OR Rectangul ar OR Scatter

AutoRange

Current Tag ID

None

None

If present, this keyword will cause the X-Y Plot to automatically scale both the

186

3BUS208222 R4001

X and Y axis to keep all data points visible. Keywords for mirrored CD target type plots MTarget NewMTarget MFixed NewMFixed Current tag Current tag Current tag Current tag Single() Single() Boolean () Boolean () None None None None The current tag is a mirrored target type plot The current tag is for writing new mirrored target values The current tag is a mirrored target fixed point array The current tag is for writing new mirrored target fixed points

Keywords for CD actuator type plots Setpoint NewSetpoint Feedback Manual NewManual NotMove Bad BeginAct EndAct ActuatorStatu s ActuatorStatu sText ActuatorStatu sResource FeedbackStat us Current tag Current tag Current tag Current tag Current tag Current tag Current tag Current tag Current tag Current tag Actuator Status Actuator Status Current tag Single() Single() Single() Boolean () Boolean () Boolean () Boolean () Integer Integer Long() None None None None None None None None None None The current tag is an actuator setpoint array The current tag is for writing new actuator setpoint values The current tag is a measurement feedback array The current tag is the actuator in manual status array The current tag is for writing new actuator manual values The current tag is the actuator not movable status array The current tag is the actuator bad status array The current tag is the first actuator in the active control range The current tag is the last actuator in the active control range The current tag is the index into the ActuatorStatusText of the message indicating the status of an actuator A literal delimited string of text messages indexed by ActuatorStatus A literal delimited string of numeric values used for language translation of ActuatorStatusText The current tag is the index into the FeedbackStatusText of the message indicating the status of an actuator

None None

Delimited string Delimited string None

Long()

3BUS208222 R4001

187

feedback FeedbackStat usText FeedbackStat usResource Feedbac kStatus Feedbac kStatus None None Delimited string Delimited string A literal delimited string of text messages indexed by FeedbackStatus A literal delimited string of numeric values used for language translation of FeedbackStatusText

Example XML Configuration


The following example is from a real system configuration for a CD Overview display.
<Control ID="CD01OperPlt01"> <Tag ID="RevID"> <Attri ID="Value"> Svr02:PM03CDHSI:CD01OperPlt01Rev </Attri> </Tag> <!-- Setpoint information --> <Tag ID="SmartWeight Profiler"> <Attri ID="Resource">8001</Attri> <Attri ID="Setpoint">Svr02:PM03CD1:SPT.setpnt</Attri> <Attri ID="Feedback">Svr02:PM03CD1:SPT.measmt</Attri> <Attri ID="Manual">Svr02:PM03CD1:SPT.actmanstat</Attri> <Attri ID="NewManual">Svr02:PM03CD1:SPT.stsend</Attri> <Attri ID="NotMove">Svr02:PM03CD1:SPT.actnotmove</Attri> <Attri ID="Bad">Svr02:PM03CD1:SPT.actbadstat</Attri> <Attri ID="NewSetpoint">Svr02:PM03CD1:SPT.spsend</Attri> <Attri ID="BeginAct">Svr02:PM03CD1:DPT.begact</Attri> <Attri ID="EndAct">Svr02:PM03CD1:DPT.endact</Attri> </Tag> <!-- High resolution profiles --> <Tag ID="Combined"> <Attri ID="Resource">8002</Attri> <Attri ID="NewWindow"></Attri> <Attri ID="Profile">Svr02:PM03CD1:SPT.epfpix</Attri> <Attri ID="ActStart">Svr02:PM03CD1:SPT.MapStartDataBox</Attri> <Attri ID="ActStop">Svr02:PM03CD1:SPT.MapStopDataBox</Attri> </Tag> <Tag ID="Reel Weight"> <Attri ID="Resource">8003</Attri> <Attri ID="Profile">Svr02:PM03CD1:SPT.sr1xxx</Attri> <Attri ID="ActStart">Svr02:PM03CD1:SPT.MapStartDataBox</Attri> <Attri ID="ActStop">Svr02:PM03CD1:SPT.MapStopDataBox</Attri> </Tag> <Tag ID="Reel Moisture"> <Attri ID="Resource">8004</Attri> <Attri ID="Profile">Svr02:PM03CD1:SPT.sr2xxx</Attri> <Attri ID="ActStart">Svr02:PM03CD1:SPT.MapStartDataBox</Attri> <Attri ID="ActStop">Svr02:PM03CD1:SPT.MapStopDataBox</Attri> </Tag> <!-- Mapped resolution profiles --> <Tag ID="Mapped Profile"> <Attri ID="Resource">8005</Attri> <Attri ID="NewWindow"></Attri> <Attri ID="Profile">Svr02:PM03CD1:SPT.epfadj</Attri> </Tag> </Control>

188

3BUS208222 R4001

Figure 3-37 ABB Auto Plot example C.3.4 Dependencies


The ABBAutoCfgGrid.ocx ActiveX control requires the VB6 runtime to be installed on the host computer and the following ABB controls and libraries: 1. ABBOPCDisplayController.dll ABB OPC data quality display utility 2. ABBOPCDirect.exe 3. ABBQCSAppIF.dll 4. ABBQCSMonitor.dll ABB OPC Direct Objects ABB QCS Application Interfaces ABB QCS Monitor Component

5. ABBTagsLookUpInterface.dll ABB Tags Look Up Interfaces 6. ABBUtilities.dll 7. ABBUtilitiesIF.dll 8. ABBGDIUtilities.dll 9. ABBErrorTranslations.dll 10. ARMenuAssist.ocx Assistance 11. ABBMultiPlotCtl.ocx 12. ABBMultiPlotIF.dll ABB Utilities ABB Utilities Interfaces ABB GDI API Utility ABB Error Translations Quality Control Aspect Context Menu

ABB Multi Plot ABB Multi Plot Interfaces

3BUS208222 R4001

189

If the Export to Excel menu function is desired, Microsoft Excel 2000 or later must also be installed.

C.4 ABB Command Button


C.4.1 Introduction
The ABB Command Button ActiveX control uses ABB Command Button as registered name, and ABBComdButtons.ocx as ActiveX control name. This ActiveX control is XML configurable and allow user to change some visual aspects of the display at run time.

C.4.2 Functionality Basic XML Structure


<Tag ID="Map Orientation"> <Attri ID="Resource">8020</Attri> <Attri ID="Request">Svr02:PM03CD1:DPT.actdir</Attri> <Attri ID="Writable"></Attri> <Attri ID="State">Svr02:PM03CD1:DPT.actdir</Attri> <Attri ID="Confirm"></Attri> <Attri ID="ConfirmRes">1111</Attri> </Tag>

Properties C.4.3 DisplayType


The DisplayType property has two value can select: 1 ndtVerical or 2 ndtHorizontal

Figure 3-38 Display Type

Figure 3-39 DisplayType=1 ndtVerical

Figure 3-40 DisplayType=2 ndtHorizontal

190

3BUS208222 R4001

C.4.4 NumberOfButtons
This property will determine the number of command buttons that show on the control in design time. Once it got connection with server, the XML file on the HSI server will drive the number of buttons that displayed on the control. The number of command buttons is determined by the number of the Tag ID in the XML, except Tag ID equal to RevID and Title. For example, in the Example of XML File section, there are 6 Tag ID: RevID, Map Orientation, AutoMap, Constant Map, Apply Width, and title, the ActiveX control will display four command button (the reserved RevID and title are not counted).

Figure 3-41 Buttons resulting from XML file implementation


When the number of the command button increase or decrease, the whole control size of ABB Command Button will not change, but the size of inside each command button will be changed.

XML Key Word C.4.5 RevID


When the value of this tag changes, the ABB Command ActiveX control will delete the current OPC group, reconnect to the server, and rebuild this command button ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappCmd01Rev</Attri> </Tag>

C.4.6 HelpID
This keyword specified a string ID that used by ABBHelpUtility.dll to retrieve the associated help file name and contextID from an INI file. If HelpFileName property is empty or is null, the content of HelpID in XML file will be used, otherwise the values of HelpFileName and HelpContextID properties will be used to open a context sensitive help file. If HelpFileName property is null and a HelpID entry does not exist in XML file, the Help option in right click popup menu will be disabled.
<!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag>

3BUS208222 R4001

191

C.4.7 Resource
If there is number after Resource, the corresponding string from ABBErrorTranslation.dll resource file will be displayed on the command button. If there is text string after Resource, this text string will be displayed on the command button. If there has no Resource, the text string ID (e.g. Map Orientation) in Tag ID will be displayed on the command button.

C.4.8 Request
User can write value zero or none zero (False or True) to this OPC tag when user click the command button. The Request OPC tag is a default Attri ID for each Tag ID in ABB Command Button. If there is no Request, the current button will be grayed out.

C.4.9 State
This OPC tag will display the activity state of this command button 1 is on and 0 is off. On state (true or none zero value) the button will look as if pressed and have green background color.

Figure 3-42 Button state On


Off state (false or zero) the button will look as if not pressed and have same background color as the display.

Figure 3-43 Button state Off C.4.10 Confirm, ConfirmRes


If there is Confirm in XML file, then a confirmation message box will show up when user click the command button. If there is ConfirmRes in XML file, the text string or the corresponding resource string will be used on this message box. Otherwise, the reserved resource string will be displayed. The title of message box will be same as command button caption.

192

3BUS208222 R4001

Figure 3-44 Using reserved resource string C.4.11 Writable, NotWritable


The default command button is writeable even without writable keyword. Writable: 0 or False -- the command button will be disabled and not allow user to click the button.

Figure 3-45 Button not writeable


1 (or none zero) or True or nothing -- the command button will look normal and allowed to click.

Figure 3-46 Button writeable


The NotWritable is opposite of the Writable.

Right Click Menu


The ABB Command Button provides a right click popup menu. By default, there has only one option: Show OPC Tag. If the ABB Command Button is running in the OperateIT environment, the aspect menu of current object will be appended to the end of its right click menu. 1. Show OPC Tag 2. OperateIT Context Menu

C.4.12 Show OPC Tag


If user selects Show OPC Tag, a Window message box will show up with a list of all server nodes, OPC server names, and tags associated with that button.

3BUS208222 R4001

193

Figure 3-47 Show OPC tag gives server names and tags associated with button
The message box title will be: the current command button caption + OPC Tag Information

194

3BUS208222 R4001

C.4.13 XML Keywords


Keyword (Not Case Sensitive ) RevID HelpID Request State Confirm ConfirmR es ControlID ControlID Last data tag Last data tag Last data tag Last data tag None string text string number string none Integer String Revision level for the Control ID Context Help ID Written tag Display tag Display a confirmation message box if the user attempts to change the value The string that will appear on the confirmation message box. Using this text string. Using corresponding string from ABBErrorTranslation.dll resource. Using default string from ABBErrorTranslation.dll resource Applies to Tag Type Tag Value Definition

Writable

Last data tag

None Boolea n non zero (True) 0 (False)

The previous data tag is writable The previous data tag is writable The previous data tag is NOT writable

NotWrita ble

Last data tag

None Boolea n non zero(True) 0 (False)

The previous data tag is NOT writable The previous data tag is NOT writable The previous data tag is writable

title

ControlID

String

Indicate title.

3BUS208222 R4001

195

Text string Number string Resource String Text string Number string None

Display this text string for the title Display corresponding string from ABBErrorTranslation.dll resource. caption for command button Display this text string on the command button Display corresponding string from ABBErrorTranslation.dll resource. Using the keyword of this "Tag ID".

C.4.14 Example of XML File


<Control ID="CD01MappCmd01"> <Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappCmd01Rev</Attri> </Tag> <!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag> <Tag ID="Map Orientation"> <Attri ID="request">Svr02:PM03CD1:DPT.actdir</Attri> <Attri ID="Writable"></Attri> <Attri ID="state">Svr02:PM03CD1:DPT.actdir</Attri> </Tag> <Tag ID="AutoMap"> <Attri ID="request">Svr02:PM03CD1:DPT.autmap</Attri> <Attri ID="notWritable">Svr02:PM03CD1:DPT.usemap</Attri> <Attri ID="state">Svr02:PM03CD1:DPT.autmap</Attri> </Tag> <Tag ID="Constant Map"> <Attri ID="request">Svr02:PM03CD1:DPT.UseMap</Attri> <Attri ID="notWritable">Svr02:PM03CD1:DPT.autmap</Attri> <Attri ID="state">Svr02:PM03CD1:DPT.UseMap</Attri> </Tag> <Tag ID="Apply Width"> <Attri ID="request">Svr02:PM03CD1:DPT.acspset</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="title"> <Attri ID="Value">Mapping Options</Attri> </Tag> </Control>

C.5 ABB Indicator Control


C.5.1 Introduction
The ABB Indicator Control ActiveX control uses ABB Indicator Control as registered name, and ABBIndicator.ocx as ActiveX control file name. The ABB Indicator Control is a message window which displays conditions (string messages) that affect operations of controls. It uses Tag Lookup Service to retrieve tags information from the server. If there are no existing conditions, a predefined message (defined on tags XML files on server PC) will show to indicate there are no messages. Each condition messages foreground and background color can be configurable in tag XML file.

196

3BUS208222 R4001

C.5.2 Functionality

Figure 3-48 CD Overview Indicator messages Basic XML Structure


<Control ID="IndictorName"> <Tag ID="RevID"> <Attri ID="Value">Svr01:PM03CDHSI:CD01OperInd01Rev</Attri> </Tag> <!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag> <Tag ID="Control Suspended"> <Attri ID="Resource">8013</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.waitflg</Attri> <Attri ID="IndBackColor">2</Attri> <Attri ID="ReverseFlag"></Attri> </Tag> <Tag ID="NoInd"> <Attri ID="Resource">8019</Attri> </Tag> <Tag ID="title"> <Attri ID="Value">CD Overview Indicators</Attri> </Tag> </Control>

C.5.3 XML Key Word

C.5.4 RevID
When the value of this tag changes, the ABB Indicator control will delete the current OPC group, and recreate OPC group according to the current data from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr01:PM03CDHSI:CD01OperInd01Rev</Attri> </Tag>

C.5.5 HelpID
This keyword specified a string ID that used by ABBHelpUtility.dll to retrieve the associated help file name and contextID from an INI file. If HelpFileName property is empty or is null, the content of HelpID in XML file will be used, otherwise the values of HelpFileName and HelpContextID properties will be used to open a context sensitive help file. If HelpFileName property is null and a HelpID entry does not exist in XML file, the Help option in right click popup menu will be disabled.
<!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag>

3BUS208222 R4001

197

C.5.6 Resource
If the content of Resource is a number, the corresponding string will be retrieved from ABBErrorTranslation.dll, and displayed on the indicator control if there is a condition. If there is no Resource keyword, the text string of the Tag ID (Control Suspended) will be used.

C.5.7 Value
The content of Value is the actual tags information for each condition.

C.5.8 IndBackColor, IndForeColor


Those two keywords are optional, they are defined as background and foreground color for each message. If those keywords are omitted in XML file, the Indictor control will use the color setting from ReadOnlyBackColor and ReadOnlyForeColor properties.
<Attri ID="IndBackColor">2</Attri> <Attri ID="IndForeColor">0</Attri>

The color scheme is defined below: 0 ---- Black 1 ---- Red 2 ---- Green 3 ---- Yellow 4 ---- Blue 5 ---- Magenta 6 ---- Cyan 7 ---- White 8 ---- vbButtonFace (light gray) 9 ---- vbInactiveTitleBar 10 ---- vbButtonText (black) 11 ---- vbWindowBackground (white)

C.5.9 ReverseFlag
This keyword tells the condition will be reversed.
<Tag ID="Control Suspended"> <Attri ID="Value">Svr02:PM03CD1:DPT.waitflg</Attri> <Attri ID="ReverseFlag"></Attri> </Tag>

198

3BUS208222 R4001

In this example, if waitflg = False, the condition message will be showed on the Indicator control, otherwise, there is no condition message.

Right Click Menu


The Indicator control provides a right click popup menu. By default, there are two options: Show OPC Tag, and Help. If the Indicator control is running in the OperateIT environment, the aspect menu of current object will be appended to the end of its right click menu.

C.5.10 Show OPC Tag


If there is no condition message, the Show OPC Tag option will be disabled (grayed out), it will enabled whenever there is a condition message displayed. If user selects Show OPC Tag, a Window message box will show up with a list of all server nodes, OPC server names, and tags associated with that condition message.

C.5.11 Example of XML File


<Control ID="CD01OperInd01"> <Tag ID="RevID"> <Attri ID="Value">Svr01:PM03CDHSI:CD01OperInd01Rev</Attri> </Tag> <!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag> <Tag ID="Control Suspended"> <Attri ID="Resource">8013</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.waitflg</Attri> <Attri ID="IndBackColor">2</Attri> <Attri ID="ReverseFlag"></Attri> </Tag> <Tag ID="Control Not Available"> <Attri ID="Resource">8014</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.inopflg</Attri> <Attri ID="IndBackColor">3</Attri> </Tag> <Tag ID="Control Aborted"> <Attri ID="Resource">8015</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.abortflg</Attri> <Attri ID="IndBackColor">5</Attri> </Tag> <Tag ID="Actuator in Local"> <Attri ID="Resource">7397</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.localflg</Attri> </Tag> <Tag ID="Excessive CD Variation"> <Attri ID="Resource">8016</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.exvcdv</Attri> </Tag> <Tag ID="Excessive MD Variation"> <Attri ID="Resource">8017</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.exvmdv</Attri> </Tag> <Tag ID="Sheet Break"> <Attri ID="Resource">6310</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.sheetb</Attri> </Tag> <Tag ID="Bump Test In Progress"> <Attri ID="Resource">8018</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.BumpInProgress</Attri> </Tag> <Tag ID="Home Edge Offset"> <Attri ID="Value">Svr02:PM03CD1:DPT.EdgCtrlBeginOffsEnab</Attri> </Tag> <Tag ID="Far Edge Offset"> <Attri ID="Value">Svr02:PM03CD1:DPT.EdgCtrlEndOffsEnab</Attri> </Tag> <Tag ID="NoInd"> <Attri ID="Resource">8019</Attri> </Tag>

3BUS208222 R4001

199

<Tag ID="title"> <Attri ID="Value">CD Color Indicate</Attri> </Tag> </Control>

C.6 ABB CD Mapping Control


C.6.1 Introduction
The ABB CD Mapping ActiveX Control ActiveX uses ABB CD Mapping ActiveX Control as registered name, and ABBCDMapping.ocx as ActiveX control file name. This ActiveX control is special designed for CD Mapping display. It is XML configurable.

C.6.2 Functionality Figure 3-49 CD Mapping ActiveX control

C.6.3 RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

200

3BUS208222 R4001

C.6.4 HelpID
This keyword specified a string ID that used by ABBHelpUtility.dll to retrieve the associated help file name and contextID from an INI file. If HelpFileName property is empty or is null, the content of HelpID in XML file will be used, otherwise the values of HelpFileName and HelpContextID properties will be used to open a context sensitive help file. If HelpFileName property is null and a HelpID entry does not exist in XML file, the Help option in right click popup menu will be disabled.
<!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag>

C.6.5 Resource
If there is number after Resource, the corresponding string from ABBErrorTranslation.dll resource file will be displayed on the tool tip, labels, and command buttons. If there is text string after Resource, this text string will be displayed on the tool tip, labels, and command buttons. If there has no Resource, the text string ID (e.g. Map Orientation) in Tag ID will be used.

C.6.6 Confirm, ConfirmRes


Those two XML keywords are used for Read Home Position and Read Far Position command button. If there is Confirm in XML file, then a confirmation message box will show up when user click the command button. If there is ConfirmRes in XML file, the text string or the corresponding resource string will be used on this message box. Otherwise, the reserved resource string will be displayed. The title of message box will be same as the command button caption.

Figure 3-50 Using reserved resource string C.6.7 Writable, NotWritable


The default command button is writeable even without writable keyword. 3. Writable:

3BUS208222 R4001

201

0 or False -- the text box or command button will be disabled and not allow user to edit or click the button. 1 (or none zero) or True or nothing -- the text box or command button will be allowed to edit or click. The NotWritable is opposite of the Writable.

Right Click Menu


The ABB CD Mapping ActiveX Control provides a right click popup menu. By default, there has only one option: Show OPC Tag. If the ABB CD Mapping ActiveX Control is running in the OperateIT environment, the aspect menu of current object will be appended to the end of its right click menu. 1. Show OPC Tag 2. OperateIT Context Menu

C.6.8 Show OPC Tag


If user selects Show OPC Tag, a Window message box will show up with a list of all server nodes, OPC server names, and tags associated with that button or text box.

Figure 3-51 Show OPC tag gives server and tag names
The message box title will be: the current button caption or text boxs tool tip + OPC Tag Information

C.6.9 XML Keywords


Keyw ord (Not Case Sensitive ) RevID HelpID Value ControlID ControlID Last data Integer string Revision level for the Control ID Context Help ID The actual tag path, OPC server name, Applies to Tag Type Tag Value Definition

202

3BUS208222 R4001

tag confirm ConfirmR es Last data tag Last data tag None string text string number string none

QCSApplicationNode name Display a confirmation message box if the user attempts to change the value on command button The string that will appear on the confirmation message box. Using this text string. Using corresponding string from ABBErrorTranslation.dll resource. Using default string from ABBErrorTranslation.dll resource

Writable

Last data tag

None Boolea n non zero (True) 0 (False)

The previous data tag is writable The previous data tag is writable The previous data tag is NOT writable

NotWrita ble

Last data tag

None Boolea n non zero(True) 0 (False)

The previous data tag is NOT writable The previous data tag is NOT writable The previous data tag is writable

title

ControlID

String Text string Number string

Indicate title. Display this text string for the title Display corresponding string from ABBErrorTranslation.dll resource. Caption for command button or for label. Text string Number string None Display this text string on the command button or label Display corresponding string from ABBErrorTranslation.dll resource. Using the keyword of this "Tag ID".

Resource

String

C.6.10 Example of XML File


<Control ID="CD01MappPix01"> <Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag> <!Context Help ID --> <Tag ID="HelpID"> <Attri ID="Value">Help Reference Name</Attri> </Tag>

3BUS208222 R4001

203

<Tag ID="Home Reference"> <Attri ID="Resource">8033</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.hrefer</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Far Reference"> <Attri ID="Resource">8034</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.frefer</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Home Pisser"> <Attri ID="Resource">8035</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.hompis</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Far Pisser"> <Attri ID="Resource">8036</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.farpis</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Pisser Conversion"> <Attri ID="Resource">6459</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.psrcon</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Current Frame Home"> <Attri ID="Resource">3545</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.MeshInCustUnit</Attri> <Attri ID="Writable">0</Attri> </Tag> <Tag ID="Current Frame Far"> <Attri ID="Resource">3546</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.MesfInCustUnit</Attri> <Attri ID="Writable">0</Attri> </Tag> <Tag ID="Current Frame Position"> <Attri ID="Resource">6457</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.ScanPosition</Attri> <Attri ID="Writable">0</Attri> </Tag> <Tag ID="Frame Home Offset"> <Attri ID="Resource">6456</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.homoff</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Frame Far Offset"> <Attri ID="Resource">6458</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.faroff</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Read Home Position"> <Attri ID="Resource">6451</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.acchom</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="Read far Position"> <Attri ID="Resource">6452</Attri> <Attri ID="Value">Svr02:PM03CD1:DPT.accfar</Attri> <Attri ID="Writable"></Attri> </Tag> <Tag ID="title"> <Attri ID="Value">CD Mapping Test</Attri> </Tag> </Control>

C.7 ABB Enhanced Auto Grid Control


C.7.1 Introduction
The Enhanced AutoGrid (EAG) is a grid style control providing the following capability: Uses Tag Lookup Service (TLS) to retrieve information from the server. The EAG parses this information to determine what to display. Specials can be done by editing the Tags XML file. Rescales its internal dimensions when the grids size changes. Rescaling can be set to Vertical and Horizontal, Vertical only, Horizontal only, or none.

204

3BUS208222 R4001

Shows the OPC Server tag names of data being displayed. Supports display of individual array elements. Supports display of data from different OPC Servers on different nodes within the same grid. Supports colors. Provides data quality checking. Tags received with BAD or UNCERTAIN quality are visually marked on a cell by cell basis. User can specify blank spacing between title and top of grid. Overlaying this area with other controls allows developers to make an integrated control using grid and non-grid display elements. Raises various click events to wrapper controls. Optionally allows changing number of decimal places to display on a cell by cell basis. Optionally allows rows to be dragged to other positions

C.7.2 Tags XML Basic Structure


<Control ID="Section Name"> <Tag ID="RevID">Svr01:APP1:RevID-tag</Tag> <Tag ID="Main"> <Attri ID="Grid Attribute">1</Attri> </Tag> <Tag ID="TemplateName"> Note: Templates are optional Tag ID sections. </Tag> </Control>

The italics parts above have the following meanings: Section Name is an ASCII string identifying a section within the XML file. Setting the EAGs QCSControlID tells the EAG which section to process. Within a Control ID section are Tag ID sections. RevID and Main are required, Template Tag ID sections are optional if templates are desired. The RevID section defines an OPC tag. Changing this tags value signals the AutoGrid to re-read the XML and discard any previously cached information it received from the Tag Lookup service. The Main section contains the list of grid attributes that will be processed to render the grid. Template sections may be referenced from the Main section. When referenced, the lines in the template are placed at the reference point in the Main section, and any string substitution specified is performed. Svr01:APP1:RevID-Tag is used by the TLS to inform the control its underlying data has changed in the XML file. The tag should be an integer value that can be monitored. When the

3BUS208222 R4001

205

tag changes value, the EAG destroys any OPCDirect groups created and requests TLS to resend the section again. If the RevID is followed with an Attribute ID of NotPub, then the TLS will not publish the tag. Otherwise, TLS will publish the tag at startup. Grid Attribute is one particular attribute of the grid. A grid display is defined by having many Grid attribute lines. TemplateName is a unique name identifying this template section. More then one template section may exist. The grid attributes found in a template section can be referenced out of the Main section as many times as desired. See the Template key-word section below for more information about templates.

Attribute Key Words


Some of the following key words have row and column numbers associated with them. Integers may be used along with the following special names. 3. row = current row 4. +row 5. col 6. +col
HelpID
<Attri ID="HelpID">n</Attri>

= current row plus 1 = current column = current column plus 1

Where HelpIDName is ASCII string passed to Help-File-Utility. The utility uses this name as a key to search the ABBHelpFileUtility.ini file.
FixedRows
<Attri ID="FixedRows">n</Attri>

Where n is number of fixed rows in grid


FixedCols
<Attri ID="FixedCols">n</Attri>

Where n is number of fixed cols in grid


ColWidthPct
<Attri ID="ColWidthPct">col,pct</Attri>

Where col is the column number 0-n or col or +col pct is the percentage of entire grid this column uses
ResizeModeHorz
<Attri ID="ResizeModeHorz">mode</Attri>

Where mode is Standard, Auto, or None

206

3BUS208222 R4001

Standard causes the cells to rescale horizontally as the grid is resized horizontally. This is the default mode, and is used by most controls. Auto is same as Standard except limits can be set for max and min cell width None means the cells are not resized horizontally when grid is resized.
ResizeModeVert
<Attri ID="ResizeModeVert">mode</Attri>

Where mode is Standard, Auto, or None Standard causes the cells to rescale vertically as the grid is resized vertically. This is the default mode, and is used by most controls. Auto is same as Standard except limits can be set for max and min cell height. None means the cells are not resized vertically when grid is resized.

3BUS208222 R4001

207

DefineColorScheme

A Color Scheme is a set of colors, where each color is associated with a value. OPC tags controlling the color of a cell are associated with a Color Scheme. The value of the data then determines the color based on how the Color Scheme was defined.
<Attri ID="DefineColorScheme">ColorSchemeName,Operator,Value,Color</Attri>

Where ColorSchemeName is ASCII string identifying a Color Scheme. Operator can be =, >, or < characters Value is the data value which triggers this color, based on the operator. Color is one of the following: R,G,B (RGB values separated by commas) or vbBlack vbRed vbGreen vbYellow vbBlue vbMagenta vbCyan vbWhite vbWindowBackground vbWindowText vbHighlight vbHighlightText vbButtonFace ReadOnlyForeColor ReadOnlyBackColor ReadWriteForeColor ReadWriteBackColor

208

3BUS208222 R4001

CellForeColor

This keyword has two formats. One specifies the color using RGB numbers, and the other specifies the color by mapping an OPC tags value to a previously defined Color Scheme.

Specifying RGB values:


<Attri ID="CellForeColor">R,G,B,row,col</Attri>

Where row is the row number 0-n or row or +row col is the column number 0-n or col or +col Specifying an OPC Tag:
<Attri ID="CellForeColor">Svr01:APP1:tag,row,col,ColorScheme</Attri>

Where Tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with whats defined in HSIServer.xml. If the tag is an array, tag(n) can be used to reference the nth element of the array, where n is > 0. row is the row number 0-n or row or +row col is the column number 0-n or col or +col ColorSchemeName is ASCII string identifying a Color Scheme previously defined with the DefineColorSheme key word.
CellBackColor

This keyword has two formats. One specifies the color using RGB numbers, and the other specifies the color by mapping an OPC tags value to a previously defined Color Scheme.

Specifying RGB values:


<Attri ID="CellBackColor">R,G,B,row,col</Attri>

Where row is the row number 0-n or row or +row col is the column number 0-n or col or +col
Specifying an OPC Tag:
<Attri ID="CellBackColor">Svr01:APP1:tag,row,col,ColorScheme</Attri>

Where Tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with whats defined in HSIServer.xml. If the tag is an array, tag(n) can be used to reference the nth element of the array, where n is > 0.

3BUS208222 R4001

209

row is the row number 0-n or row or +row col is the column number 0-n or col or +col ColorSchemeName is ASCII string identifying a Color Scheme previously defined with the DefineColorSheme key word.
Title
<Attri ID="Title">Title</Attri>

Where Title is ASCII string used for the grid title. This argument is assumed to be an ASCII constant or a string-resource-number and string delimited with a | character.
DeineCell
<Attri ID="DefineCell">Svr01:APP1:tag,row,col,writable,type</Attri>

Where For AsciiConstant cell types, tag is the ASCII constant to be displayed in cell. For all other cell types, Tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with whats defined in HSIServer.xml. If the tag is an array, tag (n) can be used to reference the nth element of the array, where n is > 0. The following are all valid examples: PM1.AC450B.SYSDATA.SystemCounter Svr01:APP1:AC450B.SYSDATA.SystemCounter Svr01:APP1:SQCS.SP1.CLT.Current.UVIncluded.PriCustCoord. Measurement(0) row is the row number 0-n or row or +row col is the column number 0-n or col or +col writable indicates if operator entry should be allowed on tag. T if operator can write to tag, F if not. Type is one of the following: AsciiConstant (The tag argument is assumed to be the ASCII constant or a string-resourcenumber and string delimited with a | character) CheckBox Button String Float Integer Date Time

210

3BUS208222 R4001

MapToCellWritable
AlignCell
<Attri ID="AlignCell">row,col,Alignment</Attri>

Where row is the row number 0-n or row or +row col is the column number 0-n or col or +col Alignment is one of the following: Left Right Center
DefineAlarmScheme

An Alarm Scheme is a set of values, where each value represents an alarm condition. The OPC tag driving the alarm indicator is setup using the DefineCellAlarm key word. If the tags value matches any of the values in the scheme, then the alarm condition is true, and the red alarm indicator is displayed. Otherwise, no alarm is displayed.
<Attri ID="DefineAlarmScheme">AlarmSchemeName,Value</Attri>

Where AlarmSchemeName is ASCII string identifying an Alarm Scheme. Value is an alarm condition value. Boolean values are ASCII True and False
DefineCellAlarm
<Attri ID="DefineCellAlarm"> Svr01:APP1:tag,row,col,AlarmSchemeName </Attri>

Where Tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with what is defined in HSIServer.xml. If the tag is an array, tag (n) can be used to reference the nth element of the array, where n is > 0. row is the row number 0-n or row or +row col is the column number 0-n or col or +col AlarmSchemeName is ASCII string identifying an Alarm Scheme previously defined with the DefineAlarmScheme key word
DefineWarningScheme

A Warning Scheme is a set of values, where each value represents a warning condition. The OPC tag driving the warning indicator is setup using the DefineCellWarning key word. If the tags value matches any of the values in the scheme, then the warning condition is true, and the yellow warning indicator is displayed. Otherwise, no warning is displayed.
3BUS208222 R4001

211

<Attri ID="DefineWarningScheme">WarningSchemeName,Value</Attri>

Where WarningSchemeName is ASCII string identifying a Warning Scheme. Value is a warning condition value. Boolean values are ASCII True and False
DefineCellWarning
<Attri ID="DefineCellWarning"> Svr01:APP1:tag,row,col,WarningSchemeName </Attri>

Where Tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with what is defined in HSIServer.xml. If the tag is an array, tag (n) can be used to reference the nth element of the array, where n is > 0. row is the row number 0-n or row or +row col is the column number 0-n or col or +col WarningSchemeName is ASCII string identifying a Warning Scheme previously defined with the DefineWarningScheme key word.
DefineASCIIScheme

An ASCII Scheme is a set of values, where each value represents an ASCII string. The OPC tag driving the ASCII string is setup using the DefineCellASCII key word. If the tags value matches any of the values in the scheme, then the Corresponding ASCII string is displayed. Otherwise, no string is displayed.
<Attri ID="DefineASCIIScheme">ASCIISchemeName,Value</Attri>

Where ASCIISchemeName is ASCII string identifying an ASCII Scheme. Value is a numeric value.
DefineCellASCII
<Attri ID="DefineCellASCII"> Svr01:APP1:tag,row,col, ASCIISchemeName </Attri>

Where Tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with what is defined in HSIServer.xml. If the tag is an array, tag (n) can be used to reference the nth element of the array, where n is > 0.

212

3BUS208222 R4001

row is the row number 0-n or row or +row col is the column number 0-n or col or +col ASCIISchemeName is ASCII string identifying an ASCII Scheme previously defined with the DefineASCIIScheme key word
Template

This grid attribute line will be replaced by the lines found in the specified template section. String substitution will be performed on keys found in the template lines so each reference to the template may be customized a little.
<Attri ID="Template">TemplateName, DelimitedKeys,DelimitedStrings, Delimeter</Attri>

Where TemplateName identifies a Tag ID section containing grid attribute lines. DelimitedKeys is a delimited list of strings that will be replaced with strings found in the DelimitedStrings argument. DelimitedStrings is a delimited list of string that will replace the DelimitedKeys strings. Delimiter is the delimiter character used in the DelimitedKeys and DelimitedStrings arguments. Example: In this example, a grid with 1 column and 2 rows would appear. Measurements for frame 1 BW and frame 2 MO would be displayed. Note, the row and col key-words are always initialized to zero.
<Control ID="MeasDisplay"> <Tag ID="RevID">Svr01:APP1:RevIDs.MeasDisplay</Tag> <Tag ID="Main"> <Attri ID="Template"> MeasTemplate,[SP];[SN],SP1;WT,';'</Attri> <Attri ID="Template"> MeasTemplate,[SP];[SN],SP2;MO,';'</Attri> </Tag> <Tag ID="MeasTemplate"> <Attri ID="DefineCell">Svr01:APP1:[SP].[SN].Meas,+row,col,F,Float</Attr i> </Tag> </Control>

3BUS208222 R4001

213

DefineRowContextMenu

On displays designed to run with Operate IT, right click navigation may be desired. This key-word is used to display a popup menu containing a list of aspects found under the specified OIT object.
<Attri ID="DefineRowContextMenu">row,[Structure]{Name}ObjName</Attri>

Where row is the row number 0-n or row or +row Structure is the OIT structure the object is under (e.g. Functional Structure) ObjName is the OIT object name containing the aspects that should appear in the popup menu. Note - the {Name} should be typed in just as shown, including the curly braces. Example
<Attri ID="DefineRowContextMenu">row,[Functional Structure]{Name}Scanner 1</Attri>

3.14.2 Event KeyWords


These keywords cause an event raised by the Enhanced Auto Grid. These events are used by a Wrapper control to manipulate the Auto Grid in a special way. For example, these keywords can be used to return information back to a Wrapper control so it knows where a certain piece of data is in the grid. The Wrapper control may want to do something special when that cell is clicked.
CellInfoEvent

Causes a CellInfo event raised containing the user defined cell ID and the cell position of the last DefineCell keyword.
<Attri ID="CellInfoEvent">ID</Attri>

Where ID is an ASCII string identifying the cell Event Raised CellInfo(InfoID As String, row As Long, col As Long)
DataChangeEvent

Causes a DataChange event raised containing OPC tags data. The OPC tag specified is subscribed to by the grid, but the grid does nothing more then pass the data via the DataChange event to any Wrapper control.
<Attri ID="DefineCell">Svr01:APP1:tag,row,col,writable,type</Attri>

214

3BUS208222 R4001

<Attri ID="DataChangeEvent"> Svr01:APP1:tag, tagHandle</Attri>

Where tag is an OPC Server tag. The Tag Lookup Service replaces Svr01: and APP1: with whats defined in HSIServer.xml. The following are all valid examples: PM1.AC450B.SYSDATA.SystemCounter Svr01:APP1:AC450B.SYSDATA.SystemCounter Event Raised DataChange(Count As Long, Hdls() As Long, Vals() As Variant, quals() As Long)

3BUS208222 R4001

215

C.8 ABB Tag Lookup Selector Control


C.8.1 Introduction
The Tag Lookup Selector Control is used to select among different ControlIDs for display by an Auto Grid or Auto Plot control. The selector is a popup menu, defined in the Tag Lookup xml file. Here different menu selections are associated with different ControlIDs. When a selection is made, the control returns information about the selection including the ControlID.

C.8.2 Tags XML Basic Structure


<Control ID="SelectorName"> <Tag ID="RevID">Svr01:APP1:RevID-Tag</Tag>

<Tag ID="Main"> <Attri ID="MenuTitle">Title</Attri> <Attri ID="MenuItem">LEVEL,MenuItemLabel</Attri> <Attri ID="Keys">DelimitedKeys</Attri> <Attri ID="Subs">DelimitedSubs</Attri> <Attri ID="Template">+LEVEL,NameOfTemplate</Attri>

<Attri ID="MenuItem">LEVEL,MenuItemLabel</Attri> <Attri ID="ControlID">ControlID</Attri> </Tag>

<Tag ID="NameOfTemplate"> <Attri ID="MenuItem">LEVEL,MenuItemLabel</Attri> <Attri ID="Keys">DelimitedKeys </Attri> <Attri ID="Subs">DelimitedSubs </Attri> </Tag> </Control>

The underlined parts above have the following meanings: SelectorName is an ASCII string identifying a section within the XML file. Setting the SELECTORs QCSControlID tells the SELECTOR which section to process. Within a Control ID section are Tag ID sections. RevID and Main are required, Template Tag ID sections are optional if templates are used.

216

3BUS208222 R4001

The RevID section defines an OPC tag. Changing this tags value signals the Selector to re-read the XML and discards any previously cached information it received from the Tag Lookup service. The Main section contains the list of selector attributes used to define the popup menu. Template sections may be referenced from the Main section. When referenced, the lines in the template are placed at the reference point in the Main section. Svr01:APP1:RevID-Tag is used by the TLS to inform the control its underlying data has changed in the XML file. The tag should be an integer value that can be monitored. When the tag changes value, the SELECTOR destroys any OPCDirect groups created and requests TLS to resend the section again. If the RevID is followed with an Attribute ID of NotPub, then the TLS will not publish the tag. Otherwise, TLS will publish the tag at startup. Grid Attribute is one particular attribute of the grid. A grid display is defined by having many Grid attribute lines. TemplateName is a unique name identifying this template section. More then one template section may exist. A template section can be referenced out of the Main section as many times as desired. See the Template key-word section below for more information about templates.

Attribute Key Words


MenuTitle
<Attri ID="MenuTitle">Title</Attri>

Where: Title is ASCII string used for the grid title. This argument is assumed to be an ASCII constant or a string-resource-number and string delimited with a | character. MenuItem
<Attri ID="MenuItem">LEVEL,MenuItemLabel</Attri>

Where: LEVEL is a key word representing the menus current hierarchy level. A +LEVEL keyword represents the menus next hierarchy level.

3BUS208222 R4001

217

Figure 3-52 Heirarchy Levels

If more then two levels are desired, Templating must be used. Keys
<Attri ID="Keys">DelimitedKeys</Attri>

Where: DelimitedKeys is a list of substitution keys delimited with semi colons (;). When a final selection is made, keys from each Level are concatenated and returned. The Keys and Subs are passed to the AutoGrid or AutoPlot through their TemplateKeys and TemplateSubs properties. When the AutoGrid and AutoPlot controls receive Attri IDs from the Tag Lookup service, they will replace each key with the associated sub. If Keys are defined, then there also must be the same number of Subs defined. Subs
<Attri ID="Subs">DelimitedSubs</Attri>

Where: DelimitedSubs is a list of substitution strings delimited with semi colons (;). When a final selection is made, subs from each Level are concatenated and returned. The Keys and Subs are passed to the AutoGrid or AutoPlot through their TemplateKeys and TemplateSubs properties. When the AutoGrid and AutoPlot controls receive Attri IDs from the Tag Lookup service, they will replace each key with the associated sub. If Subs are defined, then there also must be the same number of Keys defined. Template This attribute line will be replaced by the lines found in the specified template section.
<Attri ID="Template">+LEVEL,TemplateName</Attri>

Where: TemplateName identifies a Tag ID section containing more Selector attributes.

C.8.3 Example
This example creates the following popup menu. When a selection is made, a ControlID and associated substitution strings are returned by the control. Frame 1
Top Color UV Included Primary

218

3BUS208222 R4001

Secondary UVExcluded Primary Secondary Bottom Color UV Included Primary Secondary UVExcluded Primary Secondary

Frame 2
Top Color UV Included Primary Secondary UVExcluded Primary Secondary

XML
<Control ID="ColorMeasSelector"> <Tag ID="RevID">Svr01:APP1:SQCS.REVIDS. ColorMeasSelector </Tag>

<Tag ID="Main"> <Attri ID="MenuTitle">6689|Color Measurement Overview</Attri> <Attri ID="MenuItem">LEVEL, 14301|Frame 1</Attri> <Attri ID="Keys">{SP}</Attri> <Attri ID="Subs">SP1</Attri> <Attri ID="Template">+LEVEL,TopAndBotSensorTemplate</Attri>

<Attri ID="MenuItem">LEVEL, 14302|Frame 2</Attri> <Attri ID="Keys">{SP}</Attri> <Attri ID="Subs">SP2</Attri>

3BUS208222 R4001

219

<Attri ID="Template">+LEVEL,TopSensorTemplate</Attri> </Tag>

<Tag ID="TopSensorTemplate"> <Attri ID="MenuItem">LEVEL, 2201|Top Color</Attri> <Attri ID="Keys">{CLTCLB};{TB}</Attri> <Attri ID="Subs">CLT;Top</Attri> <Attri ID="Template">+LEVEL, UVTemplate </Attri> </Tag>

<Tag ID="BotSensorTemplate"> <Attri ID="MenuItem">LEVEL, 2202|Bottom Color</Attri> <Attri ID="Keys">{CLTCLB};{TB}</Attri> <Attri ID="Subs">CLB;Bottom</Attri> <Attri ID="Template">+LEVEL, UVTemplate </Attri> </Tag>

<Tag ID="TopAndBotSensorTemplate"> <Attri ID="Template">LEVEL,TopSensorTemplate</Attri> <Attri ID="Template">LEVEL,BotSensorTemplate</Attri> </Tag>

<Tag ID="UVTemplate"> <Attri ID="MenuItem">LEVEL,2249|UV Included</Attri> <Attri ID="Keys">{UV}</Attri> <Attri ID="Subs">UVIncluded</Attri> <Attri ID="Template">+LEVEL,PriSecTemplate</Attri> <Attri ID="MenuItem">LEVEL, 2250|UV Excluded</Attri> <Attri ID="Keys">{UV}</Attri> <Attri ID="Subs">UVExcluded</Attri> <Attri ID="Template">+LEVEL,PriSecTemplate</Attri> </Tag>

<Tag ID="PriSecTemplate"> <Attri ID="MenuItem">LEVEL,666|Primary</Attri>

220

3BUS208222 R4001

<Attri ID="Keys">{PS}</Attri> <Attri ID="Subs">Pri</Attri> <Attri ID="ControlID">ColorMeasurementOverview</Attri> <Attri ID="MenuItem">LEVEL,667|Secondary</Attri> <Attri ID="Keys">{PS}</Attri> <Attri ID="Subs">Sec</Attri> <Attri ID="ControlID">ColorMeasurementOverview</Attri> </Tag> </Control>

C.9 ABB AC800 Auto Grade Change Button


C.9.1 Introduction
The ABB AC800 Auto Grade Change Button is a registered name, and ABBOPCTagAgcButton.ocx is ActiveX control file name. This ActiveX control is special designed for MD auto grade change. It is XML configurable.

C.9.2 Functionality Figure 3-53 Automatic Grade Change button

C.9.3 XML Key Word RevID


When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

Request
This tag is displayed in item 1. It displays the activity/requested state of the Auto Grade change 1 is requested and active (green) and 0 is not requested.

RequestOK
3BUS208222 R4001

221

This tag is displayed in item 1. It displays the state of the Auto Grade change interlock 1 is not interlocked and 0 is interlocked (yellow).

Ramp
This tag is displayed in item 1. It displays the progress of the Auto grade change.

C.9.4 Example Of XML File


<Control ID="PM1MD01_AG01_BUTTON"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_AG01_Button_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="BUTT"> <Attri ID="Request">AC800OPC:MD_APP1:AG01_Request_g</Attri> <Attri ID="RequestOK">AC800OPC:MD_APP1:AG01_RequestOK_g</Attri> <Attri ID="Ramp">AC800OPC:MD_APP1:AG01_Ramp_g</Attri> </Tag> </Control>

C.10 ABB AC800 Auto Grade Change Current Info


C.10.1 Introduction
The ABB AC800 Auto Grade Change Current Info is a registered name, and ABBOPCTagAgcCurrent.ocx is ActiveX control file name. This ActiveX control is special designed for MD auto grade change. It is XML configurable.

C.10.2 Functionality

Figure 3-54 Automatic Grade Change Current Information Example C.10.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.

222

3BUS208222 R4001

<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

Actual
This tag is displayed in item 1

OffSpec
This tag is displayed in item 2

Calculated
This tag is displayed in item 3

Ramp
This tag is displayed in item 4

SetpointACK
This tag is displayed in item 5

AlarmACK
This tag is displayed in item 6

Coordinated
This tag is displayed in item 7

Turnup
This tag is displayed in item 8

C.10.4 Example Of XML File


<Control ID="PM1MD01_AG01_CURRENT"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_AG01_Current_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="CURR"> <Attri ID="Actual">AC800OPC:MD_APP1:AG01_ActiveTime_g</Attri> <Attri ID="OffSpec">AC800OPC:MD_APP1:AG01_OffSpecTime_g</Attri> <Attri ID="Calculated">AC800OPC:MD_APP1:AG01_CalcTime_g</Attri> <Attri ID="Ramp">AC800OPC:MD_APP1:AG01_Ramp_g</Attri> <Attri ID="SetpointACK">AC800OPC:MD_APP1:AG01_SetpLimitAck_g</Attri> <Attri ID="AlarmACK">AC800OPC:MD_APP1:AG01_AbortAlarmAck_g</Attri> <Attri ID="Coordinated">AC800OPC:MD_APP1:AG01_Coordinate_g</Attri> <Attri ID="Turnup">AC800OPC:MD_APP1:AG01_ReelTurnupTime_g</Attri> <Attri ID="AGCActive">AC800OPC:MD_APP1:AG01_Active_g</Attri> </Tag> </Control>

3BUS208222 R4001

223

C.11 ABB AC800 Auto Grade Change Previous


C.11.1 Introduction
The ABB AC800 Auto Grade Change Previous is a registered name, and ABBOPCTagAgcPrevious.ocx is ActiveX control file name. This ActiveX control is special designed for MD auto grade change. It is XML configurable.

C.11.2 Functionality

Figure 3-55 Automatic Grade Change Previous Pop-up Example C.11.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

Actual
This tag is displayed in item 1

OffSpec
This tag is displayed in item 2

Calculated
This tag is displayed in item 3

C.11.4 Example Of XML File


<Control ID="PM1MD01_AG01_PREVIOUS"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_AG01_Previous_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="PREV"> <Attri ID="Actual">AC800OPC:MD_APP1:AG01_OldActiveTime_g</Attri> <Attri ID="OffSpec">AC800OPC:MD_APP1:AG01_OldOffSpecTime_g</Attri>

224

3BUS208222 R4001

<Attri ID="Calculated">AC800OPC:MD_APP1:AG01_OldCalcTime_g</Attri> </Tag> </Control>

C.12 ABB OPC Tag AGC Level 1 Control


C.12.1 Introduction
The ABB OPC Tag AGC Level 1 Control is a registered name, and ABBOPCTagAGCL1.ocx is ActiveX control file name. This ActiveX control is special designed for MD auto grade change level 1 control. It is XML configurable.

C.12.2 Functionality

Figure 3-56 Automatic Grade Change Level 1 Control Pop-up Example C.12.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

PidAo
This tag is used to call up a faceplate from item 5

PidDo
This tag is used to call up a faceplate from item 5

GenCon
This tag is used to call up a faceplate from item 5
3BUS208222 R4001

225

Measurement
This tag is displayed in item 3

Manual
This tag is used to display Manual text in item 5

External1
This tag is used to display External text in item 5

OperSP
This tag is entered in item 4

OperSPChange
This tag is determines if item 4 is writable

DispSP
This tag is displayed in item 4

Suspend
This tag if true displays a yellow triangle in item 6.

ExcessiveError
This tag if true displays a red triangle in item 6.

ExtSP
This tag is not used

Track
This tag is used display Balance text in item 5

Name
This tag is displayed in item 2

HighSetpoint
This tag is used to limit entries in item 4

LowSetpoint 226
3BUS208222 R4001

This tag is used to limit entries in item 4

AutoReq
This tag is used to request auto in item 5

ManReq
This tag is used to request manual in item 5

Ext1Req
This tag is used to request external in item 5

Required
This tag is displayed in item 1

Bias
This tag is displayed in item 7

New_Setpoint
This tag is displayed in item 8

New_Setpoint_Req
This tag is entered in item 8

New_Setpoint_Writable
This tag determines if item 8 is writable

Option
This tag is used to determine which faceplate is called up for item 5. 1 = PidAo, 2=PidDo, 3= GenCon, 4 = GenCon

C.12.4 Example Of XML File


<Control ID="PM1MD01_AG01_LEVEL1GRID"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_AG01_Level1Grid_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="ST01"> <Attri ID="Manual">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Manual</Attri> <Attri ID="External1">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtMode</Attri> <Attri ID="OperSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_OperSP</Attri> <Attri ID="OperSPChange">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_SPOperChange</Attri> <Attri ID="Suspend">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Suspend</Attri> <Attri ID="ExcessiveError">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.ExcessiveErrorHold</Attri>

3BUS208222 R4001

227

<Attri ID="ExtSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtSP</Attri> <Attri ID="Track">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Track</Attri> <Attri ID="ManReq">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ManReq</Attri> <Attri ID="AutoReq">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_AutoReq</Attri> <Attri ID="Ext1Req">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtReq</Attri> <Attri ID="Name">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PIDDescription</Attri> <Attri ID="HighSetpoint">AC800OPC:MD_APP1:ST01_g.HighSetpoint</Attri> <Attri ID="LowSetpoint">AC800OPC:MD_APP1:ST01_g.LowSetpoint</Attri> <Attri ID="Option">AC800OPC:MD_APP1:FIC101ST_Config_g.Option</Attri> <Attri ID="Measurement">AC800OPC:MD_APP1:ST01_g.Measurement</Attri> <Attri ID="PidAo">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="PidDo">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="GenCon">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="Required">AC800OPC:MD_APP1:AG01_ST01_Require_g</Attri> <Attri ID="Bias">AC800OPC:MD_APP1:AG01_ST01_bias_g</Attri> <Attri ID="New_Setpoint">AC800OPC:MD_APP1:AG01_ST01_NewSetp_g</Attri> <Attri ID="New_Setpoint_Req">AC800OPC:MD_APP1:AG01_ST01_NewSetp_g</Attri> </Tag> <Tag ID="MS01"> <Attri ID="Manual">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Manual</Attri> <Attri ID="External1">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtMode</Attri> <Attri ID="OperSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_OperSP</Attri> <Attri ID="DispSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_OperSP</Attri> <Attri ID="OperSPChange">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_SPOperChange</Attri> <Attri ID="Suspend">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Suspend</Attri> <Attri ID="ExcessiveError">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.ExcessiveErrorHold</Attri> <Attri ID="ExtSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtSP</Attri> <Attri ID="Track">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Track</Attri> <Attri ID="ManReq">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ManReq</Attri> <Attri ID="AutoReq">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_AutoReq</Attri> <Attri ID="Ext1Req">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtReq</Attri> <Attri ID="Name">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PIDDescription</Attri> <Attri ID="HighSetpoint">AC800OPC:MD_APP1:MS01_g.HighSetpoint</Attri> <Attri ID="LowSetpoint">AC800OPC:MD_APP1:MS01_g.LowSetpoint</Attri> <Attri ID="Option">AC800OPC:MD_APP1:SIC101MS_Config_g.Option</Attri> <Attri ID="Measurement">AC800OPC:MD_APP1:MS01_g.Measurement</Attri> <Attri ID="PidAo">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="PidDo">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="GenCon">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="Required">AC800OPC:MD_APP1:AG01_MS01_Require_g</Attri> <Attri ID="New_Setpoint">AC800OPC:MD_APP1:GD01_SP01_Target_g</Attri> <Attri ID="New_Setpoint_Req">AC800OPC:MD_APP1:GD01_SP01_Target_g</Attri> <Attri ID="New_Setpoint_Writable">False</Attri> </Tag> </Control>

C.13 ABB OPC Tag AGC Level2 Control


C.13.1 Introduction
The ABB OPC Tag AGC Level2 Control is a registered name, and ABBOPCTagAGCL2.ocx is ActiveX control file name. This ActiveX control is special designed for MD auto grade change level 2 control. It is XML configurable.

228

3BUS208222 R4001

C.13.2 Functionality

Figure 3-57 Automatic Grade Change Level 2 Control Pop-up Example C.13.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

Desc
This tag is displayed in item 3.

MV
This tag is displayed in item 4. If bit 4 is true in Suspend_Bits tag, item 4 will be yellow background

Setpoint
This tag is displayed in item 5.

Setpoint_Writable
This tag determines if item 5 is writable.

Setpoint_High
This tag is used to limit entries in item 5 and item 8

3BUS208222 R4001

229

Setpoint_Low
This tag is used to limit entries in item 5 and item 8

New_Setpoint
This tag is displayed in item 8.

Setpoint_Req
This tag is entered in item 5.

New_Setpoint_Req
This tag is entered in item 8.

New_Setpoint_Writable
This tag determines if item 8 is writable.

Mode_Auto
This tag is used to display Auto text and color in item 6.

Mode_Man
This tag is used to display Manual text and color in item 6.

Mode_E1
This tag is used to display E1 text and color in item 6.

Mode_E2
This tag is used to display E2 text and color in item 6.

Mode_Bal
This tag is used to display Balance text and color in item 6.

Mode_AutoReq
This tag is used to request Auto in item 6.

Mode_ManReq
This tag is used to request Manual in item 6.

Alarm_Suspend 230
3BUS208222 R4001

This tag if true displays a yellow triangle in item 7. If item 7 is selected with right click, a popup is shown with detailed information on the suspend reason

Suspend_Bits
This tag is used to show yellow background in item 4.

Alarm_Abort
This tag if true displays a red triangle in item 7. If item 7 is selected with right click, a popup is shown with detailed information on the abort reason

Mode_fb
This tag is used to call up an aspect for item 7.

Required
This tag is displayed in item 1.

Error
This tag is displayed in item 2. True = green, false = yellow

StatusFill
This tag is displayed in item 2 as a filled condition.

Ramp
This tag is displayed in item 9. If RampNumeric tag is false, the display is a pseudo bar graph, if true, then the display is numeric

RampNumeric
If RampNumeric tag is false, the display for Ramp is a pseudo bar graph, if true, then the display is numeric

Object
This tag is used to call up an aspect faceplate for item 6.

C.13.4 Example Of XML File


<Control ID="PM1MD01_AG01_LEVEL2GRID"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_AG01_Level2Grid_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="DW01"> <Attri ID="Desc">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_Name</Attri> <Attri ID="MV">AC800OPC:MD_APP1:DW01_OperMeas_g.Measurement</Attri> <Attri ID="Setpoint">AC800OPC:MD_APP1:DW01_Target_g</Attri>

3BUS208222 R4001

231

<Attri ID="Setpoint_Writable">AC800OPC:MD_APP1:DW01_Mode_g.OperChange</Attri> <Attri ID="Setpoint_High">AC800OPC:MD_APP1:DW01_Config_g.SetpMax</Attri> <Attri ID="Setpoint_Low">AC800OPC:MD_APP1:DW01_Config_g.SetpMin</Attri> <Attri ID="Setpoint_Req">AC800OPC:MD_APP1:DW01_Target_g</Attri> <Attri ID="New_Setpoint">AC800OPC:MD_APP1:GD01_DW01_CondWeightTarget_g</Attri> <Attri ID="New_Setpoint_Req">AC800OPC:MD_APP1:GD01_DW01_CondWeightTarget_g</Attri> <Attri ID="New_Setpoint_Writable">True</Attri> <Attri ID="Mode_Auto">AC800OPC:MD_APP1:DW01_Mode_g.Auto</Attri> <Attri ID="Mode_Man">AC800OPC:MD_APP1:DW01_Mode_g.Manual</Attri> <Attri ID="Mode_E1">AC800OPC:MD_APP1:DW01_Mode_g.External1</Attri> <Attri ID="Mode_E2">AC800OPC:MD_APP1:DW01_Mode_g.External2</Attri> <Attri ID="Mode_Bal">AC800OPC:MD_APP1:DW01_Mode_g.Bal</Attri> <Attri ID="Mode_AutoReq">AC800OPC:MD_APP1:DW01_Mode_g.Auto</Attri> <Attri ID="Alarm_Suspend">AC800OPC:MD_APP1:DW01_Mode_g.Suspend</Attri> <Attri ID="Suspend_Bits">AC800OPC:MD_APP1:DW01_Suspend_g.Bits</Attri> <Attri ID="Alarm_Abort">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_AbortHold.Bits</Attri> <Attri ID="Mode_fb">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_MD_Mode_fb</Attri> <Attri ID="Required">AC800OPC:MD_APP1:AG01_DW01_Require_g</Attri> <Attri ID="Error">AC800OPC:MD_APP1:AG01_DW01_ConfigError_g</Attri> <Attri ID="StatusFill">AC800OPC:MD_APP1:AG01_DW01_ConfigStatus_g</Attri> <Attri ID="Ramp">AC800OPC:MD_APP1:AG01_DW01_TargetRampPerc_g</Attri> <Attri ID="Object">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_GenCon_fb</Attri> </Tag> <Tag ID="SP01"> <Attri ID="Desc">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_Name</Attri> <Attri ID="MV">AC800OPC:MD_APP1:MS01_g.Measurement</Attri> <Attri ID="Setpoint">AC800OPC:MD_APP1:SP01_Target_g</Attri> <Attri ID="Setpoint_Writable">AC800OPC:MD_APP1:SP01_Mode_g.OperChange</Attri> <Attri ID="Setpoint_High">AC800OPC:MD_APP1:SP01_Config_g.SetpMax</Attri> <Attri ID="Setpoint_Low">AC800OPC:MD_APP1:SP01_Config_g.SetpMin</Attri> <Attri ID="Setpoint_Req">AC800OPC:MD_APP1:SP01_Target_g</Attri> <Attri ID="New_Setpoint">AC800OPC:MD_APP1:GD01_SP01_Target_g</Attri> <Attri ID="New_Setpoint_Req">AC800OPC:MD_APP1:GD01_SP01_Target_g</Attri> <Attri ID="New_Setpoint_Writable">True</Attri> <Attri ID="Mode_Auto">AC800OPC:MD_APP1:SP01_Mode_g.Auto</Attri> <Attri ID="Mode_Man">AC800OPC:MD_APP1:SP01_Mode_g.Manual</Attri> <Attri ID="Mode_E1">AC800OPC:MD_APP1:SP01_Mode_g.External1</Attri> <Attri ID="Mode_E2">AC800OPC:MD_APP1:SP01_Mode_g.External2</Attri> <Attri ID="Mode_Bal">AC800OPC:MD_APP1:SP01_Mode_g.Bal</Attri> <Attri ID="Mode_AutoReq">AC800OPC:MD_APP1:SP01_Mode_g.Auto</Attri> <Attri ID="Mode_ManReq">AC800OPC:MD_APP1:SP01_Mode_g.Manual</Attri> <Attri ID="Alarm_Suspend">AC800OPC:MD_APP1:SP01_Mode_g.Suspend</Attri> <Attri ID="Alarm_Abort">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_AbortHold.Bits</Attri> <Attri ID="Mode_fb">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_Mode_fb</Attri> <Attri ID="Error">AC800OPC:MD_APP1:AG01_SP01_ConfigError_g</Attri> <Attri ID="StatusFill">AC800OPC:MD_APP1:AG01_SP01_ConfigStatus_g</Attri> <Attri ID="Ramp">AC800OPC:MD_APP1:AG01_SP01_TargetRampPerc_g</Attri> <Attri ID="Object">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_GenCon_fb</Attri> </Tag> </Control>

C.14 ABB OPC Tag Level 1 singleline


C.14.1 Introduction
The ABB OPC Tag Level 1 singleline is a registered name, and ABBOPCTagL1C.ocx is ActiveX control file name. This ActiveX control is special designed for MD level 1 control single line display. It is XML configurable.

232

3BUS208222 R4001

C.14.2 Functionality

Figure 3-58 OPC Tag Level 1 SingleLine example C.14.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

PidAo
This tag is used to call up a faceplate from item 4

PidDo
This tag is used to call up a faceplate from item 4

GenCon
This tag is used to call up a faceplate from item 4

Measurement
This tag is displayed in item 2

Manual
This tag is used to display Manual text in item 4

External1
This tag is used to display External text in item 4

OperSP
This tag is entered in item 3

3BUS208222 R4001

233

OperSPChange
This tag is determines if item 3 is writable

DispSP
This tag is displayed in item 3

Suspend
This tag if true displays a yellow triangle in item 5.

ExcessiveError
This tag if true displays a red triangle in item 5.

ExtSP
This tag is not used

Track
This tag is used to display Balance text in item 4

Name
This tag is displayed in item 1

HighSetpoint
This tag is used to limit entries in item 3

LowSetpoint
This tag is used to limit entries in item 3

AutoReq
This tag is used to request auto in item 4

ManReq
This tag is used to request manual in item 4

Ext1Req
This tag is used to request external in item 4

Optional1 234
3BUS208222 R4001

This tag (if present) is displayed in item 6

Optional1_desc
This tag is not used

Optional1_type
This tag determines the type of display for item 6. 0= real, 1 = integer, 2 = checkbox, 3 = indicator, 4 = button.

Optional1_writable
This attribute determines if item 6 is writable. (could be True or a tag)

Optional2
This tag (if present) is displayed in item 7

Optional2_desc
This tag is not used

Optional2_type
This tag determines the type of display for item 7. 0= real, 1 = integer, 2 = checkbox, 3 = indicator, 4 = button.

Optional2_writable
This attribute determines if item 6 is writable. (could be True or a tag)

Option
This tag is used to determine which faceplate to call up for item 4. 1 = PidAo, 2=PidDo, 3= GenCon, 4 = GenCon

C.14.4 Example Of XML File


This control uses the same xml file as ABB OPC Tag Level1 Grid for a specific instance

C.15 ABB OPC Tag Level 1 grid


C.15.1 Introduction
The ABB OPC Tag Level 1 grid is a registered name, and ABBOPCTagL1.ocx is ActiveX control file name.

3BUS208222 R4001

235

This ActiveX control is special designed for MD level 1 grid control display. It is XML configurable.

C.15.2 Functionality

Figure 3-59 Level 1 Control Grid Example C.15.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

PidAo
This tag is used to call up a faceplate from item 4

PidDo
This tag is used to call up a faceplate from item 4

GenCon
This tag is used to call up a faceplate from item 4

Measurement
This tag is displayed in item 2

Manual
This tag is used to display Manual text in item 4

External1

236

3BUS208222 R4001

This tag is used to display External text in item 4

OperSP
This tag is entered in item 3

OperSPChange
This tag is determines if item 3 is writable

DispSP
This tag is displayed in item 3

Suspend
This tag if true displays a yellow triangle in item 5.

ExcessiveError
This tag if true displays a red triangle in item 5.

ExtSP
This tag is not used

Track
This tag is used to display Balance text in item 4

Name
This tag is displayed in item 1

HighSetpoint
This tag is used to limit entries in item 3

LowSetpoint
This tag is used to limit entries in item 3

AutoReq
This tag is used to request auto in item 4

ManReq
This tag is used to request manual in item 4
3BUS208222 R4001

237

Ext1Req
This tag is used to request external in item 4

Optional1
This tag (if present) is displayed in item 6

Optional1_desc
This tag displays the text in the heading for item 6.

Optional1_type
This tag determines the type of display for item 6. 0= real, 1 = integer, 2 = checkbox, 3 = indicator, 4 = button.

Optional1_writable
This attribute determines if item 6 is writable. (could be True or a tag)

Optional2
This tag (if present) is displayed in item 7

Optional2_desc
This tag displays the text in the heading for item 7.

Optional2_type
This tag determines the type of display for item 7. 0= real, 1 = integer, 2 = checkbox, 3 = indicator, 4 = button.

Optional2_writable
This attribute determines if item 6 is writable. (could be True or a tag)

Option
This tag is used to determine which faceplate to call up for item 4. 1 = PidAo, 2=PidDo, 3= GenCon, 4 = GenCon

C.15.4 Example Of XML File


<Control ID="PM1MD01_LC01_LEVEL1GRID"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_LC01_Level1Grid_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="ST01"> <Attri ID="Manual">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Manual</Attri> <Attri

238

3BUS208222 R4001

ID="External1">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtMode</Attri> <Attri ID="OperSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_OperSP</Attri> <Attri ID="DispSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_OperSP</Attri> <Attri ID="OperSPChange">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_SPOperChange</Attri> <Attri ID="Suspend">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Suspend</Attri> <Attri ID="ExcessiveError">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.ExcessiveErrorHold</Attri> <Attri ID="ExtSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtSP</Attri> <Attri ID="Track">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Balance</Attri> <Attri ID="ManReq">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ManReq</Attri> <Attri ID="AutoReq">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_AutoReq</Attri> <Attri ID="Ext1Req">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtReq</Attri> <Attri ID="Name">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PIDDescription</Attri> <Attri ID="HighSetpoint">AC800OPC:MD_APP1:ST01_g.HighSetpoint</Attri> <Attri ID="LowSetpoint">AC800OPC:MD_APP1:ST01_g.LowSetpoint</Attri> <Attri ID="Option">AC800OPC:MD_APP1:FIC101ST_Config_g.Option</Attri> <Attri ID="Measurement">AC800OPC:MD_APP1:ST01_g.Measurement</Attri> <Attri ID="PidAo">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="PidDo">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="GenCon">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> </Tag> <Tag ID="MS01"> <Attri ID="Manual">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Manual</Attri> <Attri ID="External1">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtMode</Attri> <Attri ID="OperSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_OperSP</Attri> <Attri ID="DispSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_OperSP</Attri> <Attri ID="OperSPChange">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_SPOperChange</Attri> <Attri ID="Suspend">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Suspend</Attri> <Attri ID="ExcessiveError">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.ExcessiveErrorHold</Attri> <Attri ID="ExtSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtSP</Attri> <Attri ID="Track">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Balance</Attri> <Attri ID="ManReq">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ManReq</Attri> <Attri ID="AutoReq">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_AutoReq</Attri> <Attri ID="Ext1Req">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtReq</Attri> <Attri ID="Name">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PIDDescription</Attri> <Attri ID="HighSetpoint">AC800OPC:MD_APP1:MS01_g.HighSetpoint</Attri> <Attri ID="LowSetpoint">AC800OPC:MD_APP1:MS01_g.LowSetpoint</Attri> <Attri ID="Option">AC800OPC:MD_APP1:SIC101MS_Config_g.Option</Attri> <Attri ID="Measurement">AC800OPC:MD_APP1:MS01_g.Measurement</Attri> <Attri ID="PidAo">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="GenCon">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> </Tag> </Control>

C.16 ABB OPC Tag Level 1 Vertical


C.16.1 Introduction
The ABB OPC Tag Level 1 Vertical is a registered name, and ABBOPCTagL1V.ocx is ActiveX control file name. This ActiveX control is special designed for MD level 1 control single vertical display. It is XML configurable.

3BUS208222 R4001

239

C.16.2 Functionality

Figure 3-60 OPC Tag Level 1 Vertical Example C.16.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

PidAo
This tag is used to call up a faceplate from item 2

PidDo
This tag is used to call up a faceplate from item 2

GenCon
This tag is used to call up a faceplate from item 2

Measurement
This tag is displayed in item 3

Manual
This tag is used to display Manual text in item 2

External1
This tag is used tp display External text in item 2

OperSP
This tag is not used

OperSPChange

240

3BUS208222 R4001

This tag is not used

DispSP
This tag is not used

Suspend
This tag if true displays a yellow triangle in item 2.

ExcessiveError
This tag if true displays a red triangle in item 2.

ExtSP
This tag is not used

Track
This tag is used to display Balance text in item 2

Name
This tag is displayed in item 1

HighSetpoint
This tag is not used

LowSetpoint
This tag is not used

AutoReq
This tag is used to request auto in item 2

ManReq
This tag is used to request manual in item 2

Ext1Req
This tag is used to request external in item 2

Optional1
This tag is not used
3BUS208222 R4001

241

Optional1_desc
This tag is not used

Optional1_type
This tag is not used

Optional1_writable
This tag is not used

Optional2
This tag is not used

Optional2_desc
This tag is not used

Optional2_type
This tag is not used

Optional2_writable
This tag is not used

Option
This tag is used to determine which faceplate to call up for item 2. 1 = PidAo, 2=PidDo, 3= GenCon, 4 = GenCon

C.16.4 Example Of XML File


This control uses the same xml file as ABB OPC Tag Level1 Grid for a specific instance

C.17 ABB OPC Tag Level 2 singleline


C.17.1 Introduction
The ABB OPC Tag Level 2 singleline is a registered name, and ABBOPCTagL2C.ocx is ActiveX control file name. This ActiveX control is special designed for MD level 2 control single line display. It is XML configurable.

242

3BUS208222 R4001

C.17.2 Functionality

Figure 3-61 OPC Tag Level 2 SingleLine Example C.17.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

Desc
This tag is displayed in item 1.

MV
This tag is displayed in item 2. If bit 4 is true in Suspend_Bits tag, item 2 will be yellow background

Setpoint
This tag is displayed in item 3.

Setpoint_Writable
This tag determines if item 3 is writable.

Setpoint_High
This tag is used to limit entries in item 3 and item 5

Setpoint_Low
This tag is used to limit entries in item 3 and item 5

New_Setpoint
This tag is displayed in item 5.

3BUS208222 R4001

243

Setpoint_Req
This tag is entered in item 3.

New_Setpoint_Req
This tag is entered in item 5.

New_Setpoint_Writable
This tag determines if item 5 is writable.

Mode_Auto
This tag is used to display Auto text and color in item 4.

Mode_Man
This tag is used to display Manual text and color in item 4.

Mode_E1
This tag is used to display E1 text and color in item 4.

Mode_E2
This tag is used to display E2 text and color in item 6.

Mode_Bal
This tag is used to display Balance text and color in item 4.

Mode_AutoReq
This tag is used to request Auto in item 4.

Mode_ManReq
This tag is used to request Manual in item 4.

Alarm_Suspend
This tag if true displays a yellow triangle in item 6. If item 6 is selected with right click, a popup is shown with detailed information on the suspend reason

Suspend_Bits
This tag is used fo show yellow background in item 2.

244

3BUS208222 R4001

Alarm_Abort
This tag if true displays a red triangle in item 6. If item 6 is selected with right click, a popup is shown with detailed information on the abort reason

Mode_fb
This tag is used to call up an aspect for item 6.

Optional1
This tag is not used

Optional1_desc
This tag is not used

Optional1_type
This tag is not used

Optional1_writable
This tag is not used

Optional2
This tag is not used

Optional2_desc
This tag is not used

Optional2_type
This tag is not used

Optional2_writable
This tag is not used

Object
This tag is used to call up an aspect faceplate for item 4.

Drystock_on
This tag (if present) displays item 4 as a button.

3BUS208222 R4001

245

C.17.4 Example Of XML File


This control uses the same xml file as ABB OPC Tag Level2 Grid for a specific instance

C.18 ABB OPC Tag Level 2 grid


C.18.1 Introduction
The ABB OPC Tag Level 2 grid is a registered name, and ABBOPCTagL2.ocx is ActiveX control file name. This ActiveX control is special designed for MD level 2 control. It is XML configurable.

C.18.2 Functionality

Figure 3-62 OPC Tag Level 2 Grid Example C.18.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

Desc
This tag is displayed in item 1.

MV
This tag is displayed in item 2. If bit 4 is true in Suspend_Bits tag, item 2 will be yellow background

246

3BUS208222 R4001

Setpoint
This tag is displayed in item 3.

Setpoint_Writable
This tag determines if item 3 is writable.

Setpoint_High
This tag is used to limit entries in item 3 and item 5

Setpoint_Low
This tag is used to limit entries in item 3 and item 5

New_Setpoint
This tag is displayed in item 5.

Setpoint_Req
This tag is entered in item 3.

New_Setpoint_Req
This tag is entered in item 5.

New_Setpoint_Writable
This tag determines if item 5 is writable.

Mode_Auto
This tag is used to display Auto text and color in item 4.

Mode_Man
This tag is used to display Manual text and color in item 4.

Mode_E1
This tag is used to display E1 text and color in item 4.

Mode_E2
This tag is used to display E2 text and color in item 6.

3BUS208222 R4001

247

Mode_Bal
This tag is used to display Balance text and color in item 4.

Mode_AutoReq
This tag is used to request Auto in item 4.

Mode_ManReq
This tag is used to request Manual in item 4.

Alarm_Suspend
This tag if true displays a yellow triangle in item 6. If item 6 is selected with right click, a popup is shown with detailed information on the suspend reason

Suspend_Bits
This tag (bit 4) is used to show yellow background in item 2.

Alarm_Abort
This tag if true displays a red triangle in item 6. If item 6 is selected with right click, a popup is shown with detailed information on the abort reason

Mode_fb
This tag is used to call up an aspect for item 6.

Optional1
This tag (if present) is displayed in item 7

Optional1_desc
This tag displays the text in the heading for item 7.

Optional1_type
This tag determines the type of display for item 7. 0= real, 1 = integer, 2 = checkbox, 3 = indicator, 4 = button.

Optional1_writable
This attribute determines if item 7 is writable. (could be True or a tag)

Optional2

248

3BUS208222 R4001

This tag (if present) is displayed in item 8

Optional2_desc
This tag displays the text in the heading for item 8.

Optional2_type
This tag determines the type of display for item 8. 0= real, 1 = integer, 2 = checkbox, 3 = indicator, 4 = button.

Optional2_writable
This attribute determines if item 8 is writable. (could be True or a tag)

Object
This tag is used to call up an aspect faceplate for item 4.

Drystock_on
This tag (if present) displays item 4 as a button.

C.18.4 Example Of XML File


<Control ID="PM1MD01_MD01_LEVEL2GRID"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_MD01_Level2Grid_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="DW01"> <Attri ID="Desc">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_Name</Attri> <Attri ID="MV">AC800OPC:MD_APP1:DW01_OperMeas_g.Measurement</Attri> <Attri ID="Setpoint">AC800OPC:MD_APP1:DW01_Target_g</Attri> <Attri ID="Setpoint_Writable">AC800OPC:MD_APP1:DW01_Mode_g.OperChange</Attri> <Attri ID="Setpoint_High">AC800OPC:MD_APP1:DW01_Config_g.SetpMax</Attri> <Attri ID="Setpoint_Low">AC800OPC:MD_APP1:DW01_Config_g.SetpMin</Attri> <Attri ID="Setpoint_Req">AC800OPC:MD_APP1:DW01_Target_g</Attri> <Attri ID="New_Setpoint">AC800OPC:MD_APP1:GD01_DW01_CondWeightTarget_g</Attri> <Attri ID="New_Setpoint_Req">AC800OPC:MD_APP1:GD01_DW01_CondWeightTarget_g</Attri> <Attri ID="New_Setpoint_Writable">False</Attri> <Attri ID="Mode_Auto">AC800OPC:MD_APP1:DW01_Mode_g.Auto</Attri> <Attri ID="Mode_Man">AC800OPC:MD_APP1:DW01_Mode_g.Manual</Attri> <Attri ID="Mode_E1">AC800OPC:MD_APP1:DW01_Mode_g.External1</Attri> <Attri ID="Mode_E2">AC800OPC:MD_APP1:DW01_Mode_g.External2</Attri> <Attri ID="Mode_Bal">AC800OPC:MD_APP1:DW01_Mode_g.Bal</Attri> <Attri ID="Mode_AutoReq">AC800OPC:MD_APP1:DW01_Mode_g.Auto</Attri> <Attri ID="Mode_ManReq">AC800OPC:MD_APP1:DW01_Mode_g.Manual</Attri> <Attri ID="Alarm_Suspend">AC800OPC:MD_APP1:DW01_Mode_g.Suspend</Attri> <Attri ID="Suspend_Bits">AC800OPC:MD_APP1:DW01_Suspend_g.Bits</Attri> <Attri ID="Alarm_Abort">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_AbortHold.Bits</Attri> <Attri ID="Mode_fb">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_MD_Mode_fb</Attri> <Attri ID="Object">AC800OPC:MD_APP1:MD01_ScanLevel.DW01_GenCon_fb</Attri> </Tag> <Tag ID="SP01"> <Attri ID="Desc">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_Name</Attri> <Attri ID="MV">AC800OPC:MD_APP1:MS01_g.Measurement</Attri> <Attri ID="Setpoint">AC800OPC:MD_APP1:SP01_Target_g</Attri> <Attri ID="Setpoint_Writable">AC800OPC:MD_APP1:SP01_Mode_g.OperChange</Attri> <Attri ID="Setpoint_High">AC800OPC:MD_APP1:SP01_Config_g.SetpMax</Attri> <Attri ID="Setpoint_Low">AC800OPC:MD_APP1:SP01_Config_g.SetpMin</Attri> <Attri ID="Setpoint_Req">AC800OPC:MD_APP1:SP01_Target_g</Attri>

3BUS208222 R4001

249

<Attri ID="New_Setpoint">AC800OPC:MD_APP1:GD01_SP01_Target_g</Attri> <Attri ID="New_Setpoint_Req">AC800OPC:MD_APP1:GD01_SP01_Target_g</Attri> <Attri ID="New_Setpoint_Writable">False</Attri> <Attri ID="Mode_Auto">AC800OPC:MD_APP1:SP01_Mode_g.Auto</Attri> <Attri ID="Mode_Man">AC800OPC:MD_APP1:SP01_Mode_g.Manual</Attri> <Attri ID="Mode_E1">AC800OPC:MD_APP1:SP01_Mode_g.External1</Attri> <Attri ID="Mode_E2">AC800OPC:MD_APP1:SP01_Mode_g.External2</Attri> <Attri ID="Mode_Bal">AC800OPC:MD_APP1:SP01_Mode_g.Bal</Attri> <Attri ID="Mode_AutoReq">AC800OPC:MD_APP1:SP01_Mode_g.Auto</Attri> <Attri ID="Mode_ManReq">AC800OPC:MD_APP1:SP01_Mode_g.Manual</Attri> <Attri ID="Alarm_Suspend">AC800OPC:MD_APP1:SP01_Mode_g.Suspend</Attri> <Attri ID="Alarm_Abort">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_AbortHold.Bits</Attri> <Attri ID="Mode_fb">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_Mode_fb</Attri> <Attri ID="Object">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_GenCon_fb</Attri> </Tag> <Tag ID="Drystock ON"> <Attri ID="MV">AC800OPC:MD_APP1:DS01CN01_FiltMeas_g.Value</Attri> <Attri ID="Drystock_on">AC800OPC:MD_APP1:DS01_Control_g.Value</Attri> </Tag> </Control>

C.19 ABB OPC Tag Speed Control


C.19.1 Introduction
The ABB OPC Tag Speed Control is a registered name, and ABBOPCTagSpeed.ocx is ActiveX control file name. This ActiveX control is a grid control, it is special designed for MD speed level 1 control. It is XML configurable.

C.19.2 Functionality

Figure 3-63 OPC Tag Speed Control Example C.19.3 XML Key Word RevID
When the value of this tag changes, the ABB CD Mapping ActiveX control will delete the current OPC group, reconnect to the server, and resetting this ActiveX control based on the XML file from the server.
<Tag ID="RevID"> <Attri ID="Value">Svr02:PM03CDHSI:CD01MappPix01Rev</Attri> </Tag>

PidAo 250
3BUS208222 R4001

This tag is used to call up a faceplate from item 7

PidDo
This tag is used to call up a faceplate from item 7

GenCon
This tag is used to call up a faceplate from item 7

Measurement
This tag is displayed in item 5

Manual
This tag is used to display Manual text in item 7

External1
This tag is used to display External text in item 7

OperSP
This tag is entered in item 6

OperSPChange
This tag is determines if item 6 is writable

DispSP
This tag is displayed in item 6

ExtSP
This tag is not used

Track
This tag is used display Balance text in item 7

Name
This tag is displayed in item 4

HighSetpoint
This tag is used to limit entries in item 6
3BUS208222 R4001

251

LowSetpoint
This tag is used to limit entries in item 6

AutoReq
This tag is used to request auto in item 7

ManReq
This tag is used to request manual in item 7

Ext1Req
This tag is used to request external in item 7

Option
This tag is used to determine which faceplate to call up for item 7. 1 = PidAo, 2=PidDo, 3= GenCon, 4 = GenCon

Required
This tag is displayed in item 1

StatusSpeed
This tag is displayed in item 2. Item 2 is unfilled yellow if not StatusSpeed and Ilock Speed. Item 2 is filled yellow if StatusSpeed and Ilock Speed. Item 2 is unfilled green if not StatusSpeed and not Ilock Speed. Item 2 is filled green if StatusSpeed and not Ilock Speed.

IlockSpeed
This tag is displayed in item 2. Item 2 is unfilled yellow if not StatusSpeed and IlockSpeed. Item 2 is filled yellow if StatusSpeed and IlockSpeed. Item 2 is unfilled green if not StatusSpeed and not IlockSpeed. Item 2 is filled green if StatusSpeed and not IlockSpeed.

StatusStock
This tag is displayed in item 3. Item 3 is unfilled yellow if not StatusStock and IlockStock. Item 3 is filled yellow if StatusStock and IlockStock. Item 3 is unfilled green if not StatusStock and not IlockStock. Item 3 is filled green if StatusStock and not IlockStock.

IlockStock
This tag is displayed in item 3. Item 3 is unfilled yellow if not StatusStock and IlockStock. Item 3 is filled yellow if StatusStock and IlockStock. Item 3 is unfilled green if not StatusStock and not IlockStock. Item 3 is filled green if StatusStock and not IlockStock.

Ramp 252
3BUS208222 R4001

This tag is displayed in item 8

RampNumeric
If RampNumeric tag is false, the display for Ramp is a pseudo bar graph, if true, then the display is numeric

Range
This tag is reserved for Speed Opt

SteamLim
This tag is reserved for Speed Opt

SpeedLim
This tag is reserved for Speed Opt

Option
This tag is used to determine which faceplate to call up for item 7. 1 = PidAo, 2=PidDo, 3= GenCon, 4 = GenCon

C.19.4 Example Of XML File


<Control ID="PM1MD01_SP01_LEVEL1GRID"> <Tag ID="RevID"> <Attri ID="VALUE">AC800OPC:MD_APP1:HSI_SP01_Level1Grid_g</Attri> <Attri ID="NotPub"></Attri> </Tag> <Tag ID="ST01"> <Attri ID="Manual">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Manual</Attri> <Attri ID="External1">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtMode</Attri> <Attri ID="OperSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_OperSP</Attri> <Attri ID="DispSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_OperSP</Attri> <Attri ID="OperSPChange">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_SPOperChange</Attri> <Attri ID="Suspend">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Suspend</Attri> <Attri ID="ExcessiveError">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.ExcessiveErrorHold</Attri> <Attri ID="ExtSP">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtSP</Attri> <Attri ID="Track">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_Track</Attri> <Attri ID="ManReq">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ManReq</Attri> <Attri ID="AutoReq">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_AutoReq</Attri> <Attri ID="Ext1Req">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PID_ExtReq</Attri> <Attri ID="Name">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PIDDescription</Attri> <Attri ID="HighSetpoint">AC800OPC:MD_APP1:ST01_g.HighSetpoint</Attri> <Attri ID="LowSetpoint">AC800OPC:MD_APP1:ST01_g.LowSetpoint</Attri> <Attri ID="Option">AC800OPC:MD_APP1:FIC101ST_Config_g.Option</Attri> <Attri ID="Measurement">AC800OPC:MD_APP1:ST01_g.Measurement</Attri> <Attri ID="PidAo">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="PidDo">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="GenCon">AC800OPC:MD_APP1:LC01_Level1.ST01_fb.PidCC1.PidCC1</Attri> <Attri ID="Required">AC800OPC:MD_APP1:DW01_MS01_FFConfig_g.FF_Enable</Attri> <Attri ID="StatusSpeed">AC800OPC:MD_APP1:SP01_SpeedCtrl.DW01_SP_FFSetupStock_fb.FFstatus</Att ri>

3BUS208222 R4001

253

<AttriID="IlockSpeed">AC800OPC:MD_APP1:SP01_SpeedCtrl.DW01_SP_FFSetupStock_fb. FFInterlock</Attri> <AttriID="Ramp">AC800OPC:MD_APP1:SP01_SpeedCtrl.DW01_SP_FFRampStock_fb. RampPercentage</Attri> </Tag> <Tag ID="MS01"> <Attri ID="Manual">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Manual</Attri> <Attri ID="External1">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtMode</Attri> <Attri ID="OperSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_OperSP</Attri> <Attri ID="DispSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_OperSP</Attri> <Attri ID="OperSPChange">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_SPOperChange</Attri> <Attri ID="Suspend">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Suspend</Attri> <Attri ID="ExcessiveError">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.ExcessiveErrorHold</Attri> <Attri ID="ExtSP">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtSP</Attri> <Attri ID="Track">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_Track</Attri> <Attri ID="ManReq">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ManReq</Attri> <Attri ID="AutoReq">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_AutoReq</Attri> <Attri ID="Ext1Req">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PID_ExtReq</Attri> <Attri ID="Name">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PIDDescription</Attri> <Attri ID="HighSetpoint">AC800OPC:MD_APP1:MS01_g.HighSetpoint</Attri> <Attri ID="LowSetpoint">AC800OPC:MD_APP1:MS01_g.LowSetpoint</Attri> <Attri ID="Option">AC800OPC:MD_APP1:SIC101MS_Config_g.Option</Attri> <Attri ID="Measurement">AC800OPC:MD_APP1:MS01_g.Measurement</Attri> <Attri ID="PidAo">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="PidDo">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="GenCon">AC800OPC:MD_APP1:LC01_Level1.MS01_fb.PidCC1.PidCC1</Attri> <Attri ID="Ramp">AC800OPC:MD_APP1:SP01_SpeedCtrl.SP01_FFRampSpeed_fb.RampPercentage</Attri> </Tag> </Control>

254

3BUS208222 R4001

Das könnte Ihnen auch gefallen