Академический Документы
Профессиональный Документы
Культура Документы
Contents of course
General HW-overview
DEMO-application
iX Developer Development
iX Developer Runtime
Handling of:
Screens
Objects
HMI Controls
Media Controls
Windows Controls
Controllers
Recipes
Alarms
Security
Data loggers/trends
Scripting
Exercises
iX is the innovative HMI solution allowing you to express your ideas with a
strong combination of state-of-the-art graphics and solid HMI functionality.
Enjoy the experience of smarter design and engineering tools, and a truly
open platform.
Key messages:
State-of-the-art graphics
Solid HMI functionality
Smarter design and engineering tools
Truly open platform
State-of-the-art graphics
State-of-the-art graphics
When we say state-of-the-art graphics, we mean:
Vector-based graphics
Component library
Navigation controls
Graphical effects
Popup screen
Screen carousel
Dynamics and dynamic objects
Drawing objects
Button styles
Recipes
Trends
Data logging
Multiple languages
System tags
Internal variables
Index addressing
Scheduler
Audit trail
Remote access
Security
Cross reference
Templates
Quick styles
Object browser
Multiple actions
Simulation
Property grid
Styles
Navigation manager
Tag conditions/actions
Debugging via MS
Expressions
Auto Translate
Import/Export
Import tags
C# scripting
OPC
SQL connectivity
3. party components
Product position
Price
SCADA systems
iX Panels
iX Runtime
Traditional HMI
Functionality / Performance
iX Panel Pro
12", 15", 17", 19", 19" with stainless steel front,
Box PC version
Ease of use
Infrastucture
Environment
Marine
Energy
OEM
HMI PRODUCTS
Efficiency
Building Automation
Economy
We
create
solutions
forand
every
iX helps
Peter
Blomberg
his need
References
Alfa Laval, Denmark
CAT (Caterpillar), USA
Marwood Metal Fabrication, Canada
Volvo, Sweden
iX Panel T40
3,5 TFT
320 x 240
iX Panel T60
5.7 TFT
320 x 240
iX Panel T70
6,5 TFT
640 x 480
iX Panel T100
10.4 TFT
800 x 600
iX Panel K60
iX Panel K70
iX Panel K100
5.7 TFT
320 x 240
6,5 TFT
640 x 480
10.4 TFT
800 x 600
iX Panel T150
15.0 TFT
1024 x 768
RS232
RS422/485
USB Host
Expansion port
iX system requirements
Scheduler
Audit trail
Ribbon menu
The Ribbon is designed to help you quickly find the commands that you need to
complete a task. Commands are organized in logical groups, which are collected
together under tabs. Each tab relates to a type of activity, such as writing or laying out
a page. To reduce clutter, some tabs are shown only when needed.
Ribbons menu is also designed to:
Make more use of your wide screen
Make use of multiple screens
Project tab:
Validate, Run, Simulate and Transfer an application
Border style
Keyboard configuration
Insert tab:
Add Screen, Recipe, Data Logger, Scheduler, Text Library, Alarm Distributor Server, Function keys,
LEDS or ScriptModule to the application
Dynamics tab:
The controls under the Dynamics tab are used to change the color, position, visibility etc. of an
object, where the change is dependant on a tag value.
Actions tab:
- Actions can be triggered in various ways. The Actions tab controls are used to define actions for
objects and Function keys
Top
Etc.
Context sensitive
If multiple objects are selected only common
properties are shown
iX Developer No clutter
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.
Navigation manager
The Navigation Manager provides an overview of all screens in
the current application
New screens can be added directly in the Navigation Manager.
Click (and hold) on a screen and drag the mouse pointer to an empty
location in the Navigation Manager area.
Zoom in/out
The following methods can be used to zoom in to or out from the desktop area:
The Zoom drop-down list
The Zoom Slider
The Zoom In and Zoom Out buttons
Put the mouse pointer anywhere in the screen and use the scroll wheel
Format Painter
The Format Painter control is used to copy formatted properties from one object to another.
This is useful to create a uniform appearance for the objects on a screen.
To apply formatting to another object:
Click on an object with the desired format and font properties.
Select the Format Painter control. The mouse pointer changes to a paintbrush.
Point to 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 with different types, for example a Rectangle and an
Ellipse.
Create series
Right click on an object and select Create Series
An array of objects will be added to the screen
Default appearance
It is possible to select a style to be used as the default style next time the same kind of
object is added.
Right-click on an object to display the context menu, and select Save Default, to use the
current appearance of the object as the default style. To make existing objects adopt the
default style, select Load Default. To return to normal mode, select Clear Default.
Graphical effects
Drop shadow all objects supported
Opacity all object supported
Rounded rectangle Rectangle support
only available for PC applications so far
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 trends
Controllers
Possible to use unlimited number of
controllers
iX Panel no tag limit
EPC/PC 250, 2000, 4000 tags
OPC Client
Tag conditions
One or multiple actions can be executed when the value of a specific tag is
changed
System tags
Access to iX internal data like available RAM, current user, current screen,
Handled as normal tags -> can be used on screens, logged, scripted,
Filter tags
A Filter can be used if the programmer wants to find some specific tags
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 displayed by clicking the button on the Tags tab,
by right-clicking on a tag in the tags list, or from the View ribbon.
Tag import
Import/export supports both excel (*.xls) and text files (*.txt)
Improved tag import when using import modules
Treeview with good structure (arrays and structs) makes it easy to import the
necessary tags
Configure a controller
Click on the Driver-button in order to open the drivers
properties
In the driver properties its possible to configure the
controller:
Driver specific settings (e.g Clock register)
Stations
COM-port
Etc.
Simulator
A test of the project can be executed directly. Save the project and select Project/Run. This
will perform a Validation and start a simulation (if the project can be built).
A new window will be opened, acting as the operator panel
Run -> Online simulation
Simulate -> No communication with PLC
Static objects
Background graphics
Actions can be triggered from the majority of the objects
Line
Rectangle
Ellipse
Polyline
Picture
User-defined grouped objects
Dynamic objects
Clock Object
Button
Analog numeric
Text object
Slider
Circular Meter
Linear Meter
MultiPicture
Trend
Slider
Circular Meter
Linear Meter
Trend
Button
Digital clock
The digital clock displays date, time and/or day of week.
Possible to configure/adjust the object:
Date And Time
Date
Time
Show Day of Week
Show Seconds
Button
The Button tool is used to draw a button with a text/symbol. The button can via Actions or
Script be set up to perform a specific task in run-time.
The displayed text can show a tag value, that can be set from the Dynamics tab using the
General control.
Button styles
Button styles was introduced in iX Developer 1.20
Default, Black, Classic, Chrome, Eclipse, Vintage, Glossy
Button shapes
The shape of the buttons can be modified using either the Property Grid or the
Appearance property
Button - actions
The button can be configured to execute an action when the operator presses/clicks on the
button
Multiple actions
Its possible to execute multiple actions at the same time (without scripting)
Exercise 1 Menu
Create a menu that will be used to access all screens in the application (use the button
object)
Add a Clock Object to the header of the screen
Rectangles with rounded corners gives a nice touch to the screen
Background screen
Possible to create a common background for several screens
The background screen can contain both dynamic and static objects
Background screen
Its possible to have several layers of background screens (e.g footer and header)
Easy to configure:
Select a screen
Open the Home Ribbon and select the desired background screen
Screen templates
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.
Popup screen
A screen can easily be configured to act as a popup screen
Click on a screen and then select the General ribbon
Possible to configure the size of the popup and the starting (x,y)-position
The Popup can be Modal/Non Modal
Its also possible to configure the title of the popup
Popup screen
By clicking on the Modify Screen Size/Position button its possible to resize and
move the popup
Popup screen
Its possible to define where the screen should be placed/opened (x, y)
This is also possible to script
Slider
Object that changes the value of an analog signal
Support different styles/skins
Linear meter
Object that displays the value of an analog signal
Support different styles/skins
Circular meter
Object that displays the value of an analog signal
Supports different styles/skins
Analog numeric
Read/write numerical/ASCII values
Integer
Decimal
Binary
Hex
String (ASCII)
Alignment
Validation
Prefix/Suffix
Exercise 2 Objects.
Add a new screen to the application
Select a background screen
Add a Linear meter and Slider to the screen
Add a Circular meter and an Analog numeric to the screen
Add an Ellipse object to the screen and control the background color with a dynamic signal
Picture object
Picture object can be:
Static
Text object
Text object can be:
Static
Digital (two states/texts)
Analog (several states/texts)
Historical trend
Object that illustrates values in a time based graph
Logs data in a certain (configurable) time interval
Support for bit, 16-bit and 32-bit presentation formats
Can view historical data while the panel still log data in the background
The object supports different styles/skins
Data logger
The same function as the Trend but with no object
Each logger can be configured to store all or only changed samples
Support for bit, 16-bit and 32-bit presentation formats
Data logger
Data Loggers are added from the Insert Ribbon
In the Home Ribbon its possible to configure which
tags that should be logged
Database viewer
New object database viewer
Displays content from compact sql databases (*.sdf) in runtime
Exercise 4 - Trend
Add a new screen to the application
Select a background screen
Add a Trend Object to the screen and create 4 curves
Add buttons so that its possible to enter/leave History mode
Add a button that shows the trend legend window
Alarm handling
Alarm handling in the terminal
Alarm Groups
Alarm handling in the terminal
Alarms are divided in groups
Possible to acknowledge all alarms in a specific group remotely
Possible to configure unique colors for each alarm group (active, inactive and acknowledged)
Alarm items
Alarm handling in the terminal
The alarms are configured in the Alarm Items-tab
Both digital and analog alarms are supported
Alarms can be acknowledged from the PLC using the Remote Acknowledge signal
Alarm items
The alarm text can be dynamic
Alarm import/export
Possible to import/export alarm items
Supports both text (*.txt) and excel files (*.xls)
Alarm viewer
Alarms are presented in an Alarm Viewer with the alarm texts from the Alarm
server
The Alarm Viewer is possible to customize, for an example:
Select which buttons that should be visible
Select which columns that should be displayed
Exercise 5 Alarms
Add a new screen to the application
Select a background screen
Add a few alarms to the alarm server
Connect an Info Screen to at least one of the alarms
Add an Alarm Viewer to the screen, also add objects that makes it possible to
trigger the alarms
Alarm Distribution
The Alarm Distributor Server 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 panel/EPC that acts as a server towards several connected clients
Printout
SMS
E-mail
Security
Protect objects, screens, recipes etc. against unauthorized use
Users can be divided in different security groups (e.g Administrator and
Operator)
A User can be a member of several security groups
Security - Settings
Possible to configure if an Access denied message should be displayed if an
operator tries to access an object without the necessary authority
Also possible to configure if objects should be e.g hidden
Security Login/logout.
Configure buttons with Login or Logout actions
Security Object.
Right click on an object and select the Security level required for changing
status of the object (also possible to configure in the Home ribbon):
Exercise 6 Security.
Add a few different security groups/users to the application
Add a new screen to the application
Select a background screen
Connect a few objects to different security groups
Hide a few objects if the user is not logged in
Add buttons that makes it possible to login, logout and export/import users
Audit trail
The Audit Trail function makes it possible to track operator actions.
Its possible to define which actions and tags that should be logged to the Audit
Trail.
The Audit trail is stored in a separate database, and the information can be
displayed using the Audit Trail Viewer.
Media objects
Media Player
PDF Viewer
Internet Browser
PDF Viewer.
Pdf files can be displayed in
runtime using the PDF viewer
object. The viewer can be
connected to a default PDF-file.
Its possible to add additional PDF:s
in the project files folder
Media Player.
Media files can be added to the
media player object, which allows
starting and stopping the files in
runtime
The following file formats are
supported
AVI
MPG
WMV
Web Browser.
Web pages can be displayed using
the web browser.
It is possible to allow showing
certain defined web pages only, or
a local htm/html file
Possibilites:
Internet
Local websites
VNC
Network Camera streaming
C# Script
Script language is C#, Full .NET framework is supported in PC/EPC-applications
and Compact .Net framework in EXTER-applications
MSDN contains a lot of .NET related information
http://msdn.microsoft.com/en-us/library/67ef8sbd(VS.80).aspx
Screen script
Controller script
Alarm server script
Script module
Global Script
Possible to execute from other scripts
The scripts can be debugged with a standard tool from Microsoft (Microsoft CLR
Debugger). This software is free of charge!
iX events
Change view to Script
iX events
A delegate method is added automatically when double clicking on an event
(when the text is bold a method is assigned to the event)
The code inside of this method will be executed when the user clicks on the
button
Script module
Script module
Global Script
Possible to execute from other scripts
Possible to re-use scripts
Easier to maintain
Script module
Why is it easier to maintain a function in the Script module compared to copy/paste code?
Screen 1
Screen 2
Screen 3
Function1
Function1
Function1
Screen 4
Screen 5
Screen 6
Function1
Function1
Function1
If the developer needs to modify the code he has to find all places where the code has been
duplicated, in this case 6 places
In a big application its likely that he will forget to modify the code in all places where its
being used -> Unexpected behavior
Script module
Why is it easier to maintain a function in the Script module compared to copy/paste code?
Screen 1
Screen 2
Screen 3
Screen 4
Script Module
Screen 5
Function1
Screen 6
In this case the developer only needs to modify the function in the script module. This saves
both time and reduces the likeliness of introducing bugs
Access to iX objects
In order to access iX objects (e.g Tags, Recipe, Security) start with the keyword
Globals
Example:
Script Example 1
Write a value to a tag and change the text of a button
Script Example 2
Script that shows a message box with a Yes/No
question:
Script Example 3
Arithmetic operations
Service = MaxHours - ActualHours
Script Example 4
Function for sending E-mails
Script Example 5.
Save/load text to a text file
Exercise 9 Scripting
Add a new screen to the application
Select a background screen
Add an Analog Numeric to the screen
1. Add a button to the screen, when the user clicks on the button a value should be
written to the tag connected to the Analog Numeric
Recipe management
Save Analog and Digital signal values to the operator panel memory with a
simple operation
Recipe management enables the operator to quickly and easily change the
parameter settings when switching from one product to another in the
production
Recipe management
Recipes are added from the Insert Ribbon
In the Tag Configuration tab its possible
to configure which tags/parameters that
should be used in the recipe
A recipe can consist of maximum 256
parameters
Recipe management
Default recipes/values are added in the Runtime Data tab
Exercise 10 Recipes
Add a Recipe to the Application
Add a few recipe items
Add a new screen to the application
Select a background screen
Add buttons that makes it possible to load, save and delete the recipes
Add languages
Click on MuliLanguage in the Project Explorer
Change Tab to Languages and click on the Add button in
order to add languages to the application
Translate texts
Each language has a column where texts can be translated directly in iX
Its also possible to export the texts to a text file and send it to a translator
Auto translation
iX Developer includes a translation tool that uses Google Translate or Microsoft
Bing Translator to offer quick translations of user-defined or system texts free of
charge.
Function keys
Its possible to execute actions when function keys are pressed (using either keypanels (K60, K70 or K100) or touch panels with an external keyboard connected)
Scheduler
Scheduler service can be added from the Insert ribbon
With the Scheduler you can set and reset digital signals relative the clock in the
operator panel
Signal, period, start time and duration are configured for each Scheduler event
PLC
M10
Lamp
Scheduler
Scheduler service can be added from the Insert ribbon
Name: Symbolic name for the event
Period: E.g once, every hour, every day, every month
Start date/time: The date and time for the first start of the interval. If a period is set
the defined tag will be set again after the specified time.
Dynamics
The controls under the Dynamics tab are used to change the color, position, and
visibility of an object, where the change is dependant on a tag value.
The properties are not the same for all objects
The properties that can be changed with dynamics are:
Move
Size
Fill color
Outline color
Visible
Blink
General properties (dependent of the selected object type)
Dynamics - Move
The dynamic signal Move changes the location of an object. The change is
based on a tag value.
To move an object vertically when a tag value changes:
Connect a tag
Move the ghost object in the screen to its final position. The coordinates for the
object is updated.
Press OK to save and close the Move Dynamics Editor.
Dynamics - Size
The dynamic signal Size changes the size of an object. The change is based on
a tag value.
To change the size of an object when a tag value changes:
Connect a tag
Resize the ghost object in the screen. The coordinates for the object is updated.
Dynamics Blink
A dynamic blink function has been implemented in 1.20
Its possible to control the interval and when the object should blink using tags
Dynamics - Visible
The control in the Visible group determines if an object appears in the screen or
not. The visibility control is based on a tag value.
Select the tag that should control visibility. The object will be invisible on the
screen when the tag value is zero.
Foreground/Font Color
Foreground color can be based on values in tags. For an example a button foreground
color is the color of the button text
IsEnabled
Access to objects can be restricted on values in tags. This can for example be used to
disable a button
Offset/gain calculation
The presented value = Tags value x Gain + Offset
Tags value = (Panel value-Offset)/Gain
Temp: 25 C
D0 = 1000
25 C
Offset/gain calculation
Offset and Gain are configured in the Tags configuration grid.
Dont forget to change the tags data type to float (otherwise the scaled value
will be rounded up/down).
Index registers
Display value = the value in Register (the Objects address + the value in the
Index register)
Special controls
Two PC only Special controls are included
Screen Carousel
Text library
With the text library function, text tables can be created, where values are
linked to texts.
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 an int, add a dynamic
offset or gain, and then to use this value for a specific object