ProSoft Technology ProSoft i-View User Manual

ProSoft i-View
Mobile Process Monitoring and Control Application
Version 2.0.2
USER MANUAL
Your Feedback Please
We always want you to feel that you made the right decision to use our products. If you have suggestions, comments, compliments or complaints about our products, documentation, or support, please write or call us.
How to Contact Us
ProSoft Technology
5201 Truxtun Ave., 3rd Floor Bakersfield, CA 93309 +1 (661) 716-5100 +1 (661) 716-5101 (Fax) www.prosoft-technology.com support@prosoft-technology.com
Copyright © 2011 ProSoft Technology, Inc., all rights reserved.
ProSoft i-View User Manual
September 29, 2011
ProSoft Technology ®, ProLinx ®, inRAx ®, ProTalk ®, and RadioLinx ® are Registered Trademarks of ProSoft Technology, Inc. All other brand or product names are or may be trademarks of, and are used to identify products and services of, their respective owners.
ProSoft Technology® Product Documentation
In an effort to conserve paper, ProSoft Technology no longer includes printed manuals with our product shipments. User Manuals, Datasheets, Sample Ladder Files, and Configuration Files are provided on the enclosed CD-ROM in Adobe® Acrobat Reader file format (.PDFs). These product documentation files may also be freely downloaded from our web site: www.prosoft-technology.com
Quick Start
What is ProSoft i-View?
ProSoft i-View is a native iPhone® and iPod touch® application for real-time monitoring of industrial PLC­based systems and processes.
In can be applied to building automation, industrial process control, mini-hydro power plants, water plants, and applications where reliable, instant access to real-time remote data is essential.
Main Features
o
Local or remote access, and any number of concurrent PLCs
o
Very fast, independent of project size, immediate connection and display
o
Integer, floating-point, and boolean values
o
Advanced String and Arrays Support
o
Direct file import from Excel
o
Configurable accounts with access levels
o
Alarms, trend graphs
o
Lookup texts, expressions
o
Direct connection to PLCs and RTUs without servers
o
TCP/IP-based security
How to Use ProSoft i-View in Five Simple Steps
1 Create an Excel sheet that specifies parameters for the variables to be controlled.
See Data Source Files (page 15).
2 Export or save into a CSV file. 3 Import the file created in Step 2 into ProSoft i-View. See File Import (page 63). 4 Set the PLC IP address in ProSoft i-View if you did not do so in Step 1.
See Network Settings (page 75).
5 Monitor process variable states and values from anywhere with mobile or WiFi access.
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Contents Version 2.0.2 User Manual
Contents
Your Feedback Please ........................................................................................................................ 2
How to Contact Us .............................................................................................................................. 2
ProSoft Technology® Product Documentation .................................................................................... 2
Quick Start 3
What is ProSoft i-View? ...................................................................................................................... 3
Main Features ..................................................................................................................................... 4
How to Use ProSoft i-View in Five Simple Steps ................................................................................ 4
1 General Aspects 7
1.1
Supported Protocols .................................................................................................. 8
2 User Interface Elements 9
2.1
2.2
2.3
2.4
2.1.1
2.1.2
2.1.3
2.1.4
2.1.5
Tabbed Interface ..................................................................................................... 10
Settings.................................................................................................................... 10
File Server ............................................................................................................... 10
Files ......................................................................................................................... 10
Connections ............................................................................................................ 10
Home ....................................................................................................................... 10
Variables in ProSoft i-View ...................................................................................... 10
Home Tab Bar and Navigation Bar ......................................................................... 12
Bottom Panel ........................................................................................................... 13
3 Data Source Files 15
3.1
3.1.1
3.1.2
3.1.3
3.1.4
3.1.5
3.1.6
3.1.7
3.1.8
3.1.9
3.1.10
3.1.11
3.1.12
3.1.13
3.2
3.2.1
3.2.2
3.3
ProSoft Technology, Inc. Page 5 of 106 September 29, 2011
Data Sources Created in Excel ............................................................................... 15
Specification of Variable Names (Column A) .......................................................... 16
Variable Types (Column B) ..................................................................................... 18
Variable Addresses (Column C) .............................................................................. 20
Attributes (Column D) .............................................................................................. 24
Attribute Scope and Type ........................................................................................ 25
Tag Attributes .......................................................................................................... 25
Global Attributes ...................................................................................................... 33
Pages, Sections, Rows and Data Sources ............................................................. 36
Lookup Tables ......................................................................................................... 37
Alarms ..................................................................................................................... 39
Comments in Data Sources .................................................................................... 40
Specification of Communication Protocol................................................................ 40
Expressions ............................................................................................................. 46
Rockwell RSLogix 5000 as a Data Source Generator ............................................ 60
Building a Project in RSLogix 5000 ......................................................................... 60
Exporting Controller Tags from RSLogix 5000........................................................ 60
Editing Source Files in a Text Editor ....................................................................... 61
Contents ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
4 File Import into ProSoft i-View 63
4.1
4.2
4.3
Source Files Supported by ProSoft i-View ............................................................. 65
Other Files Supported by ProSoft i-View ................................................................ 66
Custom Company Logo .......................................................................................... 67
5 Connections 69
6 User Accounts 71
6.1
6.2
Restrictions for Non-Administrator Users ............................................................... 72
Managing Accounts ................................................................................................ 73
7 Network Settings for Local Access 75
7.1
7.2
PLC Settings for Local Access ............................................................................... 76
ProSoft i-View Settings for Local PLC Access ....................................................... 77
8 Network Settings for Remote Access 79
9 Security 81
9.1
9.2
9.3
9.1.1
9.2.1
Validation Codes ..................................................................................................... 81
Custom Validation Tag ........................................................................................... 83
Background Task Processing ................................................................................. 84
Keep Connected ..................................................................................................... 84
Performance ........................................................................................................... 86
10 Pre-installed Examples 89
10.1
10.2
10.3
10.4
10.5
10.6
10.7
10.8
10.9
10.10
10.11
10.12
10.13
10.14
10.14.1
DataTypesModbus.csv ........................................................................................... 91
DataTypesModbusWSource.csv ............................................................................ 92
EIP_TAG_Examples.csv ........................................................................................ 93
EIP_PCCC_Examples.csv ...................................................................................... 94
PagesExampleModbus.csv .................................................................................... 95
PagesExampleEIP.csv ........................................................................................... 96
StylesExampleModb.csv ......................................................................................... 97
StylesExampleEIP_PCCC.csv ................................................................................ 98
AlarmsModbus.csv ................................................................................................. 99
AlarmsEIP_PCCC.csv .......................................................................................... 100
ColorfulControlsModbus.csv ................................................................................. 101
ColorfulControlsEIP_PCCC.csv ............................................................................ 102
Formula-ONE.csv ................................................................................................. 103
Document Revision History .................................................................................. 104
Version 2.0.0. ........................................................................................................ 104
Index 105
Page 6 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application General Aspects Version 2.0.2 User Manual
1 General Aspects
In This Chapter
Supported Protocols ................................................................................ 8
ProSoft i-View is presented in a tabbed interface. Every tab has its own role within the application and allows for different functions. With ProSoft i-View you can monitor data coming from various PLCs.
Generally, you will use the S deployment stages.
The H
OME
tab shows real-time values of process variables in PLCs, and is the one you
will use for normal monitoring. ProSoft i-View automatically goes to this tab on launch. ProSoft i-View uses the concept of Data Sources (see Data Sources (page 15)) and
Connections (see Connections (page 69)) to do its job. Data Sources contain the variable definitions and Connections represent links with PLCs. A Source is always associated with a Connection, but a single Connection can belong to several Sources.
ProSoft i-View also supports user accounts with access levels that can limit the ability to perform certain operations
ETTINGS
, F
ILE SERVER
, F
ILES
, and C
ONNECTIONS
tabs during
ProSoft Technology, Inc. Page 7 of 106 September 29, 2011
General Aspects ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
1.1 Supported Protocols
ProSoft i-View gets variable values from industrial PLCs by polling them using TCP/IP industrial protocols. The following protocols are supported.
PROTOCOL NAME
Modbus TCP Schneider® Electric, Automation Direct®,
EIP/Native Allen Bradley® ControlLogix® and
EIP/PCCC Allen Bradley SLC™ 500 and
SUPPORTED PLCs or Brands (Not exhaustive)
Phoenix Contact®, Wago®...
CompactLogix™
MicroLogix™ controllers
REMARKS
For communication with PLCs and RTUs using the Modbus TCP/IP specification
Native CIP® communications using EtherNet/IP™ Explicit Messaging
PCCC commands (DF1) encapsulated in EtherNet/IP.
Page 8 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Interface Elements Version 2.0.2 User Manual
2 User Interface Elements
In This Chapter
Tabbed Interface ................................................................................... 10
Variables in ProSoft i-View .................................................................... 10
Home Tab Bar and Navigation Bar ........................................................ 12
Bottom Panel ......................................................................................... 13
This section provides an overview of the main aspects of the ProSoft i-View user interface. It is not an exhaustive explanation. Most interface elements will be described as needed in later sections.
ProSoft Technology, Inc. Page 9 of 106 September 29, 2011
User Interface Elements ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
2.1 Tabbed Interface
ProSoft i-View uses the typical iPhone® tabbed interface to organize several aspects of the application. On each tab, a navigation interface is usually presented. Not all tabs are available to all user accounts and not all the options in a tab are accessible to all users. Five tabs are available.
2.1.1 Settings
Available to all users, but with restricted options for non-Administrator users. From this tab, Administrator users can create accounts, log in to a particular account, set several user interface behaviors, and specify default communication settings.
Non-Administrator users have all options disabled except the log in feature.
2.1.2 File Server
Only available to the Administrator user. Allows for managing, uploading, and downloading files into ProSoft i-View through an embedded Web Server.
2.1.3 Files
Only available to the Administrator user. Presents a list of source files containing tag definitions, and allows for placing a selection of the relevant ones for an application.
2.1.4 Connections
Available to all users, but with restricted options for non-Administrator users. Presents a series of entries, called connections, that represent actual links to PLCs. Within each connection, you can check the communication status and set validation codes. Relevant communication settings and parsing information is presented for source files related to each connection. You can also switch monitoring ON or OFF from this section.
Non-Administrator users are allowed only to switch monitoring ON or OFF from this tab. Connections are hidden for these users.
2.1.5 Home
This is the main view and the place where actual tags and tag values are presented. It is available to all users, but access levels on tags are applied depending on the current source files configuration, so what each user views may vary. Trend graphs and alarms are also displayed in this tab.
2.2 Variables in ProSoft i-View
Process variables or tag values coming from PLCs are organized in ProSoft i-View as a list with sections in a way similar to the iPhone Contacts Application. The specific display may vary depending on variable type, style, and other characteristics.
Page 10 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Interface Elements Version 2.0.2 User Manual
On the left side of each row, the list shows relevant information for identifying variables, such as their name, or their particular role in the monitored process. Real-time values of variables or suitable controls for interacting with them are shown on the right side.
The following examples demonstrate several ways of displaying elements on the Home view list.
ProSoft Technology, Inc. Page 11 of 106 September 29, 2011
User Interface Elements ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
2.3 Home Tab Bar and Navigation Bar
The Home tab is where tags are displayed and where users can interact with their PLC variables. Like most iPhone productivity applications, the interface consists of a navigation bar on top, and a tab bar at the bottom of the screen. The standard iPhone status bar is always visible in ProSoft i-View.
Page 12 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Interface Elements Version 2.0.2 User Manual
Tab Bar and Navigation Bar Hidden Tab Bar and Navigation Bar
To optimize the available space on the Home tab view, users can choose to hide the tab bar as well as the navigation bar as shown in the above screenshots.
You can perform the following interactions on these basic interface elements.
To hide or show the tab bar on the Home view, use the H
IDE BOTTOM BAR
option on
the Settings tab.
To scroll to the top of the Tags table, tap on the status bar at the top of the iPhone
screen.
To hide or show the navigation bar on the Home view, use a scroll down motion while
on top of the Tags table.
To switch from one page to another, use a scroll left or scroll right motion on the page
title.
To hide or show the page control on the navigation bar, use the P
AGE DETENTS
option
on the Settings tab.
To navigate to the list of pages, tap on the navigation bar's left button.  To see alarms or trend graphs, tap on the navigation bar's right button.
2.4 Bottom Panel
Tapping on the navigation bar's right button in Home view will cause the bottom panel to appear.
The various user interface elements in it allow you to view and acknowledge alarms, as well as to create any number of trend graphs with any number of plots in them.
ProSoft Technology, Inc. Page 13 of 106 September 29, 2011
User Interface Elements ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
Just scroll the panel left and right to move to various pages on it. The page control on the bottom also provides a way to switch between bottom panel pages
Page 14 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
3 Data Source Files
In This Chapter
Data Sources Created in Excel ............................................................. 15
Rockwell RSLogix 5000 as a Data Source Generator ........................... 60
Editing Source Files in a Text Editor ..................................................... 61
Source files contain information that ProSoft i-View needs for visualizing PLC process variables as required by users.
ProSoft i-View accepts csv files created in Excel or Open Office. For some PLC brands, it also supports files directly created from PLC vendors' development tools, such as Allen Bradley RSLogix.
Source files imported into ProSoft i-View are shown in the Files tab under the Sources section. One or more sources can be selected and variables from all of them will be displayed depending on current user access level.
Each source refers to a single PLC, but several sources can refer to the same PLC. All sources that point to the same PLC are automatically joined into a single connection.
Note: Be sure you have at least one selected source or ProSoft i-View will not display any variables.
3.1 Data Sources Created in Excel
You can use Excel or Open Office to compose a data source file for ProSoft i-View. The file must be exported or saved in CSV format.
ProSoft Technology, Inc. Page 15 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
Note: CSV file format is not identical for all language localizations due to different use of delimiters. ProSoft i-View accepts any csv files in any of the supported languages, but unfortunately this is not the case for MS Excel. Consequently, Excel may not correctly open the provided examples in the wrong language.
An Excel spreadsheet with variable specifications has four (4) columns, and one row per variable.
ProSoft i-View looks for the following information in each column. Column A : variable name Column B : data type Column C : variable address Column D : tag or global attributes including display and communication attributes
3.1.1 Specification of Variable Names (Column A)
Tag names are entered in column A, they must begin with a letter and should not contain spaces or special characters. For Register or Memory Area based protocols, tag names are only informative or for documentation purposes. Variables can hold numeric values, strings or arrays.
For EIP/Native, variable names are symbolic names that are actually sent to remote devices for communications. In this case, any valid reference to a scalar type (see Variable Types (page 18)), including members of structures or array elements, is allowed.
Page 16 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
EIP/Native protocol (AB Logix controllers) Legacy Note
Prior to ProSoft i-View version 1.5, EIP/Native tag names used to be specified in Column A. However, with the incorporation of expressions and in order to favor a general syntax for all protocols, this has been deprecated. From ProSoft i-View version 1.5, it is obligatory to adhere to the General Rule if you want to use tags in expressions. In this case you must specify EIP/Native as communication protocol and you have to set the actual PLC tag name in Column C instead of column A. The name that you enter in Column A can be used then in expressions. If you are not going to use expressions you can still enter a EIP/Native PLC tag name in Column A and write "TAG" in column C as in pre 1.5 versions. Although this is still allowed and existing source files will continue to work, it is recommended for integrators to switch to the new syntax for new projects and to start a transition plan for existing ones.
For example, myStructData[2,3].intMember may refer to an integer value referenced by the intMember member of element (2,3) of an array of structures. Look at the EIP_TAG_Examples.csv template for more examples of how to specify tag names for Allen Bradley Logix controllers.
As a general rule, any Tag name path that refers to a scalar value (BOOL, SINT, INT, DINT, REAL) in a Logix Controller will be accessed by ProSoft i-View.
Note that ProSoft i-View performs a Validation Code security check before any other attempt to access any tags is made; therefore, it is mandatory to have a tag named SMValidationCode of type INT in your PLC. For more information, see Validation Codes (page 81).
Tag Scope
Tags can be defined to have a local or global scope
Local tags are identified as per the general specification of variable names, that is beginning with a letter. Global tags are identified by placing a $ sign before their actual name.
Examples:
local_var $global_var
Local tags have a scope limited to the data source file they are in. When a local name is found in an expression its definition is looked for only in the same file the expression appears, therefore you can use the same names and expressions in several source files without conflicts.
Global tags have an application wide scope so you can only have single instances of them across all selected source files. The advantage of using them is that you can access to their values from anywhere in your project even if the project is made of several source files.
ProSoft Technology, Inc. Page 17 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
3.1.2 Variable Types (Column B)
Data types determine in part how variables will be displayed. Non-boolean scalar types can be represented in various ways such as by a number, a slider control, or a progress bar. Boolean values can also be displayed in several formats depending on attributes.
Arrays of values can also be stored in variables and transferred from/to PLCs. By properly using array expressions you can retrieve individual values as desired. To indicate that a variable holds an array you append [n] to its data type. In such case, ‘n’ indicates the total number of elements that the array will hold.
Page 18 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
The following types are supported.
DATA TYPE REMARKS
BOOL[n] Value that can adopt one of two states
SINT[n] 8-bit signed integer value (-128 ... +127)
INT[n] 16-bit signed integer value (-32768 ... +32767)
UINT[n] 16-bit unsigned integer value (0 ... 65535)
UINT_BCD[n] 4-digit BCD value stored in a 16-bit register using 4 bits per digit (0 ... 9999)
DINT[n] 32-bit signed integer value (-2147483648 ... +2147483647)
UDINT[n] 32-bit unsigned integer value (0 ... 4294967295)
UDINT_BCD[n] 8-digit BCD value stored in two 16-bit registers using 4 bits per digit (0 ...
99999999)
REAL[n] 32-bit floating-point value (IEEE 754) (approx -1e38 ... +1e38)
CHANNEL[n] Same as UINT
WORD[n] Same as UINT
DWORD[n] Same as UDINT
STRING[n] Type containing a characters string. Actual representation depends on
protocol, for example Allen Bradley controllers can hold up to 82 character bytes. Strings on controllers are interpreted by default as per the WINDOWS­LATIN1 encoding, but other encodings are possible if a Explicitly Encoding or a UTF-16 file is given. The STRING type should be used with the appropriate string memory area or string tag type in the controller when available.
On protocols with no explicitly support for strings ProSoft i-View uses a generic string representation consisting on a leading word (16 bit register) containing the length of the string followed by a 82 byte long string buffer.
Note that STRING[n] does not indicate a string containing n characters but an array holding n strings with the default capacity. Particularly do not confuse with CHAR[n]
CHAR[n] Similar to STRING except that it does not insert a leading length word. It can
be used on protocols with no specific support for strings such as Modbus. In this case 'n' indicates the string buffer length, i.e. the number of character bytes that should be allocated in the PLC for the string, starting from the address specified in column C.
Note that CHAR[20] would mean an array of 20 character bytes, however in all cases it will be treated as a single string with a capacity of 20 bytes.
Keep in mind that if you use a string encoding other that the default, you must expect the string to hold less than n characters. This is because on some encodings a single character may require multiple bytes to be represented.
LOOKUP This is a special-purpose type used to create a text entry on a table, which is
referred to by tags having the Lookup style attribute. Rows with the Lookup data type in column B will not cause any read or write operations to PLCs. For more information, see Lookup Tables (page 37).
When specifying the tag type, you can optionally define an array size for it as shown above in italics.When you do so, the related variable will hold an array of values of the relevant type instead of a single value. See Memory Arrays for more information.
Size definition is obligatory for CHAR types.
ProSoft Technology, Inc. Page 19 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
3.1.3 Variable Addresses (Column C)
A variable address represents a memory location or a register in a PLC to which a variable refers. Addresses are specified in different ways depending on which communications protocol they belong to. Therefore, each protocol has its own set of valid addresses. Addresses belonging to different protocols cannot be mixed in a particular source file. Use a separate source file for each PLC and communication protocol. The relevant communication protocol for a source file is uniquely determined by the kind of variable addresses included in it.
The particular protocol to use can be specified by means of a comment on the first line as described in Specification of Communication Protocol. This comment may look something like this:
# %protocol eip/native
For protocols based on registers or memory locations, Variable Addresses are specified by a prefix referring to the appropriate memory area followed by a numeric value indicating the position in that area.Allen Bradley's Ethernet/IP for Logix Controllers is based on symbolic names. Write PLC Tag symbolic names in Column C
Page 20 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
The following memory areas and prefixes are supported.
PROTOCOL AREA PREFIX REMARKS
Modbus TCP/IP I: Input Discrete (read only)
C: Coil IR: Input Register (read only) HR: Holding Register
EIP/Native (Allen Bradley)
EIP/PCCC (Allen Bradley)
TAG (deprecated, do not use) Actual symbolic tag name is given in column
O0: Outputs I1: Inputs S2: Status B3: Binary T4: Timer C5: Counter R6: Control Nn: Integer Fn: Floating Point STn: String
To access Coil number 10, specify C10. To access Holding register 1, specify HR1.
Individual bits in HRs can be accessed for reading or writing using a dot notation. For example, HR1.3 would refer to bit 3 in HR1.
A. See Variable Names (page 16). However, "TAG" must still be specified in column C.
Tags are specified by file type, file number and offset in the regular way. Individual bits in words can be accessed using the usual slash notation. Examples: B3:5 would access word 5 on file 3 of type B N7:0 would access value at position 0 in N7 file N7:0/3 would access bit 3 in N7:0
Accessing Data Types Longer Than One Register
For data types requiring more than one register or memory location, the lower address in their range must be specified. For example, a variable of type DINT addressed by HR100 will use HR100 and HR101 because 2 Modbus registers (16 bits) are required to accommodate the complete variable (32 bits). Integrators must be aware of this to avoid overlapping tag values. This applies to all protocols except EIP/Native.
Accessing a Register as a BOOL
It is possible to specify a BOOL type for a register or memory location even if it is not meant to hold a BOOL. For example, you specify on a row that HR1 is a writable BOOL. In this case, ProSoft i-View will use a switch control for that row, and will write a value of one (1) or zero (0) to the register depending on user interaction on the switch. This applies to all protocols except EIP/Native. EIP/Native does not allow a non BOOL PLC Tag to be treated as BOOL due to the strict type checking that this protocol encourages. You can use the ‘bool’ style instead to force the same effect.
ProSoft Technology, Inc. Page 21 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
Accessing Individual Bits in a Register
Individual bits in registers can be accessed by using the BOOL type and by specifying a bit address using dot (.) or slash (/) notation, depending on protocol (see table above). ProSoft i-View will use the appropriate protocol command to avoid overwriting bits on the register. Note that this feature does not apply to EIP/Native. On EIP/Native you can still use the dot notation to access individual bits on variables, but due to strict type checking.you must set the correct variable type on column B. In order to force ProSoft i-view to display such values as bools you can use the 'bool' style.
Note on EIP/Native Communication Protocol
EIP/Native communications do not rely on particular memory locations or positions, but on symbolic names. With this protocol, the user is relieved of the responsibility of assigning memory addresses or registers, as well as the need to take tag sizes into account for storage. Additionally, EIP/Native tags hold data information such as type and size, which ProSoft i-View uses to check against type mismatches on PLC returned values. As a result, it is not possible to store values that differ in type or size from the values uniquely defined in the PLC. Any attempt to do so will result in a ‘type mismatch’ error for the offending tag. For EIP/Native symbolic names any valid reference to an existing scalar or array type tag including structure members or array elements is allowed.
For example “myStructData[2,3].intMember” may refer to an integer value referenced by the intMember member of element (2,3) of an array of structures. Look at ‘EIP_TAG_Examples.csv’ template for more examples of how to specify tag names for Allen Bradley Logix controllers. As a general rule, any Tag name path referring to an existing scalar value (BOOL, SINT, INT, DINT, REAL, STRING) or array of such elements in a Logix Controller can be accessed by ProSoft i-View.
To access arrays as a whole you need to define an array size next to the type, as discussed on the previous and following sections.
You can also access program tags by using the following syntax
Program:<program_name>.<tag_name>
Note that ‘Program’ is literal. <program_name> and <tag_name> identify just what they suggest.
Note also that ProSoft i-View performs a Validation Code security check before any other attempt to access other tags is made, therefore, it is mandatory to have a tag named “SMValidationCode” of type INT in your PLC for communications to work.
Page 22 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
Internal Tags
Internal tags are stored and managed inside the ProSoft i-View app. Internal tags mostly behave as actual PLC tags except that they are not linked to an actual PLC address. Thus, internal tags do not require an active TCP connection to display a value. In combination with expressions, internal tags are a powerful feature that allows for presenting calculated values to the user or holding intermediate values for subsequent use.
Internal tags support most of the available attributes except the ones specifically targeted at PLC tags such as the 'scale' attribute.
To specify that a Tag is internal use the word 'INTERNAL' instead of a PLC address or Symbolic Tag
Protocol AREA
PREFIX or TAG
All INTERNAL
LOCAL (deprecated)
REMARKS
Indicates that this tag does not have a link to an actual PLC tag. Instead, it exists only in the app. Internal tags can be used to store and represent intermediate values, or expression results.
Just as regular PLC tags, internal tags can have Local or Global scope. To identify an Internal tag to have a Global scope just prefix it with a $ sign.
ProSoft Technology, Inc. Page 23 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
3.1.4 Attributes (Column D)
Process variables in ProSoft i-View are represented in ‘cells.' You can configure the behavior and display of the monitored variables by setting the
appropriate attributes. For example, some of the available attributes are "section," "label" and "comment."
An attribute description in column D of a source file follows this general pattern:
attribute := value;
For example, a boolean process variable like the one represented in the first cell on the figure above could have the following attribute description:
ord := 1 ; section := "GENERAL" ; label := "Main Run/Stop Switch" ;
comment := "Main Process Start/Stop" ; access := 3 ; write_access := 5;
The way the cell is actually displayed in the figure implies that the current user has an access level of 5 or above, because a selectable switch is provided as the process variable value instead of static text. See User Accounts (page 71).
Page 24 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
3.1.5 Attribute Scope and Type
Attributes by Scope
Most attributes apply to a single tag. They are referred to as tag attributes. Others have a global scope within a source file, and we refer to them as global attributes. In the following sections, all attributes are discussed individually.
Attributes by Type
Attributes can hold a numeric value, a text , a special text or list of values depending on their meaning or purpose.
Numeric values are expressed as decimal numbers with optional decimal point and
decimal digits if applicable to the attribute. Several special values are provided for convenience.
true : equals 1.0 false : equals 0.0
-inf : represents a very large negative number
+inf : represents a very large positive number
Numeric values are expressed directly after the equal sign without quotation marks,
including the convenience values. Examples: write_access := 3 ; word_swap := true ;
Text usually represent text labels or fields in the application interface. They are only
required to be enclosed in quotation marks if they contain spaces or the semicolon
character. However, to maintain readability, it is advisable to always use quotation
marks.
label := "Main Run/Stop Switch" ; suffix := " %" ;
Attributes requiring a special text only accept specific, pre-defined text strings. Valid
texts vary depending on the particular attribute.
style := "bezel" ; format := "4.2" ;
Value Lists are used in cases where a single numeric value is not enough to provide
the information required by the attribute. The general format is a list of numbers
separated by colons and enclosed between ‘{‘ and ‘}’ characters.
scale := { 0, 360, 0, 100 } ; bounds := { 0, 100 } ; color_bounds := { -inf, 50 } ;
3.1.6 Tag Attributes
A tag attribute is applied to a tag at the same row and exclusively affects that tag. All attributes are optional, and the specified attributes can be in any order.
ProSoft Technology, Inc. Page 25 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
The following attributes are supported.
TAG ATTRIBUTE
Page text Text indicating which page the variable belongs to.
Section text Text indicating which section the variable belongs to.
Label text Main text in the cell representing a variable. If not
Comment text Secondary text in the cell representing a variable. If
Style special text Text attribute allowing for additional ways to represent
TYPE DESCRIPTION
Text values must be enclosed in quotation marks. For example, page:="FIRST PAGE";
Text values must be enclosed in quotation marks. For example, section:="SECTION ONE";
specified, the variable name in column A will be used instead.
not specified, a text comprising the variable address and its type will be displayed instead.
the value of a variable. "switch" - The default style for writable booleans. It displays a boolean variable using a "switch" control. The variable will change its state on each touch. Will be ignored if the variable is not writable. "segment_switch" - Displays an alternative to the "switch" style for writable booleans "button" - Presents a push button for writing of boolean values. Contrary to the "switch" style, the related process variable does not change permanently but goes to 1 (true) on button press and goes to 0 (false) on button release. "bezel" - Draws a bezel line around a text field for highlighting writable numeric values. Note that it is only applicable to writable tags "slider" - Presents a writable tag as a slider control.
Min and Max values are given with the Bounds attribute. "bar" - Presents a read-only tag as a bar. Min and Max values are given with the Bounds attribute.
"lookup" - Displays text from a lookup table instead of the actual tag value. The tag value is used to determine which entry in the table is shown. Note that this attribute will only affect read-only tags.
"alarm" - Tags with this style are not shown in the main tag table. Instead they are treated as alarm conditions. They may be combined with the Bounds attribute. See Alarms (page 39).
Ord number Numeric value determining the order in which pages,
sections and tags are displayed. For more information, see Pages, Sections, Rows and Data Sources (page 36).
Access number Indicates the minimum access level a user needs in
order to view a variable. By default, access:=9; is set.
Page 26 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
TAG ATTRIBUTE
Write_access number Indicates the minimum access level an user needs in
On_label Expression(string) String expression displayed for a read-only boolean
Off_label Expression(string) String expression for a read-only boolean variable
Button_label Expression(string) String expression In combination with the "button"
Scale array A four-element array in the form {x1,x2,y1,y2} where
Bounds array A two-element array in the form {min,max} where min
TYPE DESCRIPTION
order to trigger changes (write) to a process variable value. Omitting this attribute forbids any change to the associated variable.
variable when its value is 1 (true).
when its value is 0 (false).
style, it defines the text for the button.
x1, x2 represent a pair of numeric values in raw units as present in the PLC and y1, y2 represent the same values in engineering units as will be displayed on ProSoft i-View. By setting this tag attribute, you can convert (scale) raw values to engineering values on the display by applying a linear transformation. This attribute can be specified for any read-only or writable tag. Example: scale:={0,100,0,1};
and max are numeric values used to indicate a range expressed in engineering units. This attribute can have several meanings depending on other attributes, particularly the Style and the Write_access attributes.
On writable tags, it determines and limits the available range of values that users will be able to enter.
On read/only tags, its meaning depends on the particular style of the tag. It is currently supported by the "bar", "slider", and "alarm" styles. Example: bounds:={-100,100};
Format special text Text in the form "m.n" where m represents the
minimum number of characters to be displayed. If the value to be displayed is shorter than this number, the result is padded with blank spaces (or zeros if the number starts with zero). The value is not truncated even if the result is larger. n represents the number of digits to be displayed after the decimal point. Example: format:="07.2"; will display the REAL value 12.345 as 0012.34
Prefix text Text to be prepended just before the variable value.
Example: prefix:="$";
Suffix text Text to be appended to the variable value. Example:
suffix:=" %";
ProSoft Technology, Inc. Page 27 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
TAG ATTRIBUTE
Color special text Indicates a color to apply to a variable value or
Color Expression
Tint_color special text Indicates an alternate color to apply. The
Color_bounds Value list A two-element array in the form {low,high} where low
TYPE DESCRIPTION
control. Colors can be specified by name as listed in http://www.w3schools.com/css/css_colornames.asp. Colors can also be given by RGB value in hexadecimal format. The Color_bounds attribute determines when the color will be applied. Supported values also include "TextDefault", "BarDefault" and "DefaultGreen," which are the colors used by default on texts, bars and boolean tags. Examples: color := "red"; color := "olive" ; color :=#FF3300;
Numeric
Numeric Expression. The color attribute used in this way expects a 32 bit integer value containing the RGB color coordinates in the three lower significance bytes, with the B value in the least significant byte. The method SM.color can be used for convenience to generate a color from its RGB coordinates or name.
Color_bounds and Tint_color_bounds attributes determine color application ranges. Refer to the Color attribute for valid color values. Example: tint_color := "red";
and high are numeric values determining the range of values for the tag where the color will NOT be applied, also known as an exclusion range. Examples: color_bounds := {-inf,50};. This will exclude tag values below 50 from displaying in the color set in the Color attribute. Therefore, tag values will be displayed in the specified color when they are above 50. color_bounds := {-50,50};. Tag values from -50 to 50 will be excluded from displaying in the color set in the Color attribute. Therefore tag values will be displayed in the specified color only when they are below -50 or above +50, effectively enabling coloring for edge conditions. For boolean tags the color_bounds attribute has a predetermined value that will always make the tag appear in the color color for the On state.
Page 28 of 106 ProSoft Technology, Inc. September 29, 2011
ProSoft i-View ♦ Mobile Process Monitoring and Control Application Data Source Files Version 2.0.2 User Manual
TAG ATTRIBUTE
Tint_color_bounds Value list A two-element array in the form {low,high} where low
blink Expression
TYPE DESCRIPTION
and high are numeric values determining the range of values for the tag where the tint color will NOT apply, also known as an exclusion range. Refer to the Color_bounds attribute for more information. When both Tint_color_bounds and Color_bounds attributes are specified, Color_bounds takes preference over Tint_color_bounds. However, Tint_color_bounds still has the chance to act in the range that has been excluded by Color_bounds, allowing for further color customization based on tag value. Combined examples:
color_bounds := {-inf,50}; tint_color_bounds := {­inf,0}; Will display all values above 50 in the Color
color; positive values up to 50 will be displayed in the Tint_color color.
color_bounds := {-50,50}; tint_color_bounds := {­20,20}; Will display all values below -50 and above 50
in the Color color. Values from -20 to 20 will be excluded from the Tint_color color, so the tint color will show for values from -50 to -20 and from +20 to +50.
For boolean tags color_bounds and tint_color_bounds have predetermined values. You can simply use tint_color to display a color for both Off and On states, while color will supersede the color for the On state.
booleean
Numeric Expression. Will cause any non writable tag to blink on the interface when the value assigned to the attribute is not zero (true)
blink_bounds Value list A two elements array in the form {low,high} where low
and high are numeric values determining the range of tag values where blinking will NOT be applied. If specified on a read only tag, the tag will visually blink with a period of 1 second for the values not in the specified range. Example (to set a tag to blink always) : blink_bounds:={-inf,-inf};
Example (to set a tag to blink when its value goes below -10 or above +10) : blink_bounds:={-10,10};
Example (to set a boolean tag to blink for the On state) : blink_bounds:={0,0};
plot_color special text Determines the color to be used in trend graphs when
plotting this tag. If omitted a sequential color is chosen automatically.
ProSoft Technology, Inc. Page 29 of 106 September 29, 2011
Data Source Files ProSoft i-View ♦ Mobile Process Monitoring and Control Application User Manual Version 2.0.2
value expression Specifies a value to write on the related tag based on the result of
an expression (see Expressions) Note that the 'value' attribute has a slightly different behavior for
Internal tags than for regular PLC tags: For PLC tags the result of the expression is first written to the PLC
already converted to the relevant type and appropriately limited and descaled according to the 'bounds' and 'scale' attributes. On reading, the tag value is scaled back to the engineering unit. As a consequence a tag may end having a slightly different value after that. For example a Tag of type INT having scale={0,10,0,1}; will become 1.2 when assigning 1.234 to it through a 'value' change. Of course, the value in the PLC will become 12.due to the scaling and type conversion.
On PLC writes involving STRINGS implicit conversions will also be performed if possible. For example, the STRING "2.3" will be converted to the number 2.3 upon writing a REAL tag. Similarly, the number 2.3 will result to the sequence of characters "2.3" when writing to a STRING tag.
For INTERNAL tags no type or scale conversion is performed on the result of the 'value' expressions. Internal tags are just given the result of the expression as it evaluates. Thus, the 'scale' and 'bounds' attributes will have no effect. Even the tag type is ignored to the effects of the assignment and the variable may hold a completely different type.
The following considerations also apply: INTERNAL tags containing tag references in its 'value' expression
can not be user writable and will ignore an eventual 'write_access' attribute (NOTE: this restriction was removed after version
1.5).Despite the preceding consideration, INTERNAL tags will preserve the meaning of the 'write_access' attribute if their 'value' expression represents a constant value, in such case the expression will provide the initial value for the tag.
Writable INTERNAL tags will simulate a write-read round on a virtual PLC taking into account tag type, 'scale' and 'bounds' attributes with the same effects as a real write-read round as described above.
hidden expression
(boolean)
style special
text
Numeric expression. Will make the row hidden when the result of the expression is non zero. Hiding all rows in a Section will remove the entire section including the section title. Hiding all rows/sections on a page will remove that page from the interface.
Hiding/showing interface elements is fully animated and dynamic on evaluation of the 'hidden' expression. Dynamic hiding is useful to switch among several rows that selectively meet an arbitrary condition, or to force display parts of the interface depending on user or PLC triggered conditions.
Attribute containing one of the texts below determining ways to represent or display the value of a variable.
Page 30 of 106 ProSoft Technology, Inc. September 29, 2011
Loading...
+ 76 hidden pages