iX Training
ADVANCED Version 2.0.2 2012/11/26
– Advanced -
Content Basic
Advanced A1.
Report Generator
B1.
General
A2.
Screen Alias
B2.
Basic Steps I
A3.
OPC UA Client / Server
B3.
Basic Steps II
A4.
Web Server
B4.
Dynamics
B5.
Actions
A5.
Audit Trail
B6.
Alarm Server
A6.
Alarm Client / Server
B7.
Media Controls
A7.
Alarm Distribution
B8.
Controller + Tags
A8.
Scheduler
B9.
Security / User Management
A9.
Datalogger/Advanced Trending
B10.
Multi Language
A10.
Visualization - Objects
B11.
Trend
B12.
Recipe
A11.
Expressions?
B13.
Text Library
A12.
Data Exchange?
B14.
Project / Panel Handling
A13.
Chart
B15.
Hints + Error Support
A14.
Current/New ScreenID
A15. Graphical Tips (http://ds1se.mlm.elc.beijer.se/web/B ExFilePileAut.nsf/fm.BE.Homepage?Ope nform&DocID=EC182B0A310C48A5C1257 A8D00487493)
2
Agenda A1. Reports 1.1 Reports - General 1.2 Reports – Excel Template 1.3 Reports – Actions 1.4 Exercise [A1] A2.
Screen Alias
A3.
OPC UA Client / Server
A4.
Web Server
A5.
Audit-Trail
A6.
Alarm Client / Server
A7.
Alarm Distribution
A8.
Scheduler
A9.
Datalogger / Database
A10. Visualization - Objects
3
1.1
Reports - General
•
The report generator allows generating excel reports based on an Microsoft Excel made report template
•
The generated report can be printed or saved as an excel file (USB, SD or FTP)
Excel Template
Actions
Generated Report
1. Print
2. Save as *.xls
4
1.2
Reports – Tag values
Integrating Excel Template
Description - All Formattings, Graphics, Charts, Fonts, Colors, … can be freely configured. - iX Tag values can be inserted into a cell by using a special Syntax:
<#Tag(TagName)> Examples: <#Tag(Application_PLC_PRG_Temp1)> = CoDeSys Tag <#Tag(SystemTagDateTime)> = iX System Tag
- Excel Template has to be saved in the format “Excel 97-2003-Worksheet (*.xls)”
TxA and TxB can only print text. This means that included charts, symbols etc. are excluded
5
1.2 Actions
Reports – Database Description - Create a new Sheet and name it <#Config>. This sheet will contain all database querys. When the report is generated this sheet will not be included - The database querys needs to be defined on Row10 (and below)
- The data retrieved fromthe SQL database, using the queries in the configuration sheet, can be presented in the report using Named ranges in Microsoft Excel. - Select the needed number of columns (in this sample 2 (Time and LogItem1)) - Select Insert
6
Name
Define
1.2 Actions
Reports – Database Description - Enter a name for the range. The name must be entered in the following format: “__QueryName__”. - Replace “QueryName” with the name that you have chosen for your SQL query
- To present the data in the report, enter the following syntax into the cells included in the named range: <#QueryName.DatabaseColumnName>
7
1.2
Reports - Excel Template
Integrating Excel Template
Description - Add Template: Add
Select Template
- Excel Template will be copied to the folder: Project Files\Reports\Templates
- The name of the report can be freely assigned
8
1.3 Actions
Reports - Actions Description - Action: Generate report
Option 1: Print to installed (Default-) printer
Option 2: Save template in (Excel-) file with timestamp e.g. Farm_Report 01.05.2012 12.45.12.xls
Locations to save: - Project files folder - Browse - Path
9
Project Files\Reports
Save as Dialog will be opened Input of absolute saving path
1.4
Exercise [A1]
Exercise [A1] 1. Open Microsoft Excel and and create a new Workbook 2. The first sheet should be basic, add some statics text and some tag values 3. The second sheet shall present data from a DataLogger (database content) 4. Insert a button with a Generate Report action 5. Simulate the application and make sure that the generated report is OK
10
Sequence A1.
Reports
A2. Screen Alias 2.1 Screen Alias – General 2.2 Screen Alias – 1. Alias Definition 2.3 Screen Alias – 2. Connect Alias to Object 2.4 Screen Alias – 3. Instances with Original Tags 2.5 Screen Alias – Call-Actions of Instances 2.6 Exercise [A2] A3.
OPC UA Client / Server
A4.
Web Server
A5.
Audit-Trail
A6.
Alarm Client / Server
A7.
Alarm Distribution
A8.
Scheduler
A9.
Datalogger / Database
A10. Visualization - Objects
11
2.1
Screen Alias - General
Screen Alias = Screen property. Tag-placeholder and screen instances can be projected. Every screen, that uses aliases can be configured with different Tag references and different instances. 1. Definition of Aliases, that can be defined as placeholder for „Original Tags“ 2. Assign Alias to Objects (Alias will be treated as same as an „Original-Tag“) 3. Create (Screen-) Instances and assign the Original Tags to them
E.g.: Popup with Alias function
E.g.: Screen Alias function
12
2.2
Screen Alias – 1. Alias Definition
Add Alias
Description Add: Inserts a new Alias Delete: Delete Alias Checkbox Data Type: Show tag data type Alias Name: Free definable placeholder name for tags Default Value: Optional pre-definition of a default tag Data Type: Optional selection of tag data type
13
2.3
Screen Alias – 2. Connect Alias to Object
Selection „Tags / Alias“
Description Default: Select a Tag Alias Function: At Tag selection: choose an Alias
Connect Alias instead of “real” tag
Inserted Alias is shown with: „#“
14
2.4
Screen Alias – 3. Instances with Original Tags
Register „Instances“
Description Add: Neue Instanz einfügen Delete: Instanz Löschen Column Instance: 1. Column is used as free definable symbolic instance name Other Columns: Columns show the projected aliases (here with default values)
Columnn Filling / Pressure: Columns show the projected aliases. Font Regular: Default Tags Font Bold: Inserted, projected „Original Tags“
15
2.5
Screen Alias – Call-Actions of Instances
Instance-Call Actions
Descriptions Instance Call: Works via „Show Screen“ Action
In the „Show Screen“ Action there is a Combo Box, where the different instances can be called.
16
Sequence A1.
Reports
A2.
Screen Alias
A3. OPC UA Client / Server 3.1 OPC UA – General 3.2 OPC UA – Server Configuration 3.3 OPC UA – Client Configuration 3.4 OPC UA – Tag Configuration 3.5 Exercise [A3] A4.
Web Server
A5.
Audit-Trail
A6.
Alarm Client / Server
A7.
Alarmverteilung
A8.
Zeitplaner
A9.
Datalogger / Database
A10. Visualization - Objects
17
3.1
OPC UA – General
OPC UA = OPC communication type (UA = unified architecture), which has evolved from the drawbacks of the existing OPC technology. Features: Setting up Panel Network (via Ethernet) for Tagvalue exchange Panels can be configured as Server or as Client Direct Communication to PLC‘s/Controller‘s or to generic ERP Systems No dependency on Microsoft © COM / DCOM architecture
Ethernet / Internet
Controller
PLC
18
3.2
OPC UA – Server Configuration
OPC UA Server
Description Server Configuration: System OPC UA-Server
OPC UA-Server Activation: Checkbox enables the OPC UA Server function Port: Free definable Port. Default: 4840 Login: - Checkbox enabled: Anonymous login is possible - Checkbox not set Free definable username and password can be defined
19
3.3
OPC UA – Client Configuration
OPC UA Client
Description In Tag Editor Controller - Check OPC UA-Server - Enter IP Address of Server
Add:
Controller Settings URL: Syntax: opc.tcp//IP-Address Authentication settings: - Anonymous - Via username and password Namespace-Settings: - Free definable Namespaces possible - Namespace-Separator: Default “:” - Default-Namenspace: Default NS2, “TagProvider” (iX iX)
20
3.4
OPC UA – Tag Configuration
Tag Configuration
Description
Tag Configuration: Server
- OPC UA Server (e.g. T7A Panel) communicates via ModBusTCP protocol to a PLC
Tag Configuration: Client
Tag Name
Tag Address
Temperature Pressure
40000 40010
- OPC UA Client (e.g. PC as control station) communicates with OPC UA Server Tag Name
Tag Address
Temp_T7A Pressure_T7A
Temperature Pressure
Client Tag Address = Name of Server Tag Client Tag Name can be freely defined (does not need to match the server syntax)
21
3.5
Exercise [A3]
Exercise [A3] Tag Configuration: Server
Tag Configuration: Client
22
Sequence A1.
Reports
A2.
Screen Alias
A3.
OPC UA Client / Server
A4. Web Server 4.1 Web Server – General 4.2 Web Server – HTML Configuration 4.2 Web Server – Basic HTML sample 4.3 Exercise [A4] A5.
Audit-Trail
A6.
Alarm Client / Server
A7.
Alarmverteilung
A8.
Zeitplaner
A9.
Datalogger / Database
A10. Visualization - Objects
23
4.1
Web Server – General
Web Server = On each iX panel, a simple web server can be activated. iX remote maintenance Screens can be projected with every html Editor Compact information (overview) JavaScript
Ethernet / Internet
iX V 2.0: One Connection PC
24
Panel possible
4.1
Web Server – General
Configuration
Description Web Server Configuration: System Webserver
Web Server Activation: Checkbox enables the Web Server function Port: Free definable Port. Default: 80 Authentication settings: - Checkbox not set: Anonymous authentication - Checkbox set: Free definable username and password can be set
25
4.1
Web Server – General
Configuration
Description - The files must be stored in the folder: [Projekt]\Project Files\WebSite
- Startpage: index.html
26
4.2
Web Server – HTML Configuration
File Structure
Description
<script src="/assets/iX.js" type="text/javascript"> <script type="text/javascript"> iX.setup({});
- Initializes the SDK
Tag 1 = <span data-ix-tag="Tag1">
- Basic definition of a Tag via attribute:
- This code needs to be placed in the HTMLpage’s Head
<span data-ix-tag=“[TagName]”> - Placed in the Body area
Tag1= <span data-ix-tag="Tag1" data-ix-refresh="interval">
Example: Update interval (without parameter = 1s)
Tag2= <span data-ix-tag="Tag2" data-ix-format="0.000”>
Example: Tag formatting 1 digit / 3 decimals
Date = <span data-ix-tag="SystemTagDateTime" data-ix-format="dm-Y G:i">
Example: Tag Formatting of iX System Tag “Date”
Attributes can be combined Additional formattings and Info‘s via seperate manual: „Configuration of Webpages.pdf“ available
27
4.3
Web Server – Basic HTML Sample
File Structure
Description
<script src="/assets/iX.js" type="text/javascript"> <script type="text/javascript"> iX.setup({});
- Initialisierung des SDK für die generelle Web Server Verwendung
Tag 1 = <span data-ix-tag="Tag1">
- Basic definition of a Tag via attribute: <span data-ix-tag=“[TagName]”>
- Platziert im “Head” Bereich
- Placed in the “Body” area Tag1= <span data-ix-tag="Tag1" data-ix-refresh="interval">
Example: Update interval (without parameter = 1s)
Tag2= <span data-ix-tag="Tag2" data-ix-format="0.000”>
Example: Tag formatting 1 digit / 3 decimals
Datum= <span data-ix-tag="SystemTagDateTime" data-ixformat="d-m-Y G:i">
Example: Tag Formatting of iX System Tag “Date”
Attributes can be combined Additional formattings and Info‘s via seperate manual: „Configuration of Webpages.pdf“ available
28
4.4
Exercise [A4]
File Structure
Description
<script src="/assets/iX.js" type="text/javascript"> <script type="text/javascript"> iX.setup({});
- Initialisierung des SDK für die generelle Web Server Verwendung
Tag 1 = <span data-ix-tag="Tag1">
- Basic definition of a Tag via attribute: <span data-ix-tag=“[TagName]”>
- Platziert im “Head” Bereich
- Placed in the “Body” area Tag1= <span data-ix-tag="Tag1" data-ix-refresh="interval">
Example: Update interval (without parameter = 1s)
Tag2= <span data-ix-tag="Tag2" data-ix-format="0.000”>
Example: Tag formatting 1 digit / 3 decimals
Datum= <span data-ix-tag="SystemTagDateTime" data-ixformat="d-m-Y G:i">
Example: Tag Formatting of iX System Tag “Date”
Attributes can be combined Additional formattings and Info‘s via seperate manual: „Configuration of Webpages.pdf“ available
29
Sequence A1.
Reports
A2.
Screen Alias
A3.
OPC UA Client / Server
A4.
Web Server
A5. Audit Trail 5.1 Audit Trail – User Actions 5.2 Audit Trail – Tag Value Changes 5.3 Audit Trail - Viewer 5.4 Audit Trail – Database Backup 5.5 Exercise [A5] A6.
Alarm Client / Server
A7.
Alarm Distribution
A8.
Scheduler
A9.
Datalogger / Database
A10. Visualization - Objects
30
5.1
Audit Trail – User Actions
Audit Trail = Logging of user actions or Tag value changes to track the entire process.
User Actions
Description Log All/None : Check all/no checkbox FDA - Log entries are not overwritten - If 80% of the database is achieved: User warning + request to export data. Option: Increase size of Audit-Trail-Database Max. Database size is reached: Logging will be stoped and and and locks the Panel for further log actions Cyclic Buffering - Log entries will be overwritten (oldest entry, if database is full) Max. Database size [MB] Size of Audit Trail Database
31
5.2
Audit Trail – Tag Value Changes
Tag Value Changes
Description If an Audit Trail Function is inserted: 2 additional columns in the Tag Editor (shown, if checkbox „Others“ is set) 1. Log to Audit Trail Selection which Tag should be logged 2. Audit Trail Description Additional column to describe the logging action closer Custom Audit text: Tag value independent, static descriptions {0} = Tag‘s value berfore Write {1} = Tag‘s value after Write
Custom Audit text: Dynamics descriptions, based on Tag value
32
5.3
Audit Trail – Viewer
Audit Trail Viewer Control Configure Columns: Doubleclick on the control D e s i g n t i m e
Available, addable columns: Message: Description: Value Before: Value After: Time Stamp: User Name:
R u n t i m e
33
Systemmessage for Log-Event Self-defined description Tag value before change Changed value of Tag Timepoint of Log-Events Actual logged in user
5.4
Audit Trail – Database Backup
Audit-Trail Aktion Database: can be exported/copied to: USB media
Database: can be exported/copied to: USB media SD Card the Project folder “Project Files” The „Project Files“ folder can be accessed via FTP, if the FTP functionality was enabled via „System“.
34
Sequence A1.
Reports
A2.
Screen Alias
A3.
OPC UA Client / Server
A4.
Web Server
A5.
Audit-Trail
A6. Alarm Client / Server 6.1 General 6.2 Alarm Server 6.3 Alarm Client A7.
Alarm Dstribution
A8.
Scheduler
A9.
Datalogger / Database
A10. Visualization Objects
35
6.1
Alarm Client / Server - General
The Alarm Server distributes alarms to all connected Alarm Clients (via Ethernet). The alarm configuration and storage is done only on the Alarm Server. Simple and efficient method, to have the same, actual alarms synchronized on different Panels. Changes (e.g. Acknowledge) of one Clients dates up all connected Clients.
Topology:
Alarm Server Alarm1 Alarm2 Alarm3
Alarm1 Alarm2
Alarm1
Alarm3
Alarm2 Alarm3
Alarm Client Alarm Client 36
6.2
Alarm Server
Alarm Server = Definition, creation and generation of alarms Alarm Client = Synchronizes with the server and displays the server alarms.
Alarm Server Configuration
Description Doubleclick on the „Alarm Server Banner“. In order to switch the „Misc“ properties.
Settings: ServerMode: Both Server shows alarms and distributes them to the connected clients
Server Port: 1000 1000 is just an example, Client Panels must have the same Port
Alarming-Basics you will find in: BASIC Training Chapter 6 37
6.3
Alarm Client
Alarm Server = Definition, creation and generation of alarms Alarm Client = Synchronizes with the server and displays the server alarms.
Configuration of Alarm Client(s)
Description Click on the Alarm Viewer Control
Settings in “Misc” of Alarm Viewer Control: Server Address: [IP of the Server] Clients connect to the entered IP Address Server Port: 1000 1000 is just an example, configuration must correspond to the server setting
38
Sequence A1.
Reports
A2.
Screen Alias
A3.
OPC UA Client / Server
A4.
Web Server
A5.
Audit-Trail
A6.
Alarm Client / Server
A7.
Alarm Distribution 6.1 General 6.2 Alarm Server 6.3 Alarm Client
A8.
Scheduler
A9.
Datalogger / Database
A10. Visualization Objects
39
Alarm Distribution The Alarm Distributor Server makes it possible to send alarm notifications via printer, SMS or E-mail The function can be either local (connecting to an “internal” server) or external (connecting to another panel acting as alarm distributor server)
Alarm Distributor Client
Alarm Distributor Server
Printer
E-mail
SMS
6.2
Alarm Distributor – Configuration
Alarm Distributor Configuration
Description Add Alarm Distributor to the application Insert
Alarm Distributor
Add: Adds a route to the server A route defines a number of filtering rules for distribution of alarms. Multiple routes makes it possible to send different kinds of notifications to various receivers. Delete: Deletes the selected route Address Book: Contains list of all users (e-mail/phone number) Receiver Selection: Select which users that should be notified when alarm occurs Configure Distribution Devices: Configure Printer, SMTP Client and SMS provider
41
6.2
Alarm Distributor – Address Book
Alarm Distributor Configuration
Description Address Book: Each user needs to have: First Name (mandatory) Last Name (optional) E-mail (optional) Phone number (optional) Receiver Selection: Select which users that should receive SMS or E-mail. It’s also possible to decide if the alarms should be printed. Use the << or >> buttons to add/remove receivers to routes.
42
6.2
Alarm Distributor – Address Book
Alarm Distributor Configuration
Description Filter: Define which alarms that should be disitributed, e.g alarms in a Group named “Critical” Define which alarm states that should be distributed (default: Active only)
Scheduler: Scheduling of each alarm distribution route can be configured in the Scheduler tab. Only alarms that occur between the start and stop times will be distributed. Example: One route per production shift (day, evening, night)
43
6.2
Alarm Distributor – Address Book
Alarm Distributor Configuration
Description From name: Optional name From Email Address: Optional E-mail SMTP Server Name/IP: Address of SMTP server that will receive the alarm E-mails. Port: SMTP Server’s port number (default 25) Code page: 65001 = Unicode. If a limited E-mail client is used then it’s possible to define other code pages Authentication Mode: Decide if Authentication should be used or not. User Name/Password: Required in order to connect to E-mail server that requires ASMTP Subject/Body: Define the e-mails subject and content. {n} Texts are populated automatically by iX Runtime (e.g Alarm text = {3})
44
Alarm Distribution - Configuration A route defines a number of filtering rules for distribution of alarms. Multiple routes makes it possible to send different kinds of notifications to various receivers.
Alarm Distribution - Address book Click on the Address Book button to enter names, e-mail addresses and/or phone numbers of the persons that are to be available for selection for distributed alarm messages
Alarm Distribution – Receiver selection Click on the Receiver Selection button to set up receivers of each alarm distribution route; via e-mail, SMS or Printer (or all)
Alarm Distribution - Scheduler Scheduling of each alarm distribution route can be configured on the Scheduler tab. Only alarms that occur between the start and stop times will be distributed. Example: One route per production shift (day, evening, night)
Alarm server – Enable distribution To enable sending alarms to printer, or via SMS or e-mail, the Alarm Distributor Server is used. In addition to the settings below, the Enable Distribution option for the alarm groups or alarm items also has to be checked.
Demonstration – Alarm Distribution Add the Alarm Distributor service to your application The SMTP-server’s IP-address is 192.168.98.200 The mail should be sent to
[email protected]
iX ADVANCED TRAINING
51