ArchestraObject Toolkit Development Guide
ArchestraObject Toolkit Development Guide
User’s Guide
MAEN832D, 2012-03 English
Foreword
Foreword
The iX Developer software is used to configure iX Panels and PC operated control
applications, including applications for IPCs (Industrial PCs).
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 is based on an example project that describes a step-by-step design
of a project for iX Developer.
For more detailed information, please refer to the iX Developer help file.
Contents
1 Introduction ............................................................. 5
1.1 Controller ........................................................ 5
1.1.1 Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Manual Structure ................................................ 5
2 Installation and Start .................................................... 6
2.1 System Requirements ............................................ 6
3 New Project .............................................................. 8
3.1 Creating a New Project .......................................... 8
3.2 Desktop Area ..................................................... 9
4 Controller Tags .......................................................... 11
4.1 Adding Tags ...................................................... 11
4.2 Saving the Project ................................................ 12
5 Editing Objects .......................................................... 13
5.1 Adding Objects .................................................. 13
5.2 Running Project Test ............................................ 14
6 Navigation and Screen Jumps .......................................... 15
6.1 Screen Navigation ............................................... 15
6.2 Background Screen .............................................. 16
6.3 Running Screen Navigation Test ................................ 18
7 Trend Viewer ............................................................ 19
7.1 Adding a Real-Time Trend Viewer .............................. 19
7.2 Running Real-Time Trend Viewer Test ........................ 20
7.3 Trend Viewer History ............................................ 20
7.4 Running Historical Trend Viewer Test ......................... 20
8 Alarm Management ..................................................... 21
8.1 Alarm Indicator .................................................. 21
8.2 Alarm Server ...................................................... 22
8.3 Alarm Viewer ..................................................... 23
8.4 Running Alarm Test ............................................. 23
9 Recipes ................................................................... 24
9.1 Creating Recipe Tags ............................................ 24
9.2 New Objects ..................................................... 26
9.3 Recipe Items ...................................................... 26
9.4 Saving a Recipe ................................................... 27
9.5 Loading a Recipe ................................................. 27
9.6 Recipe Data ...................................................... 27
9.7 Running Recipe Test ............................................. 27
10 Dynamics ................................................................ 28
10.1 Creating an Object ............................................... 28
10.2 Resizing an Object ............................................... 29
10.3 Coloring an Object .............................................. 30
10.4 Running Dynamics Test ......................................... 30
11 Script ..................................................................... 31
11.1 Adding Objects .................................................. 31
1 Introduction
The iX Developer software is used to configure iX 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.
1.1 Controller
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.
1.1.1 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.
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.
iX Runtime
Parameter Recommendation
RAM 1 GB
Processor 1.3 GHz or higher
Operating system Microsoft Windows XP SP3
Microsoft Windows 7
Microsoft Windows Vista
Graphic card Pixel shader 3 or higher ensures full graphic acceleration
Starting iX Developer
The installation creates an icon for the configuration tool in the group named iX
Developer in Windows Start menu.
Click on Start/All Programs/ iX Developer/ iX Developer to start the
configuration tool.
Help
Help topics are provided when pressing F1 while iX Developer is running.
3 New Project
Objective:
• Creating a new project.
• Getting familiar with the tool windows and the layout of the desktop area.
Indication in
picture Desktop area component Described in section
A Project Explorer Project Explorer
B Ribbon tabs Ribbon Groups and Controls
C Control groups
D Controls
E Quick Access Toolbar Quick Access Toolbar
F MiniToolBar MiniToolBar and ContextMenu
G ContextMenu
Project Explorer
When a new project is opened, an empty screen is active in the desktop area. The
Project Explorer is docked to the left.
4 Controller Tags
Objective:
• Defining a tag list for the project.
• Saving the project.
Note:
The data type for the tag can be used as a presentation format in some situations; for
example to show the correct engineering unit when using scaling. DEFAULT follows
selection made for the Controller data type.
The D0 tag will be used in the next section to control and observe a controller tag
value in a screen.
5 Editing Objects
Objective:
• Inserting a slider and a meter.
• Learning how to format and align objects.
• Testing the project; controlling and observing a controller tag value with objects
in a screen.
Slider
1. Select a slider from the Objects group. You may need to expand the Objects
group by clicking the small arrow at the lower right in order to select the slider.
Place it just below the circular meter on the screen.
2. Right-click on the slider. Click on Select Tag... in the MiniToolBar. Select
the MeterAndSlider tag by clicking on it in the drop-down menu, and then
click OK.
Align
An object that is dragged snaps into position relative to other objects.
1. Slowly drag the slider up and down.
Notice that the slider snaps into position at a short distance below the meter.
2. Slowly drag the slider to the left and to the right.
Notice that the slider snaps into position and that snap lines appear when the
slider is aligned with the meter.
3. Arrange the slider in a position closely below the meter and with its left edge
aligned with the left edge of the meter.
Resize
1. Make a multiple selection of the two objects (point at an empty area in the
screen and drag diagonally across the objects).
A multiple selection (group) has one primary object. The primary object has
an orange frame; the other objects have blue frames. When enforcing format
commands on the group the primary object is used as a template.
If the meter is not the primary object then:
2. Click on it to change the primary selection of the group to the meter.
Now adjust the width of the objects in the group:
3. Click on the Arrange control, located in the Format group of the Home tab,
and select Make Same Width.
Changing Appearance
1. Select the slider on Screen1.
2. Click on the Quick Styles control in the Format group and select a new color
style.
3. Click the small arrow at the lower right of the Format group in order to make
additional settings for outline, shadow/fill effects etc.
4. Select the meter on Screen1.
5. Select the General ribbon tab and locate the Style group. Try the different
pre-defined styles and evaluate which style suits your preferences the best.
Objective:
• Adding new screens and setting up screen jumps with buttons.
Adding a Screen
1. Point at Screen1. Click and drag a connection from Screen1 to anywhere in
the Navigation Manager area.
A new screen appears (Screen2). A button labeled Screen2 appears in the
upper left corner of Screen1.
Screen Jump
1. Click and drag a connection from Screen2 to Screen1 in the Navigation
Manager.
A button labeled Screen1 appears in the upper left corner of Screen2.
Background Screen
1. Make sure that Screen3 is open for editing on the desktop.
2. Select a Button from the Objects group (located on the Home tab), and place
it in the lower left area of Screen3. Label the button “Start Screen”.
3. Keep the button selected and click on the Actions tab. Select Show Start
Screen, located in the Screen group, from the drop-down list for the Click
action.
7 Trend Viewer
The trend viewer function stores register information from the controller in
the operator panel. Real-time trend viewer as well as historical trend viewer is
available.
Objective:
• Adding a trend viewer object with two curves.
Curves
1. Click on Tags in the Project Explorer and add a tag. Type “Counter” in the
Name field and connect it to C0 in Controller1.
C0 is a counter that counts from 0 to 100 and back to 0 with a frequency of 1
Hz.
2. Open Screen1, make sure that the trend viewer object is selected, and click
Edit Curves on the General tab.
3. Add a curve and connect it to the same tag that you used for the slider in
Screen1.
4. Add a second curve and connect it to the Counter tag you just added, and
select another color for this curve.
5. Click OK.
2. Test that you can switch to the historical trend viewer with the Trend Viewer
History button.
3. Go back to real-time trend viewer by clicking on the trend viewer object.
8 Alarm Management
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.
Objective:
• Configuring the alarm list and designing an alarm object.
Alarm Groups
The Alarm Groups tab is used to set up multiple alarm groups, e.g. when a project
needs separate management of alarms for independent functions. In this example,
the default alarm group is used.
Alarm Items
1. Select the Alarm Items tab. Add alarms based on tags in the controller tag list.
2. Define a digital tag (named BoolAlarmTag) directly in the alarm list by
clicking Add in the tag selection list.
This tag will be internal unless connected to a controller on the Tags
configuration page, and using an internal tag works just fine for this example
project. See chapter Internal Tags for information.
3. Leave the columns for Acknowledge Required and History checked. Leave
the other fields empty.
4. Make sure that all alarm tags can be controlled from the project screens or
that they will be triggered by other mechanisms (the counter will trigger
AlarmItem2 and AlarmItem3 after 10 and 20 seconds respectively).
5. Place a button to the left of the trend viewer object. Label the button “Set
Alarm”.
6. Keep the button selected. On the Actions tab, select Toggle Tag, located in
the Controller group, from the drop-down list for the Click action. Select
BoolAlarmTag in the Select Tag field.
3. Press the Ack All button and observe the Alarm Indicator.
4. Make sure that all alarm tags are inactive. Press the Ack All button to
acknowledge all alarms.
5. Press Clear to remove all alarms of normal status (acknowledged and inactive).
9 Recipes
Recipes are used to set or save a predefined group of tags in one operation.
Objective:
• Creating and using recipes to change multiple values.
Adding a Screen
1. Open the Navigation Manager. Point to Screen1 and drag a connection to an
empty spot in the screen navigation area.
Show 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 in the desktop area, or by using the keyboard shortcut Ctrl + D.
1. Press Ctrl + D on the keyboard to check that the tags are correctly bound to
the sliders in the screen.
3. Open Screen4 for editing. Place a new button next to the set of sliders. Label
the button “Load Book”.
4. Select Load Recipe in the Click drop-down list.
5. Select Recipe1, and select Book for recipe data.
10 Dynamics
Dynamic object properties are used to move and resize objects based on controller
tag values.
Objective:
• Changing size and color of an object based on tag value changes.
11 Script
Scripts are used to manage functionality for objects. Scripts are written in C#.
Objective:
• Inserting a button and text box.
• Writing a script for the button to affect the text in the text box.
4. Double-click on the Click node to start typing script code for the Click event
for Button2.
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.
12 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.
Objective:
• Writing a script to perform a calculation of the area using the length and width
tags.
• Showing the result with an internal tag.
Area Tag
1. Add a tag and label it “Area”. Change the data type to FLOAT. The data type
for this tag and the following tag is set for the tag; not for the controller.
Calculation Tag
1. Add a tag and label it “Calc” and select the data type BIT.
Leaving the Controllers column empty keeps the tag internal, not connected
to a controller.
2. Switch to the Script view mode and locate the Calc tag. Click on the Calc tag
node and double-click to open the Value Change node.
To access data and methods in C# control code the keyword “Globals” is used.
The example uses explicit type casting (“(double)”), which is necessary for an
overloaded operator (multiplication).
4. Use a Text object to place an explaining text (e.g. “Area:”) in connection with
the analog numeric object.
Calculation Trigger
1. Open Screen4 for editing. Select the Rectangle object.
2. Go to the Actions tab and select Toggle Tag, located in the Controller group,
from the drop-down list for the MouseDown action. Select the Calc tag.
13 Object Browser
An overview of all objects included in a screen can be displayed in the Object
Browser.
Objective:
• Positioning objects in depth
• Locking objects
• Making objects invisible
14 Multiple Texts
Text objects can be used to display textual information, and can also reflect
changes in controller tags.
Objective:
• Presenting a variant text message that reflects the changes of the calculated area.
With the default setting for the text object, Autosize, there is no need to adjust
the object in order to make the longest string fit in runtime.
15 Security
Access to objects and actions in the project can be limited using security groups
and user passwords.
Objective:
• Adding user names and setting passwords.
• Setting up login and logout control.
• Restricting access of recipe handling.
Security Groups
Security is handled by dividing users into security groups. These are configured on
the Groups tab. In this example, the two default security groups, Administrators
and Operators, are used.
Users
1. Select the Users tab on the Security configuration page.
2. Add a user that belongs to both security groups; Administrators and
Operators.
3. Add another user that belongs to Operators group only.
Note:
The password is converted to asterisks as you leave the password input cell.
Administrators
1. Right-click on the Save Recipe button and select Administrators for Select
Security Groups.
Users
1. Right-click on the Load Recipe button and select Operators for Select
Security Groups.
8. Log out.
9. Test that it is no longer possible to load or save recipes.
16 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.
Function keys can also be configured as local function keys, which means that they
are applicable individual screens. In this example, global function keys are used.
Objective:
• Programming actions for function keys to change screen, set controller tag values,
recipe management and display the login dialog.
• Programming function keys to execute scripts.
Show Screen
1. Click on ... under Action on the row for function key F1 to open the
Properties dialog. Click Add and select Show Start Screen, located in the
Screen group, from the New Action dialog.
2. Click on the row for function key F2. Select Show Screen as action, and
Screen2 from the screen drop-down list.
3. Set up function key F3 to show Screen4.
Security
1. Click on the row for function key F4. Select Login, located in the Security
group, as action.
Recipe
1. Set up function key F8 to load Recipe1, and function key F9 to save Recipe1.
Leave Recipe data empty.
Area Calculation
Program a function key with the area calculation for the rectangle object:
1. Click on the row for function key F11. Select Script view mode by clicking on
the Script tab at the bottom of the screen.
2. Click on the F11 node, and double-click on its KeyDown node.
3. Calculate the area on the KeyDown event with this code:
Globals.Tags.Area.Value =
(double) Globals.Tags.Length.Value *
(double) Globals.Tags.Width.Value /100;
Using a function key script eliminates the need for the separate trigger tag
(Calc).
17 Cross Reference
The Cross Reference tool provides an overview of where a specific tag is used in
the current project.
Objective:
• Locating all occurrences of a specific tag quickly.
Beijer Electronics AB
Box 426
201 24 Malmö, Sweden
www.beijerelectronics.com / +46 40 358600