OPC UA App development for Android



Similar documents
Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

ITG Software Engineering

ID TECH UniMag Android SDK User Manual

Note: This documentation was written using the Samsung Galaxy S5 and Android version 5.0. Configuration may be slightly different.

Introduction to Android Development. Jeff Avery CS349, Mar 2013

How To Develop Android On Your Computer Or Tablet Or Phone

Graduate presentation for CSCI By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

Android Programming and Security

ANDROID INTRODUCTION TO ANDROID

Android Mobile App Building Tutorial

RESCO MOBILE CRM QUICK GUIDE. for MS Dynamics CRM. ios (ipad & iphone) Android phones & tablets

Workshop on Android and Applications Development

Android 5.0: Lollipop OS

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs

Beginner s Android Development Tutorial!

SmartVCA Security Management System Android SmartPhone Client

OPC Unified Architecture - Connectivity Guide

Protect, License and Sell Xojo Apps

OPC and DCOM: 5 things you need to know Author: Randy Kondor, B.Sc. in Computer Engineering

Silk Test Testing Mobile Web Applications

Event Manager Application for Android

Trepn plug-in for Eclipse FAQ

DETERMINATION OF THE PERFORMANCE

Introduction to Android

SmartClass functions Demonstrations: Screen broadcast: (See more on the SapphireCast screen sharing engine) Collaborative interactive whiteboard:

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

The Information Revolution for the Enterprise

>> smart cross connect Users Guide. November 2014.

OPC & DCOM Troubleshooting: Quick Start Guide. Author: Randy Kondor, B.Sc. in Computer Engineering January 2008

Viewing and Troubleshooting Perfmon Logs

Mobile Application Development 2014

Smartphone market share

Zoom Video Conferencing

Course Summary. Prerequisites

mpro5 overview mpro5 overview 1

ICE Trade Vault. Public User & Technology Guide June 6, 2014

01. Introduction of Android

Running a Program on an AVD

Table of Contents. 3 Setup 6 Home Screen 8 Modes 12 Watch Live & Timeline 17 HomeHealth Technology 21 Emergency Options 24 Settings 26 Plans 28 Help

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To

White Paper. Banking on the Tablet Channel

Module Title: Software Development A: Mobile Application Development

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

SIGNificant e-signing for the ipad and Android

Oracle FLEXCUBE Direct Banking Android Tab Client Installation Guide Release

OpenTouch Connection for iphone Release 2.1

Android Development Exercises Version Hands On Exercises for. Android Development. v

Mobile App Design and Development

Student Guide to Neehr Perfect Go!

How To Use The Elena Mobile App

Android Development Setup [Revision Date: 02/16/11]

Licensing Guide BES12. Version 12.1

Appscend Mobile Platform Whitepaper

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET

Fast remote data access for control of TCP/IP network using android Mobile device

Wonderware SmartGlance

Mobile App Development

Introduction to Android

JoramMQ, a distributed MQTT broker for the Internet of Things

Monitoring MySQL database with Verax NMS

Getting Started with Android Smartphones and ThingWorx

XenMobile Logs Collection Guide

Data Driven Success. Comparing Log Analytics Tools: Flowerfire s Sawmill vs. Google Analytics (GA)

UNDERSTANDING RESPONSIVE DESIGN A SOLUTION FOR PUBLISHERS AND ADVERTISERS IN A MULTI-SCREEN WORLD. standout brand experiences

Do you know how your TSM environment is evolving?

AN ANDROID APPLICATION FOR ISSUING AND VERIFYING COMMUTER TRAIN TICKET THROUGH GPS USING CLOUD

OpenScape UC Application

Technology Services...Ahead of Times. Enterprise Application on ipad

Developing Cross-platform Mobile and Web Apps

OpenTouch Conversation for Android Smartphone Release 2.1

ANDROID APPLICATION FOR FILE STORAGE AND RETRIEVAL OVER SECURED AND DISTRIBUTED FILE SERVERS SOWMYA KUKKADAPU B.E., OSMANIA UNIVERSITY, 2010 A REPORT

User Guide Novell iprint 1.1 March 2015

50 shades of Siebel mobile

SAS REPORTS ON YOUR FINGERTIPS? SAS BI IS THE ANSWER FOR CREATING IMMERSIVE MOBILE REPORTS

Responsive Web Design. vs. Mobile Web App: What s Best for Your Enterprise? A WhitePaper by RapidValue Solutions

Student Attendance Through Mobile Devices

TECHNOLOGIES MOBILE STRATEGY

Experimental Comparison of Hybrid and Native Applications for Mobile Systems

Introduction to Android. CSG250 Wireless Networks Fall, 2008

Property Apps and Mobile Websites - UK. w:// t:// e:// hq@ultrait.org

Android Application Development

... Introduction Acknowledgments... 19

Android Developer Fundamental 1

CROSS PLATFORM FOR MOBILE COMPUTING

Quareo ICM Server Software

Getting Started with Android Development

mframe Software Development Platform KEY FEATURES

Develop Mobile Applications. with. Instant Developer

Medstar Health Dell Services

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc.

Transcription:

OPC UA App development for Android Ismo Leszczynski Master s Thesis presentation 13.11.2015

Contents 1. Introduction 2. Targets 3. OPC Unified Architecture 4. Android Operating System 5. App development 6. Implementation 7. Possible use cases 8. Conclusions

Introduction OPC UA has become increasingly popular recently Smartdevice market has grown exponentially over the last 10 years Could we make use of the vast amount of smartdevices in an OPC UA environment?

Targets Determine if Android is suitable for OPC UA Implement an Android App that provides all of the standard OPC UA client features Evaluation of the Android development environment Consider possible use cases

OPC Unified Architecture Interoperability standard for secure and reliable exchange of data for industrial applications Platform independent, service oriented architecture Specifications define the interface between Clients and Servers (or Servers and Servers)

OPC UA Address Space Server has an Address Space Address Space contains Nodes Node relationships defined by References Can be imagined as an hierarchial tree structure Can have circular references!

OPC UA Services Address Space information is accessed through Services Services provide interfaces for Data Access Historical Data Access Alarms & Conditions Historical Alarms & Conditions Methods...

Android Operating System Open source mobile operating system Currently developed by Google The most popular operating system for smartdevices Roughly 80% market share

App development The native programming language is Java Using a Java SDK for OPC UA is a solid choice Android apps consist of four main components: Activities Services Content providers Broadcast receivers

Activities and Fragments Activities typically represent a single activity in an app Fragments are User Interface elements for Activities can represent a part of or a whole view Design possibilities: Several activities with single fragment Single activity with multiple fragments Combination?

Activities and Fragments Connect Activity Browse Activity Connect Fragment Browse Fragment

Activities and Fragments Client Activity Connect Fragment Browse Fragment

Services Background workers Used typically for async tasks or long lasting operations Activities launch Services and can bind to them Don t require the Activity for staying alive

Services for an OPC UA client Perfect for running the OPC UA client for communication between the Activity and an OPC UA server Allows running OPC UA service requests async Can do other things while OPC UA service calls are handled in the background Can be left running in the background to gather data while the Activity isn t in use (e.g. Listen for alarms)

Content providers Give access to shared data on device/web/storage Access depends on given permissions Requested during installation Also provide means to write data to app private storage

Content providers for an OPC UA client Allows data logging to SQLite database Enables saving connection settings and history

Broadcast receivers Broadcasts are system wide events Apps can listen for specific events with receivers Apps can create custom broadcasts

Broadcast receivers for an OPC UA client Good for relaying events from the Service to the Activity Activity can react to events from the Service: Connection information New data received Alarm received Event received

Design principles Unified experience each app should feel similar Keep it simple Let users figure out how things work through use of common interaction models Swipe gestures, two finger zooming,...

Development environment Developed with Android Studio Started with Eclipse and the Android Developer Tools plugin Different platforms were used for testing: Google Nexus 7 Google Nexus 6 Samsung Galaxy Tab 10 Various other smartphones

Implemented structure OPC UA client as a Service Single Activity with multiple Fragments Each feature as own Fragment Data storing in SQLite

OPC UA client Service Runs separately from the Activity Manages OPC UA connections Provides OPC UA functions for the App to use Reports information through Broadcasts

Implemented OPC UA features Data Access Historical Data Access Alarms & Conditions Historical Alarms & Conditions Methods

Main Activity Manages Fragments Provides access to SQLite storage Starts the OPC UA client Service Acts as a temporary data store when changing Fragments

Connect Fragment Allows creating new connections Provides access to previously used connections

New Connection Fragment Input view for connection details

Status Fragment Displays connection status Manages disconnecting from server

Navigation Fragment Provides view of all connections Allows changing active connection Access point to OPC UA features

Browse Fragment OPC UA server navigation Gives access to features: Subscriptions History Node information Methods Challenge: how to display huge Address Spaces in while navigating deeper?

Browse Fragment Challenge

Monitor Fragment Displays subscribed values Provides option to view all or a single server Allows editing values

Monitor Fragment Displays subscribed values Provides option to view all or a single server Allows editing values

Monitor Fragment Displays subscribed values Provides option to view all or a single server Allows editing values

Events Fragment Displays events received from the OPC UA server Color codes severities Provides additional information on select

Event Fragment Displays events received from the OPC UA server Color codes severities Provides additional information on select

Data Value History Fragment Displays value history as a graph... or as a list Timespan selected either from predefined intervals or custom date range

Data Value History Fragment Displays value history as a graph... or as a list Timespan selected either from predefined intervals or custom date range

Event History Displays event history the same way as real-time events Time selection same as Data Value history

Methods Enables user to call Methods on server Displays Input & Output parameters with their descriptions

Additional Fragments

Possible use cases Alarm monitoring Maintenance assistance Qr codes on devices? Process control Data retrieval from field devices

Conclusions Android offers a flexible environment Development tools feel mature All of the required features were implemented Vast amount of available devices offers many opportunities

Questions?