iX Developer Reference Manual MAEN831L, 2015-02 English Foreword Reference manual for iX Developer Foreword The iX Developer software is used to configure iX panels and PC operated control applications, including applications for IPCs (Industrial PCs). The iX Developer makes it easy to create logical, flexible and effective HMI applications that provide the right information on the right occasion to operators and to other systems. This manual describes the configuration software in detail. Please see the iX Developer User’s Guide (MAEN832x) for function-based descriptions. The manual assumes that the most recent versions of the system program (image) and iX Developer are used. For specific details of a connected controller refer to the help file for the controller driver. The function of a project application in an operator panel is not affected by the choice of controller. The information in this manual is also available by pressing F1 while using iX Developer. The present revision of this manual is valid for version 2.10 SP2 of iX Developer. Order no: MAEN831L Copyright © 2015-02 Beijer Electronics AB. All rights reserved. The information in this document is subject to change without notice and is provided as available at the time of printing. Beijer Electronics AB reserves the right to change any information without updating this publication. Beijer Electronics AB assumes no responsibility for any errors that may appear in this document. All examples in this document are only intended to improve understanding of the functionality and handling of the equipment. Beijer Electronics AB cannot assume any liability if these examples are used in real applications. In view of the wide range of applications for this software, users must acquire sufficient knowledge themselves in order to ensure that it is correctly used in their specific application. Persons responsible for the application and the equipment must themselves ensure that each application is in compliance with all relevant requirements, standards, and legislation in respect to configuration and safety. Beijer Electronics AB will accept no liability for any damage incurred during the installation or use of equipment mentioned in this document. Beijer Electronics AB prohibits all modification, changes, or conversion of the equipment. Beijer Electronics, MAEN831L Contents Contents 1 The Configuration Tool ................................................ 11 1.1 Introduction ..................................................... 11 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 System Requirements and Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Configured Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 2 Working with Projects .................................................. 19 2.1 Creating a Project ................................................ 19 2.1.1 2.1.2 2.1.3 2.2 2.3 Importing an Information Designer Project ................... 22 Importing an H-Designer/ADP Project ........................ 23 2.3.1 2.3.2 2.3.3 2.4 Communication Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 Communication Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Performance in the operator panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Moving Objects with the Touch Screen ........................ 28 2.5.1 2.6 Exporting the H-Designer/ADP Project . . . . . . . . . . . . . . . . . . . . . . . . 23 Importing the a2i File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Optimizing Performance ........................................ 25 2.4.1 2.4.2 2.4.3 2.5 Connecting to a Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Designing a Screen Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Designing Additional Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Operate Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Peripherals ........................................................ 29 2.6.1 2.6.2 2.6.3 USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29 Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29 Memory Card . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3 Development Environment ............................................ 30 3.1 Starting iX Developer ............................................ 30 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.2 Creating a New Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Opening a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Getting Familiar with iX Developer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Starting iX Developer from the Command Line . . . . . . . . . . . . . . . . 36 File Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Quick Access Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Ribbon Tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Additional Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Desktop Area ..................................................... 44 3.2.1 3.2.2 3.2.3 Screen View in Desktop Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Desktop View Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Positioning Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Beijer Electronics, MAEN831L Contents 3.2.4 3.3 Screens ............................................................ 54 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4 Project Explorer Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Component Library ............................................. 72 3.7.1 3.7.2 3.7.3 3.8 Screen Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Add Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Links in the Navigation Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Navigation Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Project Explorer .................................................. 67 3.6.1 3.7 Handling Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Navigation Manager ............................................. 65 3.5.1 3.5.2 3.5.3 3.5.4 3.6 Screen Name and Screen Title . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Background Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Startup Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Screen Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Screen Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Popup Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Preloading Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Importing Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Objects ........................................................... 61 3.4.1 3.5 Configuration Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Add and Use Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Component Library Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Property Grid .................................................... 79 3.8.1 3.8.2 3.8.3 3.8.4 Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Toggling views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Favorites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Copy Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 3.9 Object Browser ................................................... 81 3.10 Output ........................................................... 81 3.11 Error List ......................................................... 81 3.12 Help .............................................................. 81 4 Tags ....................................................................... 82 4.1 Adding Tags ...................................................... 82 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.2 4.3 4.4 Removing Unused Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Basic Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Data Exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Others . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Adding Tags during Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Selecting Multiple Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Tag Actions ....................................................... 90 Internal Tags ..................................................... 90 System Tags ...................................................... 91 Beijer Electronics, MAEN831L Contents 4.5 Array Tags ........................................................ 93 4.5.1 4.6 4.7 4.8 4.9 4.10 Cross Reference .................................................. Triggers ........................................................... Poll Groups ....................................................... Station Handling ................................................ Index Registers ................................................... 4.10.1 4.10.2 4.11 Index Addressing Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Using Index Registers for Station Handling . . . . . . . . . . . . . . . . . . . . . 101 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103 Using Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Library Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105 Data Exchange ................................................... 105 Importing and Exporting Tags .................................. 109 4.13.1 4.13.2 4.13.3 4.13.4 4.14 4.15 4.16 94 94 95 96 97 Expressions ....................................................... 103 4.11.1 4.11.2 4.11.3 4.11.4 4.12 4.13 Array Tag Set Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Handling Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Saving the Import Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Tag Import Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Importing Tags from the Command Line . . . . . . . . . . . . . . . . . . . . . . . 114 Filtering Tags ..................................................... 115 Tag Format ....................................................... 116 Aliases ............................................................. 117 4.16.1 4.16.2 Creating Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118 5 Controller ................................................................ 120 5.1 Adding a Controller ............................................. 120 5.1.1 5.2 5.3 DEMO Controller .............................................. 121 External OPC Server ............................................ 122 5.3.1 5.3.2 5.4 Notify Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 OPC Classic Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 OPC UA Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Updating Drivers ................................................ 124 5.4.1 5.4.2 Updating Drivers from Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Updating Drivers from File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 5.5 Synchronizing the Controller Clock ............................ 126 6 Web Server ............................................................... 127 6.1 Web Server Configuration ...................................... 127 6.1.1 6.1.2 6.2 Javascript SDK ................................................... 128 6.2.1 6.3 Web Site Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Login Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Javascript SDK Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Web Service API ................................................. 138 6.3.1 6.3.2 6.3.3 RESTful Web Service API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 REST API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Beijer Electronics, MAEN831L Contents 7 Objects ................................................................... 142 7.1 Blinking Objects ................................................. 143 7.1.1 7.2 7.3 Shapes ............................................................ 144 HMI Controls ................................................... 144 7.3.1 7.3.2 7.3.3 7.3.4 7.3.5 7.3.6 7.3.7 7.3.8 7.3.9 7.3.10 7.3.11 7.3.12 7.3.13 7.3.14 7.3.15 7.3.16 7.3.17 7.3.18 7.3.19 7.3.20 7.4 Alarm Distributor Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Windows Controls ............................................... 175 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.7.7 7.8 Navigation List Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Screen Carousel Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Debug Tools ...................................................... 175 7.6.1 7.7 Media Player Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 PDF Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 Web Browser Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Special Controls .................................................. 172 7.5.1 7.5.2 7.6 Action Menu Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 Alarm Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Analog Numeric Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Animated GIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Animated Label Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 Audit Trail Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Button Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Circular Meter Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Chart Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Database Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Digital Clock Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Linear Meter Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Multi Picture Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 Picture Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Roller Panel Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 Slider Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Text Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Touch Combo Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Touch List Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Trend Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Media Controls .................................................. 168 7.4.1 7.4.2 7.4.3 7.5 Limitations for operator panel Targets . . . . . . . . . . . . . . . . . . . . . . . . . . 144 Check Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Combo Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Group Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 List Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Progress Bar Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Radio Button Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Text Box Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 Additional Controls ............................................. 181 7.8.1 7.8.2 Target Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Adding Controls to the iX Developer Toolbox . . . . . . . . . . . . . . . . . . 182 Beijer Electronics, MAEN831L Contents 7.8.3 7.9 Default Controls and Installed Controls . . . . . . . . . . . . . . . . . . . . . . . . 184 WPF Controls ................................................... 184 7.9.1 7.9.2 7.9.3 7.9.4 7.9.5 WPF User Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 WPF Custom Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Creating a WPF User Control with Tag Connection . . . . . . . . . . . . 185 Creating a Windows Forms User Control for a PC Target . . . . . . 187 Creating a Windows Forms User Control for a CE Target . . . . . . 190 8 Ribbon Tabs ............................................................. 193 8.1 Home Ribbon Tab ............................................... 193 8.1.1 8.1.2 8.1.3 8.1.4 8.1.5 8.1.6 8.1.7 8.1.8 8.2 Project Ribbon Tab .............................................. 205 8.2.1 8.2.2 8.2.3 8.3 Windows Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 Dynamics Ribbon Tab ........................................... 231 8.6.1 8.6.2 8.6.3 8.7 8.8 Functions Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 View Ribbon Tab ................................................ 230 8.5.1 8.6 Date, Time, and Region Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Buzzer Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Backlight Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Serial Ports Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Servers Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Output Devices Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Service Menu Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 Insert Ribbon Tab ................................................ 229 8.4.1 8.5 Run Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Transfer Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 Project Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 System Ribbon Tab .............................................. 220 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.3.6 8.3.7 8.4 Clipboard Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Screen Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Objects Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Object Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Font Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Format Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 Tag/Security Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Name Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 Layout Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 Color Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 General Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 General Ribbon Tab ............................................. 242 Actions Ribbon Tab .............................................. 242 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.8.6 8.8.7 Click Action Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Mouse Button Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Function Key Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Value Changed Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Focus Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Navigation Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Data Logger Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Beijer Electronics, MAEN831L Contents 8.8.8 8.8.9 8.8.10 8.8.11 Alarm Server Action Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Action Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Script Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 Multiple Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 9 Trend Viewer ............................................................ 252 9.1 Defining Trend Viewer Objects ................................. 252 9.1.1 9.1.2 Adding a Trend Viewer Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 Trend Viewer Legend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 9.2 Historical Mode in Trend Viewer ............................... 255 10 Data Logger .............................................................. 256 10.1 Data Logging Strategies ......................................... 256 10.1.1 10.1.2 10.1.3 10.2 Logging Based on Time Interval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Logging Based on Changed Tag Value . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Maximizing the Lifetime of the Storage Media . . . . . . . . . . . . . . . . . . 257 Adding a Data Logger ........................................... 257 10.2.1 10.2.2 General Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .259 11 Scheduler ................................................................ 260 11.1 Scheduler Set Up ................................................. 260 11.1.1 Adding a Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 12 Reports ................................................................... 261 12.1 Reports Template Set up ......................................... 261 12.1.1 12.1.2 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .261 Database Driven Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 12.2 Reports Set Up ................................................... 12.3 Adding a Report .................................................. 13 Recipe Management .................................................... 13.1 Recipe Setup ..................................................... 13.1.1 13.2 Loading Recipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Saving Recipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Creating Recipes in the iX panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Editing Recipes Offline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Recipe Export .................................................... 267 13.3.1 13.3.2 13.4 Adding a Recipe Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Recipes in the iX panel ........................................... 266 13.2.1 13.2.2 13.2.3 13.2.4 13.3 262 263 264 264 Recipe Export from an operator panel Target . . . . . . . . . . . . . . . . . . . 268 Recipe Export from a PC Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Recipe Import .................................................... 269 13.4.1 13.4.2 Recipe Import to an iX panel Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Recipe Import to a PC Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 14 Function Keys ........................................................... 272 14.1 Definitions ....................................................... 272 14.2 Configuring Function Keys ..................................... 272 14.2.1 14.2.2 Function Key Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Function Key Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Beijer Electronics, MAEN831L Contents 14.2.3 Momentary Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 15 Alarm Management ..................................................... 276 15.1 Alarm Conditions ................................................ 276 15.2 Alarm Server ...................................................... 276 15.2.1 15.2.2 15.2.3 15.3 15.4 Alarm Indicator .................................................. 280 Alarm Items ...................................................... 281 15.4.1 15.5 Actions and Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Remote Alarm Server ............................................ 285 15.7.1 15.7.2 15.7.3 15.8 Defining Alarm Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Actions and Events for Alarm Items and Alarm Groups ....... 284 15.6.1 15.6.2 15.7 Exporting and Importing Alarm Items . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Alarm Groups .................................................... 283 15.5.1 15.6 General Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Alarm Server Events and Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Alarm Distribution Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Remote Alarm Server Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Remote Alarm Server Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 Remote Alarm Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 Alarm Distributor ................................................ 287 15.8.1 15.8.2 15.8.3 Alarm Distribution Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Adding an Alarm Distributor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Configure Distribution Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 15.9 Alarm Distributor Viewer ....................................... 295 15.10 Alarm Viewer .................................................... 296 15.10.1 15.10.2 15.10.3 Buttons Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Display Settings Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Alarm Viewer Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 15.11 Alarm Management in Runtime ................................ 297 15.11.1 15.11.2 15.11.3 15.11.4 15.11.5 15.11.6 Alarm Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Play/Pause Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Info Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Modifying Alarm Distribution Settings in Runtime . . . . . . . . . . . . 299 16 Security Management ................................................... 300 16.1 General Security Settings ........................................ 300 16.1.1 16.2 Security Groups .................................................. 301 16.2.1 16.3 Password Rules Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Creating Security Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Users .............................................................. 302 16.3.1 Logging In and Logging Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 16.4 Object Security and Visibility ................................... 303 17 Language Management ................................................. 305 17.1 Setting Up Multiple Languages ................................. 305 17.1.1 Adding Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 Beijer Electronics, MAEN831L Contents 17.2 17.3 17.4 System Texts ...................................................... 306 User Texts ......................................................... 307 Text ID ........................................................... 308 17.4.1 Text ID Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 17.5 Automatic Translation ........................................... 17.6 Exporting Languages ............................................ 17.7 Importing Languages ............................................ 18 Audit Trail ............................................................... 18.1 Logging Strategies ............................................... 18.2 Using the Audit Trail Function .................................. 18.2.1 18.3 18.4 311 313 314 316 316 316 Audit Trail Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Audit Trail Viewer ............................................... 318 Audit Trail Export ................................................ 318 18.4.1 18.4.2 Audit Trail Export from an iX panel Target . . . . . . . . . . . . . . . . . . . . . . 319 Audit Trail Export from a PC Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 19 Text Library .............................................................. 19.1 Connecting Objects to Text Library Texts ...................... 19.2 Exporting and Importing Text Library Texts ................... 20 Database Export ......................................................... 20.1 Setting up Database Export ..................................... 20.1.1 20.1.2 321 322 322 323 323 Database Export from operator panel Target . . . . . . . . . . . . . . . . . . . . 324 Database Export from PC Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 21 iX panel System Software ............................................... 326 21.1 Welcome Screen ................................................. 326 21.2 Service Menu ..................................................... 326 21.2.1 21.2.2 21.2.3 21.3 Service Menu in an Empty Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Service Menu in iX TxA/iX TxB Panels . . . . . . . . . . . . . . . . . . . . . . . . .327 Service Menu Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 iX panel Upgrade ................................................. 328 21.3.1 21.3.2 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 Transfer Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 22 Multiple Controllers .................................................... 330 22.1 Adding a Controller ............................................. 330 22.1.1 22.1.2 Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 23 Troubleshooting ......................................................... 23.1 Project Build Failure ............................................. 23.2 Backup Project Issues ............................................ 23.3 Invalid Names .................................................... 23.4 Adobe Reader not Recognized .................................. 23.5 Expression Cannot Be Found ................................... 23.6 Performance Issue Related to Graphics Card ................... 23.7 Error Related to Third Party Controls .......................... 23.8 Performance Issue When Navigating in Script Tree View .... Beijer Electronics, MAEN831L 333 333 333 333 333 333 334 334 334 The Configuration Tool 1 The Configuration Tool 1.1 Introduction The iX Developer software is used to configure operator panels and PC operated control applications, including applications for IPCs (Industrial PCs) from Beijer Electronics. iX Developer contains all basic functions needed in an application. The functions are tested and developed with customer needs and preferences in focus. Pre-defined objects in iX Developer can be used to create complete process images, providing an overview of a complex application. You can customize the pre-defined objects or create objects of your own. Communication drivers for a large number of controllers and automation equipment are available. The help file assumes that the most recent versions of the system program (image) and iX Developer are used. 1.1.1 Controller iX panel operator panels can be connected to many types of automation equipment, such as PLCs, servos, and drives. Further on, the expression controller is used as a general term for the connected equipment. Related information Controller 1.1.2 Tags Data values in a controller are referred to as tags. Tags may also belong to the system or be internal. A tag has a symbolic name and can be of different data types. Objects connected to tags can change values in the controller, and tag values can be reflected by changing object appearance in various ways. Objects in a screen will remain static until connected to a tag. Related information Tags Beijer Electronics, MAEN831L 11 The Configuration Tool 1.1.3 System Requirements and Limitations iX Developer iX Developer System Requirements Parameter Recommendation RAM 2 GB Processor 2 GHz or higher Operating system Microsoft Windows 7 Microsoft Windows Vista Microsoft Windows XP SP3 1 Graphics card Tier 2: DirectX version: 9.0 or higher Video RAM: 120MB or higher Pixel shader: version level 2.0 or higher Vertex shader: version level 2.0 or higher Multitexture units: 4 or more (1)From 2014 Microsoft does no longer support Windows XP. This might result in limited support in iX Developer. Note: It is recommended to always install the latest .NET Framework update. Updates Software, drivers and protocols may have been updated since the USB stick was produced. Therefore, it is recommended that you use the built-in update function in iX Developer before creating a project. Related information Update Software Updating Drivers iX Runtime iX Runtime System Requirements Parameter Recommendation RAM 1 GB Processor 1.3 GHz or higher Beijer Electronics, MAEN831L 12 The Configuration Tool iX Runtime System Requirements Parameter Recommendation Operating system Microsoft Windows 7 Microsoft Windows Vista Microsoft Windows XP SP3 1 Graphics card Tier 2: DirectX version: 9.0 or higher Video RAM: 120MB or higher Pixel shader: version level 2.0 or higher Vertex shader: version level 2.0 or higher Multitexture units: 4 or more (1)From 2014 Microsoft does no longer support Windows XP. This might result in limited support in iX Runtime. Updating iX Runtime in an operator panel iX Runtime is pre-loaded in every operator panel on delivery. If necessary, this could be upgraded to a newer version using the Image Loader application. Related information iX panel System Software Special Requirements for Some Objects For some objects to be included in the iX Developer project, specific software versions are required. Simulation of the project on the development PC may also be limited for some targets. Object Minimum requirement Windows Media Player 10 Simulation on PC target Supported Simulation on panel target Not supported PDF Viewer Acrobat Reader 9 Supported Not supported Web Browser Microsoft Internet Explorer 7 Supported Not supported Media Player 1.1.4 Getting Started iX Developer is installed on a development PC, where projects are developed, designed and compiled. The project is then run in an operator panel or PC to observe and control a controller (or a group of controllers). Target iX Developer projects can be targeted for • An operator panel from Beijer Electronics Beijer Electronics, MAEN831L 13 The Configuration Tool • • A PC (Industrial PC) from Beijer Electronics A standard PC with Microsoft Windows XP Service Pack 3, Microsoft Windows Vista or Microsoft Windows 7 Note: From 2014 Microsoft does no longer support Windows XP. This might result in limited support in iX Developer. To enhance readability, only operator panel will be mentioned sometimes, when all different targets actually could be included. The functions in iX Developer depend on the model of operator panel used. Some differences exist between the targets, for example: Item Support on PC target Support on operator panel target Media Player Supported PDF Viewer Supported Web Browser Supported Navigation List Box Supported Screen Carousel Supported Drop down shadow effect Supported Rounded corners on rectangle Supported Opacity Supported Report Supported Reports containing charts and pictures can not be printed from an operator panel target Dynamics All dynamic settings are supported Some dynamic settings are not supported on TA / iX TxA / iX TxB panels, e.g. background color for button, trend viewer and meter, and min/max values for meter Not supported on iX TxA panels Not supported on Q-Term, TA / iX TxA / iX TxB panels License A project for an operator panel can be used without any restrictions imposed by licensing. A limited number of controller tags are available for a standard PC project. The number of tags is controlled by a USB hardware dongle. The PCs from Beijer Electronics are configured with a fixed limit of tags, and do not require a USB dongle. Beijer Electronics, MAEN831L 14 The Configuration Tool The number of used controller tags (including DEMO controller tags) is shown in the lower right of the desktop. The figures will turn red if the number of used tags becomes greater than the number of available tags. There are no license restrictions for internal tags. Related information Internal Tags DEMO Controller Product Registration The first time iX Developer is started, a registration dialog is displayed. Entering the registration key provides unlimited access to all program functionality and software updates. Alternatively, select to continue using a trial version of the software. You may evaluate iX Developer with full functionality for 30 days. When the evaluation period has expired, it will still be possible to use the software, but the functions in the Run and Transfer groups will be disabled. Note: If you have already used a Demo version of iX Developer for 30 days, you will not be issued another 30 days for evaluation. Project Size The project size is shown in the lower right of the desktop area when designing an operator panel project. The size was calculated at the latest validation. 1.1.5 Installation The iX Developer software is supplied on a USB stick. When connecting the USB stick to the USB port, the installation starts automatically. Follow the instructions to install iX Developer. If the installation does not start, run the setup.exe file. The installation creates an icon for iX Developer in the group named iX Developer. Click on Start/All Programs/iX Developer 2.10/iX Developer 2.10 to start iX Developer. Note: The iX Developer must be installed on a development PC, a iX TxC target can not be used to develop projects. Beijer Electronics, MAEN831L 15 The Configuration Tool Installation of iX Runtime To install iX Runtime on a PC, insert the iX Developer USB stick and select to install iX Runtime. To run the program, a dongle is required that is supplied by Beijer Electronics. Note: iX Developer can not be run on the same PC as iX Runtime. Note: When using iX Runtime on a PC it is recommended to uninstall a previous iX Runtime before installing a new version. 1.1.6 Configured Features iX Developer offers the possibility to add customer-specific features in the program. This is done through the use of registration keys that are entered after the iX Developer software installation has been done. Clicking on Show Features displays a list of enabled features. To install a new feature, enter the feature registration key under Configured Features and click OK. A restart of the program is required to activate the function. Related information About 1.1.7 Project The top folder for a specific application designed with iX Developer is referred to as the project folder. During runtime, project database files can be updated, for example with new recipes. This means that to completely reproduce a project that has been in operation, it may be necessary to combine source files with files retrieved from the operator panel. Beijer Electronics, MAEN831L 16 The Configuration Tool 1.1.8 File Structure A project contains a set of files related to the functional and graphical design and a set of files related to the runtime operation of the project, where the latter is compiled from the design files. Project Folder When a new project is created, a folder with the project name is created as the top-level container, the Project folder. The files that define the functional and graphical design reside in the top level of the project folder. Other folders are created as a result of validation and build. Symbols Pictures that are used in projects are converted to .png files when the project is validated. Pictures are resized to the largest static usage in any of the project screens, in order to save memory space in the panel. If a picture is enlarged in runtime using dynamics, the enlarged picture will have a lower effective resolution. Project pictures are stored in the Symbols folder as a compressed folder named Symbols.zip. Temp The Temp folder contains intermediate build files from project compilation. The Temp folder also includes the Output folder. The Output folder contains all files needed to run the project in the target. These files are copied to an operator panel when the Transfer command is used. For a PC, the Transfer to folder command is used to copy the necessary files to a USB stick to the runtime PC via a network connection. Note: It is necessary to open ports in the firewall for the runtime PC application. Moving Design Files To move the project files needed for the design: 1. Create a new folder for the project design files. 2. Copy all single files (files not included in any folders) as well as all folders, except the Temp folder, in the project folder. 3. Paste the files in the new folder. Moving Application Project The runtime project can be downloaded to the operator panel using the transfer or export commands, but can also be moved manually: 1. Create the new folder for the project files. 2. Copy the Output folder. Beijer Electronics, MAEN831L 17 The Configuration Tool 3. Paste it in the new folder. Database The database used for iX Developer projects is of SQL Server Compact Edition type. The contents of the database can be managed with third-party database management tools. iX Developer includes a database viewer object that can be used to display database contents in runtime. The database is initially transferred to the operator panel using the transfer command. The database will only be updated if there are changes made in the project that affects the database contents, for example: • Changed or added recipes • Changed or added data loggers • Changes to alarm handling • Changed or added trend viewers A copy of the database can be made with the Upload Database command. Some of the databases can be exported individually in csv, comma separated values, format using the Database Export action. If possible, it is recommended to use the database export action rather than the backup database action. Related information Database Viewer Object Download Export Upload Database Database Export Beijer Electronics, MAEN831L 18 Working with Projects 2 Working with Projects This section describes iX Developer and explains how to work with a project for an operator panel. In iX Developer, ribbon tabs are used instead of menu commands. This reduces the number of steps needed to design complex components, and also supplies an attractive user interface. Ribbon tabs are located in the top section of the tool window. Each ribbon tab holds one or several control groups. Each group contains a set of related controls. Controls are made to design screens, and to make settings for objects and controls in the project. 2.1 Creating a Project A project can be created according to the following sections, but the work process can be adapted and rearranged if needed. 2.1.1 Connecting to a Controller Establishing communication between an operator panel and controller is necessary to allow operator observation and control. The larger the project is, the more important it is to ensure that there is a suitable communication design. There is a built-in DEMO controller in iX Developer. It can be used for test and simulation purposes. Related information Creating a New Project Select Controller Communication Design DEMO Controller 2.1.2 Designing a Screen Set It is important to organize the application well and to consider which functions are necessary. Start with an overall view and then work down to a detailed level. A project contains a number of screens with objects that can exchange data with the controller. Screens can be arranged in hierarchies to achieve a structured application, or organized as sequence controls. When deciding which structure to use, consider how to best describe the process at hand and how to simplify procedures for the machine operator. The complete application, or parts of it, can be tested in the development environment before downloading it to the operator panel. Related information Screens Beijer Electronics, MAEN831L 19 Working with Projects 2.1.3 Designing Additional Functions Alarms Alarms are used to make the operator aware of events that require immediate action. An alarm is set when a certain condition is met. An alarm condition is designed as a logical evaluation of a tag value. Alarms can be divided into groups to create an order of priority. Related information Alarm Management Function Keys Function keys can be used to perform actions and execute scripts. This allows operator control of data and screen functionality independent of which screen is active. Related information Function Keys Multiple Languages Translation of texts and system texts can be performed directly in the application, or via export to a text file to be translated in other software. The file is imported to the application after translation. The application language can be changed in runtime, for example based on a tag value. Note: Pre-translated system texts are provided with iX Developer. These texts are adapted for a PC, which means that they contain more strings than what is available for panel targets. This results in warnings when importing the system texts to projects created for a panel, but these warnings can safely be ignored. Related information Language Management Security Access to objects and actions in the project can be limited using security groups and user passwords. Related information Security Management Text Library With the text library function, text tables can be created, where values are linked to texts. Beijer Electronics, MAEN831L 20 Working with Projects Related information Text Library Audit Trail The Audit Trail function allows tracking of operator actions. Related information Audit Trail Data Logger Data can be logged and saved to file. Bit, 16-bit, 32-bit and Real (Float) values can be logged. Be aware that logging of data consumes system resources and memory. Related information Data Logger Scheduler Setting and resetting digital tags in relation to the real-time clock can be performed using a scheduler, in order to control events in the process at special calendar times. Related information Scheduler Recipes Recipes are used to set or save a predefined group of tags in one operation. Values can be predefined or collected from the controller, and then saved to a recipe in the operator panel. The operator can download the recipe at any time to the controller, which will start working with the recipe values. Recipe handling makes it possible to reuse large parameter sets, to improve efficiency of time critical production where a change of products must be made quickly. Recipe files can be created in the development project or with the operator panel. Related information Recipe Management Reports The reports function allows adding excel report templates to the project. Related information Reports Beijer Electronics, MAEN831L 21 Working with Projects 2.2 Importing an Information Designer Project Existing Information Designer projects can be imported to iX Developer. Information Designer is the previous software used to design projects for the EXTER operator panels. The import function is accessed from the Welcome page, displayed when starting iX Developer. 1. Select the Information Designer project file. 2. Select a name and location for the imported project. 3. Click Finish. The project will be imported to the corresponding iX panel target. All screens will be imported and graphical objects in the Information Designer project will be converted to corresponding iX Developer objects. Some objects may not be supported. Functions such as recipes and data logging work differently in iX Developer, and will have to be reconfigured in the imported project. During the import, a log file of unsupported objects and functions is created. It can be saved to disk for future reference. Note: If there is a crash when importing an Information Designer project, the problem could be solved by installing a hotfix from http:/ /support.microsoft.com/kb/2461678. Beijer Electronics, MAEN831L 22 Working with Projects 2.3 Importing an H-Designer/ADP Project Existing H-Designer/ADP projects can be imported to iX Developer. H-Designer/ADP is the previous software used to design projects for the H-/PWS-series operator panels. The following software versions are required: Software Version ADP 6.50 build 184 iX Developer 2.0 or higher 2.3.1 Exporting the H-Designer/ADP Project First, the H-Designer/ADP project has to be converted to an a2i file from within ADP by following the steps below: 1. Select File/Export iX. 2. Select a name and location for the export file, and click OK. A message box confirms that the export is finished, and after clicking OK, you are asked if you want to see the log file. The log file is saved to the same location as the project file. The log file declares successfully converted items as well as unsupported objects and functions. 2.3.2 Importing the a2i File Then, the exported file is imported into iX Developer using the import function that is accessed from the Welcome page, displayed when starting iX Developer. 1. Select the a2i file. 2. Select a name and location for the imported project. 3. Click Finish. The project will be imported to the corresponding iX panel target. All screens will be imported and graphical objects in the H-Designer/ADP project will be converted to corresponding iX Developer objects. Some objects and functions may not be supported at all, and some objects and functions need reconfiguring in the imported project. During the import, a log file of unsupported objects and functions is created. It can be saved to disk for future reference. 2.3.3 Limitations All parts of the original H-Designer/ADP project will not be fully supported in iX Developer. For example, for objects that use individual controller registers for read and write, only the register selected for write will be connected. Also, patterns and other decoration of objects may not be included in the imported project. The following functions and objects will not be converted, or will need reconfiguration: Beijer Electronics, MAEN831L 23 Working with Projects Function Controller Comment Import of name list and addresses for the first two controllers in the ADP project is supported. Import of controller settings such as IP address and COM settings is not supported. Import of index registers is not supported. Macro and sub-macro Not supported Recipes Not supported Object Comment Action push button The graphical control will be imported but the actions need to be reconfigured. Alarm history table, active alarm list, alarm frequency table and alarm marquee Not supported Animated graphic Not supported Bar graph deviation The graphical control will be imported but needs to be reconfigured. Day of week display The graphical control will be imported but needs to be reconfigured. Dynamic ellipse and dynamic rectangle Not supported Historical data table and historical event table Not supported Moving sign Not supported Multistate indicator Not supported Pie graph Not supported Set value push button Not supported Seven segments Not supported Trend graph The graphical control will be imported but the curves need to be reconfigured. X-Y chart Not supported Shape Comment Arc Not supported Free form Not supported Parallelogram and solid parallelogram Not supported Pie and solid pie Not supported Scale Not supported Beijer Electronics, MAEN831L 24 Working with Projects Shape Comment Shape Not supported Solid polygon The graphical control will be imported but needs to be reconfigured. 2.4 Optimizing Performance The following section presents a couple of issues to consider in order to optimize the iX Developer project. Some parts are related to the communication driver; other parts concern CPU load and flash operations. 2.4.1 Communication Performance Signal Types Tags used for driver communication can be static or dynamic. These are updated in different manners. Static Tags Static tags are updated continuously, even if they are not currently shown on the panel display. Additionally, the operator panel reads the following items continuously: • Alarm tags • Data logger tags • Multiple languages tags • Controller tags with value change events The communication time is not affected by the following: • Alarm messages • Schedulers • Tags linked to function keys Dynamic Tags Dynamic tags are updated only when they are presented on the display. An analog numeric object serves as an example of when a dynamic tag is used. 2.4.2 Communication Design This section describes how tags are read and how the reading can be optimized to make the communication between the operator panel and the controller fast and efficient. Keeping Tags in Consecutive Order Define controller tags consecutively, for example M0.0-M11.7. If the tags are spread (e.g. I0.4, Q30.0, M45.3 etc.) a complete update will take longer time. The number of tags in each package depends on the used driver and information about this can be found in the driver help file. Beijer Electronics, MAEN831L 25 Working with Projects Tag Packages Tags to be transferred are not all transferred at the same time, but are grouped into packages. The number of tags in each package depends on the driver for the controller. To make communication as fast as possible the number of packages should be minimized. Consecutive tags require a minimum number of packages, but it is perhaps not always possible to program it this way. In such cases there is a “waste” between two tags. Waste is the maximum distance between two tags that can be kept in the same package. The size of the waste depends on the driver used, and is included in the driver help file, e.g as in the table below: Driver x Analog signals Digital signals Number of signals/package 29 124 Waste 20 0 Bit-Addressed Words vs. Regular Bit Devices In most drivers it is better to use bit-addressed words than regular bit devices, since you can fit more digital devices in one telegram when using bit-addressed words, than when using bit devices. Example Driver x Analog signals Digital signals Number of signals/package 29 124 Waste 20 0 This specific driver can have 29 analog devices or 124 digital devices in one telegram. If you use bit-addressed words in the selected driver, you can fit 464 (29 × 16) digital devices in one package. This is almost four times as many devices. ASCII Strings ASCII strings are transmitted in separate telegrams, and having a large number of strings will affect the communication performance negatively. If an ASCII string only has a small number of different string values, it may be a good idea to use the Text Library function in iX Developer with predetermined contents, thus minimizing impact on driver performance. Related information Text Library Beijer Electronics, MAEN831L 26 Working with Projects 2.4.3 Performance in the operator panel It is important to understand that due to the complex nature of a running system, there are several things that affects the overall performance. The following list gives some examples of things to consider, when it is necessary improve the performance of the operator panel: • Number of tags • Number of sampled tags in trend viewers and data logger • Number of alarms • Driver performance • Multiple drivers • Type of panel • Alarm list size • Size of pictures • Scripts Poll Groups The default setting in iX Developer updates all tags every 500 ms. If some tags may be updated less often, it is possible to assign them to a poll group with a lower update interval. Poll groups are configured in the Tags configuration page. Screens Optimizing screen update time minimizes CPU load and flash operations. This can make a significant difference in graphic-intense projects that approach the limits of the panel’s capabilities. Screen changes are carried out most efficiently through a show screen action, either on a function key or an object. Trend Viewers and Data Loggers Several trend viewers can show data from the same log item. In order to improve performance in the panel, it is strongly recommended to place all log items logged on the same frequency/event in the same data logger or at least reduce the amount of data loggers. Try to avoid having one data logger for each trend viewer. Beijer Electronics, MAEN831L 27 Working with Projects Gradients Using objects with gradients creates a slightly higher load on the CPU. If a large number of objects use gradients, this will make the screen update time significantly slower. Pay special attention to objects with gradients that are updated frequently, e.g. a bar graph with a style with gradients connected to a tag that changes at short intervals. Reports Using the reports function in a project will result in an increased panel startup time. Related information Action Groups Trend Viewer Reports Data Logging Strategies Symbols 2.5 Moving Objects with the Touch Screen iX panels with touch screens do not have a built-in keyboard. All maneuvering is done with the touch screen by pressing distinctly with a finger. Because of the resistive touch technology, the screen can only apprehend pressing on one place on the panel at the time. Pressing two points at the same time is interpreted by the panel as a point midway between the two pressed points. Related information 2.5.1 Operate Objects For an object to react, it is necessary to specify the behavior, typically by assigning a tag and defining an action. All objects can have actions linked to mouse down, mouse up, mouse enter and mouse leave events. Some objects have a predefined behavior, like sliders setting values, but can also have actions linked to mouse down and mouse up events. Button Pressing a button triggers a click- and mouse button event. Text Box Pressing on a text box object displays a virtual alpha-numeric keyboard on the panel screen. Type a text using this keyboard and finish by pressing [ENTER]. Beijer Electronics, MAEN831L 28 Working with Projects Analog Numeric Pressing on an analog numeric object displays a virtual keyboard on the panel screen. The keyboard type depends on the format chosen for the Analog Numeric — String, Integer, Decimal, Hex or Binary. Enter a value using this keyboard and finish by pressing [ENTER]. In runtime a validation of the value is done. If the value entered is out of bounds, the corresponding limit value for the object will be shown. Slider Pressing on the desired value position of a slider object sets it to the pressed position. Related information Actions Ribbon Tab Mouse Button Action Triggers Click Action Trigger Virtual Keyboard Validation Group 2.6 Peripherals 2.6.1 USB External devices such as a USB hub, flash drive, mouse, or keyboard can be connected to the USB host port. 2.6.2 Ethernet The operator panel has built-in Ethernet port(s) for connection to controllers via TCP/IP. The number of ports varies by model. Related information IP Settings 2.6.3 Memory Card An external memory card can be used as storage of e.g. pdf files and media files, to reduce used internal memory. Access to the files on the external memory card is available via scripting. Related information Project Group Beijer Electronics, MAEN831L 29 Development Environment 3 Development Environment This section describes how to work with iX Developer. Clicking the Options button in the File menu allows adapting the tool behavior. Related information File Menu Options 3.1 Starting iX Developer Click on Start/All Programs/iX Developer 2.10/iX Developer 2.10 to start iX Developer. iX Developer can also be started from the command line. When iX Developer is started, it is possible to: • Create a new project using a wizard • Open an existing project - a list of recently opened projects is displayed • Open a sample project • Upload a project from a target • Import a project created in Information Designer • View the User’s Guide, based on an example project that serves as an instructive introduction to iX Developer Projects can also be created or opened later from the File menu. Related information Creating a New Project Importing an Information Designer Project Starting iX Developer from the Command Line Upload from Target Beijer Electronics, MAEN831L 30 Development Environment 3.1.1 Creating a New Project To create a new project using the wizard includes the following steps: 1. Start iX Developer. 2. Select to create a new project. 3. Select target for the project. 4. Select controller brand and model. 5. Name the project and define where files are to be saved in the PC environment. Select operator panel Select the appropriate target from the presented set of operator panel/PC. The target can be changed later, from the Settings group on the Project ribbon tab. When working with a project for panel T7A, T10A or iX TxB, it is possible to select the rotation of the panel from a drop-down list. When working with a project for a standard PC, it is possible to select resolution from a drop-down list. The PC resolution can be changed later, by entering the Settings group on the Project ribbon tab. Related information Changing Project Target Select Controller Select the appropriate controller for the project. Beijer Electronics, MAEN831L 31 Development Environment The demo controller, including regular tags (data containers) and counters, is used to design and test a project directly on the development PC without connection to an external controller. Internal tags that work like controller tags, but are independent of an external controller, can be defined. It is also possible to connect to an external OPC server. The controller can be changed later by clicking the Controller button on the Controllers tab of the tags configuration page. A project can connect to more than one controller. To set up multiple controllers: Related information Controller DEMO Controller Internal Tags External OPC Server Multiple Controllers Select Location The Select Location dialog controls naming of the project and where project files are saved in the computer environment. Beijer Electronics, MAEN831L 32 Development Environment 1. Change the project name, if desired. 2. Select where to store the project files by clicking Browse, or accept the suggested location. 3. Click Finish to create the new project. 3.1.2 Opening a Project To open an existing project using the wizard includes the following steps: 1. Start iX Developer. 2. Select to open a project. 3. Browse to the project file in the appearing “open project” dialog. Note: It is possible to open a compressed ZIP file of the iX Developer project. The user will be prompted for a path where the ZIP file can be decompressed. Related information Compress Project Download 3.1.3 Getting Familiar with iX Developer The ribbon tabs (e.g. Home, System and Insert) are located in the top of the window when iX Developer is started. The control groups (e.g. Clipboard, Screen, Objects on the Home ribbon tab) are available in the ribbon area. Beijer Electronics, MAEN831L 33 Development Environment The Project Explorer contains a folder area, and is managed as a docked window. The desktop area is where screens are drawn and where tags and functions are handled. Configuration of objects on a screen is mainly performed using the controls in the Home and General tabs. Selecting an object on the screen displays the Home ribbon tab; double-clicking displays the General tab, except for the Button object, for which the Actions tab is displayed instead. Several common commands are also available by right-clicking on an object in a screen. Beijer Electronics, MAEN831L 34 Development Environment Related information Project Explorer Positioning Windows Screens Tags Keyboard Navigation Pressing Alt on the keyboard displays which keyboard shortcut commands can be used to execute a command or to enter a control group, e.g. Alt + F opens the File menu, and Alt + I displays the Insert ribbon tab control groups. Keyboard Shortcuts and Function Key Commands The list below includes some of the keyboard shortcuts and function key commands that are available in iX Developer: Keyboard shortcut / function key Ctrl + P, [number of the screen] Description Switch between screens according to their order on the desktop Ctrl + E, L Lock selected elements on active screen (E indicates active editor) Ctrl + E, H Hide selected elements on active screen (E indicates active editor) Ctrl + Z Undo Ctrl + Y Redo Ctrl + A Select all Ctrl + X Cut Ctrl + C Copy Ctrl + V Paste Ctrl + N New project Ctrl + O Open project Ctrl + S Save project Ctrl + B Bold style Beijer Electronics, MAEN831L 35 Development Environment Keyboard shortcut / function key Description Ctrl + I Italic style Ctrl + U Underline F1 Display help file. Pressing F1 from within the Script Editor displays scripting help. F5 Validate project F6 Run 3.1.4 Starting iX Developer from the Command Line iX Developer can also be started from the command line, by entering: "[Path to the NeoIDE.exe file]" "[Project location]\[Project name].neoproj" Example To start iX Developer, and open the project named Test1 in the directory C:\MyProjects, select Run from Windows start menu, and type: • "C:\Program Files (x86)\Beijer Electronics AB\iX Developer 2\Bin\NeoIDE.exe" "C:\MyProjects\Test1\Test1.neoproj" 3.1.5 File Menu The File menu contains commands for creating, opening, closing saving and compressing projects. It also offers the possibility to upload a project from a target and to update drivers and iX Developer software via Internet or from file. The File menu is accessed by clicking on the top left button. Beijer Electronics, MAEN831L 36 Development Environment New When you start iX Developer and select to create a new project, a wizard guides you through the creation of a new project, in the same way as having selected Create New Project from the Welcome page. Related information Creating a New Project Open Selecting Open displays a dialog that allows selection of an existing project file by browsing. Save Selecting Save saves the project to the current project folder. Save As Selecting Save As allows saving the project with a different name and/or in a different location. To ensure that the original project remains unchanged, the new project file must be created with the Save As command before modifying its contents. Creating a new folder when using the Save as command helps keeping the large number of project files neatly collected and easy to overview. Beijer Electronics, MAEN831L 37 Development Environment Note: Selecting Save as cannot be used in order to make modifications of an existing project, keeping the original project unchanged, and saving the new version with another name. Changes will affect the original project anyway. It is recommended to make a backup copy of the original project, for example by using Windows Explorer, prior to modifying it. Compress Project Selecting Compress Project compresses the project and saves it as a ZIP file. The user will be prompted for a path where to save the ZIP file and will also be offered the possibility to password protect the ZIP file. Related information Compress Project Upload from Target Selecting Upload from Target allows uploading a compressed ZIP file of a project from a connected target. Note: To be able to use the “Upload from target” function, the checkbox “Download all source code” on the “Download” dialog must have been clicked before downloading the project to an operator panel. See the “Download” chapter for more information. Beijer Electronics, MAEN831L 38 Development Environment Parameter Description Connected targets Choose the target type to transfer the project from. Upload Starts the transfer of the ZIP file from the selected target. The user will be prompted for a path where to decompress the ZIP file. If the ZIP file is password protected, the user must enter the password to be able to upload and decompress the ZIP file. Upload is supported for iX TxA, iX TxB, iX TxC and PC targets. If greyed out, please update to latest “System program”. Verify The verify function enables the user to check if a target platform configuration is identical to the project configuration. Verify is supported for iX TxA, iX TxB, iX TxC and PC targets. If greyed out, please update to latest “System program”. Log Show the data being logged during the upload and verify process. Related information Download iX panel Upgrade Close Project Selecting Close Project closes the current project and activates the start wizard. Update Software The latest updates and patches for iX Developer can be downloaded directly via an Internet connection. Update Drivers Drivers can be updated via Internet or from file. Related information Updating Drivers About Clicking the About button displays information about the current version of iX Developer including the product registration key. Beijer Electronics, MAEN831L 39 Development Environment Note: The active project needs to be saved in order to access the list of features. Note: If an iX Developer version 2.0 based feature has previously been installed, the registration key will automatically be converted when upgrading to iX Developer version 2.10. Options Clicking the Options button allows making settings that control the behavior and appearance of iX Developer. Language Options Select in which language to run iX Developer. A restart of the application is required for the new language selection to have an effect. Build Options Select whether the CheckForUnusedTags function should be activated or not. When building a project, the function checks for unused tags and presents a dialog in which it is possible to remove these. Related information Removing Unused Tags Script Debugger Options • • • Arguments: The “%1” argument is where the file name will be inserted. This option is applicable only when Custom is selected for DebuggerType. Debugger: Full path to the current debugger application. DebuggerType: Select Default or Custom. With the Default setting, the system will automatically provide the path to the debugger, if found. Custom allows the user to provide the path to a specific debugger. Tags Editor Options Selections under Tags Editor Options makes it possible to customize which columns to show by default in the tags configuration window. Beijer Electronics, MAEN831L 40 Development Environment Ribbon Options • • GoToDefaultRibbonStrategy: This option changes the active ribbon based on the context of the selection in the desktop. When an object is created or selected, the General tab tabs becomes active in the ribbon area. SimpleRibbonStrategy: This is the default setting, and does not swap the active ribbon when the context of the current desktop selection changes. Clicking on an object opens the Home ribbon, and double-clicking opens the General ribbon for most objects, but for buttons the Actions ribbon is activated. Screen Editor Options • • • • EnableInPlaceEditing: This option allows editing an object directly when selecting it on the screen without having to access its properties on e.g. the General ribbon tab. ShowPanelAround: This option displays an outline of the selected panel model around the desktop area. ShowSizeAndDistanceInformation: The size of an object is displayed while resizing it. Distance to the edges of the desktop area is displayed when moving an object. The indication can be turned off, if desired, by setting this option to False. ShowToolTips: Useful tool tips are automatically displayed in iX Developer. These can be turned off, if desired, by setting this option to False. The screen editor options can also be modified using buttons in the lower part of the desktop area. Related information Screen View in Desktop Area Mini Toolbar Options The mini toolbar is a context menu addition with a subset of common controls from the Format, Tag/Security and Name groups. • ShowMinitoolbarAutomatic: When this option is set to True the mini toolbar part of the context menu is displayed already when an object is selected. The mini toolbar will always show in combination with the context menu. The mini toolbar will remain active for a selected object, also after it has disappeared, until the selection or the pointer moves away. To show the mini toolbar again move the mouse pointer to the upper right of the object. With the default setting, False, the mini toolbar will only show in combination with the context menu for an object. Exit Clicking the Exit button closes the application. If there are unsaved changes, you are asked if you want to save them before exiting. 3.1.6 Quick Access Toolbar The Quick Access Toolbar contains controls, expected to be used frequently. The toolbar can be customized to include other buttons. Beijer Electronics, MAEN831L 41 Development Environment Save Saves the current project to the location specified when the project was created. Undo Executed commands can be undone using the Undo button. Clicking the small arrow at the right of the Undo button lists recently made changes for selection of the undo operation. The keyboard shortcut for Undo is Ctrl + Z. Redo A command that has been undone with Undo can be redone with Redo. The keyboard shortcut for Redo is Ctrl + Y. Run Performs a validation of script code and compiles the project. If the project is valid, a simulation is started on the development PC with connection to the selected controller. Also available from the Transfer/Test group on the Project ribbon tab. Simulate Performs a validation of script code and compiles the project. If the project is valid, a simulation is started on the development PC without connection to the selected controller. Also available from the Transfer/Test group on the Project ribbon tab. Related information Project Ribbon Tab Customizing Quick Access Toolbar Some of the ribbon controls can be added to the Quick Access Toolbar. Right-click on the desired control and select Add to Quick Access Toolbar or Remove from Quick Access Toolbar. Beijer Electronics, MAEN831L 42 Development Environment 3.1.7 Ribbon Tabs The ribbon tabs contain grouped controls for editing and maintaining a project, screens and objects. Click on any ribbon tab to display the ribbon. Use Minimize the Ribbon and Maximize the Ribbon to collapse and expand the ribbon control tabs, or double-click on a ribbon tab. This can also be done from the Quick Access toolbar. Related information Home Ribbon Tab Project Ribbon Tab System Ribbon Tab Insert Ribbon Tab View Ribbon Tab Dynamics Ribbon Tab General Ribbon Tab Actions Ribbon Tab Quick Access Toolbar 3.1.8 Additional Properties Some ribbon groups include additional properties that can be configured by clicking the small arrow in the lower right corner of the current group. The properties window displays available property groups available for selection at the left. The property groups available differ depending on which object is selected. Beijer Electronics, MAEN831L 43 Development Environment 3.2 Desktop Area The desktop area displays screens and configuration pages for project components such as controllers and functions. The desktop area shows only one screen or component at a time. When multiple screens or components are opened a row of tabs are shown in the upper part of the desktop area. Clicking on a tab activates its contents for editing. If there are more tabs open than can be displayed, navigation arrows in the upper part of the desktop area can be used to scroll between them. 3.2.1 Screen View in Desktop Area Object appearance as well as size and appearance of the current screen can be managed by controls in the lower part of the desktop area. It is also possible to turn on and off the in-place editing function that allows editing text in an object directly when selecting it on the screen. Show/Hide Size and Distance Information The size of an object is displayed while resizing it. Distance to the edges of the desktop area is displayed when moving an object. Show Size and Distance Information is activated Beijer Electronics, MAEN831L 44 Development Environment Show/Hide Info It is possible to show information about which tag each object is connected to, and if dynamics or actions are configured for the object, by clicking on the Show/Hide Info button. Show Info is activated Show/Hide Screen Tooltips A semi-transparent tooltip is displayed for each object when the cursor is rested on it, if Show Screen Tooltips is selected. Tooltips for e.g. menu commands are not affected by this setting; only tooltips for objects on the screen. Show Screen Tooltips is activated Enable/Disable In-place Editing This option allows editing an object directly when selecting it on the screen without having to access its properties on e.g. the General ribbon tab. In-place Editing is enabled Show/Hide Panel Frame Show/Hide Panel Frame displays or hides a virtual panel frame surrounding the screen, when an operator panel is selected as target. Fit to Screen Click on Fit to Screen to make the screen the maximum size that will fit in the desktop area. Beijer Electronics, MAEN831L 45 Development Environment Zoom The following methods can be used to zoom in to or out from the desktop area: • Selecting a set zoom value from the Zoom drop-down list. • Setting the Zoom Slider to a desired zoom level. • Clicking the Zoom In and Zoom Out buttons. • Placing the mouse pointer anywhere in the screen and using the scroll wheel. Pan Panning of the current screen is possible in Layout mode, if the screen is larger than the desktop area. • Press and hold [Spacebar] (the mouse pointer will change its appearance from an arrow shape to an open hand). • Drag to pan the screen (the mouse pointer hand closes in panning mode). 3.2.2 Desktop View Modes Screens and functions have different view modes. The default setting is Layout view mode, but screens and functions can be partly viewed and edited directly in code. The desired mode is selected from the lower left part of the desktop area. The code for screens is in xaml and in C# for script. Desktop view mode tabs Caution: Incorrect code entered in text mode (Xaml and Script) may result in errors that are not possible to recognize during analysis and build. Erroneous code may result in unpredictable behavior and loss of data. Layout Screens and objects are usually edited in Layout view mode. XAML A screen layout is defined in XAML (eXtensible Application Markup Language) code. The .xaml files are stored in the project folder. XAML code can be added and changed in the Xaml view mode. Any changes done in the XAML code will affect the screen layout. Script In Script view mode scripted actions can be configured for screens, objects, tags, function keys etc. Beijer Electronics, MAEN831L 46 Development Environment Note: To display a script guide that describes iX Developer scripting possibilities in detail, select Script view mode, click anywhere in the code, and press F1. Caution: Beijer Electronics only offers support for scripting for the included examples in iX Developer Objects that can trigger events will show with expandable nodes in the Script view. Clicking the [+] of such a node expands it and shows the trigger events for the object. Double-clicking on an event inserts its method heading with an empty code body. Scripts are written in C# syntax. When actions are defined for an object, this will have precedence over script code. Note: Avoid using multiple trigger methods as this may lead to undesired behavior. Use either a script or define actions with the controls on the Actions tab. Avoid using Click Action Trigger actions in combination with Mouse Button Action Triggers. Note: Creating scripts that block execution, waiting for other resources or user input, is not supported. Note: The ValueOff and ValueOn events for internal variables are available for selection in script mode, but they are not executed when running the project. Note: The ValueChangeOrError event is available in script mode, but it should only be used with controller tags. It does not support internal variables or system tags. Note: If an external editor, e.g. Visual Studio, is used for editing a script, the cross-reference will not be updated when building the project in iX Developer. The Remove Unused Tags function will report tags used in these scripts as unused. For iX Developer to recognize a change made with an external editor, the script file needs to be opened in iX Developer and provided with just any small change using the script editor in iX Developer. Save the project once more before build. Note: Avoid static state when using script since this might cause memory leaks. Always remember to unsubscribe events previously subscribed to, in order to avoid memory leaks. Beijer Electronics, MAEN831L 47 Development Environment Complex behavior can be created using script code. Selections made in Layout view mode are kept when switching to Script view mode and vice versa. Nodes with edited script code are highlighted in the expanded tree view. Highlight of an edited node in the tree view It is possible to disable a script without deleting it, by right-clicking on a node with script, and selecting Unhook event handler. This excludes the script from being run, even though there is code, and the node will no longer be highlighted. Some objects, such as text boxes, list boxes and combo boxes, rely on script code for advanced behavior. Name Completion A context sensitive name completion feature (IntelliSense) can be activated during typing with [Ctrl] + [Spacebar] and it triggers automatically when a period (‘.’) is typed after a code element. Using items outside the current scope is defined with the keyword Globals, but it is not possible to script to other screens than the currently selected. Methods are completed without argument lists. Add parenthesis and arguments to complete a selection. Note: Incorrect script code may result in errors that are not possible to recognize during analysis and build. Erroneous code may result in unpredictable behavior and loss of data. Beijer Electronics, MAEN831L 48 Development Environment Note: Not all tags available in Tags are visible in IntelliSense when scripting. The name completion function will not show tags and objects that have names similar to script command names. If there are errors in script code during validation of a project, it is possible to navigate to the erroneous position by double-clicking the error in the error list. Press [Ctrl] + [Shift] + [Spacebar] while editing to get a tool tip with the allowed variants of an overloaded method. Use [Up arrow] or [Down arrow] to scroll. Make a new selection or press [Esc] to close the tool tip. Note: It is necessary to do an explicit type casting of the tag format for operands of an overloaded method. Script code can be used to format objects. If an object attribute is selected a tool tip with allowed methods will appear. Methods not part of the default C# API is either addressed with the full path or the library can be included. Related information Error List Tag Format Format Group Example: Filling a rectangle object using a color gradient from one color to another color. The following code implements a gradient from red to purple in the rectangle. The library with the “BrushCF()” method is added with “using” in the beginning of the example, together with the default libraries. Beijer Electronics, MAEN831L 49 Development Environment Note: When a timer is used in script code, it is important to close the timer in the code. Note: Renaming objects and screens included in scripts in Layout mode will cause the scripts not to function. Referenced Assemblies Third-part components and objects that are added to the project via Referenced Assemblies will be made available when scripting. Their methods and properties will be included by the name completion function, in the same way as for built-in components. Related information Referenced Assemblies Name Completion Aliases Aliases can be configured in the Aliases view mode. Related information Aliases 3.2.3 Positioning Windows The behavior of many windows can be adapted in order to suit the user; for example shown or hidden, or moved to another position on the desktop. Docked windows representing control tools can be converted to floating windows. Control tools can be docked separately or be managed as a tabbed group in a window. A docked tool window supports auto-hide. When a window is dockable, a guide diamond appears when the window is moved on the desktop. Extended position arrows appear at the desktop edges. The guide diamond makes it possible to dock a tool window to one of the four sides of the desktop area. When a tool window is undocked, it floats on top of the desktop. Dropping a tool at the center of a guide diamond creates a tabbed group of the tools inside the window that the guide diamond belongs to. Beijer Electronics, MAEN831L 50 Development Environment Docking a Tool Drag the window heading to any position on the screen. If the tool is not docked it will become floating. To re-dock a tool: 1. If the tool is docked already, double-click on its heading to change to floating. 2. Drag the tool to the center of the desktop. A guide diamond appears, pointing towards the four edges of the desktop. Release the window to the desired direction. When the mouse pointer is in position, an outline of the window appears in the designated area. Docking a Tabbed Group It is possible to dock a tool to an existing group of tools, creating a grouped window with tabs: 1. If the tool is docked already, double-click on its heading to change to floating. 2. Drag the tool to the center of the existing group. A guide diamond appears. 3. Drop the tool at the guide diamond center. Releasing a Tool from a Tabbed Group When a window contains multiple tools, they appear as tabs in the lower part of the window. To release a tool that resides in a tabbed group, drag the tab for the tool and drop it on the desktop. Auto-Hide Auto-Hide enables a maximized view of the desktop area by minimizing tool windows along the edges of the desktop area when not in use. Auto-Hide is turned on and off by clicking the Auto-Hide pushpin icon on the window title bar. Tool windows expand to their original size when the pointer hovers over them. When a hidden tool window loses focus, it slides back to its tab on the edge of the desktop area. While a tool window is hidden, its name and icon are visible on a tab at the edge of the desktop area. Beijer Electronics, MAEN831L 51 Development Environment Note: The Auto-Hide function has to be turned off before a tool can be moved. 3.2.4 Configuration Pages Many functions, such as Alarm Server and Data Logger, are configured via table style configuration pages. In some cases there are multiple configuration pages for a feature. When applicable, the configuration page for a feature can be opened to allow direct access. For example, it is possible not only to select a tag, but also to declare new tags, directly through the Select Tag field for an object. Home In a configuration page, the Home tab is used to add and remove items in a function or controller. Edit Table Cells Use the Add button to append a new item in the table view of the configuration page. Use the Delete button in the Home tab or the Delete button on the keyboard to remove the active row in the table. Multiple rows can be selected using the [Ctrl] or [Shift] keys. Keyboard Navigation Navigation in configuration pages can be made using arrow keys or with [Tab]. Pressing F4 inside a table cell will in some cases open selection list. Pressing [Enter] acknowledges a selection, and pressing [Esc] cancels a selection. Beijer Electronics, MAEN831L 52 Development Environment Press [Delete] to remove a value when editing in a field. If a row is selected when pressing [Delete], the entire row will be removed from the table. Use [Spacebar] to toggle a value in a check box. Press [Ctrl] + [Tab] to shift focus from the table. Navigation in Layered Pages A layered configuration page (for example the alarm items page) has some specific navigation functions. Keyboard navigation down is made by pressing [Ctrl] + [Down Arrow]. This will navigate into an expanded group, and out again when at the last of the expanded rows. Keyboard navigation up and out of a group is done by pressing [Up Arrow]. Expand a group with [Ctrl] + [+], collapse with [Ctrl] + [-]. Keyboard navigation between fields inside a group is made with [Right Arrow] or [Left Arrow]. Pressing [Enter] acknowledges a selection, and pressing [Esc] cancels a selection. Auto Fill Fields in the configuration tables are when possible automatically filled in when [Down Arrow] is pressed when at the last table row. When needed, names and tag identifiers are incremented to avoid exact copies of symbolic names and tag identifiers. Incrementing is done if the last part of the string is an integer number. A “1” will be appended to the string if no numeral character ends the string. This is useful when there are consecutive tags of the same type in the controller data. Filtering Items Items in configuration pages can be filtered by selecting Show Selection from the Show Selection/Show All button. Clicking the button opens the Filter Builder. Beijer Electronics, MAEN831L 53 Development Environment Several conditions can be used, and the different values/operators that can be used for making conditions are displayed when clicking on the condition building blocks. Operands and operator nodes are context sensitive. Name strings are not case sensitive. Values in the filter builder are saved individually for each function during an edit session. A filter is built as a logical expression tree. A filter typically has operations on individual column values as leaf nodes and logical operators serve as main nodes. The following color scheme is used: Color Function Red Logical operator Blue Column operand Green Value operator Grey Value operand An indication that a filter is used is displayed at the lower part of the configuration page. Selecting Show All from the Show Selection/Show All button in the configuration page displays the complete, unfiltered list. 3.3 Screens Screens contain objects that can be displayed for the operator in runtime. A screen can contain predefined objects, such as buttons or an alarm list. Pictures of physical objects, such a pump, connected to controller data, can also be included to be used for control and monitoring of the physical object. Properties are defined for each screen. Screens are edited in the desktop area and can be managed from: Beijer Electronics, MAEN831L 54 Development Environment Location Used for The Navigation Manager Adding new screens, managing links between screens, deleting screens The Screens list in the Project Explorer Adding new screens, importing screens from other projects, renaming screens, setting screen as startup screen, saving screens as templates, deleting screens, editing screen scripts The Screen group of the Home ribbon tab Adding new screens, selection of screen template and background screen, deleting screens, language selection, screen security The Screen group of the General ribbon tab Managing popup screen properties and selecting screens for preloading 3.3.1 Screen Name and Screen Title All screens have unique names, visible e.g. in the Project Explorer and the Navigation Manager. Names of all open screens are shown as tabs in the desktop area. The name of the current screen is displayed and can be changed in the Name group of the Home tab. In runtime, the screen name is displayed together with the project title in the title bar as default. To display something other than the screen name, a screen title may be added in the Screen group on the General tab when the screen is selected. Note: The screen name in iX Developer is not updated when the screen title (for display in runtime) is renamed. If the project title on the Project tab is left empty, only the screen name or screen title is displayed. 3.3.2 Background Screen It is possible to use another screen as background screen, to, for example, create a uniform design of the screens in the project and avoid repetitive configuration. Background screens belong to the current project. Beijer Electronics, MAEN831L 55 Development Environment Example Follow the steps below to use a background screen: 1. Create a background screen with some reusable elements, such as navigation buttons, and rename it to a suitable name. 2. Create a new screen. Beijer Electronics, MAEN831L 56 Development Environment 3. Keep the new screen open on the desktop, and select the background screen from the Screen group of the Home ribbon tab. The background screen is now used for the screen. Any modification made to the background screen will be reflected in all screens using it. 3.3.3 Startup Screen The startup screen is the first screen that opens when a project is executed. By default, Screen1 is set as startup screen. Another startup screen can be set at any time by right-clicking on the screen on the desktop or in the Project Explorer and selecting Set as Startup Screen. The selected startup screen is easily distinguished from the other screens in the Project Explorer by a blue outline when in focus. 3.3.4 Screen Template The installation of iX Developer includes a number of screen templates with basic functionality. It is also possible to save your own screens as screen templates, by right-clicking on the current screen and selecting Save Screen as Template. The screen template can be used in the current or other iX Developer projects. If a selected screen template contains tags that were not previously included in the project, you can select to automatically add these to the Tags list. To use a template screen, click the lower part of the Add Screen button in the Screen group of the Home ribbon tab. A preview of screen templates is displayed. User-created as well as predefined screen templates may be deleted by right-clicking on the template in the preview and selecting Delete Screen Template. The folder of the selected screen is then permanently deleted from disk. Beijer Electronics, MAEN831L 57 Development Environment 3.3.5 Screen Security Using security settings for screens makes it possible to restrict access to screens based on user security groups, similarly to object security. It is not possible to set security for the Startup screen. When using a background screen, the security settings of the top level screen are applied. When screens are imported from other iX Developer projects or from Information Designer, security settings are included and will be used in the current project. Related information Object Security and Visibility 3.3.6 Popup Screen Normally, only one screen is visible in the operator panel in runtime. Sometimes, a popup screen that behaves like as a floating window may be useful. Any screen can be configured as a popup screen: 1. Check Popup screen in the Screen group of the General tab. 2. Set the start position coordinates (X, Y) to determine where the screen will open. The position (1,1) corresponds to the upper left corner of the screen. 3. Set the desired width and height in pixels of the screen resolution. Clicking Modify Screen Size/Position allows changing the popup screen size and position by dragging it with the cursor. The coordinates are updated automatically. Modal Popup Screen Checking the Modal option makes the selected popup screen modal, which means that the user cannot interact with other screens while this screen is visible. All other screens will still be updated. Note: It is not recommended to have more than two parallel modal popup screens open at the same time. Note: Do not use multiple modal popups triggered by background events such as alarms, tag value changes, etc. Style Different styles can be selected for popup screens for PC targets. Beijer Electronics, MAEN831L 58 Development Environment Note: When using a web browser or pdf viewer object in a popup screen, only the default style for the popup screen is supported. Open Popup Screen A popup screen is opened in runtime by a Show Screen action on an object. Note: When configuring a Show Screen action for a popup screen, position of the screen can be selected. These settings override the settings made in the Screen group of the General tab. Close Popup Screen A popup screen is closed in runtime by a Close Screen action on an object. If the Close Screen action is triggered from a tag, this will close both the popup screen and the parent screen. 3.3.7 Preloading Screens The first time a screen is opened in a running project, some time elapses while compiling it. In order to minimize this time, it is possible to preload a maximum of 10 screens from the Screen group on the General tab while the screen is selected. The selected screens will then be loaded at application startup instead of when opening the screen. Note: The time saved at screen opening is instead added to the application startup time. Events related to screen actions (Screen Opened, Screen Closed and Screen Closing) will not be carried out when a screen is preloaded. Preloading the startup screen (or its background screen) has no effect. Popup screens cannot be preloaded. The preload function is available for operator panel targets only. 3.3.8 Importing Screens Screens from other projects can be imported, by right-clicking in Screens area of the Project Explorer and selecting Import. If the selected screen has a name identical to one of the existing screens, a new screen name is proposed. If the imported screen includes tags that do not already exist in projects, you are asked if you want to add these. Beijer Electronics, MAEN831L 59 Development Environment Note: No tag information, other than tag names, will be added by the import function. 3.3.9 Grid There are different methods to align objects in screens; Snap objects to other objects and Snap objects to grid. Grid properties are managed by right-clicking on the current screen and selecting Grid from the context menu. It is also possible to select not to snap objects. Grid settings are global and will affect all screens. Snap Objects to Other Objects To help position objects in a screen snap lines will appear when an object is moved across the screen. The snap lines are used to align the dragged object with other objects on the screen. Blue snap lines appear whenever the right, left, top, or bottom boundaries coincide with other object boundaries. A horizontal red snap line indicates that the center of the object is aligned with the center of another object. For vertical center alignment, select the objects and use Align Center in the Arrange control of the Format group. Snap Objects to Grid Use the context menu and select Snap to Grid to enable binding to grid points for a moved object. Snap to Grid mode disables Snap Lines for dragged objects. Grid The different grid styles can be used as a help pattern when doing the layout of the objects on the screen. Grid setting Description Spacing Number of pixels between grid lines Show grid on screen Displays the grid on the screen Grid style Selection between dots and lines as grid style Beijer Electronics, MAEN831L 60 Development Environment 3.4 Objects Objects that can be created in a screen are available from the Objects group and the Component Library. Snap lines are used to position objects in a screen and align a moved object with other objects. Information about tag connections as well as size and distance information for objects on the current screen can be displayed by using the buttons in the lower part of the desktop area. Related information Objects 3.4.1 Handling Objects Create To insert a default-sized object, click the position on the screen where you want to place the object. To give the object a specific size and shape, press the mouse button and drag to create the object on the screen. Press and hold [Shift] while creating an object to retain the aspect ratio of the object. When creating a line object, press and hold [Shift] to constrain the line at 45 degrees angles. Select The Select tool is available at top left in the Objects group when the group is not expanded. The Select tool is the default tool when editing screens. After applying any other object control, the mouse pointer will return to the Select tool. When the Select tool hovers over a selected object the mouse pointer changes to a cross with arrowheads. Move The position of an object is part of the properties for the object. The position of an object can be changed in different ways: • Click and drag an object to move it to the desired position. • Open the property grid and edit the Left and Top coordinates. To move the selected object one pixel at the time, select the object and use the arrow keys on the keyboard. Copy and Move Use [Ctrl] + drag to make a copy of the selected object, and to move it to the desired position. Beijer Electronics, MAEN831L 61 Development Environment Resize The size of an object is part of the properties for the object. To change the size of an object: • When the Select tool hovers over the resize handles of a selected object, the mouse pointer changes to an arrow. Resize the object to the desired size. • Open the property grid and edit the Height and Width values. To resize the selected object one pixel at the time, select the object, press [Shift] and use the arrow keys on the keyboard. Rotate Rotate is only supported for projects designed for PC targets, and not for all objects. Angle and rotation center is part of the properties for an object. The rotation center for an object is shown as a small white circle which by default is located in the center of the selected object. When the Select tool hovers over the rotation center of a selected object the mouse pointer changes to a circle inside a square with arrow sides. This indicates that it is possible to move the rotation center. To change the rotation center of an object: 1. Point to an object to select it. When an object is selected a red frame with handles is shown around the object. 2. Drag-and-drop the rotation center circle to the position that is to be the center of the rotation. When the Select tool hovers next to a corner of the selection frame for a selected object the mouse pointer changes to a circular arrow. This indicates that the object is possible to rotate by the frame handle around the rotation center. To change the rotation angle of an object: 1. Drag to rotate the object around its center position. 2. Use [Ctrl] + drag to rotate in steps of 15 degrees. Cursor appearance for Resize, Rotation centre, and Rotate. Beijer Electronics, MAEN831L 62 Development Environment Selecting Multiple Objects Multiple objects on the current screen can be selected at the same time, with the use of the mouse pointer to draw a frame that touches the objects. Alternatively, select one object and then use [Ctrl] + click to select or de-select other objects. A multiple selection can be used to arrange objects, by using the Arrange control on the Format ribbon tab. The object with the primary selection is used as guide object. When multiple objects are selected, the primary selection is shown with a red frame, while all other objects in the group have blue frames. Click on any object in the group to change this to the primary selection. A click or double-click on any object will make it the primary selection, and, if applicable, change the ribbon focus according to the selected ribbon behavior. The groups shown in the General and the Actions tabs are dependent on the selection. When multiple objects are selected the tabs will show only the properties that are common for the objects in the selection. Property changes will affect all selected objects. Hiding and Locking Objects Objects can easily be hidden and locked using the Object Browser, but the commands are also available from the context menu. To make a hidden object visible again, or to unlock a locked object, the Object Browser can be used. Related information Object Browser Property Grid Creating Series The Create series function facilitates creating a number of identical objects. The function handles adding graphic elements as well as controller connections. The following example creates a series of analog numeric objects quickly and easily: 1. Create an analog numeric object and connect it to a tag (in this example; D0). 2. Right-click on the object and select Create series from the context menu. Beijer Electronics, MAEN831L 63 Development Environment 3. Fill in the number of objects to add and make settings for the address incrementation, and click OK. Parameter Description Number of copies Enter the number of columns and rows to create Spacing Specify the number of pixels between the added objects Address incrementation Select how to increment addresses for the added objects. Only addresses available in the driver will be added. Increment direction Select if addresses are to be incremented in horizontal or vertical direction Graphical objects are added on the screen according to the settings made: Tags are added to the project according to the settings made: Beijer Electronics, MAEN831L 64 Development Environment Right-clicking in the Tags configuration page and selecting Create series makes it possible to create a series of tags quickly and easily, without adding graphic objects. 3.5 Navigation Manager The Navigation Manager is used to manage screens and their relations with respect to project navigation in runtime. It can be activated/deactivated from the View tab. It provides an overview of all screens in the current project. Beijer Electronics, MAEN831L 65 Development Environment 3.5.1 Screen Relations The Navigation Manager is used to create relationships between screens. Dragging the mouse pointer from one screen to another screen creates a relation. A button with a Click action is defined in the first screen. This Show Screen action has the second screen as target, and when clicking it in runtime, the second screen is opened. Double-click on a screen to open the screen for editing in the desktop area. 3.5.2 Add Screen New screens can be added directly in the Navigation Manager. Dragging the mouse pointer from an existing screen to an empty location in the Navigation Manager area creates a new screen, with a relation to the original screen. A button with a Click action is defined in the first screen. This Show Screen action has the second screen as target, and when clicking it in runtime, the second screen is opened. The button must be removed or changed manually if the new screen is deleted later. 3.5.3 Links in the Navigation Manager A structure of screens and their relations to other screens will be imposed and shown in the Navigation Manager. The Navigation Manager will provide an overview to help add screens and manage the link relations between project screens. Beijer Electronics, MAEN831L 66 Development Environment Right-click anywhere in the Navigation Manager to change link appearance. Link setting Description Show Same Level References Filters out links to screens on the same hierarchical level. Show Back References Shows navigation links to higher hierarchical levels. When not selected, only links to screens on lower levels and links between screens on the same level are shown. Directed Links Draws straight link lines between screens, using the shortest way. Orthogonal Links Draws link lines in an orthogonal pattern. Changing the setting or the type affects the appearance in the Navigation Manager only. 3.5.4 Navigation Overview It is also possible to display the Navigation Overview by selecting it from the View ribbon tab. It provides an overview of all screens included in the project, with zooming facilities. 3.6 Project Explorer The Project Explorer shows all screens and components included in the application. It can be activated/deactivated from the View tab. The Project Explorer is divided into five groups; . Screens, Functions, Data Loggers, Script Modules and Recipes. Beijer Electronics, MAEN831L 67 Development Environment 3.6.1 Project Explorer Groups Click on the group heading to expand/collapse the groups. The number of components in each folder is apparent from the group headings. Right-clicking on a group opens a subset of the commands from the File menu and Insert tab. Right-clicking on a component in a Project Explorer group opens a context menu with a selection of common operations. Not all commands are available for all components. Beijer Electronics, MAEN831L 68 Development Environment Context menu command Description Show Opens the selected project component for editing in the desktop area Rename Renames the selected project component Add Adds a new project component to the project Import Imports a project component via browsing the hard disk; e.g. a screen from another project Delete Deletes the selected component from the project Screens The Screens explorer lists the screens included in the application. Clicking on a screen opens it for editing in the desktop area. Screen Context Menu Right-clicking a screen opens a context menu with a selection of available operations: • Show • Rename • Import • Delete • Set as startup screen • Save screen as template screen • Add to screen group • Remove from screen group The screen set to be the startup screen is marked with a green frame in the screens explorer. Groups The Screens explorer offers a possibility to assign screens to groups. • Right-click on the All screens heading in the Screens explorer and select Add group followed by entering a unique name for the group in the appearing dialog. • To assign a screen to a group, simply right-click a screen in the Screens explorer and select “Add to Screen Group” from the context menu. Select a group to add the screen to from the appearing “Select Screen group” dialog. • To show available groups, double-click the All screens heading in the Screens explorer. Screens not assigned to a group will be listed as ungrouped screens. • Right-clicking a group enables a context menu from which you can choose to rename or delete the group. Note: Deleting a Screen group also deletes all of its assigned screens. Beijer Electronics, MAEN831L 69 Development Environment It is also possible to assign a screen to a group by a simple drag and drop operation. Drag the screen symbol and release it on the group. Zoom Slider The Zoom slider is found in the Screens explorer and provides a way to quickly zoom in and out of your screens explorer. Search The search function provides the option to search for screens using the screen name or screen-id. The search is only performed within the selected group. Functions The Alarm Server, Multiple Languages and Security functions are predefined, as well as Tags, and cannot be deleted from the Functions folder. The other functions can be added from the Insert menu. Most functions will be available from the Functions folder after having added them to the project, but some functions are assigned folders of their own. Clicking on the function in the Functions folder opens its configuration pages for editing in the desktop area. Alarm Distributor Alarms can be distributed between operator panels, with notification via printer, SMS or e-mail using the alarm distributor. Related information Alarm Distributor Alarm Server The Alarm Server handles alarm groups and alarm items. Related information Alarm Server Alarm Groups Alarm Items Audit Trail The Audit Trail function enables tracking of operator actions. Related information Audit Trail Beijer Electronics, MAEN831L 70 Development Environment Function Keys Function keys for operator panels as well as for the regular PC keyboard can be configured. Related information Function Keys Multiple Languages Configuring multiple languages for user texts and system texts are supported. The texts can be exported, edited and reimported to the project. A tool for automatic translations is also included. Related information Language Management Reports The reports function allows adding excel report templates to the project. Related information Reports Scheduler A scheduler can be used to control events in the process at special times. Related information Scheduler Security Users and groups of users can be set up for security purposes. Related information Security Management Tags Clicking on Tags in the Functions folder displays the tags configuration page in the desktop with all the tags that are used in the application. Tags are added by clicking on the Add Tag/Add System Tag button. Tags can belong to a connected controller, or be internal. Internal tags can be used and selected in the same way as a regular controller tags. System tags are used to monitor or access variables from the system, for example Used RAM or DateTime. System tags are indicated by blue color in the tag list. Beijer Electronics, MAEN831L 71 Development Environment Related information Tags Internal Tags System Tags Text Library With the text library function, text tables can be created, where values are linked to texts. Related information Text Library Recipes Several recipes can be inserted in the project. Each recipe function handles a pre-defined set of recipe items. Related information Recipe Management Script Modules Clicking on a script module in the Script Modules folder opens the script editor in the desktop area. A script module can be included to program features not covered by included functions and actions, or to be used to share functionality among functions. There is also a script action function that can be used to apply script modules to an object in the same way as with other trigger actions. Related information Script Script Action Data Loggers Data can be logged and saved to a database on time intervals or depending on changed values. Related information Data Logger 3.7 Component Library The Component Library contains reusable components for a project. Beijer Electronics, MAEN831L 72 Development Environment 3.7.1 Components The Component Library includes a large number of predefined graphical objects, categorized into groups. User-defined graphical objects and other files may also be saved in the component library. All components in a sub folder must have unique names. Examples of components that may be included in the library: • predefined components • objects • text objects configured with multiple texts • symbol objects configured with multiple symbols • grouped objects • external pictures • text • folders (file folders) • HTM/HTML files • media files • PDF files Since plain text can be saved as a component, it is possible to save reusable script components by dragging a section of script code from the Script view into the Component Library. A component is displayed with its name and a thumbnail representation in the Component Library window. Grouped objects are displayed as a thumbnail representing the primary selection of the object. Text files and folders are represented by operating system thumbnails. Note: Only static graphical objects are supported in iX Developer. Project Pictures The Project Pictures folder is project specific, and contains pictures that are used in the current project. The components in Project Pictures are stored in the project’s Symbols folder. Project Files The Project Files folder is project specific, and contains files that have been added when creating the project. Project files and folders can be added and deleted from the Project Files folder before downloading the project to an operator panel. The Project Files folder is located in the Project folder. For instance, “C:\MyProjects\ProjectFolder\Project Files”. It is also possible to access the operator panel via FTP to add and delete files and folders after the download, provided that the FTP service is enabled in the project. Beijer Electronics, MAEN831L 73 Development Environment Related information FTP Download 3.7.2 Add and Use Components Drag-and-drop any component from the library to the current screen, or use copy [Ctrl + C] and paste [Ctrl + V] commands. Objects can be copied or moved to the Component Library. A text file, that is saved in the Component Library will be converted to a text box object when pasted into a screen. A component (picture or group) that is originally copied from an object with a tag connection will keep its tag connection and any dynamic properties when used from the Component Library. Note: If a component with a tag association is reused in another project then all referenced tags must be present in the new project. 3.7.3 Component Library Window The component library is available as a tab at the right-hand side of the desktop. The window is configured with auto-hide functions, and can also be activated/deactivated from the View ribbon tab. Its appearance can be managed just as other tools; as docked or floating windows. The Component Library is also accessible when selecting and placing the Picture object from the Home ribbon tab. Beijer Electronics, MAEN831L 74 Development Environment User-Defined Categories Right-click on an empty space of the Component Library window and select Add Component to add a component to the library. To create a new category, select Add Category and choose a name of your preference. A category could also be renamed or deleted. User-defined categories are not project specific. This means that all objects saved in a user-defined category will be available in all iX Developer projects. Exporting and Importing Components By using the Import and Export functions in the Component Library, categories of components can easily be copied and moved between projects. Right-click on the category folder and select Import or Export. Find the location in the project file from where the components should be imported or to where they should be exported. The program will not indicate where the component files are located. Single objects can not be exported or imported. Expand and Collapse Folders The top area is a contents frame that is used to navigate through the folders of the Component Library. The contents heading displays the name of the currently selected folder. The folder view can be expanded and collapsed with the control to the left of the displayed folder name. The display of the components is filtered through the selection of the folders, i.e. all components are displayed if the top folder is selected. Search The Search feature provides a case-insensitive and alphabetical search, based on the component label, in the current folder and in all sub folders. Zoom The Zoom slider at the bottom area of the tool window can be used to change the size of the displayed components. Resting the mouse pointer over a component displays a full-size picture of the component. Beijer Electronics, MAEN831L 75 Development Environment Component Library window, displaying full size of a selected component XAML Guidelines All information, including the image, must be contained within the XAML-file. Links to external objects will result in missing objects. Furthermore, the appearance of the XAML-file may not be dependent of external inputs, like for example a parameter controlling a multi-picture based on internal logic within the XAML-file. The following restrictions apply: Do Not Name Controls in XAML Not supported: Beijer Electronics, MAEN831L 76 Development Environment Supported: Specify Width and Height The root control must specify a width and a height. Not supported: Supported: Beijer Electronics, MAEN831L 77 Development Environment Bindings These are the only properties that are supported for XAML-binding within components: • ISymbolViewboxSignature.Fill is presented as “Fill” within the property grid • ISymbolViewboxSignature.Stroke is presented as “Outline” within the property grid • ISymbolViewboxSignature.StrokeThickness is presented as “Outline Thickness” within the property grid It is not supported to bind to anything outside of the component. Supported: Beijer Electronics, MAEN831L 78 Development Environment 3.8 Property Grid Most properties and settings for an object or screen are defined from its General and Home tabs. A detailed overview of object properties is available by selecting Property Grid from the View ribbon tab or by selecting Properties from the context menu. The property grid includes more properties and settings than the ribbon tabs, for example size and position of objects, and delay of mouse and touch screen input in runtime. Property groups can be collapsed/expanded. The window is configured with auto-hide functions. Its appearance can be managed just as other tools; as docked or floating windows. 3.8.1 Search The Search feature provides a case-insensitive and alphabetical search, that makes it easy to reduce the number of displayed properties. 3.8.2 Toggling views The different views in the Property grid can be selected by using the menu on the top of the window. Beijer Electronics, MAEN831L 79 Development Environment Show only the properties marked as favorites Show all properties in the Property Grid Show all properties that do not have their default value Select whether Favorites are editable or not Show or hide the Copy Properties functions in the Property Grid 3.8.3 Favorites The properties most commonly used can be added to a Favorites-category for easier access. The favorites are saved per object type, i.e. Button has one set of favorites, Analog Numeric has one set of favorites, Chart has one set and so on. A yellow star indicates that the property is added as a favorite. By clicking the star, the property is deselected and removed from the Favorites-category When clicking on a greyed out star, the corresponding property is added to the Favorites-category 3.8.4 Copy Properties Multiple properties can be copied from one object to one or more targets. The properties can be selected either one by one by clicking the checkbox next to each property, or all at once by clicking the button for Select all, followed by a click on the Copy Propertiesbutton. The values are then pasted onto the target object(s) when selecting the target(s) and clicking on Paste. Note: Only the properties that are shared by both source and target objects are transferred. Selects all properties for the object Deselects all properties for the object Copies the selected properties to the clipboard Clicking Paste pastes the copied properties onto the selected object(s) Beijer Electronics, MAEN831L 80 Development Environment 3.9 Object Browser An overview of all objects included in a screen can be displayed in the Object Browser. It is easy to bring objects that may have been obscured by other objects up front, by using the arrows at the top left. Clicking the buttons at the right side of each object enables simply hiding/showing and locking/unlocking objects. Note that the top-to-bottom order in the Object browser corresponds to the front-to-back order on the screen. 3.10 Output The Output window contains messages concerning the project validation and build. Created project files with folder paths and any found errors will be listed in Output. Note: Incorrect code entered in text mode (Xaml and Script) may result in errors that are not possible to recognize during analysis and build. 3.11 Error List The Error List contains information about problems and errors detected in iX Developer for the current project. Build errors are reported in the Output window. 3.12 Help The Help file for iX Developer can be opened by pressing F1 on the keyboard or using the Help button in the ribbon tab heading. Beijer Electronics, MAEN831L 81 Tags 4 Tags Objects connected to tags can change values in a controller, and controller values can be reflected by changing object appearance in various ways. Objects in a screen will remain static until connected to a tag. A tag has a symbolic name and can be of different data types. Tags can belong to a connected controller, be internal or belong to the system. Internal tags are used to handle local data values, and can be viewed and treated in screens just like regular controller tags. The global tag list provides an overview of all used tags, regardless of controller. This makes it easy to develop projects that can be used with a variety of controllers. It is also possible to connect a tag to more than one controller simultaneously. 4.1 Adding Tags Tags are handled by clicking on Tags in the Functions folder in the Project Explorer. Clicking the Add Tag/Add System Tag button adds a new tag to the list. Make settings for each added tag. When predefined values are available, these can be selected by clicking the arrow at the right of the table cell. 4.1.1 Removing Unused Tags The Delete button in Tags can be used to detect unused tags for immediate removal via the Remove Unused Tags dialog. Beijer Electronics, MAEN831L 82 Tags Similarly, when building the project, a notification of any unused tags will automatically be done by displaying the Remove Unused Tags dialog. To disable or enable pop-up of this dialog, go to Options in the File menu. Select Build options in the list and then select CheckForUnusedTags under Misc. Change the status of the function to True or False. Beijer Electronics, MAEN831L 83 Tags Note: Always review the candidates for removal prior to removing unused tags, since removing tags that are used in e.g. a script can result in a corrupt project. To be able to detect tags used in scripts, a certain syntax must be used. It is recommended to use the IScriptTag interface within the arguments list for the ScriptModule, thus enabling the ScriptModule to be used and reused without being locked to a specific tag setup. Use the syntax Globals.Tags.TagName for direct tag references within scripts and expressions. If an external editor, e.g. Visual Studio, is used for editing a script, the cross-reference will not be updated when building the project in iX Developer. The Remove Unused Tags function will report tags used in these scripts as unused. For iX Developer to recognize a change made with an external editor, the script file needs to be opened in iX Developer and provided with just any small change using the script editor in iX Developer. Save the project once more before build. Beijer Electronics, MAEN831L 84 Tags The Sum method inside the script can be utilized in many different contexts. The following picture shows how Tag3 will contain the sum of Tag1 and Tag2 when the button is clicked. Notice that the tags used in scripts must be activated to work as expected. Beijer Electronics, MAEN831L 85 Tags Related information Tags Editor Options Options 4.1.2 Basic Settings To reduce complexity in the tags configuration page, some columns can be made hidden/visible. The basic settings are always displayed. It is possible to customize which columns to show by default using Tags Editor Options. Enter name, data type and access rights for the tag. Select if the tag is to belong to a controller entered on the Controllers tab. If no controller tag address is entered, the tag will be treated as an internal tag. Parameter Description Name Symbolic name. The name can be any alphanumeric string, beginning with a letter (a-z, A-Z). Data Type (Tag) Selection of presentation format; for example used to show the correct engineering unit when using scaling. DEFAULT follows selection made for Data Type (Controller). Access Rights Defines access rights to the tag Controller Controller address Data Type (Controller) Selection of data type To rename a tag it is necessary to enter the Rename dialog for the change to take place. The dialog appears when clicking on the three dots to the right of the name in the tags list. Beijer Electronics, MAEN831L 86 Tags Related information Scaling 4.1.3 Scaling Scaling affects only tags connected to a controller. Checking the Scaling box displays the Offset and Gain columns. These parameters are used to change the scale of the controller value to a value shown in accordance with the following equation: Panel value = Offset + (Gain × Register value) When the value for an object is changed from the operator panel, the scale is changed to the value shown in accordance with the following equation: Register value = (Panel value - Offset)/Gain Scaling does not affect the defined maximum and minimum values, or the number of decimals. 4.1.4 Data Exchange Checking the Data Exchange box displays the Direction and When columns. Data exchange supports real time data exchange between different controllers; also of different brands. The data exchange can be performed when a digital tag is set or at a certain time interval, set up on the Triggers tab. Data exchange can be selected for individual tags, array tags or for the complete range of tags. Related information Data Exchange Beijer Electronics, MAEN831L 87 Tags 4.1.5 Others Checking the Others box makes it possible to configure a number of additional tag properties. Parameter Description Description An optional description of the tag. Description of system tags is added automatically. Please note that the description can not be more than 200 characters long. Descriptions longer than that will cause build errors. Poll Group Makes it possible to poll groups of tags at different intervals. Always Active Prevents the tag from becoming inactive. This may be useful for actions and scripting purposes. Note: The Active setting for the controller on the Controllers tab is predominant over the Always Active setting for a particular tag. Non Volatile Keeps the last tag value in memory even when the panel or PC is powered off. Only available for internal tags. Initial Value Makes it possible to assign a tag an initial value at system startup. Only available for internal tags. Index Register Makes it possible to select a register from which an object is to collect the shown value. Action Makes it possible to configure actions based on a condition of a tag. Log to Audit Trail Logs operator actions on the tag. Only available if the Audit Trail function is activated in the project. Audit Trail Description Optional static or dynamic descriptions for operator tag actions, that are saved in the Audit Trail database and visible in the Audit Trail Viewer. If Dynamic Description is selected, value before change can be included in the description by using {0}; value after change by using {1}. Only available if the Audit Trail function is activated in the project. Beijer Electronics, MAEN831L 88 Tags 4.1.6 Adding Tags during Editing Tags can be added directly when editing objects. When an object is selected, the tag association can be managed from the Tag/Security group in the Home or General ribbon tabs, or by right-clicking on the object and using the Mini Toolbar. In both cases, tags are added by clicking the Add button. Note: Tags added during editing will stay internal until connected to a controller on the tags configuration page. Related information Tag/Security Group Mini Toolbar Options 4.1.7 Selecting Multiple Tags Multiple rows of tags can be selected using the [Ctrl] or [Shift] keys. This makes it easy to, for example, delete a number of tags quickly. Beijer Electronics, MAEN831L 89 Tags 4.2 Tag Actions One or multiple actions can be configured depending on a changed value of a tag. The Action column is displayed when the Others box is checked in the Tags configuration page. Clicking ... in the Actions column for the selected tag brings up the Action properties window. First, a condition is configured by clicking Add under Condition. Select a condition, enter a value (only integers are allowed) and click OK. Then, configure actions to be executed when the condition is met. Related information Actions Ribbon Tab 4.3 Internal Tags Internal tags can be used to calculate values that need not be represented in the controller, for example information only for the operator. Internal tags are selected in the same way as an external controller tags. Any number of volatile user defined tags can be created. Beijer Electronics, MAEN831L 90 Tags Note: Internal tag values will not be saved in the operator panel when the project is restarted, unless the Non Volatile option is used. Unlike the regular drivers, it does not matter if internal tags are used in consecutive order or not. 4.4 System Tags System tags are used to monitor or access variables from the system. System tags are handled as regular controller tags, i.e. can be used in screens, logged, included in scripts etc. The Date and Time system tags can be used when you want to use the controller clock in the panel project. The following system tags are available: System tag group Communication Date and Time Project System tag Description Communication Error Message Latest communication error message Communication Errors Number of active communication errors on all controllers Remote Alarm Server Connection Errors Number of remote alarm servers with connection errors, e.g. disconnected servers. DateTime Current date and time Day Day component of current date Day of Week Day of current week (1-7 where 1 is Sunday) Hour Hour component of current time Minute Minute component of current time Month Month component of current date Second Second component of current time Year Year component of current date Current Screen Id The ID of the current screen. The data type of this tag is int16 and it only has read access. This tag gets updated every time you open a screen, with the exception on popup screens. When opening a pop up screen the current screen id tag will not be updated. When entering a screen without a screen id the tag value of the current screen id will be set to -1. Note that 0 is a valid screen id. Current Screen Name Name of the current screen Latest Loaded Recipe Name of the latest loaded recipe New Screen Id The ID of the new screen. The data type of this tag is int16 and it has read/write access. The tag is always active. Beijer Electronics, MAEN831L 91 Tags System tag group System tag Description When the new screen id tag changes value a screen jump is made to the screen with corresponding screen id. If no such screen exists a notification message will show. If the new screen contains configured screen instances (alias), the default instance is always displayed. System Project Name Name of the current project Runtime Version Runtime version of framework Screen Update Time Screen update time (in ms) Available RAM Amount of available RAM memory (in kB) Available Storage Amount of available storage memory (in MB) Backlight Brightness Level Backlight brightness level (in percent) When approaching 0% backlight, changes in brightness level may no longer be noticeable in the panel. Complete dimming (to 0%) is only possible to achieve with the marine panel types, such as iX T7AM and iX T15BM. CPU Load Amount of used CPU capacity (in percent) Current User The user name of the currently logged in user Debug Logging Enabled Indicates if debug logging is enabled. Internal Temperature Internal panel temperature (in °C) (1) Physical RAM RAM memory installed (in kB) Power LED Blink Frequency Blink frequency of the power LED (1–10 Hz, 0 = always on) Power LED Blue Intensity Intensity of the blue power LED (0–100) Power LED Red Intensity Intensity of the red power LED (0–100) Storage Memory Storage memory installed in computer (in MB) Used RAM Amount of used RAM memory (in kB) Used RAM Percent Amount of used RAM memory (in percent of physical) Used Storage Amount of used storage memory (in MB) Used Storage Percent Amount of used storage memory (in percent of all storage) Beijer Electronics, MAEN831L 92 Tags System tag group System tag Windows CE Image Version Description Windows CE Image Version (1) Not applicable on iX TxA and iX TxC. System tags are indicated by blue color in the tag list. System tags are added by clicking the Add Tag/Add System Tag button in the tags configuration page. 4.5 Array Tags An array tag is a tag containing multiple values. If the array size is >1, the tag is considered as an array tag. Note: Array tags are only supported by controllers which use addresses that can be numerically increased. 4.5.1 Array Tag Set Up Clicking the Add button adds a tag to the list. Make settings for each added tag. When predefined values are available, these can be selected by clicking the arrow at the right of the table cell. Clicking the Data Type cell in the Controller column brings up the data type configuration page. An array tag is configured by setting the array size to a value >1. Beijer Electronics, MAEN831L 93 Tags Data type Description Data Type Selection of presentation format. Size Set the array size. Array Size If the array size is >1, the tag is considered as an array tag. Limitation When using controllers with named variables and accessing individual bits with the syntax VariableName.BitNo, array tags of data type BOOL with bit addressing, are only supported for 16-bits tags. Related information Tags Chart Object Data Exchange 4.6 Cross Reference The Cross Reference tool provides an overview of where a specific tag is used in the current project. All occurrences of the tag in the current project are listed. Double-clicking on an occurrence in the list automatically brings you to the object or function where the tag is used. The cross reference tool can be accessed by clicking the cross reference button on the Tags tab or on the View ribbon. It can also be accessed from the context menu. 4.7 Triggers Triggers are used to determine when data exchange is to be performed; based on tag or a certain interval. Beijer Electronics, MAEN831L 94 Tags Parameter Description Name Symbolic name. The name can be any alphanumeric string, beginning with a letter (a-z, A-Z). Tag Selection of a tag, which when changed to a value other than 0, triggers data exchange Time Time interval between data exchange operations in the format HH:MM:SS 4.8 Poll Groups Poll groups allow grouping tags for polling at 5 different intervals. The groups defined on the Poll Groups tab are available for selection from the Tags tab after checking the Others box. Beijer Electronics, MAEN831L 95 Tags Parameter Description Name Symbolic name. The name can be any alphanumeric string, beginning with a letter (a-z, A-Z). Interval Polling interval in ms 4.9 Station Handling For some controllers, it is possible for the operator to define from which controller station to read or write values. The station number is given as a prefix to the controller address. The station number for each controller is defined on the Controllers tab of the Tags configuration page, by clicking the Settings button. The default station is set on the Settings tab, and the stations are defined on the Stations tab. In this example, from an Ethernet driver, Station 0 is the default station. Beijer Electronics, MAEN831L 96 Tags The default station is the station addressed without using a prefix. The other stations can be addressed either as a fixed number or as an index register. With fixed station numbers, an object is always connected to the same controller address, and only the value of this controller address can be used in the object. When addressing for example D10 in station 2, the following syntax is used: 2:D10 Related information Using Index Registers for Station Handling 4.10 Index Registers With index addressing, it is possible for the operator to select from which tag an object is to collect the shown value. Without index addressing an object is always connected to the same controller address, and only the value of this address can be shown in the object. Beijer Electronics, MAEN831L 97 Tags Which tags to use for indexing are defined on the Index Registers tab of the tags configuration page. Up to eight different index registers can be used for each controller, and each index register can be used for more than one object. Index registers can be connected to any tag in the global tag list, but the tag has to be selected for each controller. Tags are connected to index registers on the Tags tab. In general index addressing can be formulated as: Display value = the content in tag (the object’s address + the content in the index register) If the content in the index register is 2, and the address of the tag specified in the object is 100, the value shown in the object will be collected from address 102. If the value in the index register is changed to 3, the value in the object will be collected from address 103 instead. 4.10.1 Index Addressing Example Using index registers may be convenient when for example controlling torque and speed of a number of connected motors from the same screen, without having to configure and display maneuverable objects for each motor. The following example is based upon the presumption of three motors, and the torque and speed of each motor is held in a different tag: Motor 1 Torque D11 Motor 2 Speed D21 Torque D12 Motor 3 Speed D22 Torque D13 Speed D23 1. Create a project where the Demo Controller is selected as controller. Beijer Electronics, MAEN831L 98 Tags 2. Add tags and labels and connect them to Demo Controller tags according to below: 3. Select the Index Registers tab and connect Index 1 to the MotorIndex tag (D0). Beijer Electronics, MAEN831L 99 Tags 4. Select the Tags tab again and check the Others box in order to display the Index Registers column. 5. Connect the Torque and Speed tags to Index Register 1. 6. Now, create a ComboBox object for selection of motor, and two analog numeric objects that will display (or set) the Torque and Speed tags for each motor. Also add explaining labels. 7. Click Configure Texts for the ComboBox object, connect the object to the MotorIndex tag, and add three texts and values according to below. 8. Connect the analog numeric objects to the Torque and Speed tags. 9. In order to test that the index addressing works even though no controller is connected, add maneuverable objects, e.g. sliders, and connect them to the D11–D13 and D21–D23 tags. Beijer Electronics, MAEN831L 100 Tags 10. Run the project, enter values for the objects connected to D11–D13 and D21–D23, and select the different motors using the ComboBox. 4.10.2 Using Index Registers for Station Handling For some controllers, it is possible for the operator to define from which controller station to read or write values. The station number is given as a prefix to the controller address. This is stated either as a fixed number or as an index register. The default station is the station addressed without using a prefix. The other stations can be addressed either as a fixed number or as an index register. With fixed station numbers, an object is always connected to the same controller address, and only the value of this controller address can be used in the object. Index addressing reduces the number of tags needed as well as the number of objects to be configured in the iX Developer project when showing values from / writing to multiple controller stations. The syntax when using index registers for station handling is for example I1:D10. Beijer Electronics, MAEN831L 101 Tags This means that the value in the controller address connected to Index 1 will point out which controller station number to read or write values. Beijer Electronics, MAEN831L 102 Tags Related information Station Handling 4.11 Expressions The Expressions functionality is used when connecting an object to a tag and the purpose is not to use the tag value as it is. Expressions enable the user to e.g. extract a bit from a tag, add a dynamic offset or gain, and then to use this value for a specific object. Note: Static offset and gain for a tag is set in the tags configuration page. The same expression can be connected to more than one object in the project. 4.11.1 Definition An expression is a one line return statement in C#. The default expression code is “value”. 4.11.2 Using Expressions Right-click on an object and then click the button ... next to Select Tag. The Expressions dialog is displayed. Beijer Electronics, MAEN831L 103 Tags Click New to create an expression and expression group (optional). Existing expressions are available from the Select Expression drop-down menu. Use the Edit and Delete buttons to edit or delete existing expressions. Select among the tags, operators and functions to insert. It is also possible to type the expression manually, but without assistance from IntelliSense (auto completion). If an expression is not valid, an error message is given when validating the project. The expression is run, when the value of the original tag that is connected to the object is changed. Expressions added to an object in a project are available only in the current project. If an object with a local expression is saved into the Component Library, the object can be used in an other project, but the expression is not included. In order to reuse expressions, they have to be saved in the expressions library. Related information Library Expressions 4.11.3 Library Expressions Examples of expressions (how to extract bits from an int) are included when installing iX Developer and can be added to the project by clicking Load. Expressions can be reused in other projects by saving them in the expression library. Select the expression in the drop-down list and click Save. The expression is saved to a file in the PC. To load the expression in another project, click Load. A Beijer Electronics, MAEN831L 104 Tags selection dialog is displayed. Select the expression in the drop-down list and click OK. If you have saved expressions to the library that you want to remove, click Delete and select among the saved expressions in a dialog. Expressions included when installing iX Developer are not listed, since these cannot be deleted. 4.11.4 Limitations An expression is executed only on read, i.e. when the value is changed in the controller. When writing a value (from e.g. an analog numeric tag), the expression is not executed. If another tag than the original tag is used in the expression, the expression is not triggered on its value change. If an expression that is used in more than one location is either renamed or deleted, references are not updated. A build error is given. Expressions can be used for all data connections except for • actions • the Property grid • recipe item tags • current language tag in Multiple languages configuration • trigger tags • index tags • scheduler tags • dynamic text for alarm items Expressions use explicit bool comparison. Example: Do not use: value; Globals.Tags.Tag1.Value Use: value != 0; GlobalsTags.Tag1.Vaule == 1 4.12 Data Exchange Data exchange between different controllers is supported; also between controllers of different brands. The data exchange can be performed when a digital tag is set, or at a certain time interval. Data exchange can be selected for individual tags, array tags or for the complete range of tags. Note: The data exchange function is isolated from general tag/controller settings. For example, a tag assigned read access only for the operator, may still be read and written by the data exchange function. Follow the steps below to set up data exchange with three different controllers involved: Beijer Electronics, MAEN831L 105 Tags 1. Select the Controllers tab of the tags configuration page and enter short names for the controllers in the ID column, and make sure that all controllers are active. 2. Select the Tags tab and check Data Exchange to display the Direction and When columns. Beijer Electronics, MAEN831L 106 Tags 3. Select an address that is represented in all of the controllers. If an array tag is selected, the complete address range corresponding to the array size will be exchanged: Beijer Electronics, MAEN831L 107 Tags 4. Click ... in the Direction column to set up the direction of the data exchange. 5. Add a trigger tag on the Triggers tab with time interval for data exchange or use a tag, which when greater than 0, will trigger the data exchange. Alternatively, set up a trigger that includes both value change and a time interval. Beijer Electronics, MAEN831L 108 Tags 6. Return to the Tags tab and select which trigger to use. Note: If the poll group contains many tag values that change frequently, the time required for them to be handled could exceed the set poll time. This could lead to problems updating the data exchange between the controllers. Set the Poll Group Interval to a higher value or use a time trigger to control the data exchange operations. Related information Triggers 4.13 Importing and Exporting Tags Tags can be imported to and exported from an iX Developer project, to, for example, be edited in Excel or a text editor, or to be transferred to another project. The complete tag list may be imported and exported, or the actions can be based on connected controllers. The import function also allows selecting individual tags for import. 4.13.1 Handling Columns The import function allows skipping columns, or binding columns in the import file to any column in the Tags configuration page. The Name and DataType columns must always be bound. A column may only be bound once. 4.13.2 Saving the Import Configuration For repetitive import actions the import configuration, e.g. how columns are bound and from which row to start the import, can be saved and reused. The import configuration is saved by clicking the Save mapping as import module button prior to performing the import. Next time the Import Tags dialog is opened, the configuration is available from the Import module drop-down list. Saving import configurations is valid only for files in text or Excel format. Beijer Electronics, MAEN831L 109 Tags Note: In order to import or export .xls-files Microsoft Excel must be installed. 4.13.3 Tag Import Example If the controller in the project is changed to a system with other names for the tags used, these must be changed: 1. Click on Tags in the Project Explorer. 2. Click on the arrow to the right of the Import/Export button to display the available options of import and export operations. 3. Select Export tags from the desired controller to export the list to a text file or an Excel sheet. Enter a file name and browse to a location. Define how the to separate the columns and which columns to export. Use the arrows if you want to change position of the columns. Note: In order to import or export .xls-files Microsoft Excel must be installed. Beijer Electronics, MAEN831L 110 Tags 4. Click Export. 5. Open the text file in a text editor or a spread sheet application. 6. Change all current tags to corresponding tags used in the new controller, and save the file. Beijer Electronics, MAEN831L 111 Tags 7. Select Import tags to the desired controller and browse to the updated file. If desired, select a row from which to start the import. It is possible to rebind columns before importing to the project, and to exclude columns. These settings can be saved by clicking the Save mapping as import module button, and will then be made available for selection from the Import module drop-down list at next import. Beijer Electronics, MAEN831L 112 Tags 8. Click Import. It is now possible to deselect import of some tags. Beijer Electronics, MAEN831L 113 Tags 9. In case there are name conflicts, these can be handled by changing the name, overwriting, merging or skipping conflicting items. The actions taken are saved to a log file for future reference. Note: If you select Overwrite, all settings for the existing tag will be overwritten. If you select Merge, existing actions for the tag will be kept. The imported tags are now added to the current project. Related information Basic Settings 4.13.4 Importing Tags from the Command Line Tags can also be added to the current iX Developer project using a command line switch, by entering the following: [Executable file] “Project location]\[Project name].neoproj”/ImportTags=”[Tag file location]\Tag file” In this case, no application window is displayed, as long as the import is successful. Beijer Electronics, MAEN831L 114 Tags Example in Windows XP To open the project named Test1 with the tag file VarFile.txt in the directory C:\MyProjects, run iX Developer from the command line with the following arguments: NeoIDE.exe “C:\MyProjects\Test1\Test1.neoproj” /ImportTags=“C:\MyProjects\VarFile.txt” In Windows Vista, the complete path (within quotes) to the executable file has to be included. Removing Existing Controller Tags at Import The /ImportTags command line switch may be used together with the switch /RemoveTagsNotInFile. This will remove all existing tags in the controller that are not included in the import file. 4.14 Filtering Tags A selection of tags can be displayed using the Filter Builder. Several conditions can be used, and the different values/operators that can be used for making conditions are displayed when clicking on the condition building blocks. Operands and operator nodes are context sensitive. Name strings are not case sensitive. Values in the filter builder are saved individually for each function during an edit session. A filter is built as a logical expression tree. A filter typically has operations on individual column values as leaf nodes and logical operators serve as main nodes. Perform the following steps to create a filter: 1. Click on Tags in the Project Explorer. The tag list is displayed in the desktop area. 2. Select Show Selection from the Show Selection/Show All button to build a filter. It is also possible to filter tags depending on tag name by typing in the Filter box. The filtering affects the tags list directly as letters are entered in the box. Only tags including “te” in their names are displayed The filter indication when having entered “te” in the Filter box Beijer Electronics, MAEN831L 115 Tags Related information Filtering Items 4.15 Tag Format The following tag formats (data types) are available in the dialog for a tag, provided that the selected driver or OPC server supports the tag format. Format Data type Range DEFAULT Treated as INT16 Bit BIT 0 and 1 Bit BOOL Values can be “false” (0) or “true” (1)(1) Signed 16-bit INT16 -32,768 – +32,767 Unsigned 16-bit UINT16 0 – +65,535 Signed 32-bit INT32 -2,147,483,648 – +2,147,483,647(2) Unsigned 32-bit UINT32 0– +4,294,967,295(2) Float with exponent, 64-bit DOUBLE 1.7 × 10308 (1) Float with exponent, 32-bit FLOAT ±3.4 × 1038 (1) 7 × Signed 16-bit DATETIME An Analog Numeric object can present the time format(1) Syntax(3): <yyyy-MM-dd hh:mm:ss> 7 consecutive registers are used to store a time: Dx, seconds, 0–59 Dx+1, minutes, 0–59 Dx+2, hours, 0–23 Dx+3, day, 1–31 Dx+4, month, 1–12 Dx+5, year, 100–9999 Dx+6, weekday, 1–7 String STRING Storing character strings in tags. For this data type, size can be selected. (1)Controller representation for this type is dependent on the driver software. (2)Regarding resolution of values in 32-bit format: both iX Developer and the operator panel can handle up to six decimal digits of an integer 32-bit value. Remaining digits will be truncated or changed into zeros. (3)yyyy=year, MM=month, dd=date, hh=hour, mm=minute, ss=second. For use in script code, the following table shows the type representation in C#. This is used when there is a need to do a type casting, for example in calculations that are using overloaded operators. Beijer Electronics, MAEN831L 116 Tags C# type Data type Description – DEFAULT Treated as INT16 uint BIT C# does not have a “bit” type. In the controller this is a bit. bool BOOL C# bool type that can have the values “false” (0) and “true” (1) int INT16 16 bit, -32,768 – +32,767 uint UINT16 16 bit, 0–+65,535 int INT32 32 bit, -2,147,483,648 – +2,147,483,647 uint UINT32 32 bit, 0 – +4,294,967,295 float FLOAT 32 bit, ±3.4 × 1038 double DOUBLE 64 bit, ±1.7 × 10308 DateTime DATETIME 7 elements are used to store a time string STRING Storing character strings in tags Related information Script 4.16 Aliases An alias should be treated as a property of a screen and can act as a stand-in for a tag. The alias can be used to reference a tag wherever that tag can be referenced directly. When used, iX Developer will act the same as if the original tag had been used. Each screen using aliases can be configured with a different instance different tag references. Using aliases will enable reuse of screens without having to create a new duplicated screen. 4.16.1 Creating Aliases Aliases are handled by clicking Aliases on the desktop view mode tab. Desktop view mode tabs Beijer Electronics, MAEN831L 117 Tags Clicking the Add button adds an alias to the list. Make settings for each added alias. When predefined values are available, these can be selected by clicking the arrow at the right of the table cell. Basic Settings Enter Alias name and Default value for the alias. If no default value is entered, the alias will be treated as a local screen variable. Parameter Description Alias Name Symbolic name. The name can be any alphanumeric string, beginning with a letter (a-z, A-Z). Default Value Selection of tags to create aliases of. If no tag is selected the alias will be treated as a local screen variable. The default value will be the default value for the alias in the created instances. It will also be the reference for the default instance. See Instances. Data Type Selection of data type. This setting is enabled by first clicking the Data Type checkbox. The data type will by default reflect the data type of the selected Default Value. 4.16.2 Instances The aliases created in the project are presented in a table on the instances tab. It is possible to change the value for the aliases in this tab, in order to override the default value configured in the aliases tab. If a value for an alias is changed in the instances tab, the new value is displayed with bold text to indicate that it differs from the alias’ default value. To revert back to the default value, delete the value followed by pressing [Enter]. The default value can be changed in the aliases tab. Beijer Electronics, MAEN831L 118 Tags Parameter Description Instance Symbolic name. The name can be any alphanumeric string, beginning with a letter (a-z, A-Z). Aliases The names of all aliases created in the project will be displayed in the columns headers. The values connected to the aliases will be listed in each columns. Using the “Show Screen” Action with Instances The "Show Screen” action can be used to display a specific screen. For screens that have aliases, it is also possible to select which instance of the screen to use, and thereby also which set of tags to assign to the screen’s aliases. The Default option is a virtual instance configured with the alias’ default values. “Show Screen” Action Parameters. Related information Action Groups Limitations • • • • • Aliases do not support array tags. Aliases can not be used in connection with expressions. Aliases can not be used with the Trend Viewer object. Aliases can not be used on background screens. No scripting support for value changed event on an alias. Beijer Electronics, MAEN831L 119 Controller 5 Controller iX panels can be connected to many types of automation equipment, such as PLCs, servos, and drives. The expression controller is used as a general term for the connected equipment. It is possible to connect a tag to more than one controller simultaneously. This makes it possible to use the same application with different controllers. Controllers can be enabled and disabled in runtime. A project can contain multiple controller connections. A project can also be connected to an external OPC server. Related information Multiple Controllers External OPC Server Internal Tags 5.1 Adding a Controller When a new project is created, one of the steps is to choose which controller brand and model to connect to. Clicking on Tags in the Project Explorer, selecting the Controller tab displays the Controller configuration page. Beijer Electronics, MAEN831L 120 Controller Parameter Description Name Symbolic name. The name can be any alphanumeric string, beginning with a letter (a-z, A-Z). ID Optional short name for controller; displayed in functions such as Data exchange. Active Selection of which controllers are to be active in runtime. Change of active controllers can also be performed in runtime using an action or script. Controllers are added and deleted using the Add and Delete buttons. Clicking Controller allows selecting another controller, and Settings displays settings for the selected driver. Clicking Help in the driver settings dialog opens the help file for the driver. Related information Select Controller 5.1.1 Notify Window If a communication error between the application and the controller is detected in runtime, this will result in a communication error, and a Notify Window will be displayed in the operator panel. The Notify Window is a floating window that starts in the upper left corner of the screen. It is also used to display the alarm indicator. The Notify Window can be moved to any position on the current screen. 5.2 DEMO Controller The DEMO controller is used and selected in the same way as a regular controller driver, to design and test a project directly on the development PC without connection to an external controller. A number of predefined tags can be selected: Data type Tag ID Description BIT, BOOL M0 - M99 Digital tags INT16, UINT16 D0 - D99 Analog tags The DEMO controller also includes counters and digital tags with predefined functions: Data type Tag ID BIT M100 - M104 INT16 C0 - C4 Beijer Electronics, MAEN831L Description Toggles OFF and ON every 1,000 ms Counts from 0 to 100 with 1,000 ms interval by default; min/max values can be defined 121 Controller 5.3 External OPC Server OPC is an industrial standard created in a collaboration of automation hardware and software suppliers. The standard defines methods for exchanging real-time automation data between PC-based clients using Microsoft operating systems. An OPC server acts as a controller towards an operator panel. 5.3.1 OPC Classic Client Settings for the OPC Classic client is made in the Choose Controller dialog. Select Localhost when accessing an OPC server running in your local PC. Select Remote Server when accessing an OPC server in the network environment, and click Browse to select the OPC server. Clicking Refresh makes it possible to select the OPC server from the OPC Server drop-down list next time. Add OPC server tags by clicking the small arrow at the right-hand side of the Add button on the Tags tab: To validate tags from a remote OPC server in the iX Developer project, return to the Controllers tab and select the remote OPC server once more, and click OK. This procedure is necessary as the tags in the remote OPC server may have been changed since they were selected on the Tags tab. 5.3.2 OPC UA Client Settings for the OPC UA client can be made in the Choose Controller dialog. Open the dialog by clicking the Add button on the Controllers tab. Enter the URL to the OPC UA server. Controller Settings Dialog The settings dialog for the OPC UA Server is available by clicking the Settings button on the Controllers tab. Beijer Electronics, MAEN831L 122 Controller Parameter URL Description Enter URL to the OPC UA server. Only UA TCP Binary is supported which means the URL must start with “opc.tcp://” Authentication settings Choose whether to use anonymous login or enter a user name and password to enable a secured login. Namespace settings This setting offers a possibility to declare a namespace URI and bind it to a prefix. Tag View settings Namespace separator character: Enter a character to be used to separate the namespace URI prefix from the tag ID when presented on the tag tab. Default namespace: Select the default namespace URI prefix to be used when entering a tag on the tag tab. Subscription settings Max subscriptions: Enter the maximum number of subscriptions supported by the server(1) Max items per subscription: Enter the maximum number of items per subscription supported by the server(1) (1) Please refer to the server manual for limitations Add Tags from OPC UA Server Add OPC UA server tags by clicking the Add button on the Tags tab. Enter the Tag ID along with the preferred namespace URI prefix, defined in the controller settings dialog. Make sure to separate the values with the separator character. Example: “NS3:tag” . The Tag ID, in the example above, corresponds with BrowseName in the OPC UA server. Beijer Electronics, MAEN831L 123 Controller If no namespace URI prefix is entered, the default namespace URI prefix as defined in the controller settings dialog will be used. No prefix is needed when connecting to an iX server. Note: Array tags are not supported by OPC UA controllers. Supported Functions Data Access (UA part 8) is supported. All variables of data types that are used in iX Developer is supported. Read / write of objects, structs and arrays is not supported. Limitations Limitation Description Browsing Browsing of servers / nodes is not supported. Address input in GUI NameSpace and BrowseName is used to identify a variable in the server. If this combination is not unique, the client cannot identify the variable. This is not a problem when connecting to an iX server, since all tag names (variables) are unique. Related information OPC UA Server 5.4 Updating Drivers Drivers can be updated via Internet or from file. Beijer Electronics, MAEN831L 124 Controller Each driver takes up approximately 500 kB. To use the downloaded drivers, iX Developer must be restarted. 5.4.1 Updating Drivers from Internet A web browser is not required to update drivers via an Internet connection. A list of drivers that can be downloaded via Internet is displayed when the connection is established. 1. Click on the iX Developer button and select Update Drivers /From Internet to update available drivers to the latest version, or to install new drivers. The list shows the version number for the available drivers and the version number for the installed drivers. 2. Select the driver(s) to install in iX Developer. The command Mark Newer selects all drivers available in newer versions than the ones installed, including all drivers that are not installed. 3. Click Download. Related information File Menu 5.4.2 Updating Drivers from File When updating drivers from file only one driver at the time is updated. This can for example be used to revert to an older driver. To install a new driver from file: 1. Click on the top left button and select Update Drivers /From File to update available drivers to the latest version. 2. Browse to the folder where the driver files are located. A list of all drivers that can be installed is now shown. Beijer Electronics, MAEN831L 125 Controller 3. Select the driver to install in iX Developer. Mark Newer selects the driver when there is a newer version than the currently installed. 4. Click Install. Related information File Menu 5.5 Synchronizing the Controller Clock In order to synchronize the controller clock with the iX Developer project, the system tags hour, minute, second, need to be added to the project from the Tags configuration page. These are then connected to addresses in the controller. When the value is changed in any of the system tags, they will be written to the controller. Related information System Tags Beijer Electronics, MAEN831L 126 Web Server 6 Web Server The Web Server adds the possibility to use a server-side Application Programming Interface (API) to interact with a running project. The API operates over the HyperText Transfer Protocol (HTTP) and can be accessed from any compatible device. In addition, the web server can host web pages and related media to be consumed by web browsers. The bundled Javascript Software Development Kit (SDK) makes it easy to build interactive web pages that utilize the API. Login settings for the web server are available from Server group on the System ribbon tab. 6.1 6.1.1 Web Server Configuration Web Site Configuration For the web server to be able to host web pages, the content of the web site must be transferred using FTP to a folder named “WebSite” residing in the FTP root directory. The FTP server must be enabled and the web content can only be transferred after the application has been deployed and started on the panel. 6.1.2 Login Form The web server provides a default login form that is used for clients to authenticate. It is also possible to override the default and provide a custom web page that matches your overall design. To override the login form, create an HTML file called “login.html” and place it in a folder named “Website” in the root of the FTP root directory. This file will be used instead of the default when clients access the address “/login”. The Javascript SDK provides tools for creating the form using a few conventions. Note that this only applies if you have authentication enabled in the web server settings. Authentication Script Reference the authentication script Username and Password Field Mark the username and password field with the predefined id’s “ix-username“ and “ix-password”: Beijer Electronics, MAEN831L 127 Web Server Login Button Mark a login button with the predefined id “ix-login”. Any element can be used. Invalid Credentials Optionally add an element with the predefined id “ix-invalid-credentials” that will be shown if the login fails. 6.2 6.2.1 Javascript SDK Javascript SDK Overview The JavaScript SDK provides a rich set of client-side functionality for accessing the server-side API calls. This enables the possibility to build highly interactive web pages that uses tags defined in the project. 1. The first step to build an interactive web page is to reference the SDK by inserting the following script into to the header of the html. Note: The SDK is bundled with jQuery 1.7 (http://jquery.com/). 2. Next, the SDK needs to be initialized. In its simples form the following lines need to be added after the reference to the SDK: This will make it possible to use the defined tag metadata attributes to incorporate the project tags into the web page. The following line will, for example, insert the value of Tag1 into the HTML document: Beijer Electronics, MAEN831L 128 Web Server Tag Value or Properties To insert the current value of a tag or tag property into a HTML element, the data-ix-tag attribute can be used. The value of the attribute should be the name of the tag as defined in the project and the property of a tag. Separate the names with a dot “.”. If no property is provided, the value of the tag is used. Formatting Formatting of a tag value can be applied to a tag of numeric type or a datetime. The format is defined using the data-ix-format attribute. The following table describes the custom date and time format specifiers and displays a result string produced by each format specifier. Tuesday, February 07, 2012 12:27:24 PM is used as input. Tag value Description Result d The day of the month, from 01 through 31. 07 D The abbreviated name of the day of the week (in english) Tue j The day of the month, from 1 through 31 l The full name of the day of the week S Ordinal number for the date of the month (eg -st, -nd, -rd, -th etc) th w Day of the week as a number. 2 z Day of the year 37 W Week of the year 05 F The full name of the month. m Gets the day of the month from 00 to 31 02 M The abbreviated name of the month. Feb n The month of the year 1 to 12 2 t Number of days in the month 29 L Is leap year, 1 if true, otherwise 0 1 Y The year as a four-digit number. 2012 Beijer Electronics, MAEN831L 7 Tuesday February 129 Web Server Tag value Description Result y The year, from 00 to 99 12 a The AM/PM designator lower case. pm A The AM/PM designator upper case. PM g The hour, using a 12-hour clock from 1 to 12. 12 G The hour, using a 24-hour clock from 0 to 23. 12 h The hour, using a 12-hour clock from 01 to 12. 12 H The hour, using a 24-hour clock from 00 to 23. 12 i The minute, from 00 through 59 27 s The second, from 00 through 59. 24 X The milliseconds, from 000 through 999. 000 O Hours offset from GMT, with a leading zero for a single-digit value. +0100 Z Timezone offset, in seconds 3600 q Quarter Beijer Electronics, MAEN831L 1 130 Web Server The following table describes the custom numeric format specifiers and displays sample output produced by each format specifier: Tag Value 0 Result Description Value Digit Format 4 00 → 04 4.5 0.00 → 4.50 .1 0.00 × 1000 → 1.00 × 10-01 # Digit, zero shows as absent 4 ## → 4 . Decimal separator or monetary decimal separator 4.5 0.00 → 4.50 E Separates mantissa and exponent in scientific notation 5.55 0.0 × 1000 → 5.6 × 1000 1000000 0.0 × 1000 → 1.0 × 1006 Grouping separator 1000 0,0 → 1,000 1000 0,# → 1,000 -5 plus;minus → minus 5 plus;minus → plus 0 plus;minus;zero → zero -5 0;(0.0);0.000 → (5.0) 700 [>500]###.##;[<1000]###;# ##.# → 700.00 400 [>500]medium;[>1000]### ;###.# → 400 1001 [>2000]high;[>1000]normal;[>500]low → normal , ; [] Separates positive and negative subpatterns Custom subpatterns Setting Tag Value To set the value of a tag, two elements must be defined. The first element have the data-ix-setter attribute on the position where the tag value can be entered. The second element has the data-ix-submitbutton attribute used to submit the new tag value. The data-ix-submitbutton attribute takes the tag names, separated by comma “,”, to be submitted when the button is clicked. To submit all tags an asterisk “*” can be used. Beijer Electronics, MAEN831L 131 Web Server iX-invalid Style Basic validation is done on input values. If the value cannot be assigned to the Tag then the value will not be set. To indicate an invalid value the framework will set the CSS class “ix-invalid” on the element. This can then be used to provide the user with visual cues of the invalid state. For example, the following CSS snippet adds a red border around the input when the input is incorrect: Refresh Modes To control how tag values are refreshed, the data-ix-refresh attribute can be used with elements defined with data-ix-tag or data-ix-setter. It is recommended to use the least frequent interval that is required by your project. Advanced iX.setup After loading the JavaScript SDK, call iX.setup to initialize the framework. This will wire the tag metadata attributes that you have defined in HTML and will start periodical polling if this is needed. Parameters: Name options Type Object Beijer Electronics, MAEN831L Description See the “Options” table below. 132 Web Server Options Property Type Description Argument Default refreshInterval Int The refresh interval of tag values in ms. For performance reasons it is recommended not to use low values for this setting. Optional 5000 refreshMode Overrides the default refresh mode of tag values. Optional onetime Optional onetime String Accepted modes are: none, onetime, interval. refreshModeSetter String Overrides the default refresh mode of tag setters. Accepted modes are: none, onetime, interval. Example: This example will set periodical refresh interval to 10 seconds, set the refresh mode of HTML elements marked with the data-ix-tag attribute to interval and set the refresh mode of HTML elements marked with the data-ix-setter attribute to refresh only once. iX.refreshElements Refreshes the tag values of the provided elements manually. The attribute data-ix-refreshbutton can be used to achieve the same function. Note: Only an element that have been marked with a valid data-ix-tag or data-ix-setter can be refreshed. The value will be refreshed regardless of the refresh mode set on the element. Parameters: Name elementIds Type Array Description A list of strings containing the HTML element ids. If not provided all tag elements are updated. Example: This example show how you programmatically can achieve the same behavior as marking an element with data-ix-refreshbutton. In the example, the HTML element with id "tag1Id" will be updated when the element with id "refreshButton" is clicked. This example uses jQuery (bundled with iX.js) to bind to the click event of the "refreshButton" Beijer Electronics, MAEN831L 133 Web Server In HTML: In Javascript: iX.refreshTags Refreshes the tag values of the provided tag names manually. Note: Only tags used in conjunction with data-ix-tag or data-ix-setter or created by iX.createTag can be refreshed. Parameters: Name tagName Type String Description (Optional) A list of strings containing the names of the tags to refresh. If not provided all defined tags are refreshed. Example: This example show how to programmatically refresh the tag values of "tag1" and "tag2". When refreshButton is clicked the "tag1" and "tag2" will be refreshed even if the refresh mode was set to 'none' when creating the tag. iX.createTag Creates a representation of a server-side tag on the client-side. Parameters: Beijer Electronics, MAEN831L 134 Web Server Name Type Description tagName String The name of the tag in the project to create a connection to. valueRefreshedCallback Function Optional: Function that is called when the tag value has changed. The function is not called when the tag value is the same as last checked. Function may take two optional parameters. The first parameter is the tag that changed the value, the second the old values of the tag before it changed. refreshMode String Optional: Overrides the default refresh mode of tag. Accepted modes are: none, onetime, interval. Note that the more frequent refreshMode is always used. For example, if the tag is created with onetime but an element defines data-ix-refreshmode=”interval” for the same tag then the tag will have a refreshMode of interval. Returns: Type iX.Tag Description An instance of iX.Tag. See Tag Class for a complete description. Example: This example show how to display a warning if the value of "tag1" exceeds 70. The example is using jQuery (bundled with iX.js) to hide and show the warning box. iX.getTag Retrieves a tag by name. Parameters: Name tagName Type String Beijer Electronics, MAEN831L Description The name of the tag to retrieve. 135 Web Server Returns: Type iX.Tag Description An instance of iX.Tag. See Tag Class for a complete description. Example: This example shows how to retrieve an instance of a tag after it has been created. "tag1" and "tag1Again" will refer to the same tag instance. iX.commitTagValue Commits any unsaved tag values that was changed using iX.Tag.setValue for the provided tag names. Parameters: Name tagNames Type Array Description (Optional) A list of strings containing the names of the tags to commit. If not provided all defined tags are committed. Example: This example show how to commit changes to tag values on the server in a batch. Note that the value must match the data type of the tag on the server. Tag Class iX.Tag is a class representing a Tag. The methods and properties of a Tag must be accessed through an instance of iX.Tag and not the class itself. Typically a Tag instance obtained using iX.createTag or iX.getTag methods. Beijer Electronics, MAEN831L 136 Web Server iX.Tag Properties Name Type Description isDirty Bool Flag indicating if the local value has been changed. tagProperties Object An object with data retrieved from the server. See tag metadata below. Note that these are only available after the first refresh. Also, only value is refreshed not all of the metadata. value Flexible The value of the tag. The type of the value depends on the data type in the project. Never use this property to set the value. Tag Properties: Name Type Description controllers Array An array of controller names that the tag is connected to. description String The tag description, null if not defined. dataType String The tag dataType, e.g int16, datetime, default initialValue Flexible The initial value of the tag, null if not defined. readonly Bool True if the tag is read only, otherwise false quality String Indicates the quality of the tag value: Unknown, Good, Bad iX.Tag.setValue Set the tag value manually. To commit the value to the server side call iX.commit. It’s vital that the value that is set corresponds to the data type of the tag. Parameter: Name newValue Type Flexible Description The new value. Must match the data type of the tag. iX.Tag.subscribeToChange Adds a callback that is called when the server-side value has changed. Parameter: Name fn Type Function Beijer Electronics, MAEN831L Description The callback to register 137 Web Server iX.Tag.unsubscribeToChange Unsubscribe from changes. Name Type fn Function Description The same callback that was used with iX.Tag.subscribeToChange iX.Tag.refresh Refreshes this tag. It is recommended to refresh tags in batch (using iX.refresh) instead of refreshing individual tags. iX.Tag.commit Commit this tags value if the value has been changed. It is recommended to commit tags in batch (using iX.commit) instead of refreshing individual tags. 6.3 Web Service API 6.3.1 RESTful Web Service API iX Developer provides an API for interacting with tags. The tags can be read or written to using the HTTP verbs GET, PUT and POST. GET to read tags, PUT to set the value of a tag or POST to perform batch operation. 6.3.2 General Accepted Types It is possible to negotiate which media type that will be returned as a representation of the resource being retrieved. Use the Accept header in the request to specify the desired media type. text/html and application/json media types are understood as response formats for tag related resources. A client request providing an unsupported media type will be responded with the following message: “406 - Not understood”. 6.3.3 REST API Tags Resource Lists tags available in the project. Tags Resource Verbs: GET Uri: /Tags Beijer Electronics, MAEN831L 138 Web Server Tags Resource Example Tag Resource Resource for interacting with individual tags. To perform multiple operations on tags it is recommended to use TagBatch resource instead. Tag Resource Verbs: GET, PUT Uri: /tags/:name GET params: Name: The name of the tag, e.g., Tag1 SystemTagDateTime PUT params: Name: The name of the tag, e.g., Tag1 SystemTagDateTime Value: The value to set the tag to, e.g., 12, "foo" Tag Resource Example TagBatch Resource The TagBatch resource is a resource used to perform batch operations on tags. TagBatch Resource Verbs: POST Uri: /tagbatch Beijer Electronics, MAEN831L 139 Web Server TagBatch Resource POST params: includeMetadata: boolean indicating if only the tag value or the full tag metadata should be fetched getTags: List of tag names to return setTags: List name, value pairs representing new tag values. Beijer Electronics, MAEN831L 140 Web Server TagBatch Resource Example Note: The returned value (initialValue) for tags of datetime type is presented in the ISO8601 format. Example: "2008-09-22T14:01:54.9571247Z". Dates are always returned in UTC, Coordinated Universal Time. Beijer Electronics, MAEN831L 141 Objects 7 Objects Static and dynamic objects that can be included in screens are available for selection from the Objects control group of the Home ribbon tab. Not all objects are visible in the normal view, but are made available by scrolling. Clicking the expand button displays all the objects, categorized into groups. An object can be created by clicking on it in the Objects group and then clicking on the screen, or by dragging it from the Objects group and dropping it on the screen. This creates the object with default size and appearance. Dragging the object handles resizes it. Object appearance can be modified using the commands in the Format and Font control groups, but also by the controls on the Dynamics ribbon tab. Settings for a selected object can be managed with the control groups on the General ribbon tab, and actions can be configured from the Actions ribbon tab. Beijer Electronics, MAEN831L 142 Objects An object style that is to be used frequently can be saved as an Object Variation, in order to immediately apply a predefined appearance to the object when creating it. Related information Object Variations 7.1 Blinking Objects Some objects can be displayed as blinking objects. Blinking is enabled for each object individually using the Property Grid. The Blink settings can be entered either from the General group under the Dynamics tab, or from the Property Grid, under Animations. In both cases selecting Blink opens the Edit Blink Dynamics dialog. Parameter Blink Interval Description Constant blink intervals: Time in ms from when the object gets invisible one time until it gets invisible the next time. For operator panel projects, the minimum value is 400 ms, and it is recommended to use a blink interval of a multiple of 400 ms to ensure a harmonic blink experience (400 ms, 800 ms, 1200 ms, 1600 ms etc.). For PC targets, the minimum value is 200 ms. The default value is 1200 ms for all targets, and the maximum value is 10,000 ms for all targets. Blink intervals bound to a tag: Select Tag for Blink Interval changes blink frequency based on the selected tag value. Blink Enabled Select Tag for Blink Enable makes it possible to enable and disable blinking depending on the selected tag value: When the tag value is equal to the given value (=True), blink is enabled. When the tag value is not equal to the given value (=False), blink is disabled. Beijer Electronics, MAEN831L 143 Objects Security has higher priority than blink, and an object hidden by security cannot be made visible through blink. It is not recommend to use Blink on objects that should be used for user interaction. Related information General Group 7.1.1 Limitations for operator panel Targets Blink is not supported for the following objects in operator panel targets: Alarm Distributor Viewer Alarm Viewer Audit Trail Viewer Check Box Combo Box Database Viewer Group Box List Box Media Player Pdf Viewer Progress Bar Radio Button Web Browser - Related information General Group 7.2 Shapes Static shapes such as Line, Rectangle and Poly Line can be used to draw background graphics. Tags can be linked to shapes under Dynamics, to change their appearance (e.g. color and position) depending on value changes of controller tags. Points for an existing Poly Line object can be adjusted by selecting Edit Points from the context menu. Ellipse Line Polyline Rectangle Note: Bevel for Poly Line and Ellipse is only supported for projects designed for PC targets. 7.3 HMI Controls Dynamic objects such as buttons, analog numerics, sliders, meters and trend viewers are linked to tags in order to create control and monitoring functions. The tag associated with an object can be selected and changed from the Tag/Security group on the Home or General ribbon tabs, or from the context Beijer Electronics, MAEN831L 144 Objects menu. Links to tags (controller tags, internal tags or system tags) are selected in the Tag drop-down list. Objects containing text can be edited directly from the keyboard, either when just created, or when a single selection is done on the text area of the object. It is also possible to use script code to control the text contents of buttons, texts or text boxes. Note: Use of braces around digits, such as ‘{0}’, is not allowed in text objects. This will result in an error when opening the screen. The following HMI controls are described: Action Menu Object Alarm Viewer Object Analog Numeric Object Animated GIF Animated Label Object Audit Trail Viewer Button Object Circular Meter Object Chart Object Database Viewer Object Digital Clock Object Linear Meter Object Multi Picture Object Picture Object Roller Panel Object Slider Object Text Object Touch Combo Box Object Touch List Box Object Trend Viewer Object 7.3.1 Action Menu Object The Action menu object is used to display multiple menu groups, each containing its own sets of actions which can be triggered in iX Runtime from the action menu object. Settings for the Action Menu object are available from the General ribbon tab while the object is selected: Beijer Electronics, MAEN831L 145 Objects Settings Group Parameter Description Edit Actions Opens the Edit Actions dialog View type Choose between Bar, Expand and Tab Item Width Set the width of the items. This is only available for the Bar and Expand View types. Item Height Set the height of the items Orientation Set the orientation of the items. This is only available for the Bar View type. Picture Width Set the width of the pictures for the items Picture Height Set the height of the pictures for the items ScrollBar Width Set the width of the scroll bar. Touch Settings Group Parameter Scroll Sensitivity Description Set the sensitivity of the scroll. Minimum value is 1, maximum value is 10. Edit Actions Dialog The Actions tab in the Edit Actions dialog contains the following properties: Parameter Description Text The text to be displayed for the item Picture The picture to be displayed for the item Make Transparent Set transparency on the item Action Configure the action when the item is clicked The Menu Groups tab in the Edit Actions dialog contains the following properties: Parameter Description Menu Group Name The name of the menu group Picture The picture to be displayed for the menu group Make Transparent Set transparency on the menu group Note: Make sure not to use semi-transparent pictures in projects targeted for operator panel. Since these targets do not fully support opacity, semi-transparent pictures may turn out unclear. Beijer Electronics, MAEN831L 146 Objects Adding a New Action In the Edit Actions dialog select the Actions tab. Click the Add button. A new item will be added and placed last in the list. To configure the actions for the item, click the “…” button in the Action column. Adding a New Menu Group In the Edit Actions dialog select the Menu Groups tab. Click the Add button. A new menu group will be added and placed last in the list. The menu group will be displayed in the Actions tab as a new menu group tab. Action Menu Dynamics It is also possible to set dynamics, i.e. tag dependent values for the Action Menu properties. These can be found in the Dynamics tab in the ribbon bar. Related information Dynamics Ribbon Tab 7.3.2 Alarm Viewer Object The Alarm Viewer is used to display and manage alarm items, for example indication of out-of-bounds tag values. The viewer consists of a list area and a button area. Related information Alarm Management Alarm Viewer 7.3.3 Analog Numeric Object The Analog Numeric object displays a box with a numeric or alphanumeric value. The value can be connected to a tag. Settings for the analog numeric object are available from the General ribbon tab while the object is selected: Display Format Group Parameter Description Type Selection of Integer, Decimal, String, Hex or Binary display format Number of Decimals Maximum number of decimals to display in the object. Only available when Type = Decimal. The number of decimals will be represented by a “#” symbol on the analog numeric object. Beijer Electronics, MAEN831L 147 Objects Parameter Description Limit Characters to Makes it possible to maximize the number of displayed characters. The number of characters will be represented by a “#” symbol on the analog numeric object. Zero Fill Fills empty character positions with zeros, to let the maximum number of characters always be displayed Note: The “Limit Characters to” function, in combination with the string format type is not supported for the Traditional Chinese, Simplified Chinese and Simplified Chinese (Compact) languages. Prefix/Suffix Group Parameter Prefix/Suffix Description Text value that will precede/follow the object value Tag/Security Group Parameter Description Select Tag Connection to a tag from the tags configuration page Select Security Groups Allows limiting access of the object based on security groups. If left empty, the object can be accessed by anyone. Select Visibility Configuration of visibility: Default: The visibility specified on the General tab of the Security Manager is used. Disabled: The object is disabled for users with insufficient access rights Hidden: The object is invisible for users with insufficient access rights Normal: The object looks normal also for users with insufficient access rights Format Group Parameter Description Auto Stretch Font Resizes the font to fit the height of the object. Default setting for the analog numeric object. Disable Operator Input Disables input in runtime Transparent Makes the object transparent, i.e. makes the frame and background color invisible Beijer Electronics, MAEN831L 148 Objects Text Alignment Group Parameter Description Horizontal / Vertical Adjusts the object horizontally or vertically Validation Group Parameter Description On Input Input values are validated, based on Lower Limit and Upper Limit, when the box is checked On Display Background color changes according to Other Colors on the Format tab if upper or lower limit are violated, when the box is checked Lower Limit/Upper Limit Minimum/maximum value that can be entered in runtime when On Input is checked, or that will change the background color of the object when On Display is checked Note: The font size of the analog numeric object is auto-sized when resizing the object frame by default, and is not adjusted in the Font control of the Home ribbon tab. Uncheck Auto Stretch Font in the Text group first, and then change the font size on the Home ribbon tab. 7.3.4 Animated GIF The Animated GIF (Graphics Interchange Format) object allows including a moving graphic picture in the iX Developer project. Animated GIFs can be imported to the project by browsing the PC environment for graphic files. Imported animated GIFs are added to the Project Picture folder in the Component Library. The Animated GIF can be connected to a tag which controls animation. When the value of the connected tag is 0, then animation is turned off and the picture is displayed static in its initial design. An Animated GIF not connected to a tag runs animated continuously. Settings for the Animated GIF object are available from the General ribbon tab while the object is selected: Settings Group Parameter Description Change Picture Opens a browse dialog for selection of picture Reset Picture Restores original height and width to picture Stretch Adapts height and width to the selection frame when resizing the picture Transparent Makes the object transparent, i.e. makes the frame and background color invisible Beijer Electronics, MAEN831L 149 Objects Note: Make sure not to use semi-transparent pictures in projects targeted for operator panel. Since these targets do not fully support opacity, semi-transparent pictures may turn out unclear. Tag/Security Group Parameter Description Select Tag Connection to a tag from the tags configuration page Select Security Groups Allows limiting access of the object based on security groups. If left empty, the object can be accessed by anyone. Select Visibility Configuration of visibility: Default: The visibility specified on the General tab of the Security Manager is used. Disabled: The object is disabled for users with insufficient access rights Hidden: The object is invisible for users with insufficient access rights Normal: The object looks normal also for users with insufficient access rights 7.3.5 Animated Label Object The Animated Label object is used to display an animated text label in iX Runtime. Settings for the Animated Label object are available from the General ribbon tab while the object is selected: Note: Using the animated label object creates a slightly higher load on the CPU. Parameter Description Text The text to be displayed in the animated label Animated If enabled, the text starts to animate Animation speed Set the speed for the animation. Minimum value is 1, maximum value is 32,767. Animation Direction Set the animation direction: From right to left From left to right From right to left to right From left to right to left From down to up From up to down From down to up to down From up to down to up Beijer Electronics, MAEN831L 150 Objects Animated Label Dynamics It is possible to set dynamics, i.e. tag dependent values for the Animated Label properties. These can be found in the Dynamics tab in the ribbon bar. Related information Dynamics Ribbon Tab 7.3.6 Audit Trail Viewer Object The Audit Trail Viewer displays information about operator changes that have been logged with the audit trail function. Related information Audit Trail Audit Trail Viewer 7.3.7 Button Object The Button tool draws a button with a text and/or picture. The button can be configured to perform a specific task in runtime via the Actions ribbon tab or using script. The text on the button object can also be set to depend directly on a tag value using the General control on the Dynamics ribbon tab. If a picture is used, the picture file is added to the Project Pictures folder in the Component Library. Settings for the button object are available from the General ribbon tab while the object is selected: Picture Group Parameter Picture Description Selects a picture to display on the button. Pictures from the Project Pictures folder is available for selection directly. It is also possible to browse the PC environment for a picture. Select No Picture to remove a previously selected picture. Checking the Multi Picture checkbox will make it possible to display different pictures based on the value of a connected tag according to section Configure Multi Pictures. Multi Picture Multi Picture or single picture displayed on button. Transparent Makes the picture transparent Note: Make sure not to use semi-transparent pictures in projects targeted for operator panel. Since these targets do not fully support opacity, semi-transparent pictures may turn out unclear. Beijer Electronics, MAEN831L 151 Objects Configure Multi Pictures Different pictures can be displayed on the button based on the value of a connected tag, following the steps below: 1. Check the Multi Picture checkbox. 2. Click on the Picture control on the Picture group of the General tab. 3. Select a tag to control which picture to display. 4. Click Add to add pictures and configure start and end values for each picture. You can browse the PC for pictures, or select pictures from the current project. 5. Click OK. The picture on the button will now change according to the value of the selected tag. When the value is out of limits, no picture is displayed. Picture Alignment Group Parameter Vertical Alignment/ Horizontal Alignment Description Set alignment for the picture Clicking the small arrow in the lower right corner of the Picture Alignment group displays the picture properties with a number of additional picture settings. Style Group Parameter Description Style Predefined graphical styles for the button Appearance The appearance of the button, including possibility to make the button rounded and settings for each corner of the button. Additional predefined styles for this object are found in the Object Variations group. Beijer Electronics, MAEN831L 152 Objects Note: When editing default button style properties, for example corner radius, appearance in runtime may sometimes differ from when designing the project in iX Developer. Related information Object Variations Text Group Parameter Description Text Text displayed on the button Multiline Lets the text run over more than one line, using [Enter]. Confirm the text entry by pressing [Ctrl] + [Enter]. Word Wrap Wraps the text to fit the width of the button Configure Texts Links the displayed text to a tag. The Text field value is shown if the selected tag is not within the set limits Text Alignment Group Parameter Horizontal / Vertical Description Adjusts the text on the button horizontally or vertically Visibility Group Parameter Transparent Description Makes the object transparent Creating a Button with Momentary Function In order to create a button with a momentary function, you need to combine a Set Tag action for Mouse Down with a Reset Tag action for Mouse Up . Related information Actions Ribbon Tab Script Component Library Beijer Electronics, MAEN831L 153 Objects 7.3.8 Circular Meter Object The Circular Meter represents a numeric value, and displays the value of a connected tag. Different styles can be used to change the graphical profile of the meter, and also if the meter is to be full, half or quarter. Circular meters in Black Full style, Chrome Half style and Vintage Quarter style Settings for the meter object are available from the General ribbon tab while the object is selected: Angular Settings Group Parameter Description Start Angle / End Angle Determines the placement of the scale on the meter. The angular value is based on a start (0 degrees) at three o’clock, in a counter clockwise direction from there. The Start Angle must differ from the End Angle. Text Rotation Select Parallel to let the numbers follow the outline of the meter, or None to display the numbers aligned horizontally. Clockwise Determines rotation orientation, clockwise or counter clockwise. Region Settings Group Parameter Low Region / Medium Region / High Region Min/Max Description Define colors for up to 3 regions, and at which values to start and stop each region. Entering 0 for both minimum and maximum values displays no region color. Value Scale Group Parameter Min Value / Max Value Description Start/end value of scale. These values can consist of one decimal digit. Major Ticks Number of labeled scale marks on the meter Minor Ticks Number of scale ticks between two adjacent major ticks Beijer Electronics, MAEN831L 154 Objects Style Group Parameter Description Style Predefined graphical styles for the meter. The smaller styles are intended in particular to allow full visibility in the smaller operator panels. Appearance The appearance of the meter; full, half or quarter Additional predefined styles for this object are found in the Object Variations group. Related information Object Variations Needle Settings Group Parameter Description Analog Animation Animation that creates a smooth movement of the needle at value change. Oscillation Animation of needle initially oscillating around the new value. The function is only available in combination with Analog Animation. When Analog Animation is selected, it is possible to activate Shortest Path in the property grid under Appearance. The setting affects the direction of the animated needle, resulting in a counter clockwise movement if this is the shortest path between two indicated values. Note: The Shortest Path property is not available for PC targets. Note: Using animation on the circular meter objects creates a higher load on the CPU. Therefore it is recommended to limit the use of the needle animation to only a few circular meters per screen, especially for the smaller panel models. Tag/Security Group Parameter Description Select Tag Connection to a tag from the tags configuration page Select Security Groups Allows limiting access of the object based on security groups. If left empty, the object can be accessed by anyone. Select Visibility Configuration of visibility: Default: The visibility specified on the General tab of the Security Manager is used. Beijer Electronics, MAEN831L 155 Objects Parameter Description Disabled: The object is disabled for users with insufficient access rights Hidden: The object is invisible for users with insufficient access rights Normal: The object looks normal also for users with insufficient access rights Visibility Group Parameter Description Transparent Makes the object transparent Scale When unchecked, the scale color of the meter is made transparent. Scale color is set from Other Colors on the Format tab. 7.3.9 Chart Object The chart object is used to display values of connected array tags. Settings for the chart object are available from the General ribbon tab while the object is selected: Chart Settings Group Parameter Description Edit Series Add, remove and edit the current series for this chart Chart Types Choose chart type. Available types are: Area Area Horizontal Bar Bar Join Donut Histogram Kagi Line Line Fast Line Horizontal Line Point Pie Points Radar Header Set the name that is displayed above the chart 3D View Set a 3D look and feel for the chart Beijer Electronics, MAEN831L 156 Objects X Axis Settings Group Parameter Description Visible Set the visibility of the X axis Grid Visible Set the visibility of the X axis grid lines. Automatic Automatically calculates the minimum and maximum X axis values. Overrides the Minimum and Maximum properties Minimum Set the minimum value of the X axis. If automatic is set, this value is ignored Maximum Set the maximum value of the X axis. If automatic is set, this value is ignored Y1 Axis Settings Group Parameter Description Visible Set the visibility of the Y1 axis Grid Visible Set the visibility of the Y1 axis grid lines. Automatic Automatically calculates the minimum and maximum Y1 axis values. Overrides the Minimum and Maximum properties. Minimum Set the minimum value of the Y1 axis. If automatic is set, this value is ignored. Maximum Set the maximum value of the Y1 axis. If automatic is set, this value is ignored. When using charts with visible labels on curves the maximum value is extended to make room for label. Y2 Axis Settings Group Parameter Description Visible Set the visibility of the Y2 axis Grid Visible Set the visibility of the Y2 axis grid lines. Automatic Automatically calculates the minimum and maximum Y2 axis values. Overrides the Minimum and Maximum properties. Minimum Set the minimum value of the Y2 axis. If automatic is set, this value is ignored. Maximum Set the maximum value of the Y2 axis. If automatic is set, this value is ignored. When using charts with visible labels on curves the maximum value is extended to make room for label. Beijer Electronics, MAEN831L 157 Objects Style Group Parameter Description Style Set the style of the chart Visibility Group Parameter Description Scale Set the visibility of the scale Transparent Make the chart transparent Header Set the header visibility Legend Set the legend visibility The Edit Series Dialog Clicking the Edit Series control in the Chart Settings Group will open the Edit Series Dialog. The Edit Series Dialog contains the following settings: Parameter Description Name The name of the Series, as shown in the legend in the chart. X Tag The X Tag values. The tag must be an array tag. The number of elements shown will be the lowest common denominator of the X Tag array size and the Y Tag array size. Y Tag Optional: The Y Tag values for the chart. The tag must be an array tag. If this value is not chosen, the X Tag Values will still be visible and the Y Axis will be set automatically. The number of elements shown will be the lowest common denominator of the X Tag array size and the Y Tag array size. Size Optional: The number of elements in the tag arrays. This property overrides the sizes of the X Tag array size and Y Tag array size. If this value is not set, the lowest common denominator of the X Tags array size and the Y Tags array size will be chosen as size. Labels Set a label for each point in the chart. There is one label for each available tag value. Color Choose the color of the series. Thickness Set the thickness of the series. This applies for the chart types Line, Line Fast, Line Horizontal and Line Point. Axis Type Select the Y Axis that this series will use. Note: Chart objects with large arrays where values are frequently changing may affect performance. Beijer Electronics, MAEN831L 158 Objects Related information Array Tags 7.3.10 Database Viewer Object The Database Viewer can be used to display database contents in runtime. For operator panel projects, only databases included in the current project are available. For PC targets, it is possible to access databases from anywhere in the network environment. Settings for the database viewer object are available from the General ribbon tab while the object is selected: Settings Group Parameter Description Show Controls When the box is checked, the user is able to select database and database table in runtime Database Path to database to be loaded automatically in runtime(1) Table Name The table in the selected database to be loaded automatically in runtime(1) Browse Data Table Opens a browse dialog for selection of database and database table in design time. The path and table name will be added to the Database and Table Name fields. (1) If the entered database or table does not exist or is not valid, an empty database viewer is displayed in runtime. Note: Simulation of the object on the development PC is supported only for PC targets. Related information Database 7.3.11 Digital Clock Object The digital clock displays date, time and/or day of week. The time zone is selected on the System ribbon tab and is transferred to the target when the project is downloaded to it. If no time zone is selected, the time zone that has been selected for the panel or PC will be retained. The date and time display format (for example using AM/PM for time) is based on the operating system settings. For operator panel projects, this format may be altered by selecting another region on the System ribbon tab. Note: For PC projects the region settings need to be changed in the system account to take place. Beijer Electronics, MAEN831L 159 Objects Related information Date, Time, and Region Group Display Format Group Parameter Description DateAndTime / Date / Time Selection of date and time components Show Day of Week When checked, day of week is displayed Show Seconds When checked, seconds are displayed 7.3.12 Linear Meter Object The Linear Meter represents a numeric value, and displays the value of a connected tag. Different styles can be used to change the graphical profile of the meter, and also if the meter is to be horizontal or vertical. Linear meters in Classic Horizontal style and Eclipse Vertical style Settings for the meter object are available from the General ribbon tab while the object is selected: Value Scale Group Parameter Min Value / Max Value Description Start/end value of scale These values can consist of one decimal digit. Major Ticks Number of labeled scale marks on the meter Minor Ticks Number of scale ticks between two adjacent major ticks Beijer Electronics, MAEN831L 160 Objects Style Group Parameter Description Style Predefined graphical styles for the meter. The smaller styles are intended in particular to allow full visibility in the smaller operator panels. Appearance The appearance of the meter; horizontal or vertical Tag/Security Group Parameter Description Select Tag Connection to a tag from the tags configuration page Select Security Groups Allows limiting access of the object based on security groups. If left empty, the object can be accessed by anyone. Select Visibility Configuration of visibility: Default: The visibility specified on the General tab of the Security Manager is used. Disabled: The object is disabled for users with insufficient access rights Hidden: The object is invisible for users with insufficient access rights Normal: The object looks normal also for users with insufficient access rights Visibility Group Parameter Description Transparent Makes the object transparent; only indicator bar and scale will be visible Scale When unchecked, the scale color of the meter is made transparent. Scale color and indicator color are set from Other Colors on the Format tab. 7.3.13 Multi Picture Object The Multi Picture object allows using a set of pictures as an object. The pictures change in runtime depending on intervals of a tag value. Pictures can be imported to the project by browsing the hard disk for graphic files. Imported pictures are added to the Project Pictures folder in the Component Library. Settings for the Multi Picture object are available from the General ribbon tab while the object is selected: Beijer Electronics, MAEN831L 161 Objects Settings Group Parameter Description Configure Pictures Configuration of start/end values of intervals and selection of pictures for each interval. Pictures can be selected from the Project Pictures folder or from the hard disk. Transparency can also be set. Original picture size is displayed. The Add/Delete buttons are used to add and remove items to/from the object. Reset Picture Restores original height and width to picture. Stretch Adapts height and width to the selection frame when resizing the picture. Lock Aspect Ratio Maintains the height/width ratio of the object. Note: Make sure not to use semi-transparent pictures in projects targeted for operator panel. Since these targets do not fully support opacity, semi-transparent pictures may turn out unclear. Related information Component Library 7.3.14 Picture Object The Picture object allows using a picture as an object. Pictures can be imported to the project by browsing the PC environment for graphic files. Imported pictures are added to the Project Pictures folder in the Component Library. The displayed picture can also be dynamic; depending of a set of pictures that have been linked to intervals in a tag value. Settings for the picture object are available from the General ribbon tab while the object is selected: Settings Group Parameter Description Change Picture Opens a browse dialog for selection of picture Reset Picture Restores original height and width to picture Stretch Adapts height and width to the selection frame when resizing the picture Transparent Makes the object transparent, i.e. makes the frame and background color invisible Note: Make sure not to use semi-transparent pictures in projects targeted for operator panel. Since these targets do not fully support opacity, semi-transparent pictures may turn out unclear. Beijer Electronics, MAEN831L 162 Objects Related information Component Library 7.3.15 Roller Panel Object The Roller Panel object is used to display predefined texts for certain tag values. Settings for the Roller Panel object are available from the General ribbon tab while the object is selected: Settings Group Parameter Description Title Set the title for the Roller Panel Title Visible Determines if the title is visible or not Loop Scroll Determines if the values will loop around or not Disable Operator Input Determines if the Roller Panel is editable or not Touch Settings Group Parameter Description Scroll Sensitivity Set the sensitivity of the scroll Scroll Friction Set the friction of the scroll Text Group Parameter Configure Texts Description Opens the Configure Texts dialog Configure Text Dialog The Configure Texts dialog contains the following properties: Parameter Description Text The text to be displayed for the item Start Value The starting value for when this item should be selected End Value The ending value for when this item should be selected Roller Panel Dynamics It is also possible to set dynamics, i.e. tag dependent values for the Roller Panel properties. These can be found in the Dynamics tab in the ribbon bar. Related information Dynamics Ribbon Tab Beijer Electronics, MAEN831L 163 Objects 7.3.16 Slider Object The Slider can be used to adjust a numeric value. The slider sets a value to a connected tag. If the tag value changes for other reasons, the slider control handle will show the actual value in runtime. Sliders in Chrome and Eclipse Horizontal styles, and Vintage Vertical style Settings for the slider object are available from the General ribbon tab while the object is selected: Value Scale Group Parameter Min Value/Max Value Description Start/end value of scale These values can consist of one decimal digit. Major Ticks Number of labeled scale marks on the slider Minor Ticks Number of scale ticks between two adjacent major ticks Style Group Parameter Description Style Predefined graphical styles for the slider. The smaller styles are intended in particular to allow full visibility in the smaller operator panels. Appearance The appearance of the slider; horizontal or vertical Beijer Electronics, MAEN831L 164 Objects Tag/Security Group Parameter Description Select Tag Connection to a tag from the tags configuration page Select Security Groups Allows limiting access of the object based on security groups. If left empty, the object can be accessed by anyone. Select Visibility Configuration of visibility: Default: The visibility specified on the General tab of the Security Manager is used. Disabled: The object is disabled for users with insufficient access rights Hidden: The object is invisible for users with insufficient access rights Normal: The object looks normal also for users with insufficient access rights Visibility Group Parameter Description Transparent Makes the object transparent Scale When unchecked, the scale color of the slider is made transparent. Scale color and indicator color (color of the handle) are set from Other Colors on the Format tab. 7.3.17 Text Object The Text object is used to display read-only information for the operator. The displayed text can be static, or linked to intervals in a tag value that contain different strings. The text object can also be set to depend directly on a tag value using the General control on the Dynamics ribbon tab. Settings for the text object are available from the General ribbon tab while the object is selected: Text Group Parameter Description Text Text that the object displays Multiline Lets the text run over more than one line, using [Enter]. Confirm the text entry by pressing [Ctrl] + [Enter]. Word Wrap Wraps the text to fit the width of the object. Not available if Autosize is selected. Configure Texts Links the displayed text to a tag. The Text field value is shown if the selected tag is not within the set limits. Beijer Electronics, MAEN831L 165 Objects Parameter Description Auto Stretch Font Resizes the font to fit the height of the object. Not available if Autosize is selected. Auto Size Resizes the object according to the size of the default text string length and font size. Default setting for the text object. Text Alignment Group Parameter Description Horizontal / Vertical 7.3.18 Adjusts the text in the object horizontally or vertically. Not available if Autosize is selected. Touch Combo Box Object The Touch Combo Box object is used to create text selections from a drop-down list. Settings for the Touch Combo Box object are available from the General ribbon tab while the object is selected: Settings Group Parameter Description Auto Size Item Height The Touch Combo Box will ignore the Item Height value and size the values automatically Item Height Set the height of the individual items in the Touch Combo Box ArrowBox Width Set the width of the Arrow Box ScrollBar Width Set the width of the scroll bar Text Group Parameter Configure Texts Description Opens the Configure Texts dialog Configure Text Dialog The Configure Texts dialog contains the following properties: Parameter Description Text The text to be displayed for the item Start Value The starting value for when this item should be selected End Value The ending value for when this item should be selected Beijer Electronics, MAEN831L 166 Objects Touch Settings Group Parameter Description Scroll Sensitivity Set the sensitivity of the scrolling Touch Combo Box Dynamics It is also possible to set dynamics, i.e. tag dependent values for the Touch Combo Box properties. These can be found in the Dynamics tab in the ribbon bar. Related information Dynamics Ribbon Tab 7.3.19 Touch List Box Object The Touch List Box object is used to handle a list of predefined texts. Settings for the Touch List Box object are available from the General ribbon tab while the object is selected: Settings Group Parameter Description Separator Visible Show or hide a separator between the items in the Touch List Box Item Height Set the height of the individual items in the Touch List Box ScrollBar Width Set the width of the scroll bar Touch Settings Group Parameter Scroll Sensitivity Description Set the sensitivity of the scrolling Text Group Parameter Configure Texts Description Opens the Configure Texts dialog Configure Texts Dialog The Configure Texts dialog contains the following properties: Parameter Description Text The text to be displayed for the item Start Value The starting value for when this item should be selected End Value The ending value for when this item should be selected Beijer Electronics, MAEN831L 167 Objects Touch List Box dynamics It is also possible to set dynamics, i.e. tag dependent values for the Touch List Box properties. These can be found in the Dynamics tab in the ribbon bar. Related information Dynamics Ribbon Tab 7.3.20 Trend Viewer Object Trend viewers are used to display values of connected tags. Trend viewer curves represent tag values over time. A trend viewer object can show any number of trend viewer curves. Note: A large number of trend viewer pens and short sampling intervals may affect communication performance. Related information Trend Viewer Curves Group Communication Performance 7.4 Media Controls The media controls are used to display media files, pdf files and web pages in runtime. The following media controls are described: Media Player Object 7.4.1 PDF Viewer Object Web Browser Object Media Player Object Media files can be added to the media player object, which allows selecting, starting and stopping the files in runtime. For operator panels, files in .mpeg1 and .wmv format are supported. The files are added to the Component Library. Note: Windows Media Player 10 or later is required. Beijer Electronics, MAEN831L 168 Objects Browse Folders Group Parameter Description Project Files Default option for browsing. The project files are listed in the Component Library. At least one of the folders has to be chosen. External Memory Card Select this option for browsing if project files are placed on an external memory card. At least one of the folders has to be chosen. Settings Group Parameter Description Media Source Select a media file to add to the media player, from the project files folder or by browsing the PC Note: The object is not supported on iX TxA targets. Simulation of the object on the development PC is supported only for PC targets. Note: Connecting a tag to a Media Player Object will cause the media player to try to play a media clip with a name that corresponds to the tag’s value, ignoring the configured Media Source parameter. Scripting to the Media Player Object When scripting to the Media Player object, the name of the current media file has to be stated, for example: MediaPlayer1.Source = “Bear.wmv”; Prior to running the script, the media file has to be added manually to the Project Files folder. When the script is executed, the file will be copied to the output directory. Events for the media player can be used, for example: MediaPlayer1.Play(); Related information Component Library 7.4.2 PDF Viewer Object PDF files can be displayed in runtime using the PDF viewer object. The added files are available from the Component Library. Beijer Electronics, MAEN831L 169 Objects Note: Adobe Reader 9 or 9.5 is required. Browse Folders Group Parameter Description Project Files Default option for browsing. The project files are listed in the Component Library. At least one of the folders has to be chosen. External Memory Card Select this option for browsing if project files are placed on an external memory card. At least one of the folders has to be chosen. Settings Group Parameter Description PDF File Select a PDF file to add to the PDF viewer, from the project files folder or by browsing the PC Buttons Select which buttons to make available in runtime In an operator panel, all PDF files in the project files folder will be available for selection in runtime, if the Open button is checked. Note: When using a PDF viewer object in a popup screen, only the default style for the popup screen is supported. Note: The object is not supported on iX TxA targets. Simulation of the object on the development PC is supported only for PC targets. Related information Component Library Popup Screen Adobe Reader not Recognized 7.4.3 Web Browser Object Web pages can be displayed using the web browser. It is possible to set up the web browser with regular web browsing functionality, with selection of web addresses in a list or input via the virtual keyboard. It is also possible to allow showing certain defined web pages only, or a local HTM/HTML file. Note: Microsoft Internet Explorer 9 or later is required. Beijer Electronics, MAEN831L 170 Objects Settings Group Settings for the Web Browser object are available from the General ribbon tab while the Web Browser object is selected: Parameter Description Address The default web page of the web browser object. Home The web page that will be displayed when the Home button is pressed. Favorites Addition of web pages that will be available for selection from the drop-down address field in runtime. Address Read Only Checking the box disables entering text in the address field Address Field Unchecking the box removes the address field in runtime Go Button Unchecking the box removes the Go button in runtime Home Button Unchecking the box removes the Home button in runtime Back Button/Forward Buttons Unchecking the box removes the navigation buttons in runtime Referring to a local HTM/HTML file can be useful for example when the operator panel is not connected to Internet. The local file — a .HTM- or .HTML-file — has to be located in the Project Files folder of the current project, and is addressed in the following format: “File://filename.html” where “filename.html” represents the actual file”, e.g. File://ReadMe.html. Web Browser Limitations The web browser object functionality is limited under some circumstances: Function Limitation description Web browser object PC targets operator panel targets Supported Not supported on iX TxA targets Popup windows Opening popup windows from the web browser in runtime Not supported Not supported Web browser in a popup screen Other styles than the default style for the popup screen Not supported Not supported Simulation of the web browser Simulation on the development PC Supported Not supported Support of some web pages Access of some web pages from within the web browser. Supported May not be supported. If the web browser does not behave as expected, it is recommended to use the standard Internet Explorer, available in the iX panel, instead. Beijer Electronics, MAEN831L 171 Objects Function Limitation description PC targets operator panel targets The standard Internet Explorer can be started using the Run action and executing the iesample.exe file. Related information Popup Screen 7.5 Special Controls The special controls are used to create attractive navigation facilities in runtime. Navigation List Box Object 7.5.1 Screen Carousel Object Navigation List Box Object Screen navigation using the Navigation List Box object is performed via thumbnails, and scripting can be used for advanced functionality. Note: The object is supported only for iX TxC and PC targets. General Group Parameter Description Orientation Select horizontal or vertical orientation for runtime scrolling. Scroll Tolerance Defines tolerance of pressing the touch screen (or scrolling with the cursor) slightly outside of a navigation list box item in runtime before the navigation is actually carried out. Item Settings Group Parameter Description Configure Items Definition of items included in the navigation list box object; see below. Height/Width Size of the items in the navigation list box. Margin Margin between navigation list box items. Border Width Width of navigation list box item borders. Corner Radius Corner radius of navigation list box items. Show Text Selection of whether to show text below navigation list box items. Beijer Electronics, MAEN831L 172 Objects The individual items in the navigation list box object are handled by clicking Configure Items. Use the Add and Delete buttons to add and remove items to/from the navigation list box. Parameter Description Picture Selection of picture by browsing the PC environment or among the project files. Screen Selection of screen to navigate to. Script Info Optional text to serve as a reminder if scripts are used. Text Text displayed under each navigation list box item. Only visible if Show Text is checked under Item Settings. Use the up and down arrows to facilitate reorganizing of navigation list box items. Related information Script 7.5.2 Screen Carousel Object Screen navigation using the Screen Carousel object is performed via thumbnails in a 3D view. The screen carousel can be configured to rotate automatically, or actions can be configured to control screen carousel behavior. Note: The object is supported only for iX TxC and PC targets. Note: If the iX Developer system requirements for the graphic card are not fulfilled, the visualization of the object will have limitations. Hardware acceleration is required. Beijer Electronics, MAEN831L 173 Objects General Group Parameter Description Number of Visible Items Maximum number of visible items. Scroll Duration (ms) Time used for an item to move to the next position in the carousel. Use Reflection Adds a reflecting layout to the object. Auto Scroll Makes the object rotate automatically. Item Settings Group Parameter Description Configure Items Definition of items included in the screen carousel object; see below. Height/Width Size of the items in the screen carousel. Margin Margin between screen carousel items. Border Width Width of screen carousel item borders. Corner Radius Corner radius of screen carousel items. Show Text Selection of whether to show text below screen carousel items. The individual items in the screen carousel object are handled by clicking Configure Items. Use the Add and Delete buttons to add and remove items to/from the screen carousel. Parameter Description Picture Selection of picture by browsing the PC environment or among the project files. Screen Selection of screen to navigate to. Beijer Electronics, MAEN831L 174 Objects Parameter Description Script Info Optional text to serve as a reminder if scripts are used. Text Text displayed under each screen carousel item. Only visible if Show Text is checked under Item Settings. Use the up and down arrows to facilitate reorganizing of screen carousel items. Related information Actions Ribbon Tab 7.6 Debug Tools Debug tools are used for troubleshooting and monitoring. Alarm Distributor Viewer Object – 7.6.1 Alarm Distributor Viewer Object The Alarm Distributor Viewer is a debug tool, used to display information from the Alarm Distributor function. Related information Alarm Management Alarm Distributor Viewer 7.7 Windows Controls The following Windows controls are described: Check Box Object Combo Box Object Progress Bar Object Radio Button Object 7.7.1 Group Box Object List Box Object Text Box Object – Check Box Object The Check Box object controls a digital tag value. The connected tag gets the value 1 when the box is checked and the value 0 when the box is unchecked. The appearance of the text can be adjusted in the Font group of the Home ribbon tab. Beijer Electronics, MAEN831L 175 Objects Note: Changing font family is only supported for projects designed for iX TxC and PC targets. Settings for the check box are available from the General ribbon tab while the object is selected: Text Group Parameter Text Multiline Description Text that the object displays Lets the text run over more than one line, using [Enter]. Confirm the text entry by pressing [Ctrl] + [Enter]. Word Wrap Wraps the text to fit the width of the object. Not available if Autosize is selected. Auto Stretch Font Resizes the font to fit the height of the object. Not available if Autosize is selected. Auto Size Resizes the object according to the size of the default text string length and font size. Text Alignment Group Parameter Horizontal / Vertical 7.7.2 Description Adjusts the text in the text box horizontally or vertically. Not available if Autosize is selected. Combo Box Object A Combo Box can be used to create selections from a drop-down list. When a keyboard is connected to the operator panel it is also possible to make selections from the list by typing. Settings for the combo box are available from the General ribbon tab while the object is selected: Text Group Click Configure Texts to enter texts for different values. Beijer Electronics, MAEN831L 176 Objects Select a tag, and then click Add until there are enough rows in the table. Enter texts and start values. It is also possible to use script code to control the contents of a combo box. Example The following script code relies on the existence of a combo box (ComboBox1) and a set of predefined recipes (“Book” and “TV”). When the screen opens, the script clears the box and writes the recipe name strings in the box. Selection from the combo box triggers loading of a recipe. Related information Script Recipe Management 7.7.3 Group Box Object The Group Box is used to draw a labeled frame around a group of objects. 7.7.4 List Box Object The List Box handles a list of predefined texts. Beijer Electronics, MAEN831L 177 Objects Text Group Click Configure Texts to enter texts for different values. Select a tag, and then click Add until there are enough rows in the table. Enter texts and start values. It is also possible to use script code to control the contents of a list box. Example The following script code includes two objects on Screen1, a button (Button1) and a list box (ListBox1). When the button is clicked, the script is triggered and a string is written to the list box and the value of an internal counter (count) is incremented. Related information Script 7.7.5 Progress Bar Object The Progress Bar displays a meter without numeric scaling, representing an analog value. The value can be connected to a tag. The other properties, such as orientation, minimum and maximum values, and meter color (foreground property) are set in the Property grid. Beijer Electronics, MAEN831L 178 Objects Related information Property Grid 7.7.6 Radio Button Object A Radio Button controls the value of a connected digital tag. The appearance of the text can be adjusted in the Font group of the Home ribbon tab. Settings for the radio button are available from the General ribbon tab while the object is selected: Text Group Parameter Description Text Text that the object displays Multiline Lets the text run over more than one line, using [Enter]. Confirm the text entry by pressing [Ctrl] + [Enter]. Word Wrap Wraps the text to fit the width of the object. Not available if Autosize is selected. Auto Stretch Font Resizes the font to fit the height of the object. Not available if Autosize is selected. Auto Size Resizes the object according to the size of the default text string length and font size. Text Alignment Group Parameter Horizontal / Vertical Description Adjusts the radio button text horizontally or vertically. Not available if Autosize is selected. It is possible to use script code to make a group of radio buttons enable combined control of a tag value. Exactly one of the radio buttons is active (set to 1) at any time. The following example includes 3 radio buttons and a tag of int16 type. Beijer Electronics, MAEN831L 179 Objects Radio buttons are grouped based on which screen they belong to. Related information Script 7.7.7 Text Box Object The Text Box is used to include a box with multiple rows of text. By default, the text can be modified when clicking on the box in runtime. The entered text is not saved in runtime; when the screen changes the value will be reset. The text box can also be configured as read-only. Settings for the text box object are available from the General ribbon tab while the object is selected: Beijer Electronics, MAEN831L 180 Objects Text Group Parameter Description Text Text that the object displays Multiline Lets the text run over more than one line, using [Enter]. Confirm the text entry by pressing [Ctrl] + [Enter]. Word Wrap Wraps the text to fit the width of the object Read Only Disables input in runtime Text Alignment Group Parameter Horizontal / Vertical Description Adjusts the radio button text horizontally or vertically Visibility Group Parameter Transparent 7.8 Description Makes the object transparent, i.e. everything but the text will be invisible Additional Controls iX Developer allows using and creating third party controls in order to enhance application functionality and additional customization. This section describes different technologies and includes configuration examples. Sample projects are available at the Beijer Electronics web site. To understand and use all the information in this document, .Net development skills are required. Caution: Beijer Electronics only offers support for the examples described in this chapter. Related information Referenced Assemblies Error Related to Third Party Controls 7.8.1 Target Platform Different technologies are used for third party controls depending on the target platform for the iX Developer application. The target can be either PC or Windows CE. Windows CE has no support for vector graphic (WPF) and only uses .Net Compact Framework which is a subset or the .Net Framework used on a PC. Windows CE does not natively support GDI+, so GDI+ related functionality was removed from .Net Compact Framework. Beijer Electronics, MAEN831L 181 Objects PC Target Two different technologies can be used for a PC target: • Standard Windows forms and GDI+ • WPF (Windows Presentation Foundation) WPF uses vector graphics, and the appearance of the control is described in XAML. Since iX Developer is a WPF application, it is recommended to use WPF when developing customized controls or user controls for a PC target. Controls developed in WPF can bind to a tag value in iX Developer, in opposite to Windows forms controls, that cannot be bound to tag values. Windows CE Target Windows CE only uses the .Net Compact Framework (a subset or the .Net Framework used on a PC), and does not support vector graphics (WPF). Windows CE does not natively support GDI+, so GDI+ related functionality was removed from the .Net Compact Framework. Limitations Some of the limitations regarding third party controls are listed below: • Control Designers (a designer class that can extend design time support) are currently not supported. • Type Converters in a separate design dll are not supported. • Complex property editing in the property grid is not supported. All complex properties have to be set up in script. • .Net Compact Framework controls can include design dll and so called AssmetaData dll to handle attributes that are not supported in Windows CE. Currently this is not supported by iX Developer. Because of this, it is important to always test the code on the target platform. • The Script Editor allows scripting against properties and methods that are not supported in Windows CE. Because of this, it is important to always test the code on the target platform. 7.8.2 Adding Controls to the iX Developer Toolbox Third party controls can be added to the Objects toolbox in iX Developer, following the steps below: Caution: Beijer Electronics only offers limited support for thirdparty controls. Beijer Electronics, MAEN831L 182 Objects 1. Select the Objects group on the Home ribbon tab, and fully expand the Objects toolbox by clicking the lower right arrow. 2. Click Add Control. Beijer Electronics, MAEN831L 183 Objects 3. Select controls to add among the default controls, or click Browse to add customized controls. 4. Click OK. The added controls are now available under Additional Controls in the Objects toolbox. 7.8.3 Default Controls and Installed Controls Default controls include controls added by the user and the .Net 4 controls installed with the .Net Framework. Installed controls include all controls that are installed in the GAC (Global Assembly Cache) on your computer. Note: Third party controls that are used in a project are not copied to the project folder. This means that it is not possible to open a project with third party controls on another development PC without installing the controls. But the application will work in runtime on another target, since references are copied to the output folder when building the project. 7.9 WPF Controls WPF (Windows Presentation Foundation) uses vector graphics, and the appearance of the control is described in XAML. Since iX Developer is a WPF Beijer Electronics, MAEN831L 184 Objects application, it is recommended to use WPF when developing customized controls or user controls for a PC target. Controls developed in WPF can bind to a tag value in iX Developer. User controls and custom controls are supported in WPF. 7.9.1 WPF User Controls A WPF user control can be described as a composition of different user interface controls. Creating a WPF user control is similar to creating a window: • You have a XAML file and C# class file for a user control. • The class file extends the user control class, adding additional behavior and properties. • The XAML file encapsulates the composing controls; styles, templates, animations and whatever necessary for “Look & Feel”. Since the WPF user control is a just composition, it is really easy to create. It does not require a lot of WPF UI model knowledge. 7.9.2 WPF Custom Controls WPF custom controls are more flexible, but are more complicated than a user control, and require a profound understanding of the WPF user interface model. • A number of certain user interface controls, such as button, progress bar or speedometer has to be extended. • The appearance of the custom control has to be defined in XAML, as the custom control itself has no look. Most of the controls in iX Developer are custom controls, which makes it possible to restyle them to various different layouts without changing the code files; just the XAML. A rounded meter in different styles 7.9.3 Creating a WPF User Control with Tag Connection The following example describes how to create a WPF user control that can be connected to a tag. The complete code is included at the end of the example. Beijer Electronics, MAEN831L 185 Objects 1. Start Visual Studio to create a new project, and select WPF User Control Library. 2. Add [DefaultProperty("Value")] to the class, to define which property the tag should set when then value is set. 3. Add a dependency property with same name as the attribute above: static readonly DependencyProperty ValueProperty; 4. Add a static constructor and register to the dependency property. 5. Create a Value property of type object. 6. Add a TextBox to the user control. 7. Set the name of your control. 8. Add a binding to the TextProperty and bind to the Value Property. 9. Remember to change ElementName to the name of your control. 10. Compile and test by adding the control to the iX Developer toolbox. Beijer Electronics, MAEN831L 186 Objects Note: When an update is made, the existing control must be updated under C:\Users\Public\Documents\Beijer Electronics AB\iX Developer\Thirdparty\ Windows XP: C:\Documents and Settings\All Users\Documents\Beijer Electronics AB\iX Developer\Thirdparty\ Example Code 7.9.4 Creating a Windows Forms User Control for a PC Target The following example describes how to create a Windows Forms user control designated for a PC target. Beijer Electronics, MAEN831L 187 Objects Note: Windows Forms control objects are placed on top of WPF control objects in PC targets. 1. Start Visual Studio to create a new project, and select Windows Forms Control Library. 2. Add a TextBox and a Button to the design surface. 3. Add Event Handler for Button click. 4. Add Event Handler for TextBox lost focus. Beijer Electronics, MAEN831L 188 Objects 5. Add a Value Property and INotifyPropertyChanged implementation: Beijer Electronics, MAEN831L 189 Objects 6. Use the following code to connect the control to a tag value in iX Developer: The code shows how the value is set on the user control when the tag changes its value, and how the tag value is changed when the user control changes its value. 7.9.5 Creating a Windows Forms User Control for a CE Target The following example describes how to create a Windows Forms user control designated for a CE target (a iX TxA or iX TxB operator panel). Note: Windows Forms control objects are placed on top of control objects created with the iX Developer software. Beijer Electronics, MAEN831L 190 Objects 1. Start Visual Studio 2005 or 2008 to create a new Smart Device Project. 2. Select Windows CE for Target platform. Beijer Electronics, MAEN831L 191 Objects 3. Select Control Library. 4. Use the same code as in the Creating a Windows Forms User Control for a PC Target example. Note: Always test your code on the target platform, as properties/methods currently not supported may be included in the code. See Limitations for details. Beijer Electronics, MAEN831L 192 Ribbon Tabs 8 Ribbon Tabs Each of the ribbon tabs holds a set of one or more groups. Each group holds a set of one or more controls that are used to manage screens and functions in a project. The behavior of the ribbon tabs can be configured to be context dependent using the Options button in the File menu. Double-click on any of the ribbon tab headings to collapse the ribbon area. A double-click on a ribbon tab, when the ribbon is collapsed, brings back the original style. This can also be changed from the context menu of the Quick Access toolbar. Tooltips are displayed for all controls on the ribbon tabs. The tooltip offers a brief description of the selected control. iX Developer contains the following ribbon tabs: Home Ribbon Tab Project Ribbon Tab System Ribbon Tab Insert Ribbon Tab View Ribbon Tab Dynamics Ribbon Tab General Ribbon Tab Actions Ribbon Tab Related information Options Quick Access Toolbar 8.1 Home Ribbon Tab The Home ribbon tab contains groups of controls for editing screens in the project: Clipboard Group Screen Group Objects Group Font Group Beijer Electronics, MAEN831L 193 Ribbon Tabs Format Group Tag/Security Group Name Group 8.1.1 Clipboard Group The Clipboard group contains the paste, cut, copy and format painter controls. Cut Cuts the selection to the clipboard. Also available from the keyboard with [Ctrl] + x or from the context menu. Copy Copies the selection to the clipboard. Also available from the keyboard with [Ctrl] + c or from the context menu. Paste Copies the clipboard to the current screen. Also available from the keyboard with [Ctrl] + v or from the context menu. Note: Text from a compatible source, e.g. clipboard text, will be converted to a Text Box object when pasted into a screen. Format Painter The Format Painter control is used to copy formatting from one object to another. This is useful when creating a uniform appearance for objects. To apply formatting to another object: 1. Click on an object with the desired format and font properties. Click on the Format Painter control. The mouse pointer changes to a paintbrush. 2. Click on the object to format. The format properties from the first object is applied to the selected object. Format and font properties can be copied between objects of different types, for example from a rectangle to an HMI control. Beijer Electronics, MAEN831L 194 Ribbon Tabs Note: Modification to an object using the Other Colors control is not applied when using the Format Painter. Related information Other Colors 8.1.2 Screen Group The Screen control group contains the add screen, background screen, delete screen and current language commands. Screens can also be added and deleted from other controls, such as the Navigation Manager and the context menu of the Project Explorer. Add Screen The Add Screen command creates a new empty screen that opens for editing. Clicking the lower part of the Add Screen button shows a selection of screen templates that are available for selection. Delete Screen The Delete Screen command removes the current screen from the project, and also disconnects any associations from other screens to the removed screen. Note: A deleted screen cannot be restored with the Undo command. Background Screen Any screen can be used as background to the current screen. All objects in a background screen will work as designed in the project application. Objects in a background screen must be edited in the screen that they reside in. Objects in a background screen will be dimmed in the current screen in the development environment. Current Language Current language is the language that is being used at the particular moment that the project is designed. If multiple languages are not used in the project, only Default is available. Beijer Electronics, MAEN831L 195 Ribbon Tabs Related information Screens Language Management 8.1.3 Objects Group The Objects control group contains static and dynamic objects that can be added to a screen. Related information Objects 8.1.4 Object Variations For many of the objects it is possible to apply a preset style, using the Object Variations feature. For the Button object and the Circular Meter object there is a large number of different styles available as default, whereas for most other objects it is possible to save user-defined styles. To display the Object Variations menu, click on one of the objects in the Objects menu. The Object Variations menu appears to the right of the Objects menu, provided that there are some styles available for the selected object. To add user-defined styles in the Object Variations menu: 1. Select an object to start from. 2. Modify the object, using the tools under the Home ribbon tab or the Property Grid. 3. Select the designed object and right-click to open the context menu. 4. Select Save Variations to save the modification. Beijer Electronics, MAEN831L 196 Ribbon Tabs The new variation will appear in the Object Variations menu when clicking on the object type it originated from. Objects supporting Save Variation Rectangle Ellipse Analog Numeric Button Text Linear Meter Slider Circular Meter Trend Viewer Chart Action Menu Animated Label Digital Clock Alarm Viewer - - The object properties are shown in the Property Grid. When saving the variation the following properties are saved (when applicable): Beijer Electronics, MAEN831L 197 Ribbon Tabs Variations saved (where applicable) Color Font Rotation Size Visibility Security groups required Audit trail description Delay Mouse/ Touch Input Visibility on access denied Opacity Horizontal and vertical alignment Picture horizontal and vertical alignment In addition to the general properties listed above, a number of object specific properties are saved: Object Property Action Menu Object View type Orientation Alarm Viewer Object Analog Numeric Object Button position Limit number of characters Number of characters Number of decimals Prefix Suffix Animated Label Object Animation direction View type Chart Object Chart type 3D view Show header Show legend Show scale Digital Clock Object Display format Show seconds Linear Meter Object Orientation Scale Transparency Slider Object Orientation Scale Transparency Text Object Horizontal alignment Vertical alignment Trend Viewer Object Major value ticks Minor value ticks Rectangle Radius Effects Beijer Electronics, MAEN831L 198 Ribbon Tabs Note: Features only supported in PC environment might not work on other platforms. Related information Objects 8.1.5 Font Group All fonts available in the development PC are available for selection when designing the project. All fonts used in the project are included when downloading the project to the target. Note: For PC and TxC non-standard fonts are not transferred or installed to the target. Install non-standard fonts manually on the target. Note: The number of fonts needs to be considered when calculating the total size of a project. Note: The default font Tahoma does not support Chinese characters in operator panel projects in runtime. The font has to be changed to a font that supports Chinese characters, e.g. MS Song. Keep in mind that some fonts require a lot of project memory. The Font group is used to change text style. The text style is defined for the currently selected object. Font and Font Size Select font from the drop-down list. Use the increase/decrease font size buttons or set a specific font size. Note: Objects, for which Auto Stretch Font is selected, will not be affected by these settings. The font size will be autosized when resizing the object height. Beijer Electronics, MAEN831L 199 Ribbon Tabs Style and Color An italic, underlined or bold style can be selected for the text. The style stays regular if all the boxes are left unchecked. Use the Font Color drop-down list to set the color of the text. 8.1.6 Format Group The Format group controls the color and position of a selected object. Predefined quick styles offer selection of uniform appearance for different objects. Selection of multiple objects makes it possible to easily affect more than one object at the same time. Clicking the small arrow in the lower right corner of the Format group displays the shadow, fill and outline properties with a number of additional format settings. It is possible to use the Format Painter (in the Clipboard group) to copy color and font properties from one object and paste it to another object. Related information Selecting Multiple Objects Arrange The Arrange control can be used to order, group, resize, align and distribute screen objects. Beijer Electronics, MAEN831L 200 Ribbon Tabs Order Objects The commands in the Order Objects group are used to send objects to the front or back of each other. Command Description Bring to Front Positions the selected object on top of any overlapping objects Send to Back Positions the selected object behind any overlapping objects Bring Forward Makes the selected object swap place with the nearest overlapping object Send Backward Makes the selected object swap place with the nearest obscured object Beijer Electronics, MAEN831L 201 Ribbon Tabs Note: The Object Browser offers an easy way of arranging objects to the front or back of each other. Related information Object Browser Group Objects The Group Objects commands are used to manage selections of multiple objects. A grouped object is moved and treated as one object with respect to formatting and resizing, and can also be stored in the Component Library for reuse. Any selection of objects on the screen can be grouped. When multiple objects are selected, one object is the primary selection. This is shown with an orange frame, while other objects in the group have blue frames. Click on any object in the group to change this to the primary selection. A grouped object can be resolved into individual objects using the Ungroup command. A property that was given to the group will be kept by each of the object, provided that the property is applicable. Make Same Size The Make Same Size commands are used to adjust the size of a group of selected objects. The size will be determined by the primary selection (the guide object). Position Objects The Position Objects commands can be used to align and distribute multiple objects neatly. Objects can be aligned vertically and horizontally using the primary selection for the group as guide object. Objects can be aligned with respect to their center (center/ middle) or their edges (top/bottom/right/left). Related information Component Library Snap Objects to Other Objects Grid Quick Styles The Quick Styles control contains a number of preset visual object color schemes that can be applied to screen objects. The predefined graphical styles make it possible to achieve a uniform appearance on items like meters and trend viewers. An object that has a style applied can be further customized, for example with font settings. It is also possible to customize the predefined styles to styles of your own preference. The quick styles are not specific to the current project. They will be available for all iX Developer projects. Beijer Electronics, MAEN831L 202 Ribbon Tabs Note: Controls in the Style group on the General tab can be used to reshape objects such as meter, slider and trend viewer to predefined styles. These styles are not the same as the quick styles. Related information Font Group Other Colors Color settings for special properties of an object, for example scale color for a meter or out-of-range validation of an analog numeric object, are available from the Other Colors control. Shape Fill The Shape Fill control is used to alter the fill color and gradient of the selected shape. A preview of the colors in the Shape Fill selection window is displayed directly on the object on the screen as the pointer hovers over the different colors. Shape Outline The Shape Outline control is used to alter the outline color and outline width of the selected shape. Shape Effects Shape Effects makes it possible to add bevel style and shadow effects. Note: Bevel in combination with fill color “no fill” is only supported for iX TxC and PC targets. The bevel will not be visible in runtime on other operator panel targets. 8.1.7 Tag/Security Group Connection to controller tags as well as object access (based on security groups) and visibility are configured from the Tag/Security group. Tag/Security group without and with selections Beijer Electronics, MAEN831L 203 Ribbon Tabs Parameter Description Select Tag Connection to a tag from the tags configuration page. Tags may also be added directly, but will be remain internal until connected to a controller tag. Click ... to configure expressions. Select Security Groups Allows limiting access of the object based on security groups. If left empty, the object can be accessed by anyone. Select Visibility Configuration of visibility: Default: The visibility specified on the General tab of the Security Manager is used Disabled: The object is disabled for users with insufficient access rights Hidden: The object is invisible for users with insufficient access rights Normal: The object looks normal also for users with insufficient access rights Note: When access rights are not fulfilled, showing an access denied message or opening a login dialog can be configured using the security function. Related information Expressions Adding Tags during Editing Security Management 8.1.8 Name Group All objects and screens are automatically named when they are created. The name is displayed and can be edited in the Name group. Screen names can also be edited in the Project Explorer. The name of an object is a symbolic identifier and is an alphanumeric string, beginning with a letter. Name strings can contain letters (a-z, A-Z), numbers (0-9), and underscore (‘_’) characters. Note: Renaming objects and screens included in scripts will cause the scripts not to function. Beijer Electronics, MAEN831L 204 Ribbon Tabs Related information Project Explorer Invalid Names 8.2 Project Ribbon Tab The Project ribbon tab contains a number of project related functions, divided into the following groups: Run Group Transfer Group Project Group 8.2.1 Run Group The Run group enables validation, rebuilding, simulation and debugging of the project. Build The build control validates the script code and compiles the current project. Recompiling the project using the Build control will result in only the changes being made to project to be recompiled. To fully recompile the project, instead use the Rebuild control. Rebuild The rebuild control validates the script code and recompiles the complete project. Run A test of the project can be executed directly on the PC. Clicking Run will perform a validation and start a simulation, if the project can be built. If errors are found during validation, an error message will be displayed. During simulation, the project will communicate directly with the configured controllers, provided that the controllers are correctly connected to the development environment. If there are unused tags in the project, the Run, Build, and Rebuild commands will result in a notification about this. The CheckForUnusedTags function can be disabled or enabled under Options in the File menu. Beijer Electronics, MAEN831L 205 Ribbon Tabs Note: If project build fails, check that the absolute path to the project, including its components, does not exceed 260 characters. Note: Projects must be stored on the local hard drive for iX Developer to be able to run or simulate them. Simulate It is also possible to test and run the application on the development PC without connection to the selected controller, by clicking Simulate. If the project is valid, the simulation is started. Debug The Debug command will allow the user to debug scripts in a real c# debugger with the possibility to set breakpoints etc. The command builds and checks the current project, and launches the application associated with the generated file. The function scans the development PC for an installed debugger. If no debugger is found, a link for downloading debugger is presented. User preferences for the script debugger may be entered under Options, available from the File menu. Note: Visual Studio 2008 requires SP1 in order for associated files to be opened automatically (i.e. using the Debug command). Debugging of a project with Script module included is not supported using Visual Studio 2010. Debugging of a CE project is not supported using Visual Studio 2010. Related information Output Database Options Removing Unused Tags 8.2.2 Transfer Group The Transfer group enables download to operator panel, upload database and export to folder functions. Beijer Electronics, MAEN831L 206 Ribbon Tabs Note: Time zone, region or daylight saving settings will not be transferred if these settings have been changed manually in the panel. Download The Download control sends the project to an operator panel or a PC with an iX Runtime installation, in the network environment. Parameter Description Connected targets Choose a target type to transfer the project to. Download Start the project transfer. Click the “Download all source code ( for later upload) ” checkbox to compress the project and save it as a ZIP file on target. Click the “Password protected” checkbox and enter a password to protect the ZIP file. Download is supported for TA, PC RT, QTERM, iX TxA, iX TxB, and iX TxC targets, and for PC targets with a iX Runtime installation. Click the “Copy downloaded project to Memory Card” checkbox to copy the downloaded project and the targets IP Beijer Electronics, MAEN831L 207 Ribbon Tabs Parameter Description settings to the memory card. When the project is copied to the memory card, it can be used for restoring the project(1). Verify The verify function enables the user to check if a target platform configuration is identical to the project configuration. Verify is supported for iX TxA, iX TxB and iX TxC targets. If greyed out, please update to latest “System program”. Log Show the data being logged during the download and verify process. (1) Supported for panel iX TxA (image version 803 or higher), and iX TxB (image version 103 or higher). An automatic check is done for mismatch between the iX Developer version and the target system versions. All version parameters are considered. If the target is indicated as being incompatible with the version of the iX Developer that hosts the project, please update the target with the latest iX Runtime and system program versions. If the target for the download contains newer files or files that don’t exist in the project, a dialog will appear prompting for which files to be kept, overwritten or deleted. If the same project is to be downloaded to a panel again, the original datalogger in the panel will be replaced if any settings have been changed in the datalogger since the last download. Related information iX panel Upgrade Downloading a Project to an operator panel or a PC with an iX Runtime installation 1. Connect the operator panel to the development PC via an Ethernet connection. 2. Click Download. Beijer Electronics, MAEN831L 208 Ribbon Tabs 3. The download dialog opens and all panels connected in the network are listed with information about IP address and panel type. Select the panel to download to in the list. 4. Check that the IP address is correct and click Download. a. Optional: Click the “Include compressed project” checkbox to compress the project and save it as a ZIP file. b. Optional: Click the “Password protected” checkbox and enter a password to protect the ZIP file. c. Optional: Click the “Copy downloaded project to Memory card” checkbox to enable SD-card backup of operator panel project and settings. The panel responds to a download request by stopping any current project. The panel displays that it is ready for project download. When the download is completed, the new project automatically starts running. The project folder is located at the following path. Only for PC targets! %public%\Documents\Beijer Electronics AB\iX Developer Runtime\Project. Windows XP: Documents and Settings\All Users\Documents\Beijer Electronics AB\iX Developer Runtime\Project. The panel settings can be controlled from the Service menu in the panel. Note: It is necessary to open TCP port 9999 and UDP port 9999 in the firewall for the runtime PC application. Note: Do not attempt to use the Download command if a project opened with the .exe file is open. This might fail to close the project and the transfer will not be completed. Note: If Chinese or Korean languages are to be used in the operator panel, then firewalls in Windows must be configured to allow TransferClient.exe full access on all ports, otherwise project transfer might fail. Related information Service Menu Starting a iX Runtime project on a PC Downloading a Project to an operator panel or a PC with an iX Runtime installation Using FTP A project can be loaded to the panel via FTP. To be able to load a project remotely an external storage device (SD card or USB stick) must be attached, and a configuration file named ProjectCopy.config must be present in the root directory of the storage device. Set up the configuration file as follows. Use # for parameters to be ignored. Beijer Electronics, MAEN831L 209 Ribbon Tabs Parameter Description automatic the download of the project automatically starts, without any dialogs, when a project file is loaded to the storage device and the panel is rebooted path "\Storage Card\Project3" the path to the project, if multiple projects are stored on the storage device. SD cards use the path \StorageCard\ and devices attached to USB use \HardDisk\ applyipsettings applies saved IP settings deletesource deletes the source file from the storage device after the download deleteconfigfile deletes the configuration file after the download. If the configuration file is left on the storage device it is initiated each time the panel is rebooted. Note: This is only supported in the latest released images. Example: In the following example, without displaying any dialogs, the project found in the folder Project_5 located on the USB stick is loaded, the project is deleted from the USB stick, and the configuration file is deleted. The IP-settings are not updated. • automatic • path "\HardDisk\Project_5" • #applyipsettings • deletesource • deleteconfigfile Upload Database The Upload Database command will collect the database from an operator panel in the network environment to a file on the development PC. The panel will pause during the upload, and will be started automatically afterwards. The database may only be collected from a panel running the same project (i.e. a project with the same name and of the same size) as the current iX Developer project. Collecting a Database from an operator panel 1. Connect the operator panel to the development PC via an Ethernet connection. 2. Click Upload Database. 3. The Upload Database dialog opens and all panels connected in the network are listed with information about IP address and panel type. Select the panel to collect from in the list. 4. Check that the IP address is correct and click Backup. 5. Select location of the saved database. Beijer Electronics, MAEN831L 210 Ribbon Tabs Export Exports the project to a folder. The export dialog allows creating a new folder. When exporting the project to Folder the user can select whether the panel IP settings should be set. If yes, the Target Settings dialog is opened. Assigning IP Settings is only supported for iX TxA, iX TxB and TA targets. Exporting a Project to an operator panel or a PC with an iX Runtime Installation A project can be exported to an operator panel or a PC with an iX Runtime installation via the Export command. The project can be exported to a USB stick or, on the condition that a network connection is configured, directly to a folder in the runtime PC. The project in the runtime PC is started by running the .exe file located in the project folder. There will also be created a TransferClient .exe file, a binaries folder and a configuration file. The TransferClient is a standalone application for downloading the exported project to a target. It works in the same way as the Download control from inside iX Developer. It is possible to view a log for the export by clicking the Log button on the TransferClient dialog. Note: It is not recommended to handle further project transfers from a PC already used as a target for export. If additional transfers are to be done, then keep using the same export method for all. Related information Download Starting a iX Runtime project on a PC Beijer Electronics, MAEN831L 211 Ribbon Tabs Starting a iX Runtime project on a PC The different methods of transfer will have an impact on how the projects are started and stopped in the runtime PC. It is recommended to keep to one of the selected transfer methods to avoid problems. When a project has been transferred to a PC using the Download command, the project normally starts automatically when the computer is started. However if the project is stopped and needs to be restarted, this should be done via the Target Control Service in Windows. This will ensure that the status of the project is fully recognized for all functions that depend on this. To manually open or close a project in iX Runtime for a PC target, go to the Services tab in Windows Task Manager. Click on the item Target Control Service and the available commands are shown on the top left of the list. Double-clicking the Target Control Service item opens a dialog box that displays Service Status along with other additional settings. Start or stop the project from here. A running project will then be visible when entering the iX Developer transfer dialog. Note: If a runtime PC project is started using the project .exe file, the Target Control Service will not recognize that the project is running. This will lead to problems using the iX Developer transfer functions. A project that has been transferred using the Export command must be started by opening the .exe-file in the project folder. A running project is not detected by any of the transfer or service status dialogs in the runtime PC. This means that it is up to the user to keep track of the status. 8.2.3 Project Group The project target, as well as name and title, are available for editing in the Project Group. The project title is displayed in the title bar in runtime by default. Leaving the title empty displays the screen name/screen title only in runtime. The Project Group also contains the Compress Project command, a Project Settings control and the possibility to refer to other assemblies using the Referenced Assemblies control. Related information Compress Project Settings Referenced Assemblies Beijer Electronics, MAEN831L 212 Ribbon Tabs Compress Project The project source files can be compressed into a Zip file using the Compress Project command. The Zip file can be saved to a USB stick or, on the condition that a network connection is configured, directly to a folder in the runtime PC. Parameter Description Path to Zip file Browse to the location to save the Zip file. Password protected Optional password protection of the Zip file. Related information Opening a Project Settings Properties such as application behavior in runtime, system font, and settings for mouse and keyboard can be edited by clicking Settings in the Project group. Related information Deployment Display/Target Mouse/Touch Input Delay System Font Virtual Keyboard Screen Name and Screen Title Beijer Electronics, MAEN831L 213 Ribbon Tabs Deployment Parameter Description Overwrite Files on Target This setting can be used to determine the default behavior when transferring projects and the transfer finds critical files already present on the target. Pre Transfer Add commands to be executed before the file transfer. Only available for standard PC targets. Post Transfer Add commands to be executed after the file transfer. Only available for standard PC targets. Related information Pre Transfer Post Transfer Pre Transfer The following commands can be executed before the file transfer: Command Description Reboot Reboots the target. Possible arguments: True and False. Using True, the target tries to start any project present. The argument False, or no argument, prevents the target from starting the project automatically. Wait Pauses the execution of the commands. This can be useful if the user runs commands that takes time for the target to recover from. Possible arguments: a number, indicating how many whole seconds to wait. Run Starts any given process. The first argument must always be the path to the executable to be run. Keep it inside quotes if it contains spaces. Beijer Electronics, MAEN831L 214 Ribbon Tabs Command Description Other arguments: /p: or -p: are parameters for the process to start. The parameters must be inside quotes and separated by spaces. /noshell or -noshell means that the process should be run outside of the command shell. /wd: or -wd: means working directory for the process to run. If left empty defaults to active projects directory. The parameters must be inside quotes. /wait: or -wait: means that the TargetControlService should wait until the process has exited before continuing. If the process does not exit by itself, this argument should be left out. It is possible to use the following macros in conjunction with the Run commands: Macro $projectpath$ Description Replaced by target project folder. If the user has downloaded an executable together with the project and wants to run it, this macro represents the destination folder. Example: "$projectpath$\dbbackup.exe" /p:"backup.bak" -noshell -wait This runs the dbbackup.exe with the startup argument backup.bak, it runs outside the command shell due to -noshell, and the transfer does not continue until the process has exited due to -wait. $startproject$ Registers and starts the project. The transfer continues. $finished$ Tells the system that the transfer is finished and closes connections. The project does not start. Should only be used in Post Transfer. Note: Only available for iX TxC and PC targets. Post Transfer The same commands and macros as for the Pre Transfer can be used, but are executed after the file transfer. Note: Only available for PC targets. Related information Pre Transfer Beijer Electronics, MAEN831L 215 Ribbon Tabs Display/Target Parameter Description No Title Bar(1) Displays the project without title bar in runtime. Title Bar Displays the project with its title and a set of minimize, maximize and close buttons in the title bar. Close Button Displays the project with its title and a close button in the title bar. Topmost Makes the project the topmost application in runtime. Only available for iX TxC and PC targets. Maximize On Startup Makes the project maximized in runtime. Only available for PC targets. Screen Size Screen resolution. Only available for PC targets. Panel Rotate Displays selected rotation. It is possible to change the rotation of the panel and panel content by 0, 90, 180 or 270 degrees. Only available for T7A, T10A and iX TxB targets. Panel Type Displays selected target. It is possible to select another target. (1) No Title Bar can not be used for popup screens. Beijer Electronics, MAEN831L 216 Ribbon Tabs Related information Changing Project Target Changing Project Target When changing to another target, you can select to automatically resize objects to the new target size. Different scale factors are used horizontally and vertically, to optimize conversion to and from wide screen targets. In this case, the aspect ratio of objects changes. The following items are resized with the same factor when having selected automatic resizing: Item Graphical objects Popup screens Font(1) Dynamics size and move (1)A minimum scaled font of 10 pixels ensures readability in the smaller operator panels. Not all objects and styles are supported for all project targets. When changing to another project target, objects and styles that are not supported in the new target are deleted and are possible to restore. Removed objects are logged, and displayed in a window after the transformation. The log may be saved to file. Build files are always cleaned and project saved after transformation. Note: Changing back to the previous target does not restore removed objects. Mouse/Touch Input Delay It is possible to configure a delay of mouse and touch screen input in runtime. This setting is global and affects all objects for which Delay Mouse/Touch Input is selected. The Property grid is used to enable delay of mouse and touch screen input for individual objects. Beijer Electronics, MAEN831L 217 Ribbon Tabs Related information Property Grid System Font Parameter Description Font Select a system font that is used as the default font. Font Size Use the increase/decrease font size buttons or set a specific default font size. Virtual Keyboard Beijer Electronics, MAEN831L 218 Ribbon Tabs Parameter Description Enable Virtual Keyboard Select whether a virtual keyboard is to be displayed when alphanumerical input is needed. Keyboard Layout The layout of the virtual keyboard. The virtual keyboard that is displayed in runtime depends on settings made for the Multiple Languages function. If only the default language is used, the project settings (above) are used. Some of the virtual keyboards available in iX Developer provide a user dictionary where all new words entered are saved. If the built-in login dialog is used, then passwords are not saved, but if a custom login dialog is created by scripting, then passwords will be saved. Related information Language Management Referenced Assemblies The Referenced Assemblies command makes it possible to refer to your own or third-party .Net assemblies (.dll). Their methods and properties are made available when scripting and are included by the name completion function, in the same way as for built-in components. 1. Click on Referenced Assemblies. 2. Click Add. 3. Browse to the desired dll file in your PC environment and click Open. The methods and properties of the added dll file are now available for scripting. When referencing your own third-party assembly (.dll file) make sure not to have two files with the same fully qualified assembly name in the same folder: Beijer Electronics, MAEN831L 219 Ribbon Tabs Example: You have the files "Iocomp.Instrumentation.CF2005.Ultra.dll" and "Iocomp.Instrumentation.CF2005.Ultra.WindowsCE.asmmeta.dll" in the same folder. Both have the same fully qualified assembly name (but different file names). Trying to add a control from the first assembly seems to work. However when the application uses namespaces in the XAML to locate the correct assembly it picks one of them, and it might be either of them. If it is the wrong assembly you get a message saying that there is an error in the XAML. 8.3 System Ribbon Tab The System ribbon tab controls system settings. These settings are divided into the following groups: Date, Time, and Region Group Buzzer Group Backlight Group Serial Ports Group Servers Group Output Devices Group Service Menu Group 8.3.1 Date, Time, and Region Group National settings are made in the Date, Time and Region group. Select time zone, whether to adjust for daylight saving, and region. If no time zone is selected, the time zone that has been selected for the panel or PC will be retained. Choose SNTP time synchronization if the panel clock is to be synchronized against an external SNTP (Simple Network Time Protocol) server. Enter the name of the SNTP server and the time interval for the synchronization. Note: The SNTP time synchronization is supported from iX TxA version 703 and iX TxB version 231. The date and time display format (for example using AM/PM for time) is based on the operating system settings. For operator panel projects, this format may be altered by selecting another region. Beijer Electronics, MAEN831L 220 Ribbon Tabs For a PC the regional settings for date and time display need to be changed in the system account to be carried out correctly. 1. Go to the Control Panel and select Clock, Language and Region, then Region and Language. 2. Make the regional settings in the dialog box under the Formats tab. 3. Then go to the Administrative tab and click Copy settings. 4. In the dialog box that appears, check Copy current settings to: Welcome screen and system accounts, and click OK. 5. Reboot the system to apply the new settings. Note: iX TxC targets only: If the regional settings are changed only for the user account without copying them to the system account, the new settings will not be applied when downloading a project, even after a reboot. 8.3.2 Buzzer Group Select whether to let a key beep sound when making keyboard input in runtime. Only available when an operator panel is selected as target. 8.3.3 Backlight Group Select to automatically turn off the backlight after a certain number of seconds, and whether to keep the backlight on if a notifier window (e.g. alarm indicator or communication error message) is visible. The backlight settings for a project are saved in the operator panel. Consequently, changes of the backlight settings for the present project will revert to the operator panel values. However downloading another project will overwrite the settings. Backlight settings are supported only for operator panel targets. For other targets, the Microsoft Windows screen saver may be used. Beijer Electronics, MAEN831L 221 Ribbon Tabs 8.3.4 Serial Ports Group For each of the COM ports, select if it is to be configured as an RS232, RS422 or RS485 port. Only available when an operator panel is selected as target. The number of available ports and possible configuration differ depending on selected target. For Panel iX TxA, iX TxB, iX TxC and IPC, four COM ports can be configured: Port Description COM1 RS232 incl. CTS COM2 RS422 or RS485 COM3 RS232 excl. CTS COM4 RS422 incl. RTS or RS485 Label on back of panel Port 1 Port 2 For Panel T15BR and T15BM, two COM ports can be configured: Port Description Label on back of panel COM1 RS232 incl. CTS Port 1 COM2 RS422 or RS485 Port 2 8.3.5 Servers Group The Servers group contains the FTP, Web Server, OPC UA Server and Remote Access commands. The FTP and Remote Access commands are only available when an operator panel is selected as target. FTP When enabled, it is possible to upload/download files to/from the operator panel provided that there is an FTP client program in the development PC, e.g. Internet Explorer, Windows Commander or some other standard FTP program. It is possible to set up access to the FTP server with login requirements and/or as anonymous. An anonymous user has read-only access rights. A user that logs in with the correct user name and password gets read/write access rights. Beijer Electronics, MAEN831L 222 Ribbon Tabs It is possible to allow access to an SD card or a USB stick used in the target. If multiple USB sticks are used in the target, only the first one can be accessed. FTP is only available when an operator panel is selected as target. FTP is not supported for iX TxC. Remote Access The Remote Access function makes it possible to access, reflect and control an operator panel from a PC by using the free VNC client program Remote Access Viewer together with the built-in VNC server in the operator panel. It is possible to set up Remote Access with a view only password and/or a full access password. The view only password allows reflecting the panel remotely; the full access password allows also control of maneuverable objects in the panel. Only one VNC client can connect to the VNC server. Only available when an operator panel is selected as target. To protect secrecy when entering a password via Remote Access Viewer, it is recommended to use the PC keyboard. Otherwise it is possible that the cursor on the remote operator panel displays which keys are pressed on the alphanumeric keyboard. For more information about Remote Access, refer to the documentation for Remote Access and Remote Access Viewer. Web Server Enables the possibility to host project files for a web client. Parameter Description Enable Web Server Click this checkbox to enable the web server. Port Enter a server port number. Enable forms authentication Click this checkbox to enable forms authentication and enter user name and password. The password can be any alphanumeric string. The passwords minimum length is four characters and the maximum length is 20 characters. Beijer Electronics, MAEN831L 223 Ribbon Tabs Related information Web Server OPC UA Server Enables the possibility to publish tags with an OPC UA Server. Parameter Description Enable OPC UA Server Click this checkbox to enable the OPC UA server. Port Enter a server port number. Allow anonymous login Click this checkbox to enable anonymous login. For a secured login enter user name and password and leave the checkbox unchecked. Address space All tags, except array tags, defined in project will be shown. The tags will be put in a folder named Tags in Namespace TagProvider on the server. The NodeClass of all tags will be Variable. All tag values will be published scaled with the offset and gain of the tag. Tag Properties Mapping Parameter Description Tag property UA Server Attribute Name DisplayName / BrowseName Data Type DataType Access Right AccessLevel / UserAccessLevel Description Description Poll Group Interval MinimumSamplingInterval Beijer Electronics, MAEN831L 224 Ribbon Tabs Certificate A certificate will be auto generated and self-signed when the server first starts up. The certificate will be valid for 20 years. The certificate contains no IP address since this could change after the certificate has been generated. Limitations Limitation Description Discovery Not supported Encoding / Transport Only UA TCP Binary User authentication Only user name / password Only one account Security No encryption support Related information OPC UA Client 8.3.6 Output Devices Group Printer devices can be set up by clicking the Settings control in the Output Devices group. Printer Device USB Printer Connection Beijer Electronics, MAEN831L 225 Ribbon Tabs Parameter Description Printer Connector Select USB Printer Type Select printer type. Selection possibilities: PCLINKJET and PCLLASERJET. Printer supports PCL 5c Click this checkbox if the printer supports the PCL 5c color printer protocol. This option is only available if the printer type is set to PCLLASERJET. Network settings Not available Serial settings Not available Page Orientation Portrait or landscape orientation of the printout Ethernet Printer Connection Parameter Description Printer Connector Select Ethernet Printer Type Select printer type. Selection possibilities: PCLINKJET and PCLLASERJET. Printer supports PCL 5c Click this checkbox if the printer supports the PCL 5c color printer protocol. This option is only available if the printer type is set to PCLLASERJET. Network settings Enter Printer name / path Enter user name Enter password Serial settings Not available Page Orientation Portrait or landscape orientation of the printout Beijer Electronics, MAEN831L 226 Ribbon Tabs Serial Printer Connection Parameter Description Printer Connector Select Serial Printer Type Not available Printer supports PCL 5c Not available Network settings Not available Serial Settings Port Name: Select which COM-port the printer is connected to Baud Rate: Select the baud rate for transmission of data. Data Bits: Select the number of data bits in each character. Parity: Set the parity bit. The parity bit in each character can be set to none , odd, even, mark or space. Stop Bits: Select the number of stop bits to be sent at the end of every character. Selection possibilities: None, One, Two or TwoPointFive. Hand Shake: Select which handshaking protocol to be used. Selection possibilities: XON/XOFF, CTS/RTS. New Line Character: Select end of line character. Selection possibilities: None, CR/LF, CR or LF. Beijer Electronics, MAEN831L 227 Ribbon Tabs Parameter Description Serial Settings Page Length (lines): Select the number of lines to be printed out before form feed. Form feed will not take place if the page length is set to 0. Page Width (characters): Set the page width specified as the maximum characters in a single line of text. Code page: The code page consists of a table of values that describes the character set for a particular language. The default code page in iX Developer is 850. Page Orientation Not available Printouts via operator panel When printing to a serial printer from an operator panel, the printer must support IBM character set (850). When printing to a USB printer from an operator panel, the printer must support PCL levels according to the table below: Printer class requirement Printer type Recommended printer model Color laser printer USB + PCL 5c HP LaserJet 2700 Monochrome laser printer USB + PCL 5e HP LaserJet 1320 Color ink-jet printer USB + PCL 3e HP Deskjet 5652 When printing via Ethernet from an operator panel, the network printer must be a shared resource in the Windows network. Connecting a printer via Ethernet requires that a PC is connected between the operator panel and the printer. Printing to a color laser printer via Ethernet is not supported for operator panels. PCL 6 is not supported at all on operator panels. 8.3.7 Service Menu Group The Service Menu group provides a possibility to protect the service menu with a pin code. Parameter Pincode Description Enter a pincode for the service menu. No pincode enables the service menu for all users. Only numbers (0–9) are allowed. Beijer Electronics, MAEN831L 228 Ribbon Tabs Related information Service Menu 8.4 Insert Ribbon Tab The Functions group, available from the Insert ribbon tab, contains functions and screen that can be added to the project. Functions Group 8.4.1 Functions Group All added components are available from Project Explorer folders. The Project Explorer already includes alarm server, multiple languages, security functions and tags. All functions are managed through their configuration pages. Parameter Description Text Library With the text library function, text tables can be created, where values are linked to texts. Data Logger Data can be logged and saved to a database on time intervals or depending on changed values. Alarm Distributor Alarms can be distributed between operator panels, with notification via printer, SMS or e-mail using the alarm distributor. Script A script module can be included to program features not covered by included functions and actions, or to be used to share functionality among functions. Recipe Management Several recipes can be inserted in the project. Each recipe function handles a pre-defined set of recipe items. Function Keys Function keys for operator panels as well as for the regular PC keyboard can be configured. Scheduler A scheduler can be used to control events in the process at special times. Audit Trail The Audit Trail function enables tracking of operator actions. Reports The reports function allows adding Excel report templates to the project. Screens The Screen control adds new screens to the current project. Beijer Electronics, MAEN831L 229 Ribbon Tabs Related information Project Explorer Configuration Pages 8.5 View Ribbon Tab The Windows group, available from the View ribbon tab, contains controls to toggle visibility of the tool windows: Windows Group 8.5.1 Windows Group The tool controls in the Windows group are highlighted when active. Tool window Description Default Position Project Explorer Shows all screens and components included in the application Docked to the left part of the application window Output Displays detailed information concerning the project validation and build Docks to the lower part of the application window Cross Reference Provides an overview of where a specific tag is used Docks to the right part of the application window Error List Displays information about problems and errors detected during build Docks to the lower part of the application window Navigation Overview Provides an overview of all screens included in the project, with zooming facilities. Floating window Navigation Manager Manages screens and screen navigation Desktop area Property Grid Shows detailed properties of a selected screen or object Docks to the right part of the application window as a tab Beijer Electronics, MAEN831L 230 Ribbon Tabs Tool window Description Default Position Object Browser Displays an overview of all objects in the current screen and enables setting visibility and locking objects easily, as well as placing objects in front or back of each other. Floating window Component Library Contains predefined as well as user-defined graphical components Docks to the right part of the application window as a tab 8.6 Dynamics Ribbon Tab The Dynamics ribbon tab includes the following groups: Layout Group Color Group General Group The controls on the Dynamics tab are used to change the properties of an object depending on a changed tag value. A lock icon resembling a chain indicates that a specific dynamic setting is made for the selected object. If, for example, dynamic fill settings are made, it is not possible to make fill settings for the object from the Format group on the Home tab. Note: Security has higher priority than dynamics. Visibility has higher priority than blink. Note: Scripting to a property for which Dynamics has been configured disables the dynamic settings. To release an object from a dynamic control, click the control with the lock icon and click Clear Dynamics in the appearing dialog. Beijer Electronics, MAEN831L 231 Ribbon Tabs 8.6.1 Layout Group Move The Move control in the Position group changes an object’s position, based on a tag value. Position coordinates on the screen are given in pixels of the screen resolution. The position 0,0 corresponds to the upper left corner of the screen. To move an object vertically when a tag value changes: 1. Draw and position the object at the start position. Keep the object selected. 2. Click on Move on the Dynamics tab to open the Move Dynamics Editor. 3. Select the tag to control the movement. 4. Enter a start and end value for the tag. Start and end positions are suggested based on the current start position. A ghost object will appear at the suggested finish position. A guide line that connects the center of the original object with the ghost object appears. 5. Move the ghost object in the screen to its final position. The coordinates for the object is updated. An animation of the move appears on the screen. Coordinate values can also be updated directly in the numerical fields (End Top, End Left). The coordinates for start and finish will limit the movement of the object irrespective if the tag value is outside its start and end value. 6. Click OK to save and close the Move Dynamics Editor. Beijer Electronics, MAEN831L 232 Ribbon Tabs When Position or Size dynamics is applied, moving or resizing of the object will be disabled. A lock icon resembling a chain in the upper left corner of the object (when selected) indicates that the object has a dynamic control applied and that it cannot be moved or resized. Size The Size control in the Size group changes an object’s size, based on a tag value. Dynamic resizing of external picture files may result in a resolution loss if the picture is enlarged to a size larger than what is used elsewhere in the current project. Width and height of an object are given in pixels of the screen resolution. To resize the width of an object when a tag value changes: 1. Draw and size the object at its start size. Keep the object selected. 2. Click on Size on the Dynamics tab to open the Resize Dynamics Editor. 3. Select the tag to control the resizing. 4. Fill in the values that for start and finish. Size is given in screen resolution pixels. Start size is suggested based on the current start size. A finish size is suggested as a fixed increase of the start size horizontally and vertically. A ghost object will appear with the finish size. The object can only be resized from left to right and top to bottom. Beijer Electronics, MAEN831L 233 Ribbon Tabs 5. Resize the ghost object in the screen to its final size. The coordinates for the object is updated. An animation of the resizing appears on the screen. Coordinate values can also be updated directly in the numerical fields (End Width, End Height). The coordinates for start and finish will limit the size of the object irrespective if the tag value is outside its start and end value. 6. Click OK to save and close the Resize Dynamics Editor. When Position or Size dynamics is applied, moving or resizing of the object will be disabled. A lock icon resembling a chain in the upper left corner of the object (when selected) indicates that the object has a dynamic control applied and that it cannot be moved or resized. 8.6.2 Color Group The Fill and Outline controls in the Color group change an object’s fill color or outline (border) color, based on a tag value. To alter the fill color of an object when a tag value changes: 1. Draw the object. Keep the object selected. 2. Click on Fill on the Dynamics tab to open the Color Dynamics Editor. 3. Select the tag that is to control the color. 4. Fill in values to trigger color change. 5. Select color and gradient from the color menu. 6. Click OK to save and close the Color Dynamics Editor. Beijer Electronics, MAEN831L 234 Ribbon Tabs 8.6.3 General Group Visibility The Visible control in the Visibility group determines if an object is to be displayed in the screen or not, based on a tag value. To hide an object when a tag value changes: 1. Draw the object. Keep the object selected. 2. Click on Visible on the Dynamics tab. 3. Select the tag that is to control visibility. The object will be visible on the screen at a certain tag value. The selected value will be treated as True (visible). All other values will be treated as False (invisible). Blink It is possible to select a tag to enable blinking depending on the tag’s current value. The selected value will be treated as True (blink enabled). All other values will be treated as False (blink disabled). The blink interval can be set dynamically or constantly. Note: Security has higher priority than dynamics. Visibility has higher priority than blink. Beijer Electronics, MAEN831L 235 Ribbon Tabs Related information Blinking Objects General The general control offers a possibility to alter the properties of objects in iX Runtime. Converter Operators Converter operators are used to alter the properties of the objects. The converter operators can be selected from the Edit general dynamics dialog. Parameter Description Bool Converter Converts 0 to false and all other values to true. Color Converter Converts value intervals to specified colors. Linear Converter Converts values according to the linear equation. Raw Converter Converts the value to a new value matching the target type. Text Library Group converter Converts a value to a text. Edit General Dynamics The Edit general dynamics dialog contains different properties depending on which object is selected. The dialog is accessed by clicking the General control on the General group. Parameter Converter Object Description 3D View ·bool Chart Set a 3D look and feel for the chart Acknowledge all ·bool Alarm viewer Set visibility for the Acknowledge All button. Beijer Electronics, MAEN831L 236 Ribbon Tabs Parameter Converter Object Description Acknowledge selected ·bool Alarm viewer Set visibility for the Acknowledge Selected button. Address ·raw Web browser Change the default URL. ·text library group Alternate background color ·color interval Animated label Set background color. Alternate foreground color ·color interval Animated label Set foreground color. Animation speed ·linear Animated label Set animation speed. Auto-size ·bool Button color ·color interval Alarm viewer Set the button color Button height ·raw Alarm viewer Set the height of the buttons. Alarm viewer Alter the width of the buttons. Set visibility for the Clear button. Resize the object according to the size of the default text string length and font size. ·linear Button width ·raw ·linear Clear ·bool Alarm viewer Clockwise ·bool Circular meter Set the rotation orientation. Column header color ·color interval End angle ·raw Set the column header background color. Circular meter Set the end angle. ·linear PDF-file ·raw PDF viewer Select PDF file to add to the PDF viewer. Alarm viewer Set visibility for the filter button. ·text library group Filter ·bool Font color ·color interval Set font color in for instance the text object. Font size ·raw Set font size in for instance the text object. ·linear Group background ·color interval Action menu Set the group background color. Group foreground ·color interval Action menu Set the group foreground color. Beijer Electronics, MAEN831L 237 Ribbon Tabs Parameter Header Converter ·raw Object Chart Description Set the header. ·text library group High Region Color ·color interval Circular meter Set the high region color. High Region Max ·raw Circular meter Set the maximum value of the high region indicator. ·linear High Region Min ·raw ·linear Circular meter Set the minimum value of the high region indicator. Indicator color ·color interval Info ·bool Alarm viewer Set visibility for the info button. Active ·bool Chart Activate or stop the data input. Enabled ·bool Show header ·bool Chart Set visibility for the header. Show legend ·bool Chart Set visibility for the legend. Read only ·bool Auto-scale X-axis ·bool Chart Used with the chart object to toggle whether iX Runtime automatically should calculate the minimum and maximum X Axis values or not. Show X-axis grid ·bool Chart Set visibility for the X Axis grid. Show X-axis ·bool Chart Set visibility for the X Axis. Auto-scale Y1-axis ·bool Chart Used with the chart object to toggle whether iX Runtime automatically should calculate the minimum and maximum Y1 Axis values or not. Show Y1-axis grid ·bool Chart Set visibility for the Y1 Axis grid. Show Y1-axis ·bool Chart Set visibility for the Y1 Axis. Beijer Electronics, MAEN831L Set the indicator color in for instance the circular meter object. Enable or disable an object. Control whether for instance an analog numeric object editable or not. 238 Ribbon Tabs Parameter Converter Object Description Auto-scale Y2-axis ·bool Chart The bool converter can be used with the chart object to toggle whether iX Runtime automatically should calculate the minimum and maximum Y2 Axis values or not. Show Y2-axis grid ·bool Chart Set visibility for the Y2 Axis grid. Show Y2-axis ·bool Chart Set visibility for the Y2 Axis. Lock aspect ratio ·bool Multi picture Used with the multi picture object to toggle the height/width ratio of the object. Low region color ·color interval Circular meter Set the low region color. Low region max ·raw Circular meter Set the maximum value of the low region indicator. ·linear Low region min ·raw ·linear Major ticks Circular meter Set the minimum value of the low region indicator. ·raw Set the number of labeled time marks in for instance the linear meter object. ·linear Maximum ·raw Set the end value of the scale in for instance the linear meter object. ·linear Major value tics ·raw Trend viewer Set the number of labeled scale marks on the scale. Trend viewer Set the end value of the scale. Trend viewer Set the start value of the scale. Trend viewer Set the number of scale ticks between two adjacent major ticks on the scale. ·linear Max value ·raw ·linear Min value ·raw ·linear Minor value ticks ·raw ·linear Medium region color ·color interval Circular meter Set the medium region color. Medium region max ·raw Circular meter Set the maximum value of the medium region indicator. ·linear Medium region min ·raw ·linear Beijer Electronics, MAEN831L Circular meter Set the minimum value of the medium region indicator. 239 Ribbon Tabs Parameter Minimum Converter Object ·raw Set the start value of the scale in for instance the linear meter object. ·linear Minor ticks ·raw Set the number of scale ticks between two adjacent major ticks. ·linear Lower limit ·raw ·linear Opacity Analog numeric ·raw ·raw Set the outline thickness of for instance the rectangle object. ·linear Picture height ·raw Set the minimum value that can be entered. Set the opacity of for instance the PDF viewer object. ·linear Outline thickness Description Button Set picture height. Picture Set the picture shown in the picture object. ·linear Picture name ·raw ·text library group Picture stretch ·bool Button Stretch a picture. Picture width ·raw Button Set the picture width. ·linear Play/Pause ·bool Alarm viewer Set visibility for the pause button. Prefix ·raw Analog numeric Set a prefix to the digits entered. Rectangle Set the radius of the X axis in the rectangle object. Rectangle Set the radius of the Y axis. ·text library group Radius X ·raw ·linear Radius Y ·raw ·linear Scale color ·color interval Circular meter Set the scale color. Scale ·bool Circular meter Set visibility for the scale. Selected background ·color interval Action menu Set the background color of the selected action. Selected foreground ·color interval Action menu Set the foreground color of the selected action. Selected group background ·color interval Action menu Set the background color of the selected menu group. Selected group foreground ·color interval Action menu Set the foreground color of the selected menu group. Separator color ·color interval Beijer Electronics, MAEN831L Set the separator color. 240 Ribbon Tabs Parameter Source Converter ·raw Object Media player Description Set the source file. ·text library group Start angle ·raw Circular meter Set the start angle. ·linear Stretch ·bool Suffix ·raw ·text library group Text Adjust the height and width to the selection frame in for instance the picture object. Analog numeric ·raw Set the text shown in for instance the text object. ·text library group Title ·raw Set a suffix to the digits entered in the analog numeric object. Roller panel Set the title. ·text library group Title background color ·color interval Roller panel Set the title background color. Title foreground color ·color interval Roller panel Set the title foreground color. Transparent ·bool Upper limit ·raw Value Set the transparency of for instance the button object. ·linear Analog numeric Set the maximum value that can be entered. ·raw Progress bar Set the value. Line Set the X1 pixel coordinates Line Set the X2 pixel coordinates Line Set the X3 pixel coordinates Line Set the X4 pixel coordinates ·linear X1 ·raw ·linear X2 ·raw ·linear X3 ·raw ·linear X4 ·raw ·linear X-axis grid color ·color interval Chart Set the grid color of the X axis. X-axis max value ·raw Chart Set the maximum value of the X axis. Chart Set the minimum value of the X axis ·linear X-axis min value ·raw ·linear Beijer Electronics, MAEN831L 241 Ribbon Tabs Parameter Converter Object Description Y1-axis grid color ·color interval Chart Set the grid color of the Y1 axis. Y1-axis max value ·raw Chart Set the maximum value of the Y1 axis. Chart Set the minimum value of the Y1 axis. ·linear Y1-axis min value ·raw ·linear Y2-axis grid color ·color interval Chart Set the grid color of the Y2 axis. Y2-axis max value ·raw Chart Set the maximum value of the Y2 axis. Chart Set the minimum value of the Y2 axis. ·linear Y2-axis min value ·raw ·linear Related information Text Library 8.7 General Ribbon Tab The General ribbon tab contains different property groups and controls for different objects. Appearance can be modified for graphical shapes and objects. Scale settings can be made for meters and trend viewers. Additional settings can be made for some objects. The Tag/Security group is available also on the Home ribbon tab. The general properties are described separately for each object. Related information HMI Controls in the Objects group Media Controls in the Objects group Special Controls in the Objects group Windows Controls in the Objects group Tag/Security Group on the Home Ribbon Tab 8.8 Actions Ribbon Tab Actions can be triggered in various ways, for example by clicking a button. The Actions tab controls are used to define actions for objects. Alternatively, a script can be used to trigger an action. An action is something that is performed, for example closing a screen. An action trigger is the act that generates an action, for example clicking a button. The Actions ribbon tab contains different control groups for different objects. Beijer Electronics, MAEN831L 242 Ribbon Tabs A Click action configured for a button Note: It is not recommended to use multiple trigger methods, as this may lead to undesired behavior. It is recommended either to use a script or to program actions with the controls in the Actions tab. For example, avoid using Click Action Trigger in combination with Mouse Button Action Triggers. Related information Script 8.8.1 Click Action Trigger Most objects can be assigned click actions, that will be executed when the object is clicked in runtime. 8.8.2 Mouse Button Action Triggers The Mouse Down and Mouse Up action triggers can be used to create two-step actions when clicking with the left mouse button on an object. Parameter Description Mouse Down A Mouse Down action will be performed when the left mouse button is pressed down on the object in runtime. Mouse Up A Mouse Up action will be performed when the left mouse button is released from the object in runtime. Mouse Enter A Mouse Enter action will be performed when the cursor enters the boundaries of an object in runtime. Mouse Leave A Mouse Leave action will be performed when the cursor leaves the boundaries of an object in runtime. For iX TxA and iX TxB targets the object boundaries are not adapted to the visible outline of the shape. Instead the active area of the object is extended to a rectangular box. This will result in a mouse action as soon as the mouse pointer is placed inside the rectangular bounding box of the object: Beijer Electronics, MAEN831L 243 Ribbon Tabs 8.8.3 Function Key Action Triggers The Key Down and Key Up action triggers can be used to create two-step actions for function keys. Parameter Description Key Down A Key Down action will be performed when a function key is pressed in runtime. Key Up A Key Up action will be performed when a function key is released in runtime. 8.8.4 Value Changed Action Triggers Parameter Description Input Value Changed The Input Value Changed action will be performed when a value is entered by the operator. Value Changed The Value Changed action will be performed when the value of the object has changed. 8.8.5 Focus Action Triggers Parameter Description Got Focus The Got Focus action will be performed when the object is selected. Lost Focus The Lost Focus action will be performed when the object is no longer selected. 8.8.6 Navigation Action Triggers Parameter Description Navigated The Navigated action will be performed when having navigated to the address entered in the address field of the Web browser object. Navigating The Navigating action will be performed when having entered, but not reached, an address in the address field of the Web browser object. Beijer Electronics, MAEN831L 244 Ribbon Tabs 8.8.7 Data Logger Action Triggers The LogItemValueChanged and LogValuesUpdated are available for the Data Logger. 8.8.8 Alarm Server Action Triggers Alarm server actions can be configured for the entire alarm server, for alarm groups or for individual alarm items. The actions will be activated upon alarm status changes. Related information Alarm Server Events and Actions Actions and Events for Alarm Items and Alarm Groups 8.8.9 Action Groups Actions are divided into action groups. Action group Screen Action Close Screen Description Closes the current screen If triggered from a tag in a popup screen, this will close both the popup and the parent screen. Print Screen Prints the current screen on printer or to a .PNG file. Selecting Print to file enables the following options: Project files folder: The file will be saved in a folder named “Project Files” in the projects execution path. Browse: A save dialog will be shown in runtime. (PC only). Path: The file will be saved to a specified path. (PC only). Show Next Screen Shows next screen Show Previous Screen Returns to previous screen Show Screen Shows the specified screen. If the screen is a popup the position of the screen can be defined by entering (X,Y) coordinates. Show Start Screen Shows the screen set to Startup screen Address Book Open Address Book Opens the address book for editing. This action is used for Alarm Distributor purposes. Alarm Distributor Server Open Print Settings Modifies alarm distributor print settings Open Routes Configuration Modifies routes for the distributed alarm server Beijer Electronics, MAEN831L 245 Ribbon Tabs Action group Alarm Viewer(1) Audit Trail Action Description Acknowledge All Alarms Acknowledges all alarms in all Alarm Viewers Acknowledge Selected Alarm Acknowledges the selected alarm in the Alarm Viewer Alarm Info Performs the action configured for the Alarm event info requested in the Alarm Server. The action is performed on the selected Alarm Viewer. Clear All Alarms Remove all alarms in all Alarm Viewers Filter Alarms Shows the filter configuration dialog for the selected Alarm Viewer Pause Viewer Starts and pauses the selected Alarm Viewer Export Audit Trail Database Exports the audit trail database to a USB stick (operator panel) or to a folder (PC). When this is done the audit trail log is cleared. The export will be saved in a .SDF file. Chart Database Pan Down Pans down in selected chart Pan Left Pans left in selected chart Pan Right Pans right in selected chart Pan Up Pans up in selected chart Reset View Resets any panning and zoom in selected chart Zoom In Zooms into selected chart Zoom Out Zooms out of selected chart Backup Database Performs a backup of the project database Backup Database for project restore Performs a backup of the project database to the memory card. This action can be used when project is copied to memory card, to update the database on the memory card. When action is performed, the existing database on the memory card is replaced. Only supported for iX TxA and iX TxB targets. Datalogger Database Export Exports selected database in csv format Clear Datalogger Clears the specified datalogger Log Once Makes the specified datalogger log once Start Logging Enables the specified datalogger Stop Logging Disables the specified datalogger Beijer Electronics, MAEN831L 246 Ribbon Tabs Action group Output Devices Recipe Reporting Action Description Email Configuration Shows the e-mail configuration page. This action is used for Alarm Distributor purposes. Printer Configuration Shows the printer configuration page. SMS Configuration Shows the SMS configuration page. This action is used for Alarm Distributor purposes. Delete Recipe Deletes recipe End Offline Recipe Editing Sets the tags in the specified recipe in online mode. Export Recipe Exports a recipe to a .CSV file Import Recipe Imports a recipe from a .CSV file Load Recipe Loads recipe Save Recipe Saves recipe Start Offline Recipe Editing Sets the tags in the specified recipe in offline mode. Generate Report Generates a report file that can be output to a printer or saved as an Excel file. Selecting “File” enables the following options: Project files folder: The file will be saved in a subfolder named ”Reports” in the “Project Files” folder. Browse: A save dialog will be shown in runtime. (PC only). Path: The file will be saved to a specified path. (PC only). Security Export User Accounts Exports user data to a location that the operator states Import User Accounts Imports user data from a location that the user states Login Displays a login dialog Logout Logs out the current user Show Users Dialog Displays a dialog where users can be added, edited or removed Beijer Electronics, MAEN831L 247 Ribbon Tabs Action group Tag Trend Viewer Action Description Clear Non-Volatile Values Clears all stored values for tags marked as non-volatile Decrement Analog(2) Decrements tag value Increment Analog(2) Increments tag value Reset Tag(2) Resets tag to 0 Set Analog(2) Sets tag to the specified value Set String(2) Sets tag to the specified string Set Tag(2) Sets tag to 1 Toggle Tag(2) Toggles tag between 0 and 1 Show Trend Viewer Legend Displays the legend tool in the selected trend viewer, with a possibility to show and hide curves and to display values of a specific trend viewer sample. Trend Viewer History The Trend Viewer History action includes the following choices (all applicable to the selected trend viewer): On: Shows trend history from when the action was triggered (including offset settings made using trend viewer dynamics). Off: Returns to showing real time trend viewer data. Toggle: Allows entering and terminating history mode using the same object (for example a button). Show Dialog: Lets the user select a period of time, for which to show trend viewer history. Other Change Active Controllers Defines which controllers are to be active after having restarted the project Run Script Executes a script method saved in a script module. Close Application Closes the runtime application. Copy Debug Log to USB Memory Copies the debug log to a USB memory. Disable Debug Logger Disables the debug logger. Enable Debug Logger Enables the debug logger. Run Starts an external application Scroll Left Scrolls the screen carousel object left Scroll Right Scrolls the screen carousel object right Set Date and Time Allows changing date and time in the operator panel Beijer Electronics, MAEN831L 248 Ribbon Tabs Action group Action Description Set Language Sets the language in the operator panel to the selected language Set Time Zone, Region and Daylight Saving Allows changing time zone, region and daylight saving settings in the operator panel Show Backlight Settings Allows changing backlight settings in the operator panel When approaching 0% backlight, changes in brightness level may no longer be noticeable in the panel. Complete dimming (to 0%) is only possible to achieve with the marine panel types, such as iX T7AM and iX T15BM. Show IP Settings Shows the IP settings in the operator panel (1)All Alarm Viewer actions must be associated with an Alarm Viewer in the same screen as the object with the action configured. This also applies to actions that affect all Alarms. (2)This action can be used with Aliases. 8.8.10 Script Action Script actions are used to execute script methods in script modules, triggered by actions. Script modules in the project can be selected, and for each script module all methods are listed along with their exposed parameters. Static methods are not supported. To apply a script to a selected object: 1. Go to the Actions group and select the appropriate action trigger. 2. Select action Run Script under Other. 3. Select one of the scripts from Script Modules. 4. This results in a list of available script methods for that specific script module. Select script method. 5. The parameters for the script appears in a dialog with information about the parameter name and type. Complete the settings by entering a tag or a fixed value for each parameter, and click OK. Beijer Electronics, MAEN831L 249 Ribbon Tabs The script action will now be executed when the object is triggered. Note: Script actions will have precedence over other script code for an object. Related information Script 8.8.11 Multiple Actions Multiple actions can be configured by clicking small arrow in the lower right corner of any action group. Note the small arrow in the lower right corner The properties window allows configuring and sorting additional actions. The actions available depend of which object is selected in the screen prior to selecting the Actions ribbon tab. Beijer Electronics, MAEN831L 250 Ribbon Tabs After configuring multiple actions, this is indicated for the action group on the Actions tab. Beijer Electronics, MAEN831L 251 Trend Viewer 9 Trend Viewer This section describes the trend viewer object. Trend Viewers are used to present chronological data from controller tags. The curves in a trend viewer can have different sources of data. The source of data can be a log item for a data logger. The values of the tag connected to the log item is then stored in the projects database. The source can also be a Tag. The trend viewer curve then only shows real-time values and is stored in a RAM cache. Related information Database Database Export 9.1 Defining Trend Viewer Objects It is possible to define several independent trend viewer objects, in the same screen or in different screens. The number of trend viewer curves is limited only by the available amount of memory in the panel. Note: A large number of trend viewer pens and short sampling intervals may affect communication performance. Related information Communication Performance 9.1.1 Adding a Trend Viewer Object A trend viewer object is added to a screen from the Objects group on the Home ribbon tab. Settings for the trend viewer object are available from the General ribbon tab while the trend viewer object is selected: Curves Group Trend viewer curves are defined using the Edit Curves control. Parameter Description Add Adds a new curve to the trend viewer object Remove Removes the selected curve from the trend viewer object Beijer Electronics, MAEN831L 252 Trend Viewer Parameter Description Name The symbolic name of the curve. This name is shown if a Trend Viewer Legend is used. Tag The tag to present values for Log Item The item to be logged Expression Expression on a curve is evaluated and applied when the curve is drawn. If the expression value when the tag is logged or cached is of interest, the expression on the log item or the tag can be used. See section Expressions Color The color of the curve Thickness Line thickness Minimum Value Tag A tag that dynamically sets what value on the curve that corresponds to the minimum value of the Y axis. This property will scale the curve when the value of the tag is different from the minimum value of the Y axis (optional). Maximum Value Tag The tag that dynamically sets what value on the curve that corresponds to the maximum value of the Y axis. This property will scale the curve when the value of the tag is different from the maximum value of the Y axis (optional) Dynamics Group Several trend viewer properties can be made dynamic, i. e. dependent on tag values. This may be useful, for example, when wanting to present trend viewer values of different formats in the same trend viewer object. If dynamic trend viewer properties are used, the corresponding property settings made in the Value Scale group for the trend viewer object are ignored. Parameter Description Value Scale Min / Value Scale Max Minimum/maximum value of the Y-scale. The design mode value is used only for increased understanding in design time when tag values do not affect the minimum and maximum values. Time Span The time span of the X-axis in seconds. Time Offset in History Mode Makes it possible to use an offset to step back in history mode. The start value is when history mode was entered. The unit is seconds. If the Time Span value is increased, the trend viewer will initially display only the previous number of entries (that was displayed before the increased time span). It will not collect older data for display. Only when the additional time added onto the time span has elapsed, the cache will be filled with data and a full curve is displayed. Beijer Electronics, MAEN831L 253 Trend Viewer Value Scale Group The value scale group controls the vertical scale (y-axis). If dynamic trend viewer properties are used, the settings made for these properties in the value scale group will be ignored. Parameter Description Min Value/Max Value Start/end value of scale Major Ticks Number of labeled scale marks on the scale Minor Ticks Number of scale ticks between two adjacent major ticks Time Scale Group Parameter Description Time Range Visible time span for a trend viewer in Hour:Minute:Second format. Allowed values range from 00:00:00 to 23:59:59. Major Ticks Number of labeled time marks. This property will be ignored in Historical Mode in Trend Viewer. Style Group Parameter Description Style Predefined graphical styles for the trend viewer Visibility Group Parameter Description Scale When unchecked, the scale color of the trend is made transparent. Scale color is set from Other Colors in the Format group on the Home ribbon tab. Grid When unchecked, the grid color of the trend viewer is made transparent. Grid color is set from Other Colors in the Format group on the Home ribbon tab. 9.1.2 Trend Viewer Legend In runtime, it is possible to display a trend viewer legend tool using the Show Trend Viewer Legend action. The trend viewer legend tool is a floating window that displays the name and color of the curves in the current trend viewer object. Curves can be made invisible by clicking the visibility icon. Use the needle directly in the trend viewer to select a specific occasion. The values of all curves at the current position are displayed in the trend viewer legend tool. Beijer Electronics, MAEN831L 254 Trend Viewer 9.2 Historical Mode in Trend Viewer To be able to show historical data in a trend viewer, the curves needs to be connected to log items from a data logger. To show trend viewer history, it is necessary to define trend actions to show and close the historical trend viewer. These actions can for example be programmed as button click actions. It is also possible to let the user select a time period. Major ticks settings for time axis will be ignored in historical trend viewers. In historical trend viewers the date and time will be viewed at start and end time. The text “history” is visible in the middle of the time axis. Related information Performance in the operator panel Database Click Action Trigger Beijer Electronics, MAEN831L 255 Data Logger 10 Data Logger Data can be logged and saved in the iX Developer database. Any number of tags can be connected to a data logger, and data values irrespective of type can be logged. A project can have multiple data loggers with different sampling alternatives. When installing iX Developer, a Database Viewer is automatically installed and available from Windows Start menu. The Database Viewer makes it possible to open the database file and inspect logged data, and to export the file to Excel. Logged data can also be viewed in the trend viewer object by selecting a LogItem for a curve in the Edit Curves dialog. If iX Runtime is restarted at some point during the data logging, an additional empty row is added in the Data Logger table in order to clearly visualize the interruption in the Trend Viewer. Note: Logging of data consumes system resources and memory. To save memory, it is preferable that all LogItems that should be logged with the same sampling intervals are placed in the same data logger. Note: In order to import or export .xls-files Microsoft Excel must be installed. Any individual data logger database can be exported in csv format using the Database Export action. It is recommended to use the database export method rather than the backup method. Related information Database Database Export Adding a Trend Viewer Object 10.1 Data Logging Strategies Logging of data can be made at time intervals or based on changed tag values. Logging of data can be made either by collecting all samples at every log event, or by collecting only changed values. Collecting only changed values saves memory and improves performance. 10.1.1 Logging Based on Time Interval To collect data that changes frequently, logging data based on time interval is recommended. Beijer Electronics, MAEN831L 256 Data Logger 10.1.2 Logging Based on Changed Tag Value To control sampling of data by other means than regular time interval, you have to set up a separate tag to be used as a trigger. When the value of the trigger tag changes the log item is logged. 10.1.3 Maximizing the Lifetime of the Storage Media The storage media in the iX panel is based on Flash SSD (Solid State Drive). Flash SSD has no moving or mechanical parts, which gives high and reliable performance. The Flash SSD can handle data very fast and efficiently and the data is controlled by the drive manufacturers’ confidential algorithm. As the algorithm is intellectual property it is not possible to calculate the lifetime, the drive manufacturers only publish the numbers of reads and writes. Best practise is to minimize number of writes to maximize the lifetime of the Flash SSD. Follow the advice below to reduce the risk of premature wear out (before the estimated lifetime). A non working Flash SSD stops the panel from operating. • Do not log values with higher accuracy than needed. For example, avoid logging of floating point values. • Reduce high fluctuating values by using the hysteresis functionality in the connected controller. • Collect values with high fluctuating values in the same logger and do not mix with stable values. Collect slow changing values in other loggers. • Do not log with higher refresh rate than needed. • Disable logging completely when information is not needed, for example when the machine is not running. • Use default setting Log changes only in the property setting of the logger. • Keep the log size to a minimum, as few rows as needed. • Avoid extensive file writing when controlling storage via script. 10.2 Adding a Data Logger A data logger can be added to the project from the Insert ribbon tab. The data logger configuration pages are used to set up which values to log. Beijer Electronics, MAEN831L 257 Data Logger Parameter Description Name Symbolic name for the logged tag Tag Tag to log Expression See section Expressions Clicking the Settings button accesses the Data Logger settings. Related information General Settings Actions 10.2.1 General Settings Parameter Description Table name The name of the data logger table. This name is the same as the data logger name. Log with interval To collect data that changes frequently, use the Log with interval of option, and define time interval in seconds. Minimum interval is 1 second. Log on tag event To control sampling of data by other means than regular time interval, select the Log on tag event option, and select the tag to use as trigger. Data will be sampled when the tag value changes. Log changes only By logging changes only saves memory. The option Log changes only can be combined with either the “Log with interval of” or the “Log on object event” option. Data will only be logged if the value differs from the last logged value. Max number of logged rows The maximum number of tag values to save in the database. When the number of collected items becomes larger than the set value, the oldest item will be overwritten. The value must be within the size of the available amount of memory in the operator panel in runtime. Beijer Electronics, MAEN831L 258 Data Logger Related information Database Click Action Trigger 10.2.2 Actions Event Description Log item Value changed When a value of an particular log item has changed Log values updated When any log value is updated Beijer Electronics, MAEN831L 259 Scheduler 11 Scheduler A scheduler is used to control tags in relation to the real-time clock. This function is used to control events in the process, for example starting and stopping motors, at specific predefined calendar times. 11.1 Scheduler Set Up The scheduler configuration pages are used to set up scheduler jobs, which can include a set of tags with associated start and stop times. 11.1.1 Adding a Scheduler A scheduler can be added to the project from the Insert ribbon tab. The scheduler configuration page will open in the desktop when a scheduler function is created or selected. Parameter Description Name A symbolic name for the scheduled event. Period Set to Once (default) or to a regular interval (every minute, hour, day, week, month or year). Start Date/Start Time The date and time for the first scheduled event. Duration The length of the event. Tag A digital tag, which is set to 1 during the specified interval. Stop Time Enable When checked, Stop Date and Stop Time, instead of Duration, can be used to determine the end of the event. Stop Date/Stop Time The end date and time of the event. Also resets the defined Tag to 0. Used when Stop Time Enable is checked. Action Click the button to configure an action to be performed when the scheduled event is activated/deactivated. Note: Make sure not to use the same trigger tag for two different schedulers. When the first scheduler is finished, its trigger tag is reset, and the second scheduler will not be triggered. Beijer Electronics, MAEN831L 260 Reports 12 Reports The report generator allows generating Excel reports based on an Microsoft Excel made report template. The generated report can be output to a printer or saved as an Excel file. 12.1 Reports Template Set up The tag data to be displayed in the report file are set up in the template file using “placeholders”. The placeholders acts as substitute for the actual tag data that is to be inserted when the report is generated in iX Runtime. To add a placeholder, enter the following text inside a cell in the Excel report template: <#Tag(TagName)> Replace “TagName” with the actual name of the tag to be displayed. When the template file is complete it needs to be added to the iX Developer project. Note: The tag placeholders can only be used in the cells of the Excel template file, they can not be used in, for example, Microsoft Excel WordArt texts. 12.1.1 • • • • Limitations Microsoft Excel xlsx format is not supported by the report generator. Microsoft Excel xls format only supports 65536 rows. If more data is stored in the report, information may be lost. Reports containing charts and pictures can not be printed from a panel target. The report generation is not an instant process. It may elapse a shorter period of time between the first sampled tag and the last sampled tag, depending on the number of tags to process. 12.1.2 Database Driven Reports To be able to create database driven reports, the report template must be prepared as described in these instructions: Configuration Sheet The configuration sheet is a repository where configurations on the Microsoft Excel report template can be made. This sheet will not be visible in the generated report. 1. Create a new worksheet in the report template. Name the sheet <#Config>. Beijer Electronics, MAEN831L 261 Reports 2. Row 10, and all rows below, in column A and B can be used to configure the SQL queries. Enter the SQL query in column B. Use the corresponding cell in column A to enter a name for the query. The name will be used to refer to the query in the report template. Enter the SQL queries in the following format: SQL(DatabaseName; SQL query) Example: SQL(General; SELECT * FROM DataLogger1) There are two available databases: General and AuditTrail. Present the Database Data in the Report The data retrieved from the SQL database, using the queries in the configuration sheet, can be presented in the report using “named ranges” in Microsoft Excel. A named range is created in Microsoft Excel by following these steps: 1. Select the cells to be included in a named range. 2. Click the Define name command from the Insert menu. (In Excel 2007, go to the Formulas tab and choose Name Manager). 3. Enter a name for the range. The name must be entered in the following format: “__QueryName__”. Replace “QueryName” with the name that you have chosen for your SQL query. To present the data in the report, enter the following syntax into the cells included in the named range: <#QueryName.DatabaseColumnName> Replace the “DatabaseColumnName” entry with the actual name of the table in the SQL database that you wish to present in the report. Note: It is possible to use the named range cells in Microsoft Excel charts and functions. To be able to use the named range in functions, an empty row must be inserted under the named range cells. This empty row must also be included in the function. Related information Adding a Report 12.2 Reports Set Up The reports configuration page are available from the Insert ribbon tab. Related information Insert Ribbon Tab Beijer Electronics, MAEN831L 262 Reports 12.3 Adding a Report Add a Microsoft Excel report template by pressing Add in the reports configuration page. In the appearing Add report dialog, type in or browse to the location of the Excel template file. If any changes are made to a report template after it has been uploaded to the project, the template has to be uploaded again. The template files being added to the project must have unique file names. Parameter Description Name A symbolic name for the report. File name The name of the Microsoft Excel report template. The Show Selection/Show All button can be used to set up a filter of displayed items. Related information Performance in the operator panel Filtering Items Configuration Pages Action Groups Output Devices Group Beijer Electronics, MAEN831L 263 Recipe Management 13 Recipe Management Recipes make it possible for a set of tags to be saved in the operator panel to be downloaded at later time. The operator can download a saved recipe to the controller, which will start working with the new values. Recipe libraries consisting of recipes with different sets of parameters can be created, allowing reuse of large sets of parameters. Recipes can be created during the design of the project or from the operator panel. Recipe data is stored in the operator panel database. Recipe handling functions such as loading, storing, copying and deleting recipes are handled with actions. Related information Database Actions Ribbon Tab 13.1 Recipe Setup Recipes consist of a set of recipe tags and of recipe data (values). 13.1.1 Adding a Recipe Manager The recipe function is added to the project from the Insert ribbon tab. The recipe configuration pages are used to manage tag sets and values via the Tag Configuration tab and the Runtime Data tab. Tag Configuration Tab First add tags to be used by the recipe function from the tags configuration page. Then define a set of recipe items on the Tag Configuration tab of the Recipe function, and connect them to the tags you defined. The data type is already set in the configuration of the tags. Beijer Electronics, MAEN831L 264 Recipe Management Runtime Data Tab The actual recipes are created under the Runtime Data tab. Give the recipe a title, and type a value for each recipe item. A recipe can include a maximum of 256 items. The recipe name has to be an alphanumeric string, beginning with a letter. Name strings can contain letters (a-z, A-Z), numbers (0-9), and underscore (‘_’) characters. Some system device names such as COM1 and AUX are invalid. Related information Invalid Names Beijer Electronics, MAEN831L 265 Recipe Management 13.2 Recipes in the iX panel Some recipe actions can be performed by the operator in runtime. 13.2.1 Loading Recipes Recipes can be transferred to the controller using a Load recipe action when the operator panel is running. This means that the recipe values are transferred to the controller. A list of available recipes is displayed when the Load recipe action is activated. Select a recipe in the list and press [Enter] to make the controller run with the downloaded values. 13.2.2 Saving Recipes The Save recipe action can be used when the operator panel is running. Tags defined on the Tag Configuration tab are included in the recipe. Corresponding tag values are stored in the selected recipe file when Save recipe is performed. It is possible to define an explicit recipe, that will be overwritten if it already exists when performing the Save Recipe action. 13.2.3 Creating Recipes in the iX panel The Save recipe action is also used to create recipes in runtime. Instead of defining an explicit recipe to overwrite, the recipe data field is left open. In this case, the operator will be prompted to save the recipe with any name, or to overwrite an existing recipe. 13.2.4 Editing Recipes Offline It is possible to edit existing recipes in the panel without transferring values to the controller, by setting the recipe tags in offline mode. Recipe tags in offline mode will not receive any data from the controller, and no values will be written to the controller. In offline mode, the Load recipe and Save recipe actions will not affect values in the controller. Internal tags may be used for recipes, but will not be affected by offline mode. Actions are used to start and end offline mode: Beijer Electronics, MAEN831L 266 Recipe Management Action Description Start offline recipe editing Sets the tags in the specified recipe in offline mode. A notification message is shown. End offline recipe editing Sets the tags in the specified recipe in online mode, and the tags are updated from the controller. A notification message is displayed during offline mode. Example 1. Click Recipe on the Insert ribbon tab. The Recipe configuration page opens in the desktop area. 2. Add recipe tags on the Tag Configuration tab of the Recipe configuration page and connect them to controller tags. 3. Add a recipe on the Runtime Data tab. 4. Create a screen with four buttons. 5. Connect two of the buttons to the Load Recipe and Save Recipe actions. Select the recipe title from the Runtime Data tab for Recipe Data. 6. Connect the other two buttons to the Start offline recipe editing and End offline recipe editing actions. 7. Run the project and test the functionality: a. Click Start offline recipe editing. The tags are set in offline mode. b. Click Start offline recipe editing. The tags are filled with data from the recipe. c. Change the data. d. Click Save recipe. The data in the tags is written to the recipe. e. Click End offline recipe editing. The tags are set in online mode and the values are updated with data from the controller. 13.3 Recipe Export A recipe can be exported as a .csv file and saved to a USB stick, an external memory card or to the project files folder. The export is configured through the “Export Recipe” action available from the Recipe action group. Note: Recipe export is not supported during project simulation. Beijer Electronics, MAEN831L 267 Recipe Management 13.3.1 Recipe Export from an operator panel Target It is possible to select Export to the Project Files Folder, Export to USB, or Export to external memory card, and also to set another name of the export file. It is also possible to select the requested delimiter in the .csv file (comma or semicolon). Beijer Electronics, MAEN831L 268 Recipe Management 13.3.2 Recipe Export from a PC Target It is possible to select Browse and Select an export path, Export to Path or the Export to Project Files folder, and also setting another name of the export file. The Browse and Select an export path option allows browsing for desired export destination in runtime. This may be useful if available folders in runtime are unknown when designing the project. Select the Export to Path option when you want to set the path when designing the project. If the pre-defined path is not valid in runtime, the operator may browse the PC environment by clicking a browse button. It is also possible to select the requested delimiter in the .csv file (comma or semicolon). 13.4 Recipe Import A recipe that previously has been exported as a .csv file, can be imported back into recipe database. The import is configured through the “Import Recipe” action available from the Recipe Action group. Beijer Electronics, MAEN831L 269 Recipe Management Note: Recipe import is not supported during project simulation. 13.4.1 Recipe Import to an iX panel Target It is possible to import the csv file using the Import from USB, Import from external memory card or the Import from Project Files folder selections and also setting the name of the import file. It is also possible to select the requested delimiter in the .csv file (comma or semicolon). It can be selected whether to ignore the new data or replace the old data, if the recipe data already exists. Beijer Electronics, MAEN831L 270 Recipe Management 13.4.2 Recipe Import to a PC Target It is possible to select Browse and Select a path for import file, Import from path or Import from Project Files folder, and also setting the name of the import file. The Browse and Select a path for import file option allows browsing for desired import destination in runtime. This may be useful if available folders in runtime are unknown when designing the project. Select the Import from path option when you want to set the path when designing the project. It is also possible to select the requested delimiter in the .csv file (comma or semicolon). It can be selected whether to ignore the new data or replace the old data, if the recipes already exists. Beijer Electronics, MAEN831L 271 Function Keys 14 Function Keys Function keys can be configured to run actions or to run scripts. 14.1 Definitions A standard PC keyboard has 12 function keys, F1 - F12. A function key can be configured to affect only a particular screen or to be global. Global function keys behave identically for all screens. A global definition can always be accessed when the operator panel is running, provided that the current screen does not have a screen definition for that function key. Screen function keys have higher priority than global function keys. Function keys included in background screens have lower priority than screen function keys, but higher priority than global function keys. For touch panel and PC targets, the Function keys function is added via the Insert ribbon tab, and allows configuration of up to 24 function keys (even if the connected keyboard does not support more than 12 function keys). Related information Security Management 14.2 Configuring Function Keys Function keys can be configured to run actions or to run scripts. 14.2.1 Function Key Actions To define function key actions: 1. Click on Function Keys in the Project Explorer to open the function keys configuration page. 2. Select Global or Screen. 3. Select the function key to be defined. Beijer Electronics, MAEN831L 272 Function Keys 4. Click on the button next to the action to display the actions editor. Define the action to be performed when the function key is pressed or released. 5. In the column Security groups required it is possible to specify security group accessibility for the function key. Multiple actions can be configured for a function key. It is only possible to activate two tags connected to function keys at the same time. This means that if more than two function keys are pressed at the same time, only the first two will be activated. Should further function key actions be needed in addition to those available for the panel in question, this could be solved by adding buttons or other objects on screen, connecting these to the desired actions. Note: The function keys will be disabled if the backlight of the panel is disabled. Related information Function Key Action Triggers Multiple Actions Beijer Electronics, MAEN831L 273 Function Keys 14.2.2 Function Key Scripts To define a script for a function key: 1. Click on Function Keys in the Project Explorer to open the function keys configuration page. 2. Select the function key to be defined. 3. Select script view mode by clicking Script in the lower part of the desktop area. 4. Click on the desired button node. Double-click on the KeyDown node. Edit the script code to be performed. Example: The following C# code sets up function key F12 to perform an acknowledge of all alarms: Related information Script 14.2.3 Momentary Function In order to configure a function key with a momentary function, you need to combine a Set Tag action for Key Down with a Reset Tag action for Key Up. Beijer Electronics, MAEN831L 274 Function Keys Change of Screen During Momentary Execution There are a few special cases to be aware of when, during execution of the momentary function, another screen is opened that contains settings for the function key in use. Then, dependent on the Function Key Context settings, Global or Screen (local), there will be different outcomes: • Case 1: A local function key is pressed. A change to another screen occurs. Result: The up action for the local key is executed. No new down or up actions are executed on the second screen as long as the key is pressed. • Case 2: A global function key is pressed. A change to another screen occurs, in which there is no local setting for the same key. Result: Nothing happens at screen change. The up action for the global key is executed when the key is released. • Case 3: A global function key is pressed. A change to another screen occurs, in which there is a local setting for the same key. Result: The up action for the global key is executed. No new down or up actions are executed on the second screen as long as the key is pressed. Note: A Screen (local) function key command has priority over a Global function key command. Beijer Electronics, MAEN831L 275 Alarm Management 15 Alarm Management An alarm is used to call attention to an event that requires immediate action. An alarm is set when a certain condition is met. An alarm condition is designed as a logical evaluation of a tag value. Alarms can be divided into groups to create an order of priority. Alarm notification can be made in the following ways: Alarm Indicator Alarm Viewer Distribution via SMS, e-mail or printer via the Alarm Distributor The alarm server database can be exported in csv format using the Database Export action. Related information Database Export 15.1 Alarm Conditions Alarms can assume the following conditions: Alarm condition Description Active The alarm condition is met, and the alarm is not acknowledged Inactive The alarm has returned to normal condition, but has not been acknowledged Acknowledged The alarm condition is still met, but the alarm is acknowledged Normal The alarm has returned to normal condition and has been acknowledged 15.2 Alarm Server The alarm server function is predefined in the Project Explorer. Clicking on it opens the alarm server configuration pages in the desktop. General alarm server properties are available by clicking the Settings button. Beijer Electronics, MAEN831L 276 Alarm Management The Properties window is divided into General, Alarm Distribution and Actions. 15.2.1 General Settings Settings Some alarm server functions are based on changed tag values: Alarm function Description Remote acknowledge Performs remote acknowledge of all current alarms when the tag value is 1 Clear alarms Removes all alarms from the alarm server when the tag value is 1 Enable/disable alarms Enables the alarm server when the tag value is 1 Show Alarm Indicator Select for which alarm statuses the alarm indicator is to be displayed. Beijer Electronics, MAEN831L 277 Alarm Management Log Settings Parameter Description Max Number of Logged Rows The maximum number of alarms to save in the database. If the number of collected items becomes larger than the set value, the oldest item will be deleted. The value must be within the size of the available amount of memory in the operator panel in runtime. Repeat Counter To avoid that an alarm that is triggered repeatedly results in multiple entries in the alarm list, Repeat Count can be used. The current alarm will then only appear once in the alarm list, and number of times the alarm is triggered will be included in the alarm text. For display in the Alarm Viewer and for logging, select whether to show the time of the first or last occurrence of the alarm. 15.2.2 Alarm Server Events and Actions Actions can be configured for the entire alarm server. One or multiple actions can be configured when a particular alarm server event occurs. Select Actions in the Alarm Server properties page to configure actions for the alarm server. Actions for the following alarm server events can be configured: Alarm Acknowledge The specified actions are triggered once for every alarm that is acknowledged. Alarm Active The specified actions are triggered once for every alarm that becomes active. Alarm Deleted The specified actions are triggered once when the Clear button in the Alarm Viewer is pressed, if at least one alarm is deleted. Alarm Event Info Requested The specified actions for the selected alarm are triggered when the Info button in the Alarm Viewer is pressed. The actions are applied for the individual alarm first. If no action is specified for the alarm, the actions are applied for the group. If no action is specified for the group, the actions are applied for the alarm server. Alarm Inactive The specified actions are triggered once for each alarm, for which the alarm condition is no longer met. Beijer Electronics, MAEN831L 278 Alarm Management Alarm Normal The specified actions are triggered once for each acknowledged alarm, for which the alarm condition is no longer met. Alarms Changed This event is intended primarily for scripting, in order to avoid performance loss that may occur when many alarms change status at once. Alarms Changed includes status changes based on Alarm Acknowledge, Alarm Active, Alarm Normal and Alarm Inactive, but not Alarm Deleted. The specified actions are triggered once when the status of several alarms change at one occasion. A collection of alarms is returned. Alarms Deleted This event is intended primarily for scripting, in order to avoid performance loss that may occur when many alarms are deleted at once, by pressing the Clear button in the Alarm Viewer. The specified actions are triggered once when a number of alarms are deleted at one occasion. A collection of alarms is returned. Any Acknowledged The specified actions are triggered based on alarm logic: when the alarm server toggles between containing acknowledged alarms or not. Any Active The specified actions are triggered based on alarm logic: when the alarm server toggles between containing active alarms or not. Any Inactive The specified actions are triggered based on alarm logic: when the alarm server toggles between containing inactive alarms or not. 15.2.3 Alarm Distribution Settings To enable sending alarms to printer, or via SMS or e-mail, the Alarm Distributor is used. In addition to the settings below, the Enable Distribution option for the alarm groups or alarm items also has to be checked. Beijer Electronics, MAEN831L 279 Alarm Management Parameter Description Internal/External Selection of internal or external alarm distributor IP Number Server The IP address of the external alarm distributor Queue Length The number of alarms to be kept in queue for the external alarm distributor. When the queue is full, no more alarms will be added to the queue. Port Number The port number of the external alarm distributor Related information Alarm Distributor Alarm Groups Alarm Items 15.3 Alarm Indicator As long as there are active alarms in the alarm server, the alarm indicator notify window will be displayed, regardless of which screen is active. The color shows the current alarm status, and can be configured for each of the alarm groups. The indicator starts in the upper left corner of the screen in runtime, but can be moved to any position on the monitor in runtime. The appearance of the alarm indicator depends on the current alarm status. It will show the most severe status of the alarms in the list. The Alarm Indicator disappears when all alarms have been acknowledged, and all alarms have returned to inactive status. Select General settings in alarm server properties page to decide for which alarm statuses to show the alarm indicator. Alarm condition Description Default alarm indication Active The alarm condition is met, and the alarm is not acknowledged Flashing red Inactive The alarm has returned to normal condition, but has not been acknowledged Flashing green Beijer Electronics, MAEN831L 280 Alarm Management Alarm condition Default alarm indication Description Acknowledged The alarm condition is met, and the alarm is acknowledged Flashing green Normal The alarm has returned to normal condition, and has been acknowledged - Related information General Settings 15.4 Alarm Items Alarm items are added from the Alarm Items tab of the alarm server configuration pages. Click Add to define a new alarm. Parameter Description Name Symbolic name for the alarm item that will show in an Alarm Viewer. Text An optional alarm text that will be shown in the Alarm Viewer. Parts of the text can be made dynamic by clicking ... Tag The tag (digital or analog), which generates the alarm when it assumes the specified status. Expression See section Expressions Condition Equal to/Not equal to: The alarm is set when the value of the tag is equal/not equal to the value specified in the Trigger Value field. Greater than/Less than: The alarm is set when the value of the tag is greater/less than the value specified in the Trigger Value field. Equal to greater than/Equal to less than: The alarm is set when the value of the tag is equal to or greater/less than the value specified in the Trigger Value field. Rising/Falling Edge: The alarm is set when the specified tag goes to one/zero. Beijer Electronics, MAEN831L 281 Alarm Management Parameter Description Trigger Value Numeric value to trigger alarm with when: <tag value> <condition> <trigger value> = true. History Specifies when the alarm is to be removed from the alarm list. Checking this box means that the alarm will remain in the list until the list is full. Leaving it unchecked means that the alarm will be removed from the list when it is acknowledged and no longer active. If Acknowledge Required is not checked, the alarm will be removed from the list as soon as it is no longer active. Acknowledge Required Indicates whether the alarm is to be acknowledged or not. Checking the box means that the alarm must be acknowledged, leaving it unchecked means that the alarm returns to normal directly when the alarm status becomes inactive. Remote Acknowledge A digital tag that acknowledges all the alarm when set to 1 Remote Ack Expression See section Expressions Enable Distribution Enables distribution of the alarm via printer/SMS/e-mail. Only available if alarm distribution is enabled for the alarm server. If the Enable Distribution option for the alarm group is checked, distribution of individual alarms in the group are automatically enabled. Repeat Count To avoid that an alarm that is triggered repeatedly results in multiple entries in the alarm list, Repeat Count can be used. The current alarm will then only appear once in the alarm list, and the number of times the alarm is triggered will be included in the alarm text. It is also possible to show a Count column in the Alarm Viewer. The active time can be shown either for the first time or for the last time the alarm occurred. Action Makes it possible to configure one or multiple actions when a particular alarm event occurs for the current alarm. Note: An alarm condition is triggered by a fixed value. The trigger value defined for an analog alarm tag cannot be controlled from a register. It is not supported to trigger alarms on intervals. Related information Actions and Events for Alarm Items and Alarm Groups 15.4.1 Exporting and Importing Alarm Items Alarm items can be exported and imported using the Import/Export button in the Alarms configuration page. The procedure is similar to exporting and importing tags. Beijer Electronics, MAEN831L 282 Alarm Management Related information Importing and Exporting Tags Tag Import Example 15.5 Alarm Groups Alarms can be divided into groups, for example to indicate the priority of the alarms. One alarm group is defined by default. Color attributes can be individually set for each alarm group. Alarms can be sorted by group in the Alarm Viewer. 15.5.1 Defining Alarm Groups Alarm groups are added from the Alarm Groups tab of the alarm server configuration pages. Parameter Description Name An optional name for the alarm group. Text An optional text for the alarm group. Colors Select foreground and background color for each alarm status Remote Acknowledge A digital tag that acknowledges all the alarms in the group when set to 1 Remote Ack Expression See section Expressions Beijer Electronics, MAEN831L 283 Alarm Management Parameter Description Enable Distribution Enables distribution of the alarms in the group via printer/SMS/e-mail. Only available if alarm distribution is enabled for the alarm server. Action Makes it possible to configure one or multiple actions when a particular alarm event occurs for the current alarm group. Note: The Alarm Filter will revert to the default settings if the Alarm Group is renamed. Related information Actions and Events for Alarm Items and Alarm Groups 15.6 Actions and Events for Alarm Items and Alarm Groups Actions can be configured for individual alarms or for alarm groups. One or multiple actions can be configured when a particular alarm event occurs for the current alarm or alarm group. Actions for individual alarms are configured from the Action column for the alarm on the Alarm Items tab. Actions for alarm groups are configured from the Action column for the alarm group on the Alarm Groups tab. 15.6.1 Actions and Events Actions for the following alarm events and alarm group events can be configured: Alarm Acknowledge The specified actions will be triggered when the selected alarm/an alarm in the selected alarm group is acknowledged. Alarm Active The specified actions will be triggered when the selected alarm/an alarm in the selected alarm group becomes active. Alarm Event Info Requested The specified actions are triggered when the Info button in the Alarm Viewer is pressed. These actions are applied for the individual alarm first. If no action is specified for the alarm, the actions are applied for the group. If no action is specified for the group, the actions are applied for the alarm server. Beijer Electronics, MAEN831L 284 Alarm Management Alarm Inactive The specified actions are triggered when the alarm/an alarm in the selected alarm group becomes inactive. 15.6.2 Example The following picture shows two actions configured for when the current alarm goes active, and another action for when the operator presses the Info button in runtime. 15.7 Remote Alarm Server The alarm server in the iX Developer project can operate as a stand-alone alarm server, processing alarms and showing these in the Alarm Viewer and alarm indicator. Alternatively, the alarm server can distribute alarms to clients. Each alarm server can function as alarm server and/or alarm client. The remote alarm server functionality is set up via properties. 15.7.1 Remote Alarm Server Limitations Most functions work exactly the same regardless if a local or remote alarm server is used, but there are a few limitations: • In projects where multiple languages are used, switching language in the alarm server results in using the current language for all new alarm texts. Alarms distributed before the language was switched in the server will remain in the previous language in the client. • Pressing the Info button in the Alarm Viewer in runtime does not result in any actions for a remote alarm, unless the same project is used for the server and the client. The script event AlarmInfoRequested can be used instead. Beijer Electronics, MAEN831L 285 Alarm Management • Unless the same project is used for the server and the client, filtering (pressing the Filter button in the alarm viewer) can only be made in runtime for remote alarms, since the remote server may include e.g. alarm groups that are different from the project in which the alarm viewer was configured. 15.7.2 Remote Alarm Server Properties The following properties, located in the Server Mode group under the Settings button, need to be set up for the remote alarm server: Property Description Maximum number of alarm events to distribute The number of events to distribute to the clients. The number of distributed alarms affects performance. Server Mode The alarm server can assume the following modes: Disabled: The alarm server is disabled and no alarms are processed Local: The alarm server processes alarms of its own. Remote: Alarms are distributed to remote clients. Both: The alarm server processes alarms of its own and also distributes them to remote clients Server Port 15.7.3 Any available port. The port needs to correspond to the port setting for the remote alarm client. Remote Alarm Client The properties for the remote alarm client are set by adding the Alarm Distributor Viewer object, found in the Objects group under the Home tab. The settings are done in the Property Grid under Extended. Property Description Server address The IP address of the remote alarm server. Server port Any available port. The port needs to correspond to the port setting for the remote alarm server. Beijer Electronics, MAEN831L 286 Alarm Management 15.8 Alarm Distributor The Alarm Distributor makes it possible to send alarm notification via printer, SMS or e-mail. The function can be enabled internally in a project, or in another operator panel that acts as a server towards several connected clients. Regardless of acting as server or client, distributed alarms are saved temporarily in the local project database to ensure that information is not lost in case of e.g. interrupted power. After receiving alarms from a client, the server will send a confirmation to the client. The alarms will then be removed from the client’s database. 15.8.1 Alarm Distribution Roles Using Internal Alarm Distribution Server Functions (Acting as Client and Server) The following actions are required for using distributed alarm functions in the current project: Action Component Location Activating distribution of alarms in the project Alarm Distribution Server Insert ribbon tab Enabling internal distribution of alarms Alarm Server Settings button/Alarm Distribution properties Beijer Electronics, MAEN831L 287 Alarm Management Action Component Location Enabling distribution of alarm groups or individual alarms Alarm Server Alarm Groups or Alarm Items tab Configuration of alarm distribution routes Alarm Distribution Server Receivers, Alarm Filter and Scheduler tabs Configuration of alarm distribution devices Alarm Distribution Server Configure Distribution Devices button (e-mail, printer and/or SMS) Using External Alarm Distribution Server Functions (Acting as Client) The following actions are required for using distributed alarm functions in another operator panel/PC project: Action Component Location Activating distribution of alarms in the project Alarm Distribution Server Insert ribbon tab Enabling external distribution of alarms Alarm Server Settings button/Alarm Distribution properties Enabling distribution of alarm groups or individual alarms Alarm Server Alarm Groups or Alarm Items tab Collecting Alarms for Distribution (Acting as Server) The following actions are required for using distributed alarm functions in another operator panel/PC project: Action Component Location Activating distribution of alarms in the project Alarm Distribution Server Insert ribbon tab Configuration of alarm distribution routes Alarm Distribution Server Receivers, Alarm Filter and Scheduler tabs Configuration of alarm distribution devices Alarm Distribution Server Configure Distribution Devices button (e-mail, TCP server, printer and/or SMS) 15.8.2 Adding an Alarm Distributor The Alarm Distributor can be added to the project from the Insert ribbon tab. The configuration pages are opened in the desktop area. Beijer Electronics, MAEN831L 288 Alarm Management Route A route defines a number of filtering rules for distribution of alarms. Multiple routes makes it possible to send different kinds of notifications to various receivers. Receivers Tab The receivers of distributed alarms for each route are set up on the Receivers tab. Address Book Click on the Address Book button to enter names, e-mail addresses and/or phone numbers of the persons that are to be available for selection for distributed alarm messages. The Show Selection/Show All button can be used to set up a filter of displayed items. Beijer Electronics, MAEN831L 289 Alarm Management The contents of the address book can be exported as a .csv file, and then be imported again after modification using the Import/Export button. Related information Filtering Items Receiver Selection Click on the Receiver Selection button to set up receivers of each alarm distribution route; via e-mail, SMS and/or printer. The selected receivers are displayed under Receivers. Alarm Filter Tab Filtering of each alarm distribution route can be configured on the Alarm Filter tab. The filtering operates using “and” logic, i.e. the alarm will only be distributed Beijer Electronics, MAEN831L 290 Alarm Management if all conditions are fulfilled. An empty string does not generate a filter condition (acts as a “wild card”). Parameter Description Alarm Name The alarm item to distribute. Alarm Group The alarm group of which alarm items are to be distributed. Alarm Text All alarms including this text will be distributed. Alarm Status(es) to distribute Selection of alarm to be distributed, based on alarm status. At least one status must be selected. Scheduler Tab Scheduling of each alarm distribution route can be configured on the Scheduler tab. Only alarms that occur between the start and stop times will be distributed. Beijer Electronics, MAEN831L 291 Alarm Management Parameter Description Period Select daily or weekly alarm distribution Day Select weekday, if Weekly was selected for Period Start Time/Stop Time Select start and stop time of the alarm distribution Name The name is automatically filled in based on start and stop time, and cannot be edited 15.8.3 Configure Distribution Devices Click the Configure Distribution Devices button to set up the different devices. Related information Modifying Alarm Distribution Settings in Runtime Alarm Variables Variables collected from the alarm server definitions can be included in distributed alarm information. Variables are enclosed by curly brackets; for example “Alarm text: {3}”. The following variables can be used: Number Variable Description 0 State The current state of the alarm 1 StateTime The time the alarm entered the current state 2 AlarmId A unique alarm ID 3 AlarmText Alarm item text 4 AlarmItemDisplayName Alarm item name 5 Count The number of times the alarm has occurred 6 ActiveTime The time the alarm became active 7 InactiveTime The time the alarm became inactive Beijer Electronics, MAEN831L 292 Alarm Management Number Variable Description 8 NormalTime The time the alarm became normal 9 AcknowledgeTime The time the alarm was acknowledged 10 AlarmGroupName Alarm group name 11 AlarmGroupText Alarm group text E-mail Device Parameter Description From Name The name of the sender of the e-mail From E-mail Address The e-mail address of the sender of the e-mail SMTP Server Name/IP The name or IP address of the SMTP server for sending e-mail Port The port number of the e-mail server Encryption Mode Select None, ImplicitSSL or ExplicitSSL Advanced Encryption Clear the check box to use only RSA encryption. Select the check box to use advanced encryption, like DSS, DHE and DH (1). Beijer Electronics, MAEN831L 293 Alarm Management Parameter Description Code Page The code page consists of a table of values that describes the character set for a particular language. The default code page in iX Developer is 65001 (UTF-8). Authentication Mode Select None or Authenticated Login User Name/Password User name and password if Authenticated Login was selected Retry Sending Number of retries if the e-mail cannot be delivered Time Interval Number of seconds between retries Subject The e-mail subject; Alarm Variables can be used Body The e-mail body; Alarm Variables can be used (1) Note that using Advanced Encryption has a negative effect on the performance on CE targets. Printer Device Parameter Description Buffer settings Set up the printers buffer settings Text Font Size The font size of the text to be printed Body The body of the printout; Alarm Variables can be used Related information Output Devices Group SMS Device To be able to send alarms via SMS, you have to purchase an SMS Gateway Service. Beijer Electronics, MAEN831L 294 Alarm Management Parameter Description Basic URL for web SMS The URL configuration string according to the SMS Gateway Service supplier that must include two variables: {0} for telephone number and {1} for SMS body Retry Sending Number of retries if the SMS cannot be delivered Time Interval Number of seconds between retries Body The SMS body; Alarm Variables can be used TCP Server Define the TCP server port. This must correspond to the port defined for the Alarm Distribution settings for the alarm server. 15.9 Alarm Distributor Viewer The Alarm Distributor Viewer is a debug tool, used for test and verification of the alarm distribution setup. Clicking the Settings button in runtime makes it possible to edit the address book and make settings for alarm distribution. Beijer Electronics, MAEN831L 295 Alarm Management Related information Modifying Alarm Distribution Settings in Runtime 15.10 Alarm Viewer The Alarm Viewer can be used to show more detailed alarm information than the alarm indicator. Alarms presented in the Alarm Viewer presents alarm texts from the alarm server. The alarm list shows the latest alarms. It is arranged in alarm group order. The default design of the alarm viewer depends on the size of the selected operator panel target, in order to allow full visibility and usability of the alarm viewer in the smaller operator panels. Settings such as font and button width are available in the Property grid. The colors of the Alarm Viewer object can be set from the Property grid. The colors of the different alarm statuses are set in the Alarm Server settings. If millisecond resolution is needed for the alarm timestamps, then this can be activated using Show Milliseconds in the General tab in the Ribbon or under Extended in the Property grid. Note: Some of the color effects require that Vista Style is activated under Extended in the property grid (default setting). Settings for the Alarm Viewer are available from the General ribbon tab while the object is selected: 15.10.1 Buttons Group Parameter Description Position Controls to which of the borders the buttons will line up Acknowledge Selected Acknowledges the selected alarm in the Alarm Viewer Acknowledge All Acknowledges all alarms in all Alarm Viewers Clear Removes all alarms in all Alarm Viewers Beijer Electronics, MAEN831L 296 Alarm Management Parameter Description Filter(1) Shows the filter configuration dialog for the selected Alarm Viewer Info Performs the action set by Alarm Event Info Requested Play/Pause Starts and pauses the selected Alarm Viewer Enable Context Menu Shows Alarm Viewer commands in context menu in runtime (1)Not supported in keyboard operated panels 15.10.2 Display Settings Group Parameter Description Configure Columns Selection and configuration of columns to display in runtime Filter Settings(1) Filter alarm statuses to display in runtime Max Number of Rows The maximum number of alarms to display. If the number of alarms does not fit in the object in runtime, scroll bars will be made available. If the number of alarms exceeds the maximum number, the oldest item will be deleted. Show Column Headers Shows/hides the alarm viewers column headers Show Summary Shows status information in the bottom of the Alarm Viewer (1)Not supported in keyboard operated panels 15.10.3 Alarm Viewer Commands In addition to using the Alarm Viewer buttons, the same functions are available using actions. Related information Script Property Grid 15.11Alarm Management in Runtime Alarm notification can be made in the following ways: Alarm Indicator Alarm Viewer Distribution via SMS, e-mail or printer via the Alarm Distributor 15.11.1 Alarm Acknowledgement An alarm can be acknowledged in the following ways: • right-clicking on the alarm line and selecting Acknowledge • selecting the alarm line and pressing on the Acknowledge Selected button Beijer Electronics, MAEN831L 297 Alarm Management • • pressing the Acknowledge All button to acknowledge all current alarms script actions Inactive alarms that have been acknowledged can be removed from the list by pressing the Clear button. 15.11.2 Sorting Pressing on the column heading in runtime sorts the alarm list by that column. This pauses the Alarm Viewer. 15.11.3 Filtering Pressing the Filter button in the Alarm Viewer opens a dialog that allows the user to enter a filtering profile to control which alarms to display in the alarm list. Filtering can be made based on any combination of the following conditions: • Alarm group: The first column in the filter window shows the alarm group name. Check the Enable box to show alarms from the group. • Alarm status: Displays alarms with the status corresponding to the checked status values. Note: The Alarm Filter will revert to the default settings if the Alarm Group is renamed. 15.11.4 Play/Pause Button The Alarm Viewer window can be paused from being updated with incoming alarms using the Play/Pause button. This allows the operator to inspect and sort the list without interference from any incoming alarms. The list also pauses when an alarm is selected. The alarm list starts updating again when • the Play button is pressed • the operator changes screen and returns to the same screen (or goes to another screen showing the Alarm Viewer) • after a 5 minute time-out 15.11.5 Info Button Pressing the Info button in the Alarm Viewer triggers the action specified in the Alarm Event Info Requested group on the Actions tab, when an item in the alarm server is selected. Any action in the list can be selected. Beijer Electronics, MAEN831L 298 Alarm Management This action will be applied for the individual alarm first. If no action is specified for the alarm, the action will be applied for the group. If no action is specified for the group, the action will be applied for the alarm server. Related information Alarm Groups Alarm Conditions Alarm Event Info Requested 15.11.6 Modifying Alarm Distribution Settings in Runtime It is possible to configure actions, or to use the Alarm Distribution Viewer to modify the address book and alarm distribution settings in runtime. Note: If the Alarm Distribution Viewer or alarm distribution actions are used in runtime, it is possible that alarm distribution settings have been modified. Next time you download a project to the operator panel, you will get a notification, and selection to overwrite panel settings or not. Related information Address Book Action Groups Output Devices Action Groups Beijer Electronics, MAEN831L 299 Security Management 16 Security Management Using security groups and passwords in the operator panel makes it possible to create a security system for the project. Operators can easily be assigned different authorizations in the project to restrict access to objects and functions. Security group information and passwords are stored in the project database. It is not necessary to use this function if unrestricted access is acceptable. The security function is a predefined component of the Project Explorer. 16.1 General Security Settings General settings for the security function are available by clicking on Security in the Project Explorer, selecting the Users tab and clicking the Settings button. Parameter Description Select action on access denied When a users’s access rights are not sufficient to e.g. modify an object or carry out an action, it is possible to display an access denied message or opening a login dialog. Selecting None performs no action. Select visibility When a user with insufficient access rights tries to affect an object, it is possible to specify visibility for those objects: Disabled: Only users with sufficient access rights can affect the object. The object is visible, but disabled, for users with insufficient access rights. Hidden: Only users with sufficient access rights can see the object. The object is invisible for users with insufficient access rights Normal: Only users with sufficient access rights can affect the object. The object looks normal for users with insufficient access rights Automatic logout Checking the box makes it possible to log out users automatically after a certain number of minutes of inactivity. After an automatic logout is executed, a screen jump to the start screen will be performed. Beijer Electronics, MAEN831L 300 Security Management Note: The automatic logout will not be carried out if a communication error (COM error) is active in the panel. After removing the communication error from the panel, the automatic logout will be performed within the specified time, calculated from when the communication was reestablished. 16.1.1 Password Rules Properties Allows setting a minimum number of characters for passwords. Related information Logging In and Logging Out 16.2 Security Groups Security groups are defined on the Groups tab of the security configuration page. When objects and screens have been set up with restricted access, the current user must belong to a specific security group in order to control or see the object or screen. 16.2.1 Creating Security Groups A new security group in a project is defined by clicking on Security in the Project Explorer, selecting the Groups tab and clicking Add. Beijer Electronics, MAEN831L 301 Security Management Parameter Description Name Any alphanumeric string, beginning with a letter (a-z, A-Z) Users Selection of users defined on the Users tab to be included in the group Users Invisible in Runtime When the box is checked, the users in the current group will not be available for selection from the Login dialog in runtime. It will still be possible to type in the user name and password to login. operator panel targets only: In order to enable the possibility to manually enter a user name and password, it is necessary to click the “Login” header on the Login dialog in runtime. Doing so and then clicking on the User—field will present the user with a keyboard on which a user name can be entered. 16.3 Users Users and passwords for login are defined on the Users tab of the security configuration page. Parameter Description Name Any alphanumeric string, beginning with a letter (a-z, A-Z) Password Any alphanumeric string; minimum length according to Password Rules properties. The password is converted to asterisks as you leave the password input cell. Description An optional description of the user Groups Selection of security groups for the user It is also possible to add users and change passwords directly in a running project, using the Show Users Dialog action. Beijer Electronics, MAEN831L 302 Security Management 16.3.1 Logging In and Logging Out The login dialog can be displayed in runtime by, for example, clicking a button, for which the Login action has been specified. It is possible to change password from the login dialog. The login dialog lists all users that have been configured for the current project, except for users in groups for which Users Invisible in Runtime was selected. It is also possible to configure a general behavior that brings up the login dialog any time a user tries to affect an object that is not within the current user’s access rights. This behavior is configured from the Properties window for the Security function, and selecting ShowLoginDialog for action on access denied. The Logout action is used to perform a logout. Users may also be logged out automatically after a certain number of minutes of inactivity by configuring Automatic logout in the Properties window for the Security function. Note: After logging out, the function Show Previous Screen for function keys and touch keys will be ignored. This is a security feature to prevent unauthorized persons from accessing screens protected by passwords. Related information General Security Settings Actions Ribbon Tab 16.4 Object Security and Visibility Object access can be restricted to a certain security group. Each security group contains a set of users and each user has an individual password. To be able to control an object with a security setting, the user must belong to the defined security group, and has to login. Object security is controlled by selecting the object, and then opening the Tag/Security group of the Home or General ribbon tabs. When no security is set for an object, the object will be available to everyone, i.e. login will not be requested. Beijer Electronics, MAEN831L 303 Security Management Note: Security has higher priority than dynamics. It is not possible to set security on function keys. The visibility and behavior settings specified in the security manager will be used when a security group is set but no explicit visibility is specified. The following options can be set: Visibility Description Default The object looks normal and is visible for anyone. Disabled Only users in the selected security groups can affect the object. The object is visible but disabled and greyed out, for users with insufficient access rights. Hidden Only users in the selected security groups can see the object. The object is invisible for users with insufficient access rights. Normal Only users in the selected security groups can affect the object. The object looks normal for users with insufficient access rights. Related information Tag/Security Group Function Keys Screen Security Beijer Electronics, MAEN831L 304 Language Management 17 Language Management iX Developer supports multilingual applications. Translation of texts and system texts can be performed directly in the application, or via export to a text file to be translated in other software. The file is imported to the application after translation. The application language can be changed in runtime, for example based on a tag value. 17.1 Setting Up Multiple Languages The multiple languages function is included in the application by default and is located in the Functions folder in the Project Explorer. The multiple languages configuration pages consist of the Texts, System Texts and Languages tabs. 17.1.1 Adding Languages 1. Click on the Multiple Languages function to open its configuration pages. 2. Select the Languages tab. 3. Add languages by selecting them from the drop-down list. The Use in Runtime setting makes the language available in runtime. Under Keyboard Layout, it is possible to select different layouts for the virtual keyboard, used for alphanumerical input in runtime. Beijer Electronics, MAEN831L 305 Language Management Note: The size of the virtual keyboards vary between languages. Examples of keyboard sizes (the values are approximative) • • • • • Arabic: 18 MB Chinese - simplified: 12 MB Hebrew: 6 MB Korean: 21 MB Latin alphabets: 0.1 MB. Each added language is assigned an index number. Index number 0 is reserved for the default language (the language that the application was first created in). The Add and Delete buttons can be used to add and delete languages. The Settings button allows connecting the language to a tag. This makes it possible to change the project language based on a changed value. Use the Show Selection/Show All button if you want to filter the languages in the current view. Related information Virtual Keyboard Filtering Items 17.2 System Texts System texts belong to functions (e.g. alarm server or security), to the system (e.g. time zone) and to objects (e.g. buttons or sliders), excluding text that the developer has entered. Select the System Texts tab in the Multiple Languages configuration pages to edit system texts. Several preinstalled translations of the system texts are available for selection: • English • German • French • Brazilian Portuguese • Chinese, traditional • Chinese, simplified Beijer Electronics, MAEN831L 306 Language Management Use the Show Selection/Show All button if you want to filter the current view. The Import/Export button can be used to export a system language to a text file for translation, and then import the language after translation. Note: Regional expressions for time, date, and weekdays are by default equal to the settings in the system account, but can to some extent be changed in the Date, Time and Region Group under the System Ribbon tab. Related information Filtering Items Exporting Languages Importing Languages Date, Time, and Region Group 17.3 User Texts Texts that have been added to objects by the developer are available from the Texts tab in the Multiple Languages configuration pages. The texts in the default language can be edited as well. Beijer Electronics, MAEN831L 307 Language Management Use the Show Selection/Show All button if you want to filter the current view. The Import/Export button can be used to export a system language to a text file for translation, and then import the language after translation. Note: When an object is connected to a text in the Text library, the object’s internal denomination (that is not displayed in runtime) will be presented in grey color in the Texts list, to indicate that editing the text will not affect the runtime project. Related information Filtering Items Exporting Languages Importing Languages Text Library 17.4 Text ID The Text ID function is available from the Text IDs tab on the Multiple Languages configuration page. To enable the Text ID function, check the “Text IDs enabled” checkbox on the Text IDs tab. Beijer Electronics, MAEN831L 308 Language Management The Text IDs tab consist of the following columns: Text ID, Default Text and one column for each language. The text in the column Default Text corresponds to the default language used in iX Developer. Clicking Add adds a row with a Text ID that is equal to the highest existing Text ID plus 1. Use the Show Selection/Show All button if you want to filter the current view. The Import/Export button can be used to export a system language to a text file for translation, and then import the language after translation. Related information Screen Group Filtering Items Exporting Languages Importing Languages 17.4.1 Text ID Browser If the Text ID function is enabled, all text box controls in iX Developer, including texts used in iX Runtime, will be replaced with the Text ID browser control. The Text IDs are accessed from a popup list by clicking the combo box arrow next to the Text ID browser control. The Text ID browser consists of two tabs, one for using Text ID and one for using Dynamic Text ID. • If the requested Text ID text is known in iX Developer, the Text ID tab should be used. • If the requested Text ID text is to be decided dynamically in runtime, then the Dynamic Text ID tab should be used. Text ID The popup list consist of the following columns: Text ID, Default Text and one column for each language. Right-clicking the column header opens up a context menu that lists all available columns. The context menu offers a possibility to configure which columns to be displayed in the popup list. Beijer Electronics, MAEN831L 309 Language Management Parameter Description Add Adds a row with a Text ID that equals to the highest existing Text ID plus 1 Reset Removes the Text ID connection and the text falls back to the previously unconnected text OK Connects the object text to the selected Text ID Cancel Closes the popup list. No changes are made. When an object is connected to a Text ID, the displayed text in the Text ID browser control will be presented in the following manner: “Text ID – Text” Text corresponds to the default language used in iX Developer. When opening the popup list, the text field acts as a filter for the popup list. The object itself will only show the corresponding text, without Text ID, which is disabled for editing. When the language in iX Developer or in iX Runtime is changed, a text connected to a Text ID will be updated to the corresponding text entered in the Text IDs tab. Dynamic Text ID The Dynamic Text ID tab consist of two tabs — Tags and Aliases — and acts as a normal tag/alias selector. Beijer Electronics, MAEN831L 310 Language Management In addition, it is also possible for the graphical components to set a Default Value Used in Design Mode. This value will be displayed in the object in designtime, but not be used in runtime. Parameter Description Add Adds a tag/alias Reset Removes the Dynamic Text ID connection and the text falls back to the previously unconnected text OK Connects the object text to the selected tag/alias Cancel Closes the popup list. No changes are made. When an object is connected to a tag, the displayed text in the Text ID browser control will be presented as “TagName”, where TagName is the name of the tag. When an object is connected to an alias, the displayed text in the Text ID browser control will be presented as “#AliasName”, where AliasName is the name of the alias. When configured, the tag value in runtime represents the key (Text ID) to the Text ID table. The displayed text is the corresponding translation for current language for the given key (Text ID). If the tag value is not found as a key in the Text ID table, an empty text is displayed. 17.5 Automatic Translation iX Developer includes a translation tool that uses Microsoft Translator (www.microsoft.com/translator) or Google Translate (translate.google.com) to offer quick translations of user-defined texts or system texts. Due to license requirements you have to sign up for an account at one of the translation providers to get the required Beijer Electronics, MAEN831L 311 Language Management keys. If no keys are entered iX Developer uses Microsoft Translator to translate a limited number of words per month. Note: Automatic translations provide limited functionality; especially combination of words or words with synonyms may be returned as incorrect translations. The translation tool is available by clicking Translate on the Texts or System Texts tabs of the Multiple Languages configuration pages. Each language is translated separately. Beijer Electronics, MAEN831L 312 Language Management Parameter Description Translation Provider Select translation provider among available providers. Microsoft Translator Client Id Type a Client Id. You need to get an account on Windows Azure Marketplace and subscribe to Microsoft Translator API to get a Client Id and a Client Secret. Microsoft Translator Client Secret Type a Client Secret key. You need to get an account on Windows Azure Marketplace and subscribe to Microsoft Translator API to get a Client Id and a Client Secret. Google user Key Type a Public API Access Sever key. You need to create a Google Developers account and use the product Google Translate API to get the key. Save Key Saves the Microsoft Translator Id and Client Secret or the Google user Key in your user profile on the development PC. Translatate from Selection of source language for the translation operation; the default language (reference language) or one of the languages that have been added to the project. Translate to Selection of target language for the translation operation. Reference Language Select reference language; i.e. the language in which the project was created. Only translate items that have not yet been translated Clear the check box to replace also already translated items in the project. Note: Since the translation tool accesses online translation providers, the translation operation may sometimes be paused or delayed due to an excess of online users. 17.6 Exporting Languages Languages can be exported to a text file for e.g. translation. 1. Select Export from the Import/Export button. 2. Specify format, location, delimiter (for text file format) and language selection, and click OK. Beijer Electronics, MAEN831L 313 Language Management Parameter Description Format Select format of the exported file; text file or Excel file. Path Browse to the location for the exported file Delimiter If Text file format was selected, select delimiter from the drop-down list; comma, semicolon, space or tab Languages Select which languages to export The exported file will also include the default language. Note: To display certain characters (such as Chinese or Arabic) correctly in Excel select Unicode (UTF-8) in the Excel import dialog. Note: In order to import or export .xls-files Microsoft Excel must be installed. 17.7 Importing Languages After translation or other editing, the updated language file can be imported to the project again. 1. Select Import from the Import/Export button. 2. Specify location and language selection, and click OK. Beijer Electronics, MAEN831L 314 Language Management Parameter Description Format Select format of the file to import; text file or Excel file. Path Browse to the location of the file to import Languages Select which languages to import Import Strategy Selecting Key performs the import according to the Designer and Object columns in the multiple languages configuration page. Reference Text performs the import according to the Text column. If you have changed the texts of the default language after exporting the languages, it is recommended to select Key. The imported file will also include the default language. Note: Make sure to make a backup copy of the project before importing languages, in case there are mismatches between the existing and the imported languages. Note: In order to import or export .xls-files Microsoft Excel must be installed. Beijer Electronics, MAEN831L 315 Audit Trail 18 Audit Trail The Audit Trail function makes it possible to track operator actions. The Audit Trail database can be exported in csv format using the Database Export action. It is recommended to use the database export method rather than the backup method. Related information Database Export 18.1 Logging Strategies To meet FDA (Food and Drug Administration) demands, it is possible to log actions in a strict manner. FDA logging implies that no log entries will ever be overwritten. If the size of the audit trail database is close to being exceeded (approximately 80% of the limit), a notification window will be displayed, where the user is warned, and demanded to export the data. Alternatively, the size of the Audit Trail database can be increased. If the limit of the database is exceeded, the logging is terminated and the operator panel will be blocked for any further operator actions. This is indicated by an error message. With circular buffering, the oldest log entry is overwritten when the database is full. No warning message is displayed when reaching the limit of the database. The database can be exported using an action, regardless of logging strategy. The log entries are saved in the Audit Trail database, and the information can be displayed using the Audit Trail Viewer. 18.2 Using the Audit Trail Function The function is enabled by selecting Audit Trail from the Insert ribbon tab. The configuration page opens in the desktop area. All actions available for logging are listed. It is possible to log all or only some actions. It is also possible to log tag changes only (without logging actions). Beijer Electronics, MAEN831L 316 Audit Trail Parameter Description Log All/Log None Click the buttons to quickly select all or no actions from the list Logging strategy Select FDA or Cyclic Buffering Max size of database The maximum size of the Audit Trail database Value change on tags, performed by user actions, can be logged by selecting Log to Audit Trail in the tags configuration page. This option is enabled only if the audit trail function is activated in the project. Related information Others in Adding Tags section 18.2.1 Audit Trail Description It is possible to add a description for each object that is logged to the Audit Trail database using the Property Grid. The description will be saved to the Description column of the Audit Trail database, and is limited to 255 characters. Beijer Electronics, MAEN831L 317 Audit Trail 18.3 Audit Trail Viewer The Audit Trail Viewer is selected from the Objects group on the Home ribbon tab. It displays the information from the Audit Trail database. Selecting Configure Columns on the General tab when the Audit Trail Viewer object is selected makes it possible to choose and configure columns to display in runtime. 18.4 Audit Trail Export An audit trail database can be exported as a .csv file and saved to a USB stick, an external memory card or to the project files folder. The export is configured through the Database Export action available from the Database action group. Note: The export will not delete the audit trail log from the project. Related information Action Groups Beijer Electronics, MAEN831L 318 Audit Trail 18.4.1 Audit Trail Export from an iX panel Target It is possible to select export to USB, export to external memory card or export to the Project Files folder, and also setting another name of the export file. It is also possible to select the requested delimiter in the .csv file (comma or semicolon). 18.4.2 Audit Trail Export from a PC Target It is possible to select Browse and Select an export path, Export to Path or the Export to Project Files folder, and also setting another name of the export file. The Browse and Select an export path option allows browsing for desired export destination in runtime. This may be useful if available folders in runtime are unknown when designing the project. Beijer Electronics, MAEN831L 319 Audit Trail Select the Export to Path option when you want to set the path when designing the project. If the pre-defined path is not valid in runtime, the operator may browse the PC environment by clicking a browse button. It is also possible to select the requested delimiter in the .csv file (comma or semicolon). Beijer Electronics, MAEN831L 320 Text Library 19 Text Library With the text library function, text tables can be created, where values are linked to texts. The text library function can be used for presentation of each sequence step in sequence control. Another possible application is to present error codes, where an analog signal generates error codes connected to texts in a text library. The function can also be used to give analog values specific values, depending on the selected texts. The text library function is activated by selecting it from the Insert ribbon tab. Texts and groups can be added from the Add button. It is also possible to add start and end values for each message, that makes the text in the connected object change depending on the value of the tag. Note: The Start Value and End Value can only be given as integers. This could result in problems updating the text when the input value is entered with decimals, especially if the input value jumps in and out of the given range. If this is the case, use the Configure Text function instead. This is available under the General tab when the object is selected. Note: A default text that has been entered in Configure Text will not be presented outside a range that has been defined in the Text Library. In this case, use Configure Text to define all text presentations for the object. Related information HMI Controls Beijer Electronics, MAEN831L 321 Text Library 19.1 Connecting Objects to Text Library Texts Perform the following steps to connect an object to a text library text: 1. Select the object on the screen. 2. Click on General on the Dynamics tab. 3. Select the Text property, and select Text Library Group Converter. 4. Browse to the tag and select the text library group. The object will now present the texts from the text library instead of the value. 19.2 Exporting and Importing Text Library Texts The texts in the text library can be exported and imported using the Import/Export button in the Text library configuration page. The procedure is similar to exporting and importing tags. Related information Importing and Exporting Tags Tag Import Example Beijer Electronics, MAEN831L 322 Database Export 20 Database Export Some databases in the project can be exported as a .csv file to a USB stick, an external memory card or to the project files folder. The following databases are available for csv export: alarm server, audit trail, data logger and trend viewer. Database export is not supported during project simulation. Tip: To display certain characters (such as Chinese or Arabic) correctly in Excel, import the csv file as text, and set the file origin to Unicode (UTF-8). 20.1 Setting up Database Export The export is triggered via an action, Database Export, in the Database group. Individual database tables may be selected for export by clicking the + sign. The default properties for the database export is exporting the database to the project files folder with the name as given in the project. Note: To facilitate exporting multiple databases at once, configuring multiple actions is recommended. Clicking the ... button next to the selected database opens a dialog from which the default database export properties may be altered. Beijer Electronics, MAEN831L 323 Database Export 20.1.1 Database Export from operator panel Target It is possible to select export to USB stick or external memory card, and also setting another name of the export file. Leaving the Overwrite box unchecked adds date and time to the export file name, thus avoiding overwriting an existing export file. Note: When exporting from a CE target (iX TxA or iX TxB operator panel) note that the options External Memory Card and USB are not available on a PC. If the Target Type in the project is changed from a CE target to a PC the selection is cleared and has to be made again. 20.1.2 Database Export from PC Target Beijer Electronics, MAEN831L 324 Database Export It is possible to set another name of the export file. Leaving the Overwrite box unchecked adds date and time to the export file name, thus avoiding overwriting an existing export file. The Browse and Select an Export Path option allows browsing for desired export destination in runtime. This may be useful if available folders in runtime are unknown when designing the project. Select the Export to Path option when you want to set the path when designing the project. If the pre-defined path is not valid in runtime, the operator may browse the PC environment by clicking a browse button. Note: When exporting from PC to a CE target (iX TxA or iX TxB operator panel) it is not possible to use paths to an External Memory Card or a USB. If the Target Type in the project is changed from a PC to a CE target the selection is cleared and has to be made again. Related information Actions Ribbon Tab Simulate Multiple Actions Beijer Electronics, MAEN831L 325 iX panel System Software 21 iX panel System Software In the operator panel, iX Runtime comes pre-loaded on delivery. iX Runtime can be replaced, that is, updated to a newer version, either via PC or via external memory card. An Image Loader is used to download system programs to the operator panel via a PC. The Image Loader is available from the web site. Note: The Image Loader requires that .NET Framework 2.0 is installed on the PC. Note: When updating an operator panel, it is important to ensure that power is not interrupted during the transfer. It is not recommended to downgrade the system software to a previous version. 21.1 Welcome Screen When the operator panel is started, the welcome screen is displayed. The following items about the operator panel are listed: • Size of internal memory card, if applicable • IP address • Image version If there is a project in the panel, it will be loaded automatically. If there is no project in the panel, touching the screen will display the Service menu. If there is an SD card inserted into the panel, and the project on the SD card differs from what is saved in the operator panel, then the user is asked if the project and IP-settings should be restored. Related information Service Menu 21.2 Service Menu The service menu for the operator panel can be accessed before a project is downloaded. 21.2.1 Service Menu in an Empty Panel When no project is loaded in the panel memory, the panel will boot, displaying the Welcome screen. • Press anywhere on the panel display to enter the service menu. Beijer Electronics, MAEN831L 326 iX panel System Software 21.2.2 Service Menu in iX TxA/iX TxB Panels Perform the following steps to enter the service menu: 1. Apply power to the panel. 2. When the hourglass appears, press a finger on the screen and hold for approximately 20 seconds. 3. If the service menu is password protected, you will be prompted for a pin code. Enter pin code. 4. The touch calibration screen will display the following message: “Tap anywhere on screen or touch calibrate will start in 10 seconds.” 5. Press finger once again to enter the service menu. 21.2.3 Service Menu Options IP Settings Select to obtain an IP address automatically via DHCP, or specify an IP address. The IP address can also be set during project transfer. For panels with two Ethernet ports, select port according to the illustration below. The port that is currently connected is recognized by a *. Date/Time Use the Date/Time Settings dialog to set the time zone, date and time for the panel. Erase Project The erase function will detect if the project is located in the panel memory or on a memory card. Pressing Erase Project will completely remove the project and all its components from the panel memory/the memory card. Copy Project Selecting Copy Project will copy a project from a connected memory card to the panel memory. If there is already a stored project in the target panel, the copy command will result in a dialog asking if a backup of the existing project should be saved on the memory card. Beijer Electronics, MAEN831L 327 iX panel System Software If IP settings are stored in the memory card, a dialog will appear, asking if the IP settings should be applied to the target panel. It is necessary to reboot the panel for the IP address to be updated. The copy function can also be used to copy a project from a USB memory, however without the possibility to transfer IP settings. Touch Calibrate Select Touch Calibrate if the touch screen needs to be calibrated. Follow the instructions on the screen to perform a calibration. Close Press Close to exit the service menu. 21.3 iX panel Upgrade The operator panel can be upgraded using the Image Loader application. 21.3.1 Requirements Updating of the operator panel system program requires the following: • A PC with Image Loader application. • An Ethernet connection between the PC and the operator panel. • The operator panel IP address. • The Image file from the web site. 21.3.2 Transfer Image 1. Double-click on the executable Image Loader file to start the transfer program. 2. Follow the instructions. Transfer procedure in iX TxA panels The image transfer procedure is completely menu-driven. The operator panel will be ready for transfer directly afterwards, provided that all steps are performed and completed. The following steps outline the transfer procedure: 1. Disconnect the power supply from the panel. 2. Press a finger on the screen and apply power 3. Start the Image loader software on the computer, and follow the instructions on screen. 4. Select the operator panel to upgrade by entering its IP address. 5. Click Upgrade. 6. When the upgrade is finished, disconnect power from the operator panel. 7. Reconnect power to the operator panel. 8. Once the system files have been updated, a project can be downloaded to the operator panel. Beijer Electronics, MAEN831L 328 iX panel System Software Note: When updating an operator panel, it is important to ensure that power is not interrupted during the transfer. Transfer procedure in iX TxB panels The image transfer procedure is completely menu-driven. The operator panel will be ready for transfer directly afterwards, provided that all steps are performed and completed. The iX TxB panels can be updated either by using a USB flash drive, or using the Ethernet connection to transfer the files. Transfer procedure using a USB flash drive 1. Start the Image loader software on the computer. 2. Plug an empty USB flash drive into the computer running the Image loader software. 3. Select the USB flash drive in the Image loader software. 4. Click Create. 5. Disconnect power from the operator panel 6. Plug the USB flash drive into the operator panel. 7. Reconnect power to the operator panel. 8. Once the system files have been updated, any existing project in the panel will be started. Note: When updating an operator panel, it is important to ensure that power is not interrupted during the transfer. Transfer procedure using the Ethernet connection 1. Start the Image loader software on the computer. 2. Select the operator panel to upgrade by entering its IP address. 3. Click Update. Any project running in the panel will be stopped, and the update sequence will begin. 4. When the upgrade is finished, disconnect power from the operator panel. 5. Reconnect power to the operator panel. 6. Once the system files have been updated, any existing project in the panel will be started. Note: When updating an operator panel, it is important to ensure that power is not interrupted during the transfer. Beijer Electronics, MAEN831L 329 Multiple Controllers 22 Multiple Controllers It is possible to use multiple drivers with one operator panel. This means that the operator panel can communicate with different controllers simultaneously. The controllers can be connected to the serial ports on the operator panel and via the Ethernet port. Note: If the same tag is connected to addresses in more than one active controller, there is no way to control from which controller the value is read in runtime. 22.1 Adding a Controller Click on Tags in the Project Explorer, select the Controller tab and click Add to add a new controller in the current project, and select which controller model and driver that is to be used. Tags are added and controller is selected on the Tags tab. Related information Adding a Controller Beijer Electronics, MAEN831L 330 Multiple Controllers 22.1.1 Addressing Addressing of the tags in the controllers is carried out according to the help file for each driver. When assigning a tag to an object, all tags, regardless of controller connection, are available for selection. 22.1.2 Examples The following examples show configurations where multiple drivers are used in the operator panel. The operator panel communicating with one controller and one frequency converter. Beijer Electronics, MAEN831L 331 Multiple Controllers The operator panel communicating in series with one controller via Ethernet and with controllers of another make. The operator panel communicating with two controllers of different makes via Ethernet. Beijer Electronics, MAEN831L 332 Troubleshooting 23 Troubleshooting This section describes tools to use in case of unexpected behavior in iX Developer. 23.1 Project Build Failure If project build fails, check that the absolute path to the project, including its components, does not exceed 260 characters. 23.2 Backup Project Issues Make sure that project that is fetched using the Backup command is identical to the current iX Developer project; i.e. has the same name and is of the same size. Related information Upload Database 23.3 Invalid Names If using system device names when naming objects such as controllers, screens, recipe managers, data loggers and script modules, an error message will be displayed, stating that this is an invalid name. Examples of system device names: AUX, COM1, CON, LPT3, NUL, PRN. Related information Name Group 23.4 Adobe Reader not Recognized In order for the PDF Viewer object to recognize that Adobe Reader is installed in the development PC as well as in the target, the setting Display PDF in browser has to be enabled in Adobe Reader. 1. Open Adobe Reader and select Edit/Preferences/Internet. 2. Check the Display PDF in browser box. 23.5 Expression Cannot Be Found If an error indicating that an expression cannot be found is generated at project validation, make sure that objects inserted from the Component library uses global expressions only. Related information Using Expressions Beijer Electronics, MAEN831L 333 Troubleshooting 23.6 Performance Issue Related to Graphics Card When designing iX Developer projects, the CPU load may suddenly increase when performing actions such as moving objects on the screen or hovering over buttons, depending on which graphics card is used. This problem may be solved by adjusting the hardware acceleration of the graphics card. In Windows XP, follow the steps below to make needed adjustments: 1. Double-click on the Display icon in the Windows control panel. 2. Select the Settings tab and click on the Advanced button. 3. Select the Troubleshoot tab and decrease or turn off the hardware acceleration by dragging the slider. Note: Should you experience problems with the graphic rendering, make sure the latest graphical driver is used. If the latest graphical driver is used and rendering issues still occur, upgrade to a better graphics card. Related information System Requirements and Limitations 23.7 Error Related to Third Party Controls When opening a project including third party controls, the third party controls have to be included in the iX Developer third party control folder. Otherwise the project may terminate, or unexpected error messages may be displayed. When referencing third-party assemblies (.dll files), make sure not to place two files with the same fully qualified assembly name in the same folder, otherwise errors may occur. 23.8 Performance Issue When Navigating in Script Tree View If you are working with a large iX Developer project, especially a project with many tags and alarms, you may find that navigating the script tree view is slow. The performance can be improved by saving the project. Related information Script Beijer Electronics, MAEN831L 334
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
advertisement