gotomyhmi: hmi-gateway...runtime on pc or ce) or another pc on the same lan as the hmi-server. with...

36
GoToMyHMI: HMI-Gateway Access InstantHMI 6.1 from any Browser Anywhere (iPad, iPhone, Android, BlackBerry, Laptop PC, etc.)

Upload: others

Post on 22-Apr-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway Access InstantHMI 6.1 from any Browser Anywhere

(iPad, iPhone, Android, BlackBerry, Laptop PC, etc.)

Page 2: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Part# 6XMan-GTMH, Version 6.1, 2013 Dec30. Copyright © 2000-2013 Software Horizons Inc., 100 Treble Cove Road, N Billerica, MA 01862, USA. All rights reserved. No part of this manual may be reproduced or transmitted in any form or by any means without the written permission of Software Horizons Inc. InstantHMI, and InstantPanel are registered trademarks, and OI-Widgets, GoToMyHMI, and HMI-Gateway are trademarks of Software Horizons Inc. All other trademarks belong to the respective companies.

Page 3: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway Access InstantHMI 6.1 from any Browser

(iPad, iPhone, Android, BlackBerry, Laptop PC, etc.) Welcome to GoToMyHMI. Enjoy all the benefits of Cloud Computing using any browser on any device to remotely access your HMI-Server (InstantHMI 6.1 Runtime installed on Windows PC or Windows CE touch panels) over the Internet or even the same LAN. Benefits of InstantHMI The benefits of InstantHMI on your Windows PC/CE include:

• ‘Design Once, Deploy Anywhere’ platform scalable new generation HMI Technology. • All the powerful and convenient features that you expect in a standard PC-based HMI-

technology: Monitoring, Data Logging, Real Time and Historic Trending, Alarm Management, Reporting, Control, etc.

• Ease of ‘language localization’ brings the benefits of our multi-platform English-language HMI solution, to any Unicode supported language.

• ‘Cloud Ready’ means you can access your InstantHMI Runtime from any standard browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) from ‘across the room or across the world’.

Benefits of GoToMyHMI Use any device with a Standard Browser to enjoy the benefits of GoToMyHMI features:

• Remotely access your HMI-Server Project and monitor any screens independently and simultaneously from multiple devices.

• Remotely access the Alarm Page and ACK any alarms. • Remotely enter Discrete and/or Analog tag values through Screen Objects. • Manage your HMI-project user names and passwords for access to the HMI-Server.

To Cloud or Not to Cloud, that’s the question. When it comes to HMI the question is: To Cloud or Not to Cloud. That is, ‘Is HMI in the Cloud a good idea?’ With all the ‘Hype’ and the ‘Sex Appeal’ of Cloud computing, the temptation is ‘To Cloud’. There are two approaches to remote access to HMI-Server. The first approach is a SAAS implementation with infrastructure (Server, Database, etc.) in the cloud provided as a Subscription Service (monthly or annual) to the user. This should allow remote access to HMI Runtime from any web browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) over the Internet. The second approach is to eliminate the cloud infrastructure by incorporating a Web Server implementation that requires a software product license for HMI Runtime ‘Web Server’ option for installation at customer site. Such installation may be on the same platform as the HMI-Server (Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the Web-Server implementation HMI Runtime may be remotely accessed from any web browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) over the Internet as well as over the LAN without Internet. Customer (Perceived) Advantages of Web-Server over SAAS HMI Cloud Services:

1. No subscription fees on an on-going basis 2. Customer can enforce its own HMI-Server and Internet access policies (including VPN) 3. No dependence on third party cloud infra-structure 4. Sense of security that its HMI data does not leave its own hardware infrastructure (and VPN)

We appreciate the feedback from our valued customers. With its powerful features and its ready access to the HMI-Server from any device using any standard browser, GoToMyHMI hopes to be your preferred HMI/SCADA solution on the ground and in the cloud.

The GoToMyHMI Development Team

Page 4: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed
Page 5: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Table of Contents

1 GoToMyHMI: Remotely Monitor and Control HMI ........................................................................................................ 1-1 2 InstantHMI: Human Machine Interface ......................................................................................................................... 2-3 

2.1 InstantHMI Architecture ......................................................................................................................................... 2-3 2.2 Traditional HMI User Scenarios ............................................................................................................................. 2-4 

2.2.1 HMI Runtime (PC or CE) Accessing Controllers ............................................................................................. 2-4 2.2.2 HMI Client (Runtime PC) connected to HMI Server ........................................................................................ 2-5 2.2.3 Wi-Fi Client connected to HMI Server via Wireless Router ............................................................................. 2-5 

3 GoToMyHMI Web Server ............................................................................................................................................. 3-6 3.1 Architecture............................................................................................................................................................ 3-6 3.2 Functionality........................................................................................................................................................... 3-6 3.3 HMI Runtime Requirements................................................................................................................................... 3-7 3.4 GoToMyHMI in Action ............................................................................................................................................ 3-8 

4 Moving to the Cloud ...................................................................................................................................................... 4-8 4.1 InstantHMI Server Connection for Internet Access ................................................................................................ 4-8 4.2 InstantHMI and GoToMyHMI: A Perfect Match in the Cloud? ................................................................................ 4-9 

4.2.1 ‘GoToMyHMI Gateway’ Data Source Setup in InstantHMI ............................................................................. 4-9 4.2.2 Remote Access of InstantHMI Runtime via GoToMyHMI Web Server ........................................................... 4-11 4.2.3 User Account Setup for Remote Access of InstantHMI Runtime .................................................................... 4-11 

4.3 GoToMyHMI User Scenarios ................................................................................................................................. 4-1 4.3.1 Cloud Nodes access InstantHMI Server via GoToMyHMI .............................................................................. 4-1 4.3.2 Servers, Client and Cloud Nodes in Perfect Harmony .................................................................................... 4-1 

5 Browser Client Remote Access to HMI-Server ............................................................................................................. 5-1 5.1 Three Essential Components in Remote Access ................................................................................................... 5-1 5.2 Login to GoToMyHMI Web Server ......................................................................................................................... 5-1 5.3 Access your HMI-Server ‘Sample Project’ from Remote Node .............................................................................. 5-3 

5.3.1 Monitor InstantHMI Server Screen Objects from Remote Node ..................................................................... 5-5 5.3.2 Alarm Page Access and Alarm Acknowledgement from Remote Node .......................................................... 5-5 5.3.3 Control (Discrete and Analog Data Entry) from Remote Node........................................................................ 5-5 5.3.4 Switching Screen in ‘Sample Project’ from Remote Node .............................................................................. 5-6 

5.4 Exit from HMI-Server Project ................................................................................................................................. 5-7 5.5 Web Browser Client vs. Runtime Client, which one to choose? ............................................................................ 5-7 

6 Important Factors in Remote Access to HMI-Server ..................................................................................................... 6-1 6.1 Security: ................................................................................................................................................................. 6-1 6.2 Simplicity: .............................................................................................................................................................. 6-2 6.3 Speed: ................................................................................................................................................................... 6-2 6.4 Other Factors: ........................................................................................................................................................ 6-2 6.5 Security Considerations: InstantHMI and GoToMyHMI ......................................................................................... 6-3 

A. Appendix ..................................................................................................................................................................... A-1 A.1 General Information ............................................................................................................................................... A-1 

A.1.1 Compatible Cloud Node Devices .................................................................................................................... A-1 A.1.2 GoToMyHMI License Agreement ................................................................................................................... A-1 A.1.3 Installing GoToMyHMI .................................................................................................................................... A-1 

A.2 FAQ - Frequently Asked Questions ....................................................................................................................... A-1 A.2.1 How can I try GoToMyHMI today? ................................................................................................................. A-1 A.2.2 How does GoToMyHMI differ from VNC approach? ....................................................................................... A-2 

Page 6: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed
Page 7: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 1-1

1 GoToMyHMI: Remotely Monitor and Control HMI GoToMyHMI™ enables remote monitoring and control access to Human Machine Interface (HMI) server software running on a Windows PC or CE platform, from any browser enabled device including iPad, iPhone, Smartphone and Laptop. GoToMyHMI implements an HMI-Gateway™ to provide safe, secure and speedy access to HMI information from anywhere. With nothing to download and NO plug-in needed, the browser device requires no setup and connecting is easy and fast!

Figure 1-1: GoToMyHMI Connectivity

Industrial Plant and Machine Operators on call (and Roving Operators) have a need to receive critical alarm notifications wherever they are so they can act on them promptly. This includes acknowledging the alarm and taking corrective actions to rectify the causes of the alarm and restore normal operating conditions. The Plant/Machine will be monitored and controlled at site by InstantHMI on a Windows XP, 7, 8 or CE Application platform. The roving/remote operator is alerted on his mobile device by email or SMS Text notification of alarms generated by the InstantHMI. The operator can then take immediate action from any web browser or Smartphone. GoToMyHMI Web-Server will save precious time under critical conditions and thus lead to savings in material and/or human cost. Examples: A Water District Manager can monitor the entire water control system from anywhere in the town (world). A Factory Manager can check the status of the production line from the plant floor, his office, or from home while drinking his cup of coffee. GoToMyHMI can be configured without making any changes to existing in-plant HMI / SCADA system using Software Horizons’ InstantHMI development tools. All GoToMyHMI user access information and passwords are set up by their company’s administrator, for complete security control including restricted VPN access, if desired. In Section 2 the important elements in the design and implementation of a Human Machine Interface (HMI) are shown in the InstantHMI Architecture block diagram, and in Section 2.2 , we describe the traditional HMI scenarios for accessing information from a process/machine controller. InstantHMI can be used in any of these traditional HMI scenarios, which includes a Client/Server scenario,

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 8: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 1-2

where the Client node is an InstantHMI Runtime accessing information from the Server node, also an InstantHMI Runtime. In addition to usual HMI functionality, InstantHMI can accommodate demanding data logging applications using Database design optimized to minimize storage for data records, and logging data by exception (log data only if it changes by a threshold amount from previous value). InstantHMI allows recording data directly into Excel sheets pre-formatted to suit customer reporting format (column headings and sub-headings) to create master reports. On-demand customized reports can then be created in InstantHMI by selecting a sub-set of the columns (tags) and a subset of the rows (reporting period) from the master Excel report and output it to another sheet within that same workbook (.XLS or .XLSX file). With the advent of the Internet, browser based remote access to HMI-data over the Internet may be desired. Since any PC may be accessed remotely using a VNC (virtual network client) approach as described in Section A.2.2, the same is available to any software. While this VNC approach can be used with InstantHMI as well, we have architected InstantHMI to be ‘Cloud Ready’ for remote access over the Internet in a more powerful and flexible manner. ‘Cloud Ready’ means you can access your HMI-Server (InstantHMI 6.1 Runtime installed on Windows PC or Windows CE touch panels) using GoToMyHMI: HMI-Gateway from any standard browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) from ‘across the room or across the world’. The first generation of GoToMyHMI incorporated an ‘HMI-Gateway in the Cloud’. This was GoToMyHMI as a SAAS implementation with infrastructure (Server, Database, etc.) in the cloud. It was provided as a Subscription Service (monthly or annual) to the user. This service is described in a separate document. As of January 1, 2013 this service is available only by special license arrangement with Software Horizons. The second generation GoToMyHMI incorporates a Web Server implementation that can be described as a more general ‘HMI-Gateway’; that is, ‘HMI-Gateway to the Cloud’ that requires a Software product license for InstantHMI Runtime option ‘GoToMyHMI: Web Server’ for installation in customer site. Such installation may be on the same platform as the HMI-Server (InstantHMI Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed from any web browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) over the Internet as well as over the LAN without an Internet.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 9: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 2-3

2 InstantHMI: Human Machine Interface 2.1 InstantHMI Architecture

The important elements in the design and implementation of a Human Machine Interface (HMI) are shown in the InstantHMI 6.1 Architecture block diagram below.

Figure 2-1: InstantHMI Architecture

The LaunchPad Development platform, enables you to design the HMI-Project. 1. Design project screens, reports etc. to suit your HMI application requirements. An InstantHMI Project

implements the 'model of the Process or Machine Control Application' for the benefit of operators, supervisors and management who are responsible for the proper and efficient operation of the machine and the plant. Your Project may include some or all of the Project Elements listed below: • Tag Database, • Screens, • Report/Spool Templates, • Data Sources (controller communication setup parameters and drivers), • Project Users, and • Target Platforms (PC, PDA, and CE) where project will be deployed.

2. Setup all project elements (and users) so it is 'Ready to Run' on the target platform. 3. Deploy the project on the target platform (PC, CE, PDA) where InstantHMI Runtime Engine is

installed. The Runtime Engine allows access to all the HMI-functionality built into the HMI-Project. The Runtime uses available Communication Link(s) and its Communication Interfaces to retrieve Process/Machine information and renders them on the Operator Display for monitoring by the Human Operator as well as enabling Operator input (using displayed screen objects and keyboard, mouse or touch hardware) to control the Process/Machine operation. The information for Monitoring and Control of your machine/process is

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 10: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 2-4

presented using display data objects on project screens. These display data objects get their parameters from a tag object in the Tag Database. Most project screens include Macros and Scripts that make the project screens more powerful and convenient. Reports provide information to assist supervisory and management personnel. Runtime Engine may also log Data for Historic Trending analysis. InstantHMI 6.1 is Software Horizons’ implementation of ‘Design Once, Deploy Anywhere’ HMI technology. It incorporates a LaunchPad Designer to design your HMI Project (Tag Database, Screen Objects, etc.) which can then be deployed on any target platform to be rendered by the InstantHMI Runtime Engine software installed on that platform. Supported platforms include Windows PC (XP, Vista, 7, 8), Windows CE.NET touch panels, and Windows Mobile (PDAs, Smartphones). In addition, InstantHMI 6.1 incorporates a Cloud plug-in module (also called ‘Web Server’, Section 4.2.2) to makes it ‘Cloud Ready’ so that the InstantHMI Project elements are remotely accessible from any Browser (iPad, iPhone, Android, BlackBerry, Laptop PC, etc.) over the Internet as well as the LAN.

2.2 Traditional HMI User Scenarios InstantHMI can be used in any of the traditional HMI scenarios described below in Sections 2.2.1- 2.2.3.

2.2.1 HMI Runtime (PC or CE) Accessing Controllers In either scenario (PC or CE) the InstantHMI Runtime Engine renders the tag information from the controllers in terms of HMI Project screens and provides access to all the other functionality built into the HMI-Project.

Figure 2-2: InstantHMI Runtime accessing Data from Controllers (Windows PC and Windows CE)

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 11: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 2-5

2.2.2 HMI Client (Runtime PC) connected to HMI Server

Figure 2-3: InstantHMI Client-Server Setup

In the Client-Server scenario, the InstantHMI Runtime Engine on the Client uses the tag information from the controllers served by the Server to render the HMI Project screens. The Server acts as the Data Source for the Client and hence as a go-between the client and the controllers. Here the connection between the Client and the Server is wired LAN and the information exchange uses the SHIP protocol (Software Horizons’ Inter-Node Protocol); the Client may also access the Server over the Internet (Section 4.1).

2.2.3 Wi-Fi Client connected to HMI Server via Wireless Router

Figure 2-4: Wireless and Wired InstantHMI Clients connected to InstantHMI Server

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 12: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 3-6

Similar to the previous scenario, the connection between Client 1 and the Server A is wired LAN. In addition, here we show Client 2 (InstantHMI Runtime installed in a Wi-Fi Mobile PDA) accessing the Server over a wireless link using a wired/wireless Router on the LAN. Both Clients interchange information with the Server using the SHIP protocol (Software Horizons’ Inter-Node Protocol).

3 GoToMyHMI Web Server 3.1 Architecture

HMI-Gateway implemented as a Web Server option in InstantHMI Runtime allows customers Web Browser based access to their HMI-Server on their own LAN or over the Internet with all the functionality customers are used to from our earlier SAAS implementation of GoToMyHMI (Internet Web Server with infra-structure in the cloud) as a subscription based service including secure user login, data entry, alarm acknowledgment, etc.

Figure 3-1 HMI-Gateway GTMH Web Server as a Runtime Software Option

This implementation of the GoToMyHMI Web Server (HMI-Gateway) as a InstantHMI Runtime software option ensures the following Customer Advantages:

1. No subscription fees on an on-going basis 2. Customer can enforce its own HMI-Server and Internet access policies (including company

firewall and VPN) 3. No dependence on third party cloud infra-structure 4. Sense of security that its HMI data does not leave its own hardware infrastructure (and VPN)

3.2 Functionality The GoToMyHMI web server can run on the same machine (PC/CE) as the HMI (local) or a stand-alone machine accessible via TCP/IP (remote). The web server can perform all the functions and features currently provided by earlier GoToMyHMI Service (Screen viewing, data entry, alarm management, etc...). Communication between the HMI and the web server will take place using TCP/IP regardless of whether the web server is local or remote. The SHIP protocol performs the required TCP/IP functions.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 13: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 3-7

HMI Interaction with Web Server on Same (Local) Machine When InstantHMI starts it will launch the GoToMyHMI web server. The HMI will then connect to the web server over TCP/IP and copy to the web server's configured hosting directory all the files the web server will need to generate the web pages. When the copying is completed the HMI will notify the web server over TCP/IP that the web server has all the files it needs to serve the web pages. HMI Interaction with Web Server on a different (Remote) Machine When InstantHMI starts it will connect to the GoToMyHMI web server over TCP/IP (Web server must be started manually on remote machine or automatically through the Windows 'Startup' folder). The HMI will then transfer all the files the web server will need (using SHIP) to generate the web pages over TCP/IP to the web server's configured hosting directory. When the copying is completed the HMI will notify the web server over TCP/IP that the web server has all the files it needs to serve the web pages. Web Server Interaction with HMI The web server acts as the HMI-Gateway between the user (web browser client) and the HMI Server (InstantHMI Runtime). For example:

• It will notify the HMI of the number of connected users and the screens they are viewing (so that the HMI will only need to update the information being viewed by the users)

• It will relay user data entry through a screen • It will relay user acknowledgement of an alarm the web server

3.3 HMI Runtime Requirements InstantHMI Runtime option to grant access to GoToMyHMI Web Server functionality must be included in the Runtime License Activation for desired number of clients from Software Horizons. The GTMH/Admin feature allows the administrator to manage Users and their access to the GTMH/Functionality: GTMH/Monitor, GTMH/Alarm and GTMH/Control. This feature is meant for use by the Company Administrator, the default User Name is ‘Admin’ and Password is ‘admin’. The Administrator may use the GTMH/Admin function to access, view and manage the User accounts for the company’s HMI-Server project(s).

Authorized GTMH/Monitor Users may use a Cloud/LAN Node to access your cloud enabled InstantHMI Runtime Server application to monitor the project screens. You are responsible for the proper installation, project design and configuration of the InstantHMI Runtime Server application (see Section 5.3.1).

Authorized GTMH/Alarm Users may use a Cloud/LAN Node to access your cloud enabled InstantHMI Runtime Server application to monitor the project screens, as well as be notified of Alarm status and remotely acknowledge the alarms. You are responsible for the proper installation, project design and configuration of the InstantHMI Runtime Server application (see Section 5.3.2).

Authorized GTMH/Control Users may use a Cloud/LAN Node to access your cloud enabled InstantHMI Runtime Server application to monitor the project screens, as well as be notified of Alarm status and remotely acknowledge the alarms. In addition, User may remotely enter discrete and analog tag values using screen objects provided for this purpose in the InstantHMI project. You are responsible for the proper installation, project design and configuration of the InstantHMI Runtime Server application (see Section 5.3.3). User Account Database User Account information is saved in the Database ‘GTMH-WebServerUsersDb.idb’. The only user recognized by default is ‘Admin’, with a default password ‘admin’. Your administrator can login and change the admin password from default ‘admin’ to something else. Then the Admin may create accounts for permissible users. This includes Username, password, and user access level GTMH/Functionality: GTMH/Monitor, GTMH/Alarm and GTMH/Control

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 14: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-8

3.4 GoToMyHMI in Action • At start, GoToMyHMI Web Server will read configuration parameters and start listening for

incoming browser connections. • If it receives an incoming web client connection it will serve the login page (allowed number

of connections may be license activation controlled) • Once it receives login credentials, it will verify Customer Id, User Name, Password from

Database and then serve the first project screen • Allows user to change screens, ACK an Alarm, Data Entry, etc.

The Runtime Engine's GoToMyHMI interface allows for web server file transfers as well as allow for TCP/IP messages to/from Web Server using SHIP protocol.

4 Moving to the Cloud In Section 2.2 we described several traditional scenarios in which InstantHMI Runtime Engines may be used. Here we make our move into the cloud and show how ‘Cloud Ready’ InstantHMI 6.1 Runtime Engines may be setup for access over the Internet (and LAN) and ready to use the GoToMyHMI functionality. To Cloud or Not to Cloud, that’s the question. When it comes to HMI the question is: To Cloud or Not to Cloud. That is, ‘Is HMI in the Cloud a good idea?’ With all the ‘Hype’ and the ‘Sex Appeal’ of Cloud computing, the temptation is ‘To Cloud’. There are two approaches to remote access to HMI-Server. The first approach is a SAAS implementation with infrastructure (Server, Database, etc.) in the cloud provided as a Subscription Service (monthly or annual) to the user. This should allow remote access to HMI Runtime from any web browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) over the Internet. The second approach is to eliminate the cloud infrastructure by incorporating a Web Server implementation that requires a software product license for HMI Runtime ‘Web Server’ option for installation at customer site. Such installation may be on the same platform as the HMI-Server (Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the Web-Server implementation HMI Runtime may be remotely accessed from any web browser (iPad, iPhone, BlackBerry, Laptop PC, etc.) over the Internet as well as over the LAN without Internet.

4.1 InstantHMI Server Connection for Internet Access InstantHMI Runtime Server can also support remote Clients over the Internet using the SHIP protocol (Software Horizons’ Inter-Node Protocol). Such remote clients include InstantHMI Runtime installed on a Windows Platform. Connection to the Internet requires two things:

• DNS server to resolve the domain name you are trying to access into the equivalent IP address, and

• Gateway where your network connects to the Internet. A Gateway or a Router facilitates communication among hosts that are not on the same logical network (e.g. IP-subnet). The Router receives packets of data on an interface and uses a routing table (logical network locations) to route them to their destination.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 15: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-9

Figure 4-1: InstantHMI Server Setup for Internet Access

The function of a gateway can be performed by hardware, as in the case of Routers, or software, or a combination of both. We use the term ‘HMI-Gateway’ as a metaphor representing such a generalized gateway. An example of a software gateway is when you use GoToMyHMI Web Server in order to share the Internet connection from your InstantHMI Server with multiple ‘Cloud Nodes’ (remote access nodes over the Internet). GoToMyHMI gateway not only relays information across networks, but it also performs the ‘conversion of protocols’ (i.e. HMI project screens and data to browser screen display and data). In addition, GoToMyHMI also performs Node Access Translation (similar to, but not the same as Network Address Translation or NAT) in order to deliver the HMI packets to its destination (from/to InstantHMI Server to/from Cloud Nodes).

4.2 InstantHMI and GoToMyHMI: A Perfect Match in the Cloud?

4.2.1 ‘GoToMyHMI Gateway’ Data Source Setup in InstantHMI InstantHMI Server needs a ‘GoToMyHMI Gateway’ Setup shown below (Figure 4-2 - Figure 4-4) to enable Remote Node(s) access to it via GoToMyHMI Web Server.

Figure 4-2: GoToMyHMI Gateway Web Server Setup in LaunchPad (Start)

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 16: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-10

In LaunchPad select your project (Sample Project, in our example) and click on Design Data Sources GoToMyHMI Gateway. The GoToMyHMI Web Server Setup dialog appears.

Figure 4-3: Web Server Setup-Project Access Parameters

The check box at the top enables GoToMyHMI Web Server Connectivity with InstantHMI Server. Enter your Web Server IP Address and a convenient HMI-Server name (unique to each Server). By default all Project screens are accessible from Remote Nodes. You may exclude any project screens from remote access by suitable Screen Settings. Leave the Screen Update time at the default value; it can be changed by the User at the Remote Node to suit the bandwidth and/or cost of Internet access from the Remote Node. Leave the Alarm Status Update time at the default value (a slower update time may reduce bandwidth requirements). Leave the ‘Run Web Server at Startup’ box checked so that Web Server will be started (if it is not running) by InstantHMI Runtime. Note: User Account information is setup in the Web Server and is saved in the Database ‘GTMH-WebServerUsersDb.idb’. Click on Done button. You will return to the LaunchPad showing the GoToMyHMI setup parameters. These parameters are saved in the Project.ini file in your InstantHMI Project folder.

Figure 4-4: GoToMyHMI Gateway Web Server Setup in LaunchPad (Finish)

Note: The Database (IHMI-WebServerUsersDb.idb) with user account information will be saved in the Web Server installation folder (usually, C:\IHMI-6\GoToMyHMI ).

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 17: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-11

4.2.2 Remote Access of InstantHMI Runtime via GoToMyHMI Web Server InstantHMI Runtime (IHMI-Server) connects with the GoToMyHMI Web Server to make the Runtime accessible from any remote access client nodes (iPad, iPhone, Android, BlackBerry, Laptop PC, etc.) over the LAN or Internet using just a web browser. When the GoToMyHMI Web Server (named Sample Server, in our example) runs* you will see the following dialog indicating the status of the HMI-Server(s) and all permissible clients/users. For example, the dialog below shows one HMI Runtime Server connected to the GoToMyHMI Web Server (Sample Server ) with neither of the two permissible users logged in. Note: * The very first time you run the Web Server, you may need to setup the Firewall on your PC and Network appropriately.

4.2.3 User Account Setup for Remote Access of InstantHMI Runtime When InstantHMI Runtime project is configured to Run Web Server at Startup the GTMH-Web Server runs and you will see the following dialog.

Figure 4-5: GTMH-Web Server Running (very first time)

You may also run the GTMH-Web Server directly (C:\IHMI-6\ GoToMyHMI\GTMH-Web Server.exe) you will see the following dialog. Note that the Runtime HMI Server is not listed (if it is not running).

Figure 4-6: GTMH-Web Server Started from InstantHMI (very first time)

User Account information needs to be setup in the Web Server to enable user access to InstantHMI Runtime via the GoToMyHMI Server acting as the HMI-gateway. When the GTMH-Web Server runs for the first time, the Database ‘GTMH-WebServerUsersDb.idb’ does not exist and the only user recognized by default is ‘Admin’, with a default password ‘admin’. Click on Stop Listening (for web clients) button to enable setup and then click on the Setup button. You will see a Web Server high

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 18: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-12

level connectivity dialog. You may consult your IT person if necessary to setup the HTTP Port and the Firewall on your PC and Network appropriately. The default port 80 would usually work without any complications. The default HTTP port 80 is changed in our example to 8080, for illustration. The GoToMyHMI Web Server can accept incoming connection requests from users (web clients) with valid login credentials (User Name and Password).

Figure 4-7: GoToMyHMI Connectivity Setup

Check ‘Log Activity’ to create a monthly log of user interactions such as when users logged in and logged out, etc. (Log file example: GTMH-WebServerLogs-2014-Jan.csv). Check ‘Start Listening at Startup’ to enable Web Server to listen to incoming web client connections (so remote users can Login). If you use a web camera for remote viewing of your InstantHMI application, then enter the appropriate Webcam Link. (The Webcam link shown is our GoToMyHMI webcam demo link). These Web Server Setup Parameters are stored in the file GTMH-WebServer.ini (default location is C:\IHMI-6\GoToMyHMI folder) which for our example will look like this:

[SETUP] HTTP_PORT=8080 LOG_ACTIVITY=1 LISTEN_AT_START=1 WEBCAM_LINK=https://GoToMyHMI.com/webcam

Now you are ready to setup web user access. Click on Setup Users. This will pop-up a dialog requiring your Admin credentials to Login and setup users.

Figure 4-8: Web Server Admin Login to Setup-Project Users (Start)

Use the Admin password (default ‘admin’) to login and access the Web Server Users dialog which has buttons to Add User, Edit User and Remove User. The Admin User is already selected, so click on Edit User and change the admin password from default ‘admin’ to something else. (If you forget the Admin password, you will have to delete the user Database ‘GTMH-WebServerUsersDb.idb’ and start over.)

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 19: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-13

Click on ‘Add User’ button to expose user setup parameters in the dialog: • User Name • Web Access (GTMH functionality: Monitor/Alarm/Control) • Password • Account Expiry (Never or specify date) • Email address (to receive any notifications from Web Server) • Comment (as desired)

Figure 4-9: Web Server Setup-Project Users (showing User2 Setup)

Click on Save button to save user parameters in the database ‘GTMH-WebServerUsersDb.idb’.

Figure 4-10: Web Server Setup-Project Users (Two Users Setup)

Click on Done button, which returns you to the Web Server Setup dialog and then click Save button to return to the GoToMyHMI Web Server application. You will see the list of currently setup ‘Web Users’ (showing two users: user1 and user2). If the InstantHMI Runtime Server is running (with Web Server connectivity enabled) it will connect with the GoToMyHMI Web Server, which will show the status ‘Connected’.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 20: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI: HMI-Gateway in the Cloud Page 4-14

Figure 4-11: One IHMI Runtime Server and No Users Logged In

In order for Clients/Users to be able to Log-in and access the InstantHMI Runtime Server via the GoToMyHMI Web Server (HMI-Gateway), the GoToMyHMI Web Server must ‘listen for clients’ (and thus permit) incoming connection requests. This can be done by clicking on the ‘Listen for Clients’ button. Note: Additional clients/users can be setup anytime (by the Admin user) by clicking on the Setup button as described above. When the GoToMyHMI Web Server is listening for incoming Client/User connection requests, you will see the Web Server dialog in the following state, with Setup button disabled and the ‘Stop Listening’ button available to stop listening for incoming connection requests.

Figure 4-12: Web Server Listening for Incoming Client/User Connection Request

When the GoToMyHMI Web Server is listening (on port 8080 at IP address 192.168.0.85 and the HMI-Server is connected) any remote user may use a standard web browser to access the HMI-Server by logging into the GoToMyHMI Web Server (which serves as the HMI-Gateway). We will look at some GoToMyHMI user scenarios in Section 4.3 and then return to web client remote access to InstantHMI Server project in Section 5.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 21: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI User Scenarios Page 4-1

4.3 GoToMyHMI User Scenarios In Section 2.2 we described several traditional scenarios in which InstantHMI Runtime Engines may be used. Then in Section 4 we started to make our move into the cloud getting InstantHMI 6.1 Runtime setup for access over the Internet to use the GoToMyHMI remote access functionality. Here we show how ‘Cloud Ready’ InstantHMI 6.1 Servers may be used in exciting new scenarios facilitated by the GoToMyHMI Web Server remote access functionality described in Section 3.2.

4.3.1 Cloud Nodes access InstantHMI Server via GoToMyHMI Figure 4-13 shows a single InstantHMI server setup to be accessible from the Internet via the Cable Modem and Router path from the LAN. GoToMyHMI serves as a HMI-Gateway in the cloud and provides multiple Cloud Nodes independent access to the InstantHMI Server Project simultaneously. That is, GoToMyHMI presents any ‘Cloud Ready’ InstantHMI 6.1 Runtime Server in the Cloud so that any authorized User of GoToMyHMI functionality may remotely access the InstantHMI Server with a standard browser on any device (‘Cloud Nodes’). "Cloud Node" means a suitable hardware platform running a compatible standard web browser session, which is used to Log into GoToMyHMI by the User authorized to access the GTMH/Functionality. A logged in User and a Cloud Node have a one to one correspondence. The number of Cloud Nodes supported depends on your Runtime license option to enable GoToMyHMI functionality .

Figure 4-13: InstantHMI Server access from Cloud Nodes using GoToMyHMI Gateway

4.3.2 Servers, Client and Cloud Nodes in Perfect Harmony Figure 4-14 shows a fairly comprehensive setup of InstantHMI 6.1 Servers, Clients and Cloud Nodes. Not shown in Figure 4-14 are remote clients – not Cloud Nodes - with InstantHMI Runtime installed, which access the Server(s) over the Internet (Section 5.5). The Clients shown behind the firewall in the Factory Building access the InstantHMI Servers over the LAN or Wi-Fi connection using wired/wireless Router or Switch. The remote Cloud Nodes (iPad, iPhone, Android, BlackBerry, and Laptop PC) access the InstantHMI Servers behind the firewall using the secure GoToMyHMI Gateway.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 22: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI User Scenarios Page 4-2

Figure 4-14: Multiple Servers, Multiple Client Nodes, and Multiple Cloud Nodes in Perfect Harmony

The following nodes are shown: • Two InstantHMI Server Nodes: Server A and Server B on the LAN. • Two Client Nodes: Wired Client 1 connected over LAN and Wi-Fi Client 2 connected via

Wireless Router. Each client may access Server A, or Server B, or both Servers A and B. • There are multiple Cloud Nodes with their browsers (iPad, iPhone, Android, BlackBerry, and

Laptop PC). Each Cloud Node may access only one server of choice (A or B) at a time (for security reasons); but the cloud node can easily switch from one server to another. Cloud Nodes can access any of the screens on the Server’s HMI-project independent of the Server’s own screen access. Each Cloud Node (if enabled by GTMH/Alarm service subscription) may access the alarm page and ACK the selected alarms (Section 5.3.2). Each Cloud Node (if enabled by GTMH/Control service subscription) may enter data through appropriate screen objects (Section 5.3.3). Discrete and/or analog values can be entered from the Cloud Node to alter the corresponding tag values in the selected Server.

Note: With the GoToMyHMI: Web Server implementation client nodes on the same LAN may also access the HMI-Server using just the web browser without the need for InstantHMI Runtime installed. Of course, a Runtime client has all the runtime functionality, not just the GTMH/Functionality available with just a browser. For example, the Runtime client can include tags and screens not present on the HMI-Server project.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 23: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-1

5 Browser Client Remote Access to HMI-Server 5.1 Three Essential Components in Remote Access

The three essential components in remote access to HMI are: • HMI-Server: InstantHMI Runtime on your PC running your application project • GoToMyHMI: Web Server acting as HMI-Gateway • Browser Node: Web browser running on the client device

We describe below the Step-by-Step instructions for remote access to HMI-Server using an example. Step 1: HMI-Server is your PC with InstantHMI Runtime rendering our standard ‘Sample Project’ representing your application. The Sample Project consists of multiple (three) screens. Details of Project creation are available as a Video Tutorial on-line at www.InstantHMI.com. Step 2: It is assumed that the GoToMyHMI Gateway setup has been done for InstantHMI Runtime to be accessible from a remote browser as follows:

A. LaunchPad (See Section 4.2) In Design Data Sources GoToMyHMI Gateway, Enable GoToMyHMI. Enter IP address (You may use ‘this computer’, whose IP should be 127.0.0.1, for testing) Fillout the rest of GoToMyHMI dialog.

B. GoToMyHMI (See Section 4.2.2)

Setup Users in GoToMyHMI Web Server Configure the Port, Listen at Startup, etc.

C. How To Run

1. Run Web Server (Usually, C:\IHMI-6\GoToMyHMI\ GTMH-WebServer.exe) (Setup GoToMyHMI in B. to run Web Server automatically when InstantHMI Runtime starts)

2. Run InstantHMI ‘Sample Project’

Step 3: Browser Node based Remote Access (Details below in Section 5.2) 1. Open web browser and type IP address and Port # (Example: http://192.168.0.121:8080) 2. Browser client Login: Enter User Name and Password and click Login button. 3. See ‘Sample Project’ screen

5.2 Login to GoToMyHMI Web Server When the GoToMyHMI Web Server is listening (on port 8080 at IP address 192.168.0.85 and the HMI-Server is connected) any remote user may use a standard web browser to access the HMI-Server by logging into the GoToMyHMI Web Server (which serves as the HMI-Gateway). Login Authorization requires User name and Password. Your administrator will provide the User Name, password and GoToMyHMI Web Server address. In your browser enter the GoToMyHMI Web Server address (192.168.0.85:8080, in our example). If GoToMyHMI web Server is not running you will see the standard browser error message.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 24: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-2

Figure 5-1: GoToMyHMI Web Server Not Running (Browser Message)

If the GoToMyHMI web Server is running but HMI-Server is not running, you will see the page displayed by GoToMyHMI web Server displaying ‘Runtime HMI-Server Status: Offline’.

Figure 5-2: Web-Client Page from Web-Server when HMI Server is not running

If the HMI-Server is running you will see the GoToMyHMI Web Server Login Page and the prompt: Login to access your HMI-Server. Enter the User Name: User1 (in our example), and Password: user1 (in our example). Click on Login button.

Figure 5-3: User1 Logs into HMI-Server via GoToMyHMI Gateway from a Web Browser

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 25: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-3

When GoToMyHMI Web Server authenticates your user login request, your user status will be displayed (on the GoToMyHMI Web Server application screen) as ‘Logged In’ as indicated for User1 in the example dialog below.

Figure 5-4: Web Server Dialog with one of Two Users Logged In

(Of course, you will not see the GoToMyHMI Web Server application screen in your browser.) You are now authorized for the GTMH/Functionality assigned to you (Monitor/Alarm/Control) and you will see the ‘Sample Project’ Monitor Screen.

5.3 Access your HMI-Server ‘Sample Project’ from Remote Node

Figure 5-5: Sample Application Project Screen in Browser Window

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 26: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-4

You will see the ‘Sample Application’ project screen in your browser window as shown in Figure 5-5, sandwiched between the Remote Node Title Bar and Status Bar described below. Remote Node Title Bar The Title Bar shows several items of interest:

• GTMH Functionality you are authorized to use (GTMH/Control in the example), • Screens pull-down list to let you switch screens in the ‘Sample Application’ project, • Update pull-down list to let you select the screen Update time in your browser, and • three icons respectively for Alarm, Help and Exit.

The Alarm icon function is described in Section 5.3.2 and the Exit icon function is described in Section 5.4. If you click on the Help icon you will see the following Help screen.

Figure 5-6: Remote Node Sample Application Project Screen Help

Note that the Help Screen includes the System Parameters, GTMH/Functionality Description, Title Bar Functions and Status Bar Functions. Click on the Return icon at the top right to return to your project screen. Remote Node Status Bar The Status Bar includes the following elements:

• Web camera icon allows access to live pictures from IP-Camera for the project, if this option is setup and enabled.

• Connection Status indicates the Remote Node to HMI-Server connection status. An X here indicates you have lost the internet connectivity to the GTMH Gateway (and hence to your HMI-server).

• Server/Project field shows your ‘HMI-Server: Project Name’. • Copyright notice from Software Horizons Inc.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 27: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-5

The level of remote access to your Project depends on the authorized GTMH Functionality as described below.

5.3.1 Monitor InstantHMI Server Screen Objects from Remote Node The GTMH/Monitor Functionality allows you to select the screen update time, view any screens on your HMI Server Project, switch to any other screen, and access the web camera view (if this option is setup and enabled). You will not be able to access the Alarm Page; also, you will not be able access the Control (Data Entry) function.

5.3.2 Alarm Page Access and Alarm Acknowledgement from Remote Node The GTMH/Alarm Functionality allows access to all the GTMH/Monitor functions: select the screen update time, view any screens on your HMI Server Project, switch to any other screen, and access the web camera view (if this option is setup and enabled). In addition, if you are authorized for Alarm Page functions, you will be able to access the Alarm Page. When the Alarm icon appears, you may click on it to access the Alarm Page. If there is an active alarm (the Alarm icon flashing) you will see an ACK button; click on ACK button to acknowledge the alarm. Click on the ‘Return’ button or icon to return to your project screen.

Figure 5-7: Cloud Node Project Alarm Page

If you are authorized to use GTMH/Control Functionality you will be able to access the Control (Data Entry) function.

5.3.3 Control (Discrete and Analog Data Entry) from Remote Node The GTMH/Control Functionality allows access to all the GTMH/Monitor functions: select the screen update time, view any screens on your HMI Server Project, switch to any other screen, and access the web camera view (if this option is setup and enabled).

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 28: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-6

If you are authorized for Alarm Page functions, you will be able to access the Alarm Page (Section 5.3.2). In addition, if you are authorized for Control functions, you will be able to do Control functions as described below. Analog Data Entry: Click on any Object (example: Knob) to enter analog object values in the object’s range (Low End value, High End value). You will see a pop-up window, including the current value (900) for the object, as shown. Use the spinner at the bottom of the window to enter the new value. You may also type-in the new value (800, here) in the data entry field. Click Enter to alter the associated tag value in the HMI-Server.

Figure 5-8: Entering Analog Value for Knob

Discrete Data Entry: Entering discrete object values (0 or 1) is similar to Analog Data Entry. For correct data entry, you should know what the 0 and 1 values represent. This should be obvious with well designed toggle button labels and the displayed current state in the Data Entry window.

5.3.4 Switching Screen in ‘Sample Project’ from Remote Node Use the Title Bar ‘Screens pull-down list’ to switch screens in the ‘Sample Application’ to Trend Screen.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 29: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Cloud Node Access to Server Project Page 5-7

Figure 5-9: Sample Project Trend Screen

5.4 Exit from HMI-Server Project Click on the Exit icon on the Title Bar to exit the project.

5.5 Web Browser Client vs. Runtime Client, which one to choose? With the GoToMyHMI Web Server acting as an HMI-Gateway to the InstantHMI Runtime Server project, the remote access node is a client (browser) node on the same LAN or over the Internet. The browser client Node (LAN or Cloud) mimics your HMI-Server project screens (objects and tag values) in any device that has a standard browser. It provides you the GTMH/Functionality available with just a browser; that is, allows you to monitor any screen objects, view and acknowledge Alarms, and allow control (data entry as Discrete and Analog values) through appropriate screen objects. A Runtime Client Node is a Windows Platform (usually a PC) with a fully licensed InstantHMI Runtime Engine installed and running the same project as the InstantHMI Server, but using the Server as the Data Source. It has the capability of running a project different from the Server’s project (having screens different from the Server if desired) as it can acquire object tag information from controllers using the Server as a proxy to access such controller tags. A Runtime Client Node does not use the GoToMyHMI Gateway but makes a direct connection over the LAN/Internet to the InstantHMI Server; information exchange between Client and Server takes place using SHIP protocol (Software Horizons’ Inter-Node protocol (See Sections 2.2.2, 4.1, 4.3.2). With the GoToMyHMI: Web Server implementation web browser clients on the same LAN or Internet may access the HMI-Server using just the web browser without the need for InstantHMI Runtime installed. Of course, a Runtime client has all the runtime functionality, not just the GTMH/Functionality available with just a browser. For example, the Runtime client can include tags and screens not present on the HMI-Server project.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 30Dec2013

Page 30: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed
Page 31: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI Implementation as a Web Server Page 6-1

6 Important Factors in Remote Access to HMI-Server 6.1 Security:

When it comes to Security, it is obvious that the system is only as strong as the weakest link in the chain. Three factors that figure in most security considerations are:

• Authentication, • Authorization and • Auditing.

With Authentication one can be confident of both the identity of the sender and the integrity of the message. GoToMyHMI Web Server runs behind your firewall that you can trust. Your system administrator may also include VPN (Virtual Private Network) protocol for remote access from outside the firewall. When you access the GoToMyHMI Web Server using any standard browser (iPhone, iPAD, BlackBerry, Smartphone, Tablets, Laptop PC etc.) your browser establishes a trusted link with GoToMyHMI. Authorization usually involves User name and Password. When your company licenses the GoToMyHMI Web Server option you can act as Admin and setup User Name(s) and Password(s) for accessing your InstantHMI Server(s) from any browser client nodes. The authorized user may then login using his assigned user name and password from any browser.

Figure 6-1: Login Authorization

Please remember to Logoff when ending your browser session. Auditing useful logged information on user access enables assigning responsibility for user actions. The goal is to have a browser client HMI that is secure enough for everyday use, easy enough to use, while exhibiting acceptable performance and reliability characteristics. All remote browser access to your HMI servers (behind your firewall) via the GoToMyHMI Web Server HMI-Gateway is controlled by your policy. Your Admin will setup designated ports to InstantHMI access behind the firewall in accordance with company policy. In addition, s/he will also setup User Names, Passwords and other access parameters including alarms, data entry, etc. from browser client nodes, which could be ‘across the room, or across the world’.

Page 32: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI Implementation as a Web Server Page 6-2

Your HMI project tag database does not go beyond your firewall. Only the permitted data is accessed from the browser. No controller communication protocol strings (request/response) are traceable beyond your firewall.

6.2 Simplicity: Ease of Use and intuitiveness of the user interface are essential for user acceptance. Building a complex fortress chock full of functionality is futile if user acceptance is lacking. Establishing remote access to InstantHMI is as easy as 1-2-3: 1. Install InstantHMI 6.1 with Cloud capability and develop HMI in the traditional way. 2. Ensure GoToMyHMI Web Server option license is activated by Software Horizons. 3. Setup user access security policy (User Names, Passwords and Access Level). You are ‘Ready to Go’. Use any standard browser on any device; no downloads, no tedious installs, no plug-ins. Login and you have the HMI in your hands where you are: factory cafeteria, or parking lot, or on the beach, or even the golf course! Switch screens, view alarms and acknowledge them, even perform remote control data entry as permissible. There is also an available web camera option to confirm that your actions took in the factory or the field using integrated web-cam views.

6.3 Speed: Get your browser HMI screens updated in seconds, typically 2-5 seconds. Control actions usually take place much faster (1 second) as can be verified by web-cam views. Of course, the speed of response will depend on Internet connection speeds, latency and network traffic. Mobile Smartphones with expensive data plans or limited bandwidth may require slower update times (30 secs). Receive Alarm notifications instantly by email wherever you are. Click on the link provided in email and ‘GoToMyHMI’ displays your HMI screen. Click on the icon for the alarm view and ACKnowledge buttons. Acknowledge alarms and/or take other prompt action from where you are. No tedious side trips needed to assess the situation before taking action. Note: Because internet traffic and latency are not predictable, GoToMyHMI is not intended to be used in life-threatening or critical emergency applications. The Customer is entirely responsible for determining the applicability of GTMH functionality for its applications.

6.4 Other Factors: Bandwidth Requirements High Speed Internet upload Bandwidth in the range of 5 Mbps are available from cable companies at reasonable cost. Download Bandwidths are much higher (22 Mbps). There is a tradeoff between bandwidth and speed. Faster the screen update speeds desired, the higher the bandwidth required. Cost HMI in the Cloud computing models are amenable to ‘pay as you go’ low cost subscriptions (per user, per month). Based on feedback from customers, we have rearchitected GoToMyHMI as Web Server to be installed in your company (on the same PC/CE node as the HMI-Server or a different PC); this allows us to license GoToMyHMI as a runtime option and eliminate a subscription based pricing.

Page 33: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

GoToMyHMI Implementation as a Web Server Page 6-3

6.5 Security Considerations: InstantHMI and GoToMyHMI Security considerations become important when you wish to allow remote access to your InstantHMI Runtime Server (protected by your network firewall) from an untrusted network (such as the Internet). InstantHMI 6.1 allows two kinds of remote access: Cloud Node access from any standard browser: All communications between InstantHMI Server and Client (or Cloud) Nodes use the TCP/IP protocol, where data between the Server and Client (or Cloud) Nodes is transported in packets. A firewall in a network is designed to block unauthorized TCP connections while permitting authorized TCP connections; permitted connections may then support the exchange of required TCP/IP communication packets between the HMI-Server and the remote Client and/or Cloud Node. A packet-filtering firewall controls access based on information in the packet header. Each packet has a header and a part of the original data, called its content. The header consists of information such as source, destination and port. A packet-filtering firewall is usually implemented in routers. A packet-filtering firewall allows a direct connection between the Server and the Client (or Cloud) Nodes. Your HMI project tag database does not go beyond your firewall. Only the permitted data is accessed from the browser. No controller communication protocol strings (request/response) are traceable beyond your firewall. All remote browser access to your HMI servers (behind your firewall) is controlled by your policy. All messages entering or leaving the company intranet pass through the firewall, which examines each message and blocks those that do not meet the specified security criteria. Note that virus scanning is not the intended function of a firewall. Your Admin will setup designated ports to InstantHMI access behind the firewall (see port setup requirements below) in accordance with company policy. In addition, s/he will also setup User Names, Passwords and other access parameters including alarms, data entry, etc. from Cloud Nodes, which could be ‘across the room, or across the world’. Traditional HMI Client-Server Setup: InstantHMI TCP/IP Server: Configure firewall to allow inbound connections on TCP Port 2364. InstantHMI TCP/IP Client: Configure firewall to allow outbound* connections on TCP Port 2364. GoToMyHMI Setup: By default GoToMyHMI Web Server listens on Port 80. To access the GTMH Server over a LAN, simply enter the LAN PC IP Address in a browser. To access the GTMH Server over the internet the network router needs to forward Incoming TCP Port 80 to the LAN PC where GTMH Web Server is running. Once completed, enter the Internet IP Address of the router in a browser. (Note: The script http://instanthmi.com/ip.cgi displays your "external" Internet IP address.)

Page 34: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Appendix A: Some Thoughts on GoToMyHMI Page A-1

A. Appendix A.1 General Information A.1.1 Compatible Cloud Node Devices

Any device (iPad, iPhone, Android, BlackBerry, Laptop PC, etc.) using a standard web browser may act as a Cloud Node and use GoToMyHMI as its HMI-Gateway to access InstantHMI 6.1.

A.1.2 GoToMyHMI License Agreement GoToMyHMI web Server is licensed as a software option governed by the InstantHMI License. We assume that you have read the InstantHMI license agreement and agree with its terms. Under no circumstances shall Software Horizons Inc. be held liable or responsible for indirect or consequential damages resulting from the use of or the application of InstantHMI individually or in combination with GoToMyHMI Functionality and/or other software and or hardware. All persons using GoToMyHMI to access InstantHMI must be willing to accept responsibility to set up the various components in InstantHMI to suit their application and for choosing an application appropriate for the InstantHMI components, individually or in combination with other equipment. All figures and examples in this manual are for illustrative purposes only. In no way does including these figures and examples in this manual constitute a guarantee as to their suitability for any specific application. To test and approve all programs, prior to installation, and all GoToMyHMI Functionality prior to their use, is the responsibility of the end user. This policy applies to any software from Software Horizons that requires a software License Activation code offered by Software Horizons. If you have questions about this policy, please contact

Software Horizons Inc., 100 Treble Cove Road, N. Billerica, MA 01862, USA Tel 978-670-8700 Fax 978-670-8787 Website www.InstantHMI.com

A.1.3 Installing GoToMyHMI If you have a compatible device with a standard browser (and you have Internet connectivity) you are Ready to Go! No Installation necessary. You can remotely access your HMI-Server (with InstantHMI 6.1 Runtime installed) from wherever you are. Contact Software Horizons with your application requirements.

A.2 FAQ - Frequently Asked Questions A.2.1 How can I try GoToMyHMI today?

Testing Sample Application Project (Included in InstantHMI for you) See Section 5. Testing your own PLC Project a) If you are not an InstantHMI customer, download and install InstantHMI 6.1. You can get a 30-day

evaluation license at no charge.

b) If you are an existing InstantHMI customer upgrade to version 6.1; an upgrade charge may apply.

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 20Mar2013

Page 35: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed

Appendix A: Some Thoughts on GoToMyHMI Page A-2

GoToMyHMI: Copyright © 2013 Software Horizons Inc. 6.1 – 20Mar2013

c) Setup your PLC Project on an InstantHMI 6.1 Server ready for remote access over LAN (wireless or wired) and/or Internet as desired. d) Purchase the GoToMyHMI license option to access the GTMH Functionality (GTMH/Monitor, GTMH/Alarm, and GTMH/Control) and you are ready to go. e) Try for yourself today using the web Browser on your device.

A.2.2 How does GoToMyHMI differ from VNC approach? VNC (Virtual Network Computing) is a ‘Carbon Copy’ approach to remote console access to screen monitoring and data entry. The Remote Desktop feature of Windows XP Professional may also be used for remote console access to screen monitoring and data entry. VNC (Open VNC) RealVNC company provides RealVNC remote access software. Open VNC is the free license version of the software. The software includes a server and client application for the Virtual Network Computing (VNC) protocol. Since VNC is based on the concept of a remote frame buffer or RFB, the protocol underlying VNC is also referred to as the RFB protocol. The client computer (running the client application) can control the Server computer (running the server application). The server application accepts login from the remote client PC and then the server computer’s screen can be controlled remotely from the client computer. How does GoToMyHMI differ from VNC approach? Feature Description GoToMyHMI VNC

Remote Node Independent access

Yes Client view node screen access is independent of Server screen access.

No Client is merely a remote access node sharing console I/O (mouse, keyboard and monitor) with server.

Multiple Cloud Nodes? Yes any number of cloud nodes allowed and are independent of each other and the server (only limited by bandwidth).

No Only a single remote node allowed.

Support for any platform with a standard Browser

Yes all Standard Browsers available on any platform are supported (including iPhone, Black Berry, iPAD and PCs).

No only limited platforms where VNC client can be installed are supported.

Remote Alarm Notification

Yes (automatic email contact)

No Alarm capability is not available.

Remote Alarm Acknowledge

Yes (email receiver using iPhone, BlackBerry, Windows Mobile or other devices can easily access the Alarm page and Ack the alarm remotely).

No Alarm capability is not available.

Standard HMI Server Installation

Yes InstantHMI is ‘Cloud ready’ for remote access.

No Installation of third party VNC Server required.

Look at the Table above. GoToMyHMI vs. VNC, there’s NO Comparison!

Page 36: GoToMyHMI: HMI-Gateway...Runtime on PC or CE) or another PC on the same LAN as the HMI-server. With the GoToMyHMI Web-Server implementation InstantHMI Runtime may be remotely accessed