BEIJER-Slides-2-Training HMI iX Basic [en]
BEIJER - HMI iX Slide da Formação Técnica iX - Curso Basico [en] Da empresa BRESIMAR AUTOMAÇÃO (Aveiro / Portugal) Autoria: BEIJER ELECTRONICS
BEIJER - HMI iX
Slide da Formação Técnica iX - Curso Basico [en]
Da empresa BRESIMAR AUTOMAÇÃO (Aveiro / Portugal)
Autoria: BEIJER ELECTRONICS
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>iX</strong> <strong>HMI</strong> solution<br />
The world's most graphic <strong>HMI</strong> solution. Truly op<strong>en</strong>.
Cont<strong>en</strong>ts of course<br />
• G<strong>en</strong>eral HW-overview<br />
• DEMO-application<br />
• <strong>iX</strong> Developer Developm<strong>en</strong>t<br />
• <strong>iX</strong> Developer Runtime<br />
• Handling of:<br />
− Scre<strong>en</strong>s<br />
− Objects<br />
• <strong>HMI</strong> Controls<br />
• Media Controls<br />
• Windows Controls<br />
− Controllers<br />
− Recipes<br />
− Alarms<br />
− Security<br />
− Data loggers/tr<strong>en</strong>ds<br />
− Scripting<br />
− …<br />
• Exercises
Beijer Electronics’ ambition<br />
• We want to provide our customers a brand new product<br />
experi<strong>en</strong>ce:<br />
− Based on modern SW technologies<br />
• Future proof, lasting for many years ahead<br />
− Including modern compon<strong>en</strong>t based architecture<br />
• High quality - high flexibility<br />
− Enabling differ<strong>en</strong>t hardware runtime platforms<br />
• Runtime on our <strong>iX</strong> Panel and <strong>iX</strong> Panel Pro as well as on PC’s<br />
• No compromises, fully utilizing the resources of the platform<br />
− Offering backwards compatibility<br />
• Protect the investm<strong>en</strong>ts our customer has made in their applications<br />
− With a truly op<strong>en</strong> systems architecture conforming to standards<br />
• Utilize third party or user developed compon<strong>en</strong>ts<br />
• Take advantage of the mainstream wave, don’t reinv<strong>en</strong>t the wheel
And that’s what we have today…<br />
<strong>iX</strong> — The world's most graphic <strong>HMI</strong> solution. Truly op<strong>en</strong>.<br />
• <strong>iX</strong> is the innovative <strong>HMI</strong> solution allowing you to express your ideas with a<br />
strong combination of state-of-the-art graphics and solid <strong>HMI</strong> functionality.<br />
Enjoy the experi<strong>en</strong>ce of smarter design and <strong>en</strong>gineering tools, and a truly<br />
op<strong>en</strong> platform.<br />
• Key messages:<br />
− State-of-the-art graphics<br />
− Solid <strong>HMI</strong> functionality<br />
− Smarter design and <strong>en</strong>gineering tools<br />
− Truly op<strong>en</strong> platform
State-of-the-art graphics<br />
Expressing your ideas and adding<br />
value to your business
State-of-the-art graphics<br />
• Wh<strong>en</strong> we say state-of-the-art graphics, we mean:<br />
−Vector-based graphics<br />
• Crystal clear graphics indep<strong>en</strong>d<strong>en</strong>t of size or<br />
rotation angle. No jagged edges or inconsist<strong>en</strong>t<br />
color transitions as in overscaled or rotated<br />
bitmap images<br />
−Graphical effects<br />
• Enhancem<strong>en</strong>t of graphical appearance with drop<br />
shadows, bevels, opacity<br />
−Windows media objects<br />
• Powerful <strong>HMI</strong> solutions incorporating other media<br />
via Internet Explorer, Windows Media Player and<br />
PDF viewer<br />
−Dynamics and dynamic objects<br />
• Draws the att<strong>en</strong>tion of an operator to interact<br />
with an ongoing process by controlling properties<br />
e.g. position, size, color and visibility of objects<br />
with data<br />
−Drawing objects<br />
• <strong>Basic</strong> drawing functionality with lines, rectangles,<br />
circles and poly lines to create background<br />
graphics<br />
−Compon<strong>en</strong>t library<br />
• Ready made compon<strong>en</strong>ts perfect for<br />
industrial applications<br />
−Navigation controls<br />
• Up-to-date control with thumbnails and<br />
scrollable rolling, etc.<br />
−Popup scre<strong>en</strong><br />
• Multi-window <strong>en</strong>vironm<strong>en</strong>t with more<br />
scre<strong>en</strong>s active in the same window<br />
−Scre<strong>en</strong> carousel<br />
• Fancy iPod style navigation<br />
−Button styles<br />
• The button style function allows<br />
customization of button shapes providing<br />
an almost unlimited range of button<br />
designs
Solid <strong>HMI</strong> functionality<br />
Solid, familiar <strong>HMI</strong> functionality in<br />
an appealing and user-fri<strong>en</strong>dly<br />
format
Solid <strong>HMI</strong> functionality<br />
• Wh<strong>en</strong> we say solid, familiar <strong>HMI</strong> functionality, we mean:<br />
−Alarm managem<strong>en</strong>t<br />
• Manage alarms and notify operators via scre<strong>en</strong>,<br />
printer, SMS or e-mail of ev<strong>en</strong>ts that require<br />
action<br />
−Recipes<br />
• Create recipe libraries containing differ<strong>en</strong>t sets<br />
of parameters and re-use large sets of<br />
parameters<br />
−Tr<strong>en</strong>ds<br />
• Visual repres<strong>en</strong>tation of historical or real time<br />
ev<strong>en</strong>ts in a process supports the understanding<br />
of a process or performance of a machine<br />
−Data logging<br />
• Time or ev<strong>en</strong>t based data logging for<br />
docum<strong>en</strong>tation or other purposes<br />
−Scheduler<br />
• Automate control of ev<strong>en</strong>ts at specific<br />
predefined cal<strong>en</strong>dar date and times, for<br />
example start and stop motors or other<br />
equipm<strong>en</strong>t<br />
−Audit trail<br />
• Ess<strong>en</strong>tial process tracking, user id<strong>en</strong>tification<br />
linked to time and place of interactions or<br />
ev<strong>en</strong>ts<br />
−Security<br />
• Create a security system with differ<strong>en</strong>t<br />
authorizations<br />
Multiple languages<br />
• Create multiple-language usability for<br />
user-fri<strong>en</strong>dly international applications<br />
−System tags<br />
• Access to internal information from both<br />
hardware and software such as user<br />
id<strong>en</strong>tification, available RAM etc.<br />
−Internal variables<br />
• Calculates values without the need for<br />
repres<strong>en</strong>tation in the controller<br />
−Index addressing<br />
• Control the register from which an object<br />
is to collect data<br />
−Cross refer<strong>en</strong>ce<br />
• Docum<strong>en</strong>ts and traces all relations<br />
betwe<strong>en</strong> variables, functions, pictures,<br />
recipes, etc.<br />
−Remote access<br />
• Access and operate <strong>iX</strong> applications from a<br />
PC. Useful wh<strong>en</strong> performing remote<br />
customer support and troubleshooting<br />
−Runtime database viewer<br />
• View data from tr<strong>en</strong>ds, recipes, alarms,<br />
etc. or other data base in a runtime<br />
database viewer.
Smarter design and <strong>en</strong>gineering tools<br />
Time saving design and <strong>en</strong>gineering<br />
tools help you create professional<br />
<strong>HMI</strong> solutions with the look and feel<br />
you want
Smarter design and <strong>en</strong>gineering tools<br />
• Wh<strong>en</strong> we say smarter design and <strong>en</strong>gineering tools, we mean:<br />
−User-fri<strong>en</strong>dly <strong>en</strong>vironm<strong>en</strong>t<br />
• Create and configure <strong>HMI</strong> solutions in a<br />
streamlined user-fri<strong>en</strong>dly Windows<br />
<strong>en</strong>vironm<strong>en</strong>t with ribbon tabs, tool tips and an<br />
intuitive work approach.<br />
−Templates<br />
• Offers increased brand consist<strong>en</strong>cy with<br />
uniform corporate scre<strong>en</strong>s and objects. Time<br />
saving design, reuse and maint<strong>en</strong>ance<br />
contribute to design effici<strong>en</strong>cy.<br />
−Quick styles<br />
• Easy styling of objects and scre<strong>en</strong>s with pre- or<br />
user defined quick styles<br />
−Styles<br />
• Predefined graphical styles as classic, vintage,<br />
etc. for basic styling<br />
−Property grid<br />
• Properties of scre<strong>en</strong>s or objects can easily be<br />
viewed or edited in the property grid<br />
−Simulation<br />
• Off- and online line simulation with or without<br />
live data from controllers provides safe and<br />
reliable testing<br />
−Navigation manager<br />
• Manage scre<strong>en</strong>s and relations with respect<br />
to project navigation with an overview of<br />
all scre<strong>en</strong>s in a project<br />
−Object browser<br />
• Rearrange the stacking order of objects on<br />
a scre<strong>en</strong>, as well as lock/unlock and<br />
hide/unhide objects<br />
−Multiple objects editing<br />
• Select a group of objects, and edit<br />
common properties such as background<br />
color, font, security settings, tag, etc. for<br />
all selected objects simultaneously<br />
−Format painter tools<br />
• Copy object properties from one object to<br />
another<br />
Multiple actions<br />
• Configure a series of commands to be<br />
executed by a single trigger e.g. by<br />
pressing a button<br />
−Tag conditions/actions<br />
• Control a command like e.g. go to scre<strong>en</strong>,<br />
load recipe, etc. based on the value or<br />
value range of a tag
… smarter design and <strong>en</strong>gineering tools<br />
• Wh<strong>en</strong> we say smarter design and <strong>en</strong>gineering tools, we mean:<br />
−Multiple displays<br />
• Work with as large a desktop surface as possible<br />
by using multiple scre<strong>en</strong>s<br />
−<br />
−Debugging via MS<br />
• Activate the link and the debugger automatically<br />
starts up with the relevant source files loaded<br />
−Expressions<br />
• Extract a bit from a tag, add a dynamic offset or<br />
gain, and use the value for a specific object<br />
action.<br />
−Auto Translate<br />
• Use Google Translate or MS Bing Translator to<br />
perform auto translation within the design tool<br />
−Import/Export<br />
• Incorporate or exchange tag lists, alarm<br />
definitions, multi languages in Excel data sheet<br />
format<br />
−Import tags<br />
• Import and incorporate tag lists directly from e.g.<br />
Mitsubishi Electric, Siem<strong>en</strong>s, Beckhoff and<br />
CoDeSys programming software
Truly op<strong>en</strong> platform<br />
Truly op<strong>en</strong> with a choice of runtime<br />
platform, multi controller<br />
applications, <strong>en</strong>hanced functionality<br />
and connectivity
Truly op<strong>en</strong> platform<br />
• Wh<strong>en</strong> we say truly op<strong>en</strong> platform, we mean:<br />
−Choice of hardware platform<br />
• From compact <strong>iX</strong> panels to industrial PCs<br />
−Multi controller applications<br />
−OPC<br />
• One tag can be connected to several controllers,<br />
allowing the same <strong>HMI</strong> application running against<br />
differ<strong>en</strong>t PLC’s<br />
• <strong>iX</strong> provides you with an op<strong>en</strong> platform solution<br />
that is compatible with all major automation<br />
systems.<br />
−SQL connectivity<br />
• <strong>iX</strong> supports the SQL industry standard letting you<br />
<strong>en</strong>joy quick and easy storage, retrieval and<br />
managem<strong>en</strong>t of data in relational database<br />
managem<strong>en</strong>t systems.<br />
−C# scripting<br />
• Enhanced functionality with C# script to<br />
customize or <strong>en</strong>rich objects functionality<br />
−Import of .net controls<br />
• <strong>iX</strong> utilizes Microsofts .NET Framework, a<br />
software technology compatible with a<br />
number of Microsoft Windows operating<br />
systems.<br />
−3. party compon<strong>en</strong>ts<br />
• Import predefined, ready-made third party<br />
graphical compon<strong>en</strong>ts from the Internet or<br />
order the compon<strong>en</strong>ts you need from the<br />
suppliers of your choice.<br />
−Controller data exchange<br />
• Real-time exchange of data betwe<strong>en</strong> controllers<br />
regardless of the brand
Price<br />
Product position<br />
SCADA systems<br />
<strong>iX</strong> Panel Pro & <strong>iX</strong> Panel Pro nautic<br />
<strong>iX</strong> Panels<br />
<strong>iX</strong> Runtime<br />
Traditional <strong>HMI</strong><br />
Functionality / Performance
A powerful range of software, panels and IPCs<br />
• <strong>iX</strong> Panel<br />
− Keypad: 5.7", 6.5", 10.4“<br />
− Touchscre<strong>en</strong>3.5", 5.7", 6.5", 10.4", 15.0"<br />
• <strong>iX</strong> Panel Pro<br />
−<br />
12", 15", 17", 19", 19" with stainless steel front,<br />
Box PC version<br />
• <strong>iX</strong> Panel Pro nautic<br />
−<br />
15", 17", 19", Box PC version<br />
• <strong>iX</strong> Developer and Runtime versions<br />
−<br />
−<br />
<strong>iX</strong> Developer, <strong>iX</strong> Developer update, <strong>iX</strong> Developer<br />
demo<br />
<strong>iX</strong> Runtime 250 tags, <strong>iX</strong> Runtime 2000 tags, <strong>iX</strong><br />
Runtime 4000 tags
<strong>HMI</strong> PRODUCTS<br />
OEM<br />
Building Automation<br />
Marine<br />
Infrastucture<br />
Water & Waste water<br />
Delivering customer value in targeted industry segm<strong>en</strong>ts<br />
- Concept for growth<br />
Economy<br />
Effici<strong>en</strong>cy<br />
Energy<br />
Environm<strong>en</strong>t<br />
Ease of use
Alfa Laval sharp<strong>en</strong>s the competitive edge with IX<br />
We create solutions for every need<br />
<strong>iX</strong> helps Peter Blomberg and his<br />
automation colleagues create a graphical<br />
interface that makes decanter<br />
c<strong>en</strong>trifuges and other sophisticated<br />
equipm<strong>en</strong>t from Alfa Laval as easy to use<br />
as today's cell phones. The user-fri<strong>en</strong>dly<br />
interface is appreciated by customers,<br />
as well as the new <strong>HMI</strong> solution saves<br />
time and money in installation and<br />
service.<br />
Find out the customer needs and<br />
create the customer b<strong>en</strong>efits!
Alfa Laval sharp<strong>en</strong>s the competitive edge with IX<br />
• “The goal is to make our machines just as<br />
intuitive to use as today's personal<br />
computers and mobile phones.”<br />
• “<strong>HMI</strong> solutions with differ<strong>en</strong>t colored push<br />
buttons and cryptic text messages on<br />
oversized scre<strong>en</strong>s belong to yesterday.”<br />
• “No other v<strong>en</strong>dor could offer the same<br />
features and graphic possibilities within the<br />
framework of an op<strong>en</strong> architecture.”<br />
• “With an aesthetically pleasing <strong>HMI</strong> solution<br />
that works today and has a modern feel in<br />
the years to come, we have reached our<br />
goal”, summarizes Peter Blomberg.<br />
Scre<strong>en</strong> picture by Alfa Laval ©
Refer<strong>en</strong>ces<br />
• Alfa Laval, D<strong>en</strong>mark<br />
• CAT (Caterpillar), USA<br />
• Marwood Metal Fabrication, Canada<br />
• Volvo, Swed<strong>en</strong>
<strong>iX</strong> Panels 3,5” – 15.0”<br />
<strong>iX</strong> Panel T40<br />
3,5” TFT<br />
320 x 240<br />
<strong>iX</strong> Panel T60<br />
5.7” TFT<br />
320 x 240<br />
<strong>iX</strong> Panel T70<br />
6,5” TFT<br />
640 x 480<br />
<strong>iX</strong> Panel T100<br />
10.4” TFT<br />
800 x 600<br />
<strong>iX</strong> Panel T150<br />
15.0” TFT<br />
1024 x 768<br />
<strong>iX</strong> Panel K60<br />
<strong>iX</strong> Panel K70<br />
<strong>iX</strong> Panel K100<br />
5.7” TFT<br />
320 x 240<br />
6,5” TFT<br />
640 x 480<br />
10.4” TFT<br />
800 x 600
<strong>iX</strong> panel is designed for connectivity<br />
Expansion possibilities<br />
e.g. Profibus module<br />
Ethernet<br />
Compact Flash slot<br />
(<strong>iX</strong> Panel T70 and larger)<br />
RS232<br />
RS422/485<br />
USB Host
Serial communication possibilities<br />
Standard RS232 serial communication port<br />
Combined RS422/485 communication port
Ethernet communication possibilities<br />
Built-in 10/100Mbit twisted pair Ethernet, shielded RJ45
USB communication possibilities<br />
USB Host port<br />
• USB version 1.1 (1.1 and 2.0 are fully compatible with each other)<br />
• Transfer speed: 12Mbit/s<br />
• Direct connection of:<br />
− PC type keyboard (US English)<br />
− Mouse/trackball<br />
− Printer<br />
− USB hub (up to 127 USB devices)<br />
− USB Flash memory disk<br />
USB Device port built-in for future use
Compact flash slot<br />
• Standard off-the shelf memory card (industrial grade compliant cards are recomm<strong>en</strong>ded)<br />
• One external CF slot for:<br />
− Storage of pdf-files, movies and local http-pages<br />
• One internal CF slot for:<br />
− Operator panel memory expansion
Further expansion slots<br />
Expansion port<br />
• Makes it possible to add expansion of other communication protocols and external devices<br />
• Extra mounting depth about 25 mm<br />
• The following expansion modules are available:<br />
Expansion port<br />
− EM-Profibus DP<br />
− EM-MPI<br />
− EM-CAN (J1939)
IPC – <strong>iX</strong> Panel Pro<br />
<strong>iX</strong> Panel Pro T120 PM<br />
12” TFT<br />
800 x 600<br />
<strong>iX</strong> Panel Pro T150 PM<br />
<strong>iX</strong> Panel Pro T150 C2D<br />
15” TFT<br />
1024 x 768<br />
<strong>iX</strong> Panel Pro T170 PM<br />
<strong>iX</strong> Panel Pro T170 C2D<br />
17” TFT<br />
1024 x 768<br />
<strong>iX</strong> Panel Pro T190 PM<br />
<strong>iX</strong> Panel Pro T190 C2D<br />
19” TFT<br />
1280 x 1024<br />
<strong>iX</strong> Panel Pro T190<br />
C2D BOX
<strong>iX</strong> – system requirem<strong>en</strong>ts
Create a new project<br />
• Start <strong>iX</strong> Developer<br />
• Intuitive interface with everything you need<br />
− Create New Project<br />
− Import old Information designer project<br />
− List of rec<strong>en</strong>t projects<br />
− Sample application tab<br />
− Help<br />
− Browse for old projects
Create a new project<br />
• Select the desired HW-platform (<strong>iX</strong> Panel or PC)
Create a new project<br />
• Select Controller<br />
− The DEMO driver is chos<strong>en</strong> as default, easy to change later<br />
− Also possible to connect to an OPC-server (localhost or remote)
Create a new project<br />
• Finally, select where the application should be stored
<strong>iX</strong> Developer – Customizable User interface
<strong>iX</strong> Developer – Project explorer
The project explorer<br />
• The Project Explorer shows all scre<strong>en</strong>s and<br />
functions included in the application:<br />
−Scre<strong>en</strong>s<br />
−Tags<br />
−Alarms<br />
−Security<br />
−Data loggers<br />
−Recipes<br />
−Script Modules<br />
−Function keys<br />
−Scheduler<br />
−Audit trail
<strong>iX</strong> DEVELOPER - RIBBON MENU
Ribbon m<strong>en</strong>u<br />
• Microsoft explains it:<br />
− The Ribbon is designed to help you quickly find the commands that you need to<br />
complete a task. Commands are organized in logical groups, which are collected<br />
together under tabs. Each tab relates to a type of activity, such as writing or laying out<br />
a page. To reduce clutter, some tabs are shown only wh<strong>en</strong> needed.<br />
• Ribbons m<strong>en</strong>u is also designed to:<br />
− Make more use of your wide scre<strong>en</strong><br />
− Make use of multiple scre<strong>en</strong>s
Ribbon m<strong>en</strong>u – Home/Project tabs<br />
• Home tab:<br />
− Paste/copy/cut<br />
− <strong>HMI</strong> and Windows objects<br />
− Visual styles (color, font etc.)<br />
− Tag, security groups and visibility<br />
− Name of the object<br />
• Project tab:<br />
− Validate, Run, Simulate and Transfer an application<br />
− Border style<br />
− Keyboard configuration
Ribbon m<strong>en</strong>u – System/Insert tabs<br />
• System tab:<br />
− Time zone<br />
− Key Beep (<strong>iX</strong> Panel)<br />
− Backlight settings (<strong>iX</strong> Panel)<br />
− COM1 RS422/RS485 (<strong>iX</strong> Panel)<br />
− FTP & VNC (<strong>iX</strong> Panel)<br />
• Insert tab:<br />
− Add Scre<strong>en</strong>, Recipe, Data Logger, Scheduler, Text Library, Alarm Distributor Server, Function keys,<br />
LEDS or ScriptModule to the application
Ribbon m<strong>en</strong>u – View/Dynamics tabs<br />
• View tab:<br />
− Configures if Output, PropertyGrid, Error List, Project Explorer, Compon<strong>en</strong>t Library and Navigation<br />
Explorer should be displayed or not<br />
• Dynamics tab:<br />
− The controls under the Dynamics tab are used to change the color, position, visibility etc. of an<br />
object, where the change is dep<strong>en</strong>dant on a tag value.
Ribbon m<strong>en</strong>u – G<strong>en</strong>eral/Actions tabs<br />
• G<strong>en</strong>eral tab:<br />
- Individual settings for the differ<strong>en</strong>t objects . The settings are used to configure e.g a text object or<br />
an analog numeric<br />
• Actions tab:<br />
- Actions can be triggered in various ways. The Actions tab controls are used to define actions for<br />
objects and Function keys
<strong>iX</strong> Developer – Property grid
The property grid<br />
• A complete overview of all configured<br />
properties of an object<br />
−Text<br />
−Alignm<strong>en</strong>t<br />
−Font<br />
−IsEnabled<br />
−Top<br />
−Etc.<br />
• Context s<strong>en</strong>sitive<br />
−If multiple objects are selected only common<br />
properties are shown<br />
• The most important properties are<br />
available in the ribbon m<strong>en</strong>u as well
<strong>iX</strong> Developer – Compon<strong>en</strong>t library
The compon<strong>en</strong>t library<br />
• Save and re-use compon<strong>en</strong>ts at other<br />
locations in the project or in other<br />
projects<br />
−Groups<br />
−Objects<br />
−Scripts<br />
• Also contains predefined symbols that can<br />
be used in the application<br />
• Possible to zoom in/zoom out to get a<br />
good overview of the objects
<strong>iX</strong> Developer – Customizable user interface
<strong>iX</strong> Developer – No clutter
Object Browser<br />
• An overview of all objects included in a scre<strong>en</strong> can be<br />
displayed in the Object Browser.<br />
• It is easy to bring objects that may have be<strong>en</strong> obscured<br />
by other objects up front, by using the arrows at the top<br />
left.<br />
• Clicking the buttons at the right side of each object<br />
<strong>en</strong>ables simply hiding/showing and locking/unlocking<br />
objects.
Navigation manager<br />
• The Navigation Manager provides an overview of all scre<strong>en</strong>s in<br />
the curr<strong>en</strong>t application<br />
• New scre<strong>en</strong>s can be added directly in the Navigation Manager.<br />
− Click (and hold) on a scre<strong>en</strong> and drag the mouse pointer to an empty<br />
location in the Navigation Manager area.
Navigation manager – Zoom/pan<br />
• The Navigation Overview tool provides an overview of all scre<strong>en</strong>s included in the<br />
project, with zooming facilities.
Zoom in/out<br />
• The following methods can be used to zoom in to or out from the desktop area:<br />
− The Zoom drop-down list<br />
− The Zoom Slider<br />
− The Zoom In and Zoom Out buttons<br />
− Put the mouse pointer anywhere in the scre<strong>en</strong> and use the scroll wheel<br />
• Zoom level: 25% - 800%
Change properties on several objects<br />
• It’s possible to change properties on several objects at the same time (for an example:<br />
Background color, font, security settings, tag)<br />
• Select several objects<br />
• Change the desired properties<br />
• All object will be updated with the new (common) property
Format Painter<br />
• The Format Painter control is used to copy formatted properties from one object to another.<br />
This is useful to create a uniform appearance for the objects on a scre<strong>en</strong>.<br />
• To apply formatting to another object:<br />
− Click on an object with the desired format and font properties.<br />
− Select the Format Painter control. The mouse pointer changes to a paintbrush.<br />
− Point to the object to format.<br />
− The format properties from the first object is applied to the selected object. Format and font<br />
properties can be copied betwe<strong>en</strong> objects with differ<strong>en</strong>t types, for example a Rectangle and an<br />
Ellipse.
Create series<br />
• Right click on an object and select Create Series<br />
• An array of objects will be added to the scre<strong>en</strong>
Show tag info<br />
• It is possible to show tag connections for objects and shapes in a scre<strong>en</strong>. Right-click on an<br />
empty area of the curr<strong>en</strong>t scre<strong>en</strong> and select Show Info from the context m<strong>en</strong>u to show the<br />
tags.<br />
• The shortcut command for Show Info is CTRL + D.
Default appearance<br />
• It is possible to select a style to be used as the default style next time the same kind of<br />
object is added.<br />
• Right-click on an object to display the context m<strong>en</strong>u, and select Save Default, to use the<br />
curr<strong>en</strong>t appearance of the object as the default style. To make existing objects adopt the<br />
default style, select Load Default. To return to normal mode, select Clear Default.
Graphical effects<br />
• Drop shadow – all objects supported<br />
• Opacity – all object supported<br />
• Rounded rectangle – Rectangle support<br />
− only available for PC applications so far
Detailed gradi<strong>en</strong>t and color settings<br />
• Colors (e.g. Start/End Color) and Drop Shadow (e.g. Opacity and Size) can be<br />
configured in detail
Quick styles<br />
• The Quick Styles control contains a number of preset visual object color schemes<br />
that can be applied to scre<strong>en</strong> objects<br />
• The predefined graphical styles make it possible to achieve a uniform<br />
appearance on items like meters and tr<strong>en</strong>ds
Modify quick styles<br />
• It’s possible to modify the quick styles (the new quick styles will be possible to<br />
access in all applications -> not application specific)
Controllers<br />
• Possible to use unlimited number of<br />
controllers<br />
• <strong>iX</strong> Panel – no tag limit<br />
• EPC/PC – 250, 2000, 4000 tags<br />
• OPC Cli<strong>en</strong>t<br />
• Demo driver (default driver)<br />
− M0 - M99<br />
− D0 - D99<br />
− C0 - C4 (Counters, up/cyclic)<br />
− M100 - M104 (Pulse)
New tag list structure<br />
• Globals tags, not tightly connected to controller<br />
• Tag that is not connected to a controller will be an internal tag<br />
• Columns in the tag list can be switched on/off (scaling, data exchange, others) for less<br />
complexity<br />
• Imports/export of global tag list as well as individual controller import/export
Multi controller application<br />
• A tag can be connected to more than one controller simultaneously<br />
• The user can change driver/controller in run-time<br />
• Allows for having the same <strong>HMI</strong>-application running against differ<strong>en</strong>t PLC’s
Multi controller application<br />
• Perfect for machine builders that have one application running against differ<strong>en</strong>t PLC system<br />
• Only one application to maintain -> saves a lot of time/reduces number of mistakes<br />
• Possible to select both in design-time and run-time which PLC that should be used
Controller data exchange<br />
• Allows for real-time data exchange betwe<strong>en</strong> controllers, ev<strong>en</strong> of differ<strong>en</strong>t brands<br />
• Selectable per tag<br />
• Exchange can be triggered on ev<strong>en</strong>t or time
Internal variables – Initial value/Non-volatile<br />
• It’s possible to define intial values for internal variables<br />
• An internal variable can be configured to be non-volatile, the values are th<strong>en</strong><br />
stored in a compact sql database
Tag conditions<br />
• One or multiple actions can be executed wh<strong>en</strong> the value of a specific tag is<br />
changed
System tags<br />
• Access to <strong>iX</strong> internal data like available RAM, curr<strong>en</strong>t user, curr<strong>en</strong>t scre<strong>en</strong>, …<br />
• Handled as normal tags -> can be used on scre<strong>en</strong>s, logged, scripted,…
Filter tags<br />
• A Filter can be used if the programmer wants to find some specific tags
Cross refer<strong>en</strong>ce<br />
• The Cross Refer<strong>en</strong>ce tool provides an overview of where a specific tag is used in<br />
the curr<strong>en</strong>t project.<br />
• All occurr<strong>en</strong>ces of the tag in the curr<strong>en</strong>t project are listed. Double-clicking on an<br />
occurr<strong>en</strong>ce in the list automatically brings you to the object or function where<br />
the tag is used.<br />
• The cross refer<strong>en</strong>ce tool can be displayed by clicking the button on the Tags tab,<br />
by right-clicking on a tag in the tags list, or from the View ribbon.
Tag import<br />
• Import/export supports both excel (*.xls) and text files (*.txt)<br />
• Improved tag import wh<strong>en</strong> using import modules<br />
• Treeview with good structure (arrays and structs) makes it easy to import the<br />
necessary tags
Tag import – import module<br />
• Import and incorporate tag lists directly from e.g. Mitsubishi Electric, Siem<strong>en</strong>s,<br />
Beckhoff and CoDeSys programming softwares.<br />
• Select individual tags, arrays or structs that should be imported to the<br />
application
Configure a controller<br />
• Click on the Driver-button in order to op<strong>en</strong> the driver’s<br />
properties<br />
• In the driver properties it’s possible to configure the<br />
controller:<br />
− Driver specific settings (e.g Clock register)<br />
− Stations<br />
− COM-port<br />
− Etc.<br />
• All drivers have a help file, it contains information about<br />
addressing, cables, trouble shooting etc.
Simulator<br />
• A test of the project can be executed directly. Save the project and select Project/Run. This<br />
will perform a Validation and start a simulation (if the project can be built).<br />
• A new window will be op<strong>en</strong>ed, acting as the operator panel<br />
• Run -> Online simulation<br />
• Simulate -> No communication with PLC
Static objects<br />
• Background graphics<br />
• Actions can be triggered from the majority of the objects<br />
− Line<br />
− Rectangle<br />
− Ellipse<br />
− Polyline<br />
− Picture<br />
− User-defined grouped objects
Dynamic objects<br />
• Clock Object<br />
• Button<br />
• Analog numeric<br />
• Text object<br />
• Slider<br />
• Circular Meter<br />
• Linear Meter<br />
• MultiPicture<br />
• Tr<strong>en</strong>d
Dynamic object styles<br />
• Styles, g<strong>en</strong>eral styles that change the look of an application<br />
− 5 Differ<strong>en</strong>t styles included in <strong>iX</strong> 1.20.<br />
− Configurable with differ<strong>en</strong>t fonts and colors to give unique look for your<br />
application<br />
• Slider<br />
• Circular Meter<br />
• Linear Meter<br />
• Tr<strong>en</strong>d<br />
• Button
Digital clock<br />
• The digital clock displays date, time and/or day of week.<br />
• Possible to configure/adjust the object:<br />
− Date And Time<br />
− Date<br />
− Time<br />
− Show Day of Week<br />
− Show Seconds
Button<br />
• The Button tool is used to draw a button with a text/symbol. The button can via Actions or<br />
Script be set up to perform a specific task in run-time.<br />
• The displayed text can show a tag value, that can be set from the Dynamics tab using the<br />
G<strong>en</strong>eral control.
Button – g<strong>en</strong>eral settings<br />
• Alignm<strong>en</strong>t of text<br />
• Possible to display a Symbol inside of the button<br />
• The button is stylable<br />
• The text is configurable (it can be multiline)<br />
• Possible to make the button transpar<strong>en</strong>t
Button styles<br />
• Button styles was introduced in <strong>iX</strong> Developer 1.20<br />
− Default, Black, Classic, Chrome, Eclipse, Vintage, Glossy
Button shapes<br />
• The shape of the buttons can be modified using either the Property Grid or the<br />
Appearance property
Button - actions<br />
• The button can be configured to execute an action wh<strong>en</strong> the operator presses/clicks on the<br />
button
Multiple actions<br />
• It’s possible to execute multiple actions at the same time (without scripting)
Exercise 1 – M<strong>en</strong>u<br />
• Create a m<strong>en</strong>u that will be used to access all scre<strong>en</strong>s in the application (use the button<br />
object)<br />
• Add a Clock Object to the header of the scre<strong>en</strong><br />
• Rectangles with rounded corners gives a nice touch to the scre<strong>en</strong>
Background scre<strong>en</strong><br />
• Possible to create a common background for several scre<strong>en</strong>s<br />
• The background scre<strong>en</strong> can contain both dynamic and static objects
Background scre<strong>en</strong><br />
• It’s possible to have several layers of background scre<strong>en</strong>s (e.g footer and header)<br />
• Easy to configure:<br />
− Select a scre<strong>en</strong><br />
− Op<strong>en</strong> the Home Ribbon and select the desired background scre<strong>en</strong>
Scre<strong>en</strong> templates<br />
• The installation of <strong>iX</strong> Developer includes a number of scre<strong>en</strong> templates with<br />
basic functionality. It is also possible to save your own scre<strong>en</strong>s as scre<strong>en</strong><br />
templates, by right-clicking on the curr<strong>en</strong>t scre<strong>en</strong> and selecting Save Scre<strong>en</strong> as<br />
Template.
Popup scre<strong>en</strong><br />
• A scre<strong>en</strong> can easily be configured to act as a popup scre<strong>en</strong><br />
• Click on a scre<strong>en</strong> and th<strong>en</strong> select the G<strong>en</strong>eral ribbon<br />
• Possible to configure the size of the popup and the starting (x,y)-position<br />
• The Popup can be Modal/Non Modal<br />
• It’s also possible to configure the title of the popup
Popup scre<strong>en</strong><br />
• By clicking on the Modify Scre<strong>en</strong> Size/Position button it’s possible to resize and<br />
move the popup
Popup scre<strong>en</strong><br />
• It’s possible to define where the scre<strong>en</strong> should be placed/op<strong>en</strong>ed (x, y)<br />
• This is also possible to script
Slider<br />
• Object that changes the value of an analog signal<br />
• Support differ<strong>en</strong>t styles/skins
Slider – G<strong>en</strong>eral settings<br />
• Enable/disable Scale and Transpar<strong>en</strong>cy<br />
• Min/max value<br />
• Number of Major and Minor ticks<br />
• Style (Simple, Classic, Black, …)
Linear meter<br />
• Object that displays the value of an analog signal<br />
• Support differ<strong>en</strong>t styles/skins
Linear meter – G<strong>en</strong>eral settings<br />
• Enable/disable Scale and Transpar<strong>en</strong>cy<br />
• Min/max value<br />
• Number of Major and Minor ticks<br />
• Style (Simple, Classic, Black, …)
Circular meter<br />
• Object that displays the value of an analog signal<br />
• Supports differ<strong>en</strong>t styles/skins
Circular meter – G<strong>en</strong>eral settings<br />
• Enable/disable Scale and Transpar<strong>en</strong>cy<br />
• Min/max value<br />
• Number of Major and Minor ticks<br />
• Style (Simple, Classic, Black, …)<br />
• Start/End Angle
Circular meter – Region settings<br />
• It’s possible to define Low, Medium and High regions.<br />
• To disable a region set the Min/Max to 0
Analog numeric<br />
• Read/write numerical/ASCII values<br />
− Integer<br />
− Decimal<br />
− Binary<br />
− Hex<br />
− String (ASCII)
Analog numeric – G<strong>en</strong>eral settings<br />
• Data/Security<br />
• Display format<br />
• Visibility<br />
• Size and position<br />
• Alignm<strong>en</strong>t<br />
• Validation<br />
• Prefix/Suffix
Exercise 2 – Objects.<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Add a Linear meter and Slider to the scre<strong>en</strong><br />
• Add a Circular meter and an Analog numeric to the scre<strong>en</strong><br />
• Add an Ellipse object to the scre<strong>en</strong> and control the background color with a dynamic signal
Picture object<br />
• Picture object can be:<br />
− Static<br />
• MultiPicture object can be:<br />
− Digital (two states/symbols)<br />
− Analog (several states/symbols)
Symbol object – G<strong>en</strong>eral settings<br />
• Configure Symbols are used wh<strong>en</strong> you want to create a digital/multiple symbol object<br />
• An Action can be triggered wh<strong>en</strong> pressing/clicking on the text
Text object<br />
• Text object can be:<br />
− Static<br />
− Digital (two states/texts)<br />
− Analog (several states/texts)
Text object – G<strong>en</strong>eral settings<br />
• Possible to have multiline<br />
• Configure Texts is used wh<strong>en</strong> you want to create a digital/multiple text object<br />
• An Action can be triggered wh<strong>en</strong> pressing/clicking on the text
Exercise 3 – Digital objects<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Create a few MultiPicture-objects<br />
• Add a multiple text object to the scre<strong>en</strong>
Historical tr<strong>en</strong>d<br />
• Object that illustrates values in a time based graph<br />
• Logs data in a certain (configurable) time interval<br />
• Support for bit, 16-bit and 32-bit pres<strong>en</strong>tation formats<br />
• Can view historical data while the panel still log data in the background<br />
• The object supports differ<strong>en</strong>t styles/skins<br />
• Tr<strong>en</strong>d leg<strong>en</strong>d available<br />
• The object is possible to control via dynamics<br />
− Scales<br />
− Scaling<br />
− Control visibility of curves
Historical tr<strong>en</strong>d – G<strong>en</strong>eral settings<br />
• Number of Logged Rows<br />
• Enable/disable Scale,Transpar<strong>en</strong>cy and Grid<br />
• Style (Simple, Classic, Black, …)<br />
• Min/max value<br />
• Number of Major and Minor ticks
Historical tr<strong>en</strong>d – Add curves<br />
• Click on the Edit Curves button<br />
• Add curves and connect them to a tag<br />
• It’s possible to configure both Color and Thickness of the curve<br />
• Each curve can be scaled (e.g 0 – 4000 -> 0 – 100)
Historical tr<strong>en</strong>d – History mode<br />
• Actions are used to either Enter, Leave or Toggle Historical mode<br />
• It’s also possible to show a dialog where a start/<strong>en</strong>d time can be defined
Historical tr<strong>en</strong>d – Tr<strong>en</strong>d leg<strong>en</strong>d<br />
• An action is used to show the tr<strong>en</strong>d leg<strong>en</strong>d<br />
• From the leg<strong>en</strong>d it’s possible to control which curves that should be visible. It also displays<br />
the curr<strong>en</strong>t value from the cursor
Data logger<br />
• The same function as the Tr<strong>en</strong>d but with no object<br />
• Each logger can be configured to store all or only changed samples<br />
• Support for bit, 16-bit and 32-bit pres<strong>en</strong>tation formats
Data logger<br />
• Data Loggers are added from the Insert Ribbon<br />
• In the Home Ribbon it’s possible to configure which<br />
tags that should be logged
Data logger – G<strong>en</strong>eral settings<br />
• Possible to configure<br />
− Log interval/ev<strong>en</strong>t<br />
− Log changes only<br />
− Number of logged rows
Data logger – G<strong>en</strong>eral settings<br />
• Actions can be triggered wh<strong>en</strong>:<br />
− Log item values changed<br />
− Log values updated
Database viewer<br />
• New object – database viewer<br />
• Displays cont<strong>en</strong>t from compact sql databases (*.sdf) in runtime
Exercise 4 - Tr<strong>en</strong>d<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Add a Tr<strong>en</strong>d Object to the scre<strong>en</strong> and create 4 curves<br />
• Add buttons so that it’s possible to <strong>en</strong>ter/leave History mode<br />
• Add a button that shows the tr<strong>en</strong>d leg<strong>en</strong>d window
Alarm handling<br />
• Alarm handling in the terminal<br />
− Alarm ev<strong>en</strong>ts are stored in a database (compact SQL)<br />
− Alarms can be pres<strong>en</strong>ted in an Alarm Viewer<br />
− Support for both analog and digital signals<br />
− Alarm texts can be dynamic showing tags values in the text<br />
− Wh<strong>en</strong> the database has reached the configured limit (e.g 100 rows) the oldest inactive alarm will be<br />
deleted and replaced with the most rec<strong>en</strong>t alarm<br />
− Alarms can be divided in differ<strong>en</strong>t groups, makes it easier to organize the alarms<br />
− Alarms can trigger actions
Alarm Groups<br />
• Alarm handling in the terminal<br />
− Alarms are divided in groups<br />
− Possible to acknowledge all alarms in a specific group remotely<br />
− Possible to configure unique colors for each alarm group (active, inactive and acknowledged)
Alarm items<br />
• Alarm handling in the terminal<br />
− The alarms are configured in the “Alarm Items”-tab<br />
− Both digital and analog alarms are supported<br />
− Alarms can be acknowledged from the PLC using the Remote Acknowledge signal
Alarm items<br />
• The alarm text can be dynamic
Alarm info ev<strong>en</strong>t<br />
• Each alarm item can be assigned to an AlarmInfoEv<strong>en</strong>t<br />
• Click on the ”…”-button in Action column
Alarm info ev<strong>en</strong>t<br />
• Connect the desired action to the Alarm Info Ev<strong>en</strong>t<br />
• Wh<strong>en</strong> the Operator clicks on the Info button in the Alarm Viewer the action will<br />
be executed
Alarm server – G<strong>en</strong>eral settings<br />
• Tags that allows you to:<br />
− Acknowledge Alarms remotely<br />
− Clear the alarm list from the PLC<br />
− Enable/Disable the Alarm server
Alarm server – Action settings<br />
• Differ<strong>en</strong>t actions can be triggered wh<strong>en</strong> alarms are:<br />
− Acknowledged<br />
− Active<br />
− Inactive<br />
− Normal<br />
− …
Alarm import/export<br />
• Possible to import/export alarm items<br />
• Supports both text (*.txt) and excel files (*.xls)
Alarm viewer<br />
• Alarms are pres<strong>en</strong>ted in an Alarm Viewer with the alarm texts from the Alarm<br />
server<br />
• The Alarm Viewer is possible to customize, for an example:<br />
− Select which buttons that should be visible<br />
− Select which columns that should be displayed<br />
− Which alarm groups that should be pres<strong>en</strong>ted in the viewer
Exercise 5 – Alarms<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Add a few alarms to the alarm server<br />
• Connect an Info Scre<strong>en</strong> to at least one of the alarms<br />
• Add an Alarm Viewer to the scre<strong>en</strong>, also add objects that makes it possible to<br />
trigger the alarms
Alarm Distribution<br />
• The Alarm Distributor Server makes it possible to s<strong>en</strong>d alarm notification via<br />
printer, SMS or e-mail. The function can be <strong>en</strong>abled internally in a project, or in<br />
another panel/EPC that acts as a server towards several connected cli<strong>en</strong>ts<br />
Printout<br />
SMS<br />
Alarm Distribution - Configuration<br />
• A route defines a number of filtering rules for distribution of alarms. Multiple<br />
routes makes it possible to s<strong>en</strong>d differ<strong>en</strong>t kinds of notifications to various<br />
receivers.
Alarm Distribution - Address book<br />
• Click on the Address Book button to <strong>en</strong>ter names, e-mail addresses and/or phone<br />
numbers of the persons that are to be available for selection for distributed<br />
alarm messages
Alarm Distribution – Receiver selection<br />
• Click on the Receiver Selection button to set up receivers of each alarm<br />
distribution route; via e-mail, SMS or Printer (or all)
Alarm Distribution - Scheduler<br />
• Scheduling of each alarm distribution route can be configured on the Scheduler<br />
tab. Only alarms that occur betwe<strong>en</strong> the start and stop times will be distributed.<br />
• Example: One route per production shift (day, ev<strong>en</strong>ing, night)
Alarm server – Enable distribution<br />
• To <strong>en</strong>able s<strong>en</strong>ding alarms to printer, or via SMS or e-mail, the Alarm Distributor<br />
Server is used. In addition to the settings below, the Enable Distribution option<br />
for the alarm groups or alarm items also has to be checked.
Security<br />
• Protect objects, scre<strong>en</strong>s, recipes etc. against unauthorized use<br />
• Users can be divided in differ<strong>en</strong>t security groups (e.g Administrator and<br />
Operator)<br />
• A User can be a member of several security groups
Security – Configure groups<br />
• Op<strong>en</strong> the Security Manager property page<br />
• Groups are declared in the Groups tab<br />
• It’s possible to add/delete security groups as well as<br />
configuring which users that should belong to which<br />
group
Security – Configure users<br />
• Op<strong>en</strong> the Security Manager property page<br />
• Users are declared in the Users tab<br />
• It’s possible to add/delete users and assign security<br />
groups<br />
• A user can be a member of several groups
Security - Settings<br />
• Possible to configure if an “Access d<strong>en</strong>ied” message should be displayed if an<br />
operator tries to access an object without the necessary authority<br />
• Also possible to configure if objects should be e.g hidd<strong>en</strong>
Security – Login/logout.<br />
• Configure buttons with Login or Logout actions
Security – Add, edit and remove users in runtime<br />
• The Action “Show Users Dialog” allows an administrator to add, edit and remove<br />
users in run time.
Security – Import/Export users in runtime<br />
• It’s possible to export the curr<strong>en</strong>t user list as well as importing a new list
Security – Object.<br />
• Right click on an object and select the Security level required for changing<br />
status of the object (also possible to configure in the Home ribbon):
Exercise 6 – Security.<br />
• Add a few differ<strong>en</strong>t security groups/users to the application<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Connect a few objects to differ<strong>en</strong>t security groups<br />
• Hide a few objects if the user is not logged in<br />
• Add buttons that makes it possible to login, logout and export/import users
Audit trail<br />
• The Audit Trail function makes it possible to track operator actions.<br />
• It’s possible to define which actions and tags that should be logged to the Audit<br />
Trail.<br />
• The Audit trail is stored in a separate database, and the information can be<br />
displayed using the Audit Trail Viewer.
Audit trail - Configuration<br />
• FDA or Cyclic buffering strategy<br />
• Select the size of the database<br />
• Possible to select which actions that should be logged<br />
• Actions on tags can be logged by selecting Log to Audit<br />
Trail in the Tags configuration window.
Audit trail - Configuration<br />
• In the tag grid it’s possible to select which tags that should be logged to the<br />
database<br />
• It’s also possible to map texts to differ<strong>en</strong>t value ranges for the tag (e.g 0 =<br />
”Motor Off”, 1 = ”Motor On”)
Audit trail - Configuration<br />
• The texts can be either static or dynamic (based on the tag’s new value)
Audit trail viewer - Configuration<br />
• Possible to define which columns that should be displayed in the object as well<br />
as the width of each column
Exercise 7 – Audit trail.<br />
• Add AuditTrail to the application<br />
• Enable “Log to Audit Trail” for the controller tags<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Add an Audit Trail Viewer object to the scre<strong>en</strong>
Media objects<br />
• Media Player<br />
• PDF Viewer<br />
• Internet Browser
PDF Viewer.<br />
• Pdf files can be displayed in<br />
runtime using the PDF viewer<br />
object. The viewer can be<br />
connected to a default PDF-file.<br />
• It’s possible to add additional PDF:s<br />
in the project files folder
Media Player.<br />
• Media files can be added to the<br />
media player object, which allows<br />
starting and stopping the files in<br />
runtime<br />
• The following file formats are<br />
supported<br />
− AVI<br />
− MPG<br />
− WMV
Web Browser.<br />
• Web pages can be displayed using<br />
the web browser.<br />
• It is possible to allow showing<br />
certain defined web pages only, or<br />
a local htm/html file<br />
• Possibilites:<br />
− Internet<br />
− Local websites<br />
− VNC<br />
− Network Camera streaming<br />
− …
Possibilities with Web browser (PC runtime)
Exercise 8 – Media objects<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Create a Popup Scre<strong>en</strong> with a Media Player object<br />
• Add a Script so that the Media Player starts playing the file wh<strong>en</strong> the scre<strong>en</strong> is<br />
Op<strong>en</strong>ed
C# Script<br />
• Script language is C#, Full .NET framework is supported in PC/EPC-applications<br />
and Compact .Net framework in EXTER-applications<br />
• MSDN contains a lot of .NET related information<br />
− http://msdn.microsoft.com/<strong>en</strong>-us/library/67ef8sbd(VS.80).aspx<br />
• Scre<strong>en</strong> script<br />
• Controller script<br />
• Alarm server script<br />
• Script module<br />
− Global Script<br />
− Possible to execute from other scripts<br />
• The scripts can be debugged with a standard tool from Microsoft (Microsoft CLR<br />
Debugger). This software is free of charge!
Reuse code – Compon<strong>en</strong>t library<br />
• Script code can be dragged/dropped betwe<strong>en</strong> the Compon<strong>en</strong>t library and the<br />
script editor.<br />
• This way you can build nice script libraries that can be re-used in other<br />
applications
Ev<strong>en</strong>t driv<strong>en</strong> programming<br />
• All scripts in <strong>iX</strong> are executed wh<strong>en</strong> a certain ev<strong>en</strong>t is fired, for an example<br />
− ValueChange<br />
− Scre<strong>en</strong>Op<strong>en</strong>ed<br />
− AlarmAcknowledge<br />
− Click<br />
− …<br />
• An ev<strong>en</strong>t can be fired wh<strong>en</strong> a user/operator executes an action (e.g Click on a<br />
button)<br />
• Ev<strong>en</strong>ts can also be fired wh<strong>en</strong> external ev<strong>en</strong>ts occurs. For an example wh<strong>en</strong><br />
characters are received on the serial port
<strong>iX</strong> ev<strong>en</strong>ts<br />
• Change view to Script<br />
• All objects/ev<strong>en</strong>ts are available in the list
<strong>iX</strong> ev<strong>en</strong>ts<br />
• A delegate method is added automatically wh<strong>en</strong> double clicking on an ev<strong>en</strong>t<br />
(wh<strong>en</strong> the text is bold a method is assigned to the ev<strong>en</strong>t)<br />
• The code inside of this method will be executed wh<strong>en</strong> the user clicks on the<br />
button
Script module<br />
• Script module<br />
− Global Script<br />
− Possible to execute from other scripts<br />
− Possible to re-use scripts<br />
− Easier to maintain
Script module<br />
• Why is it easier to maintain a function in the Script module compared to copy/paste code?<br />
Scre<strong>en</strong> 1<br />
Function1<br />
Scre<strong>en</strong> 2<br />
Function1<br />
Scre<strong>en</strong> 3<br />
Function1<br />
Scre<strong>en</strong> 4<br />
Function1<br />
Scre<strong>en</strong> 5<br />
Function1<br />
Scre<strong>en</strong> 6<br />
Function1<br />
• If the developer needs to modify the code he has to find all places where the code has be<strong>en</strong><br />
duplicated, in this case 6 places<br />
• In a big application it’s likely that he will forget to modify the code in all places where it’s<br />
being used -> Unexpected behavior
Script module<br />
• Why is it easier to maintain a function in the Script module compared to copy/paste code?<br />
Scre<strong>en</strong> 1 Scre<strong>en</strong> 2 Scre<strong>en</strong> 3<br />
Scre<strong>en</strong> 4<br />
Script Module<br />
Function1<br />
Scre<strong>en</strong> 5<br />
Scre<strong>en</strong> 6<br />
• In this case the developer only needs to modify the function in the script module. This saves<br />
both time and reduces the likeliness of introducing bugs
Script – Code snippet<br />
• The Script Editor supports Code snippets. Press CTRL+K+X and select which<br />
function that should be added:
Access to <strong>iX</strong> objects<br />
• In order to access <strong>iX</strong> objects (e.g Tags, Recipe, Security) start with the keyword<br />
Globals<br />
• Example:
Script – Example 1<br />
• Write a value to a tag and change the text of a button
Script – Example 2<br />
• Script that shows a message box with a Yes/No<br />
question:
Script – Example 3<br />
• Arithmetic operations<br />
• Service = MaxHours - ActualHours
Script – Example 4<br />
• Function for s<strong>en</strong>ding E-mails
Script – Example 5.<br />
• Save/load text to a text file
Debug application with Visual Studio 2010<br />
• Microsoft Visual Studio Express 2010 can be used to debug scripts. It’s available<br />
free of charge from microsoft’s website.<br />
• Add the path to visual studio. Th<strong>en</strong> you only need to click on the debug button,<br />
this means that Visual studio will start automatically preloaded with all source<br />
files.
Exercise 9 – Scripting<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Add an Analog Numeric to the scre<strong>en</strong><br />
1.Add a button to the scre<strong>en</strong>, wh<strong>en</strong> the user clicks on the button a value should be<br />
writt<strong>en</strong> to the tag connected to the Analog Numeric<br />
2.Add a MessageBox with a Confirm question<br />
• Add a TextBox object and a button to the scre<strong>en</strong><br />
1.Show a MessageBox with the text from the TextBox<br />
2.Save the text to a text-file on your hard drive
Recipe managem<strong>en</strong>t<br />
• Save Analog and Digital signal values to the operator panel memory with a<br />
simple operation<br />
• Recipe managem<strong>en</strong>t <strong>en</strong>ables the operator to quickly and easily change the<br />
parameter settings wh<strong>en</strong> switching from one product to another in the<br />
production
Recipe managem<strong>en</strong>t<br />
• Recipes are added from the Insert Ribbon<br />
• In the Tag Configuration tab it’s possible<br />
to configure which tags/parameters that<br />
should be used in the recipe<br />
• A recipe can consist of maximum 256<br />
parameters
Recipe managem<strong>en</strong>t<br />
• Default recipes/values are added in the Runtime Data tab
Recipe managem<strong>en</strong>t – Load/Save/Delete recipes<br />
• Use buttons with action<br />
Load/Save/Delete Recipe<br />
• It’s also possible to save/load recipes<br />
from a script:
Exercise 10 – Recipes<br />
• Add a Recipe to the Application<br />
• Add a few recipe items<br />
• Add a new scre<strong>en</strong> to the application<br />
• Select a background scre<strong>en</strong><br />
• Add buttons that makes it possible to load, save and delete the recipes
Multiple language support<br />
• <strong>iX</strong> Developer supports multilingual applications<br />
• Translation of texts and system texts can be performed directly in the<br />
application, or via export to a text file to be translated in other software<br />
• Both system texts and user texts can be translated
Add languages<br />
• Click on MuliLanguage in the Project Explorer<br />
• Change Tab to Languages and click on the Add button in<br />
order to add languages to the application
Translate texts<br />
• Each language has a column where texts can be translated directly in <strong>iX</strong><br />
• It’s also possible to export the texts to a text file and s<strong>en</strong>d it to a translator
Auto translation<br />
• <strong>iX</strong> Developer includes a translation tool that uses Google Translate or Microsoft<br />
Bing Translator to offer quick translations of user-defined or system texts free of<br />
charge.
Change language in designtime<br />
• It’s possible to change language in design time<br />
− Select the desired language in the Home ribbon m<strong>en</strong>u
Change language in runtime<br />
• It’s possible to change the language in run time in two differ<strong>en</strong>t ways<br />
− Using Actions<br />
− Internal variable/PLC tag (each language is connected to an index (Default language =<br />
0))
Function keys<br />
• It’s possible to execute actions wh<strong>en</strong> function keys are pressed (using either keypanels<br />
(K60, K70 or K100) or touch panels with an external keyboard connected)
Exercise 11 – Function keys<br />
• Connect a keyboard to the <strong>iX</strong> panel (or run the application in the simulator)<br />
• Add a few differ<strong>en</strong>t function key actions<br />
• Test the application
Scheduler<br />
• Scheduler service can be added from the Insert ribbon<br />
− With the Scheduler you can set and reset digital signals relative the clock in the<br />
operator panel<br />
− Signal, period, start time and duration are configured for each Scheduler ev<strong>en</strong>t<br />
PLC<br />
M10<br />
Lamp
Scheduler<br />
• Scheduler service can be added from the Insert ribbon<br />
− Name: Symbolic name for the ev<strong>en</strong>t<br />
− Period: E.g once, every hour, every day, every month<br />
− Start date/time: The date and time for the first start of the interval. If a period is set<br />
the defined tag will be set again after the specified time.<br />
− Duration: The l<strong>en</strong>gth of the interval<br />
− Stop date/time: The date and time to reset the defined tag to „0‟. This value is used<br />
wh<strong>en</strong> “Stop Time Enable” is checked
Dynamics<br />
• The controls under the Dynamics tab are used to change the color, position, and<br />
visibility of an object, where the change is dep<strong>en</strong>dant on a tag value.<br />
• The properties are not the same for all objects<br />
• The properties that can be changed with dynamics are:<br />
− Move<br />
− Size<br />
− Fill color<br />
− Outline color<br />
− Visible<br />
− Blink<br />
− G<strong>en</strong>eral properties (dep<strong>en</strong>d<strong>en</strong>t of the selected object type)
Dynamics - Move<br />
• The dynamic signal ”Move” changes the location of an object. The change is<br />
based on a tag value.<br />
• To move an object vertically wh<strong>en</strong> a tag value changes:<br />
− Connect a tag<br />
− Move the ”ghost object” in the scre<strong>en</strong> to its final position. The coordinates for the<br />
object is updated.<br />
− Press OK to save and close the Move Dynamics Editor.
Dynamics - Size<br />
• The dynamic signal ”Size” changes the size of an object. The change is based on<br />
a tag value.<br />
• To change the size of an object wh<strong>en</strong> a tag value changes:<br />
− Connect a tag<br />
− Resize the ”ghost object” in the scre<strong>en</strong>. The coordinates for the object is updated.<br />
− Press OK to save and close the Resize Dynamics Editor.
Dynamics – Fill color<br />
• The dynamic signal ”Fill color” changes the background color of an object. The<br />
change is based on a tag value.<br />
• To change the color of an object wh<strong>en</strong> a tag value changes:<br />
− Connect a tag<br />
− Add colors for differ<strong>en</strong>t intervals<br />
− Press OK to save and close the Fill Color Dynamics Editor
Dynamics – Outline color<br />
• The dynamic signal ”Outline Color” changes the frame color of an object. The<br />
change is based on a tag value.<br />
• To change the frame color of an object wh<strong>en</strong> a tag value changes:<br />
− Connect a tag<br />
− Add colors for differ<strong>en</strong>t intervals<br />
− Press OK to save and close the Outline Color Dynamics Editor.
Dynamics – Blink<br />
• A dynamic blink function has be<strong>en</strong> implem<strong>en</strong>ted in 1.20<br />
• It’s possible to control the interval and wh<strong>en</strong> the object should blink using tags
Dynamics - Visible<br />
• The control in the Visible group determines if an object appears in the scre<strong>en</strong> or<br />
not. The visibility control is based on a tag value.<br />
• Select the tag that should control visibility. The object will be invisible on the<br />
scre<strong>en</strong> wh<strong>en</strong> the tag value is zero.
Dynamics – G<strong>en</strong>eral dynamics<br />
• Text<br />
− Text in for example Button and Text object can be based on values in tags<br />
• Foreground/Font Color<br />
− Foreground color can be based on values in tags. For an example a button foreground<br />
color is the color of the button text<br />
• IsEnabled<br />
− Access to objects can be restricted on values in tags. This can for example be used to<br />
disable a button
Offset/gain calculation<br />
• The pres<strong>en</strong>ted value = Tag’s value x Gain + Offset<br />
• Tag’s value = (Panel value-Offset)/Gain<br />
Temp: 25° C<br />
D0 = 1000<br />
25° C
Offset/gain calculation<br />
• Offset and Gain are configured in the Tags configuration grid.<br />
• Don’t forget to change the tags data type to float (otherwise the scaled value<br />
will be rounded up/down).
Index registers<br />
• Display value = the value in Register (the Object’s address + the value in the<br />
Index register)<br />
• If the value in indexRegister = 2 th<strong>en</strong> the analog numeric (connected to D0 and<br />
Index register 1) will pres<strong>en</strong>t the value in D2
Importing an Information Designer application<br />
• It’s possible to import an Information Designer application (EXTER) and convert<br />
it to an <strong>iX</strong>-application
Importing an Information Designer application<br />
• Select the project that should be imported as well as where the converted<br />
application should be stored<br />
• During the import, a log file of unsupported objects and functions is created. It<br />
can be saved to disk for future refer<strong>en</strong>ce.
Convert & resize applications<br />
• It’s possible to convert applications from PC <strong>iX</strong> Panel as well as changing the<br />
resolution
Special controls<br />
• Two PC only Special controls are included<br />
− Scre<strong>en</strong> Carousel<br />
• Navigation list box
Special controls – Scre<strong>en</strong> Carousel<br />
• Scre<strong>en</strong> Carousel<br />
− High impact object that gives a very nice look for scre<strong>en</strong> navigation<br />
− Rotating animation for scre<strong>en</strong> selection<br />
− Easy to configure<br />
• Number of visible objects<br />
• Total number of objects<br />
• Quick connect to existing scre<strong>en</strong>s<br />
• Drop shadow
Special controls – Navigation ListBox<br />
• Navigation List box<br />
− Easy m<strong>en</strong>u creation<br />
− Scroll animation for scre<strong>en</strong> selection<br />
− Touch fri<strong>en</strong>dly interface<br />
− Easy to configure<br />
• With or without text<br />
• Background color with gradi<strong>en</strong>ts<br />
• Corner rounding
Text library<br />
• With the text library function, text tables can be created, where values are<br />
linked to texts.<br />
• Possible to have gaps betwe<strong>en</strong> values/texts<br />
• Possible to import/export text library items
Expressions<br />
• The Expressions functionality is used wh<strong>en</strong> connecting an object to a tag and the<br />
purpose is not to use the tag value as it is<br />
• Expressions <strong>en</strong>able the user to e.g. extract a bit from an int, add a dynamic<br />
offset or gain, and th<strong>en</strong> to use this value for a specific object