SCADA systems development on mobile device platform Java Client/Server model and localization enhancement

Similar documents
User Localization for Intelligent Crisis Management

DAY 3 J2ME Aalborg University, Mobile Device Group. Mobile. Mobile Phone Programming

IBM Workplace Client Technology, Micro Edition V5.7 delivers tools and run-times for server-managed client devices

ProvideX On Handhelds

Overview of Java 2 Platform, Micro Edition (J2ME )

MMAPI (Mobile Media API) Multimedia Framework for Mobile Devices

Who am I? Wireless Online Game Development for Mobile Device. What games can you make after this course? Are you take the right course?

Java 2 Platform, Micro Edition

Advanced Data Organization for Java-Powered Mobile Devices

DAY 3 J2ME March 2007 Aalborg University, Mobile Device Group Mobile Phone Programming

DESIGN AND IMPLEMENTATION OF AN EMBEDDED HOME-GATEWAY FOR REMOTE MONITORING BASED ON OSGI TECHNOLOGY

PTViewerME: Immersive Panoramas for PDA and Smartphone

Control System for the Prototype of Hydrogen Powered Car

1. Introduction. Java. Fall 2009 Instructor: Dr. Masoud Yaghini

JavaME TAMZ. Department of Computer Science VŠB-Technical University of Ostrava

Exam Questions. Give an example network topology where GPSR cannot find a way from a source to a sink. Explain your answer.

CM0256 Pervasive Computing

Mobile Application Development. Introduction. Dr. Christelle Scharff Pace University, USA

Middleware-Integration of Small Devices

JAVA ON HANDHELD DEVICES COMPARING J2ME CDC TO JAVA 1.1 AND JAVA 2

Mobile Application Design and Development With the use of J2ME Technology & UML m.khlaif Computer Science Dept Garyounis University

Developing Mobile Applications

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

HP standard light template

phoneme: High-performance, product-quality GPLv2 CDC + CLDC stacks Terrence Barr

HMI. Operating and monitoring.

Minne menet, Mobiili-Java?

Series 40 6th Edition SDK, Feature Pack 1 Installation Guide

APPLICATION PROGRAMMING: MOBILE COMPUTING [ INEA00112W ] Marek Piasecki PhD Mobile Databases (W8/2013)

3Com Wireless Bluetooth PC Card, USB Adapter, and Printer Adapter

Bluetooth Scatternet Application. Sun Code for Freedom

IBM WebSphere Business Integration Event Broker and Message Broker V5.0

TAMZ I. (Design of Applications for Mobile Devices I) Lecture 1. Introducing Mobile Platforms.

MCL Technologies. MCL-Collection. Touch the Technologies and Take Control

UNIVERSITY EXAMINATIONS: NOV/DEC 2011 REGULATION PERVASIVE COMPUTING PART A

TAMZ. Department of Computer Science VŠB-Technical University of Ostrava

Testing Mobile Agent Platforms Over the Air

Solutions. JavaTM for Embedded Appliances

Computer Programming for Engineering

Developing Games for J2ME Technology- Enabled Mobile Devices

Year, pier University Nikos Migas PhD student 2 Supervisors: School of Computing, Na MARIAN

JSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level

Java and C Performance Comparison on Palm OS. Zhi-Kai Xin

802.11n in the Outdoor Environment

ExtremeWireless WiNG NX 9500

NX 9500 INTEGRATED SERVICES PLATFORM SERIES FOR THE PRIVATE CLOUD

WL-1100SD Wireless b SD Card

Wireless service developing for ubiquitous computing environments using J2ME technologies

Mobile Processors. Jose R. Ortiz Ubarri

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform

5.1 Configure each Sensor Pin Rename Set Rules Export Data Switching Nodes... 25

ROOM GUARD VT335. Environmental Infrastructure monitoring

QuickSpecs. HPE OfficeConnect M n Access Point Series. Overview. HPE OfficeConnect M n Access Point Series

JXTA for J2ME Extending the Reach of Wireless With JXTA Technology

Personality Next Generation Operating Environment. Last updated: Mar-2015

J2ME ARCHITECTURE AND RELATED EMBEDDED TECHNOLOGIES

IBM Tivoli Directory Server

Mobile Station Execution Environment (MExE( MExE) Developing web applications for PDAs and Cellphones. WAP (Wireless Application Protocol)

مريم سعد جعفر رانيا عبد السجاد علي سامي سمادير عبد العباس ياسمين عبد االمير

Read Me File for Check Point VPN-1 SecureClient For Windows CE (build 0029) 3/30/03

1. Introduction. 1.1 Cosmo Specifications

Introduction to JAVA Programming Language

Bhopal, , India 3 M.Tech Scholor,Department Of Computer Science, BIST Bhopal. Bhopal, , India

ROOM GUARD VT335. Environmental Infrastructure monitoring

Mobile Services for Java-enabled Devices on 3G Wireless Networks. 1 Introduction

Downloaded from various sources on the NET

Mobile Information Device Profile (MIDP) Alessandro Cogliati. Helsinki University of Technology Telecommunications Software and Multimedia Laboratory

Evaluating Client/Server Operating Systems: Focus on Windows NT Gilbert Held

Device Technologies I J2ME & WinCE

Requirements and Issues of V**s for Mobile Terminals

Cisco Integration Platform

Services Provisioning on Mobile Devices via Bluetooth in a Localized Setting Using a Proposed System BTServ

SCHOOL OF PHYSICAL, CHEMICAL AND APPLIED SCIENCES

IBM iseries Models 800 and 810 for small to medium enterprises

QuickSpecs. Models. Introduction. Intel a/b/g/n PCIe x1 WLAN Card. Overview

IBM Workplace TM Collaboration Services

BlackBerry Integration With IBM WebSphere Everyplace Access 4.3

Linux-based onboard "gateway server" remotely pilots model airplane. by Telly Cooper (Sep. 12, 2003)

Table of Contents. 1 Introduction. 2 Wireless Configurations. 3 Setting Up your LAN Administrator Station

This factsheet represents VAS s current offerings and suggested units (Dec, 2010). The devices are divided into three main categories:

VT805 / Monitoring system

Transactions of the VŠB Technical University of Ostrava, Mechanical Series. article No. 2002

Enterprise Planning Model Using REA Ontology

MDR-1 Mobile Document Reader

MICROVISION! Embedded Development Company, Microvision Co.,Ltd < INTRODUCTION > Embedded On Demand by MicroVision

Using JavX Running Applications in a Web Browser or WinCE Device. Presented by: Jarett Smith Eric Vanpaeschen

MICROVISION! Embedded Development Company, Microvision Co.,Ltd < INTRODUCTION > Embedded On Demand by MicroVision

SDR Forum Meeting Report

Multi-User MIDP Game Design

Standards,Tools, & Best Practices Editor: Sumi Helal University of Florida

IBM SecureWay On-Demand Server Version 2.0

Karbonn All rights reserved

S60 3rd Edition SDK for Symbian OS Installation Guide

Management Software. SmartView TM EMS (Element Management System) Management Software. Management Software SmartView TM EMS. Polled Network Elements

Chapter 10: Wireless LAN & VLANs

YOUR INDUSTRIAL IOT PARTNER Expertises and solutions

Mobile Java: A New Opportunity for Data Services (Executive Summary) Executive Summary

IST CRUMPET, Creation of User Friendly Mobile Services Personalised for Tourism R. Report

Universal Communicator

Petr Suchomel Architect, NetBeans Mobility

Transcription:

SCADA systems development on mobile device platform Java Client/Server model and localization enhancement ONDŘEJ KREJCAR, JINDŘICH ČERNOHORSKÝ Department Measurement and Control VSB Technical University of Ostrava 17.listopadu 15, 708 33 Ostrava-Poruba CZECH REPUBLIC Abstract: - The paper deals with the subject of programming possibilities SCADA systems in the context of mobile devices as well as in relationships with control systems and problems with solutions of possible situations arise from their design or their operation. The main objective is to provide complex view on branch of knowledge and to show possibilities how to use SCADA systems on concrete mobile device in context of use Java language. Main aspect is in Java language and use of created SCADA based application on wide scale of mobile devices without any changes of source code. The proliferation of mobile computing devices and local-area wireless networks has fostered a growing interest in location-aware systems and services. Another area of interest is in model of radio-frequency (RF) based system enhancement for locating and tracking users of our SCADA system inside buildings. Key-Words: - SCADA, Mobile device, PDA, Java, J2ME, MIDP, Location-aware services 1 Introduction Programming of personal digital assistant (PDA) is possible in two ways. First and best known way is based on MS Windows CE from Microsoft Company, which is now renamed to Windows Mobile for Pocket PC. Contemporary version of Windows Mobile is 2003. Second way is based on Linux distribution. OS Win CE is used not only in pocket computers, but it is possible to find it in other devices. There are two usable and supported programming platforms. First one is otherwise younger, but more supported by Microsoft. The platform is called.net framework and it is possible to install it on Win CE running PDA..NET platform hasn't however portation to Linux. The second way is based on Java language released by Sun company, which has developed it since 1995. Java has the support of both operating systems. Program written in Java is possible to start on every processor on which virtual machine of Java called Java Virtual Machine (JVM) is running. JVM is virtual (software or hardware) processor on which is possible to start the program or applet written in Java (java applet). JVM is implemented in a number of embedded devices, servers, mobile phones and PDA s. Next benefits are in uniform language platform for development of company systems and a reuse of code. 2 Java 2 Micro Edition (J2ME) Java language is currently distributed in three different packages various with their sets. One of these is named as Java microedition platform. This distribution started up with the aim to consolidate various offshoots of Java language for small devices, which aren t in the standard edition. This establishment encompasses devices with various properties. Microedition isn't one specification like standard edition, but it is a set of various configurations and profiles. These configurations designate basic set of libraries and properties of devices, which refine profile. MIDP Mobile Information Device Profile CLDC KVM PDAP Personal Digital Assistant Profile Conected Limited Device Configuration Personal Basis Profile RMI profile Foundation Profile CDC Conected Device Configuration CVM Kilobyte Virtual Machine Compact Virtual Machine Fig. 1.: Basic J2ME structure Game profile 2.1 Mobile Information Device Profile (MIDP) MIDP profile specify CLDC configuration for use in smallest devices, like usual mobile phones. Just this platform pleases largest focus, because it is concerned in body extensive devices. The MIDP profile adds to hardware specifications a minimum requirement on size of displays (96 x 54 pixels) and a possibility to control device by character key or touch on the screens. It also requires at least 8 kb stable memory for saving data application. In version MIDP 2.0, whose specification is already available, important functionality is improved, like interface by sockets or sound control. Practically each of mobile phones belongs to MIDP category. Application for this category is called midlet according to basic class profile MIDP.

3 J2ME Possibility confrontation J2ME is relatively young technology, which carries along lashing of absences. This technology comes to consolidate language specifications, but it is very difficult to write midlet, that would run on different phones without changes. J2ME is implemented according to the same specifications by each phone producers. Author finds at attempt to check on application some distinguish of portability in implementation. Newer MIDP 2.0 specification has already removed main deficiencies of first version specifications. If it is needed to have some application all the time with you, then it is ideal to locate it on mobile phone or pocket computer. J2ME is the simplest possibility (and often only one), how to do that. Appearances to massive Java supports by mobile phone producers like Nokia, Siemens or Motorola, it will markedly improve its possibilities. Using of Java application in relation to GPRS is for access to server data cost tolerable and allows being "on-line" all the time. If we consider these accomplishments, question of integration of these establishments into only one is self-suggesting. That establishment under name MDA (mobile digital assistant), so the field of action for J2ME is very wide and complex. 4 Java and Linux on PDA ipaq Most common variant is using Linux on classical Pocket PC. First step of this Linux installation is. Since Pocket PC s are in most cases on purchase already equipped with Windows CE system, it is necessary to replace it with desired Linux distribution. This is user's exacting operation and requires higher knowledge level in area installation and system repair. There are now multiple projects to develop Linux implementations for the ipaq, including one from the Hewlett-Packard sponsored handhelds.org site. In particular, this Familiar Project provides comprehensive free and open support for the ipaq. 4.1 HP ipaq platform 4.1.1 HP ipaq 5450 The ipaq 5450 model has a 240 x 320 pixel backlit color LCD screen and is powered by a 400MHz Intel Strong-Arm processor with 64MB of RAM and 64MB of flash memory. This device has integrated support for wireless solutions as Wi-Fi, Bluetooth and infra red. Wi-Fi works on 2,4GHz with maximal speed about 11Mbps and maximal real range about 100m. Wi- Fi is acceptable for industry solutions, where EMG noise is small. Power consumption of this wireless standard is relatively high in compare of other solution. Bluetooth operate on 2,4GHz to and it has maximal range for communication about 10m, maximal speed in physical layer is about 1Mbps, lees of power consumption. Bluetooth is acceptable for small spaces. Typical usage is for mobile phone hands free. Infra red is able to transmit data for small distance to 30cm and maximal transmitted speed is about 1.152Mbps. It is a very suitable solution for synchronization with others mobile devices or computers. Power consumption is less too. On this model of ipaq we have installed a Familiar Linux distribution on which is running JVM (Java Virtual Machine) needed for our SCADA application (will be described in one next chapter). Because we need tests on other platform, we have HP ipaq H4150 on which is running Windows Mobile 2003 operating system. 4.1.1 HP ipaq 4150 HP ipaq 4150 is classical PDA from Hewlett-Packard too. It has color display with 240 x 320 pixels with 400MHz Intel PXA255 CPU, 64 MB memory RAM a 32 MB flash memory (NAND flash). This system is equipped by MW 2003 OS, and a special virtual machine J9 from IBM company (will be described in one next chapter). Field actions of pocket computers are wide over some limitation because theirs communication possibilities along with theirs size puts them many benefits opposite to other mobile system like notebook. 4.2 WebSphere Everyplace ME - J9 VM If we want to work with an application written in Java, we have to install Java runtime Environment (JRE). JRE includes JVM, which is typed and compiled for existent platform, respective concrete processor of given Pocket PC, how it was already described above. The J9 VM is the core of WebSphere Everyplace Micro Environment (WEME), the IBM implementation of the Java Virtual Machine Specification, Version 1.3. The J9 VM and Java Class Libraries (JCL) comprise the J9 runtime environment. The J9 runtime environment is Java 2 Platform, Micro Edition (J2ME) compliant and contains Connected Limited Device Configuration (CLDC) and Connected Device Configuration (CDC) based technologies. In addition, the WebSphere Everyplace Custom Environment (WECE) is a combination of the J9 VM and IBM custom libraries. The WEME product is supported on a variety of: Operating systems (including Microsoft Windows(TM), Linux, PalmOS, OSE, Rex,

VxWorks, PocketPC, Symbian, QNX and Nucleus) Hardware architectures (including Intel x86, xscale. ARM, MIPS, SH4, and PowerPC) WebSphere Everyplace Micro Environment is a certified Java Powered product, developed under an agreement between IBM and Sun Microsystems. Deployment of applications or devices with Workplace Client Technology requires an appropriate deployment license from IBM or one of IBM's partners. The installer package contains the components of the IBM Workplace Client Technology, Micro Edition (WCTME) MIDP 2.0 runtime for the Windows Mobile 2003 device. On J9 VM we can run application created for mobile phone under MIDP specification without any changes of source code. Developer must create only one product in one specification and this is runnable on PDA, mobile phone and other embedded device with running J9 VM. Space required to install J9 VM is: J2ME Mobile Information Device Next Generation (JSR-118) MIDP 2.0 3MB J2ME Personal Profile 1.0 (JSR-62) 8MB 5 SCADA SCADA stands for Supervisory Control And Data Acquisition. As the name indicates, it is not a full control system, but rather focuses on the supervisory level. As such, it is a purely software package that is positioned on top of hardware to which it is interfaced, in general via Programmable Logic Controllers (PLCs), or other commercial hardware modules. 5.1 SCADA model We have created new SCADA client server application based on SCADA systems principals. This model is very useful and scalable for many tests of our embedded devices (SCADA clients). Model of SCADA server s doesn t contain some standards of SCADA based systems like real-time database and historical trends. Creation of this option is over of our work and it isn t needed. Fig. 2.: SCADA server screen model on Java platform 5.2 SCADA J2SE server Model of SCADA server was created using Java application base in standard IDE environment of Borland JBuilder X. Application is based on J2SE functionality and library. Some options of user interface like graph are developed for better visualization of measured values. Needed values like temperature are generated by special created algorithms, or are set by user. User can set value by adjustable scrollbars, and their value is visualized online by other graphical element. 5.3 SCADA J2ME client Model of SCADA client was developed in the same IDE JBuilder X as server above. As development platform the Java 2 Mobile Environment specification (J2ME) was used. This specification allows running applications on mobile phone and on PDA with installed JVM. In our case it is IBM J9 VM. This is very important for code reuse and safety factor of our application. Application is created by high level components interface (trouble free portability between mobile devices) and other component usable for SCADA systems.

5.3.2 Alarms in J2ME SCADA applications Alarms are very known and used in case of SCADA systems. J2ME platform has this support too. They are in Alert class, which is subclass of Screen class. Alert has the same behavior as known dialogs, but it has small functionality. Alert has many of types: ALARM - alarm CONFIRMATION - confirmation ERROR - error INFO - information WARNING - notification Alerts have many parameters like their name, message for user, image and timeout. Fig. 3.: Screen of SCADA J2ME client 5.3.1 High level components of SCADA system The first component which is used in SCADA client is text field. This can be used to set demand on some returned value from SCADA server. Gauge is the second component and it is used for visualization of actual temperature value. This gauge has enabled state, where we can change the value of this component. Example of these two components is shown on Fig. 3.: and Fig. 4.: (mobile and PDA). Other high level component is shown at Fig. 4.: Mainly it s an image item component, which is useful for graphical representation of some problem. Notice that there is a different presentation of application between mobile phone and PDA. In mobile phone case the buttons are on tool list, meanwhile in PDA case they are visible as self button. Fig. 4.: Another screen of SCADA on PDA ipaq h4150 - J9 VM 6 SCADA - localization enhancement The proliferation of mobile computing devices and localarea wireless networks has fostered a growing interest in location-aware systems and services. A key distinguishing feature of such systems is that the application information and/or interface presented to the user is, in general, a function of his or her physical location. The granularity of location information needed could vary from one application to another. For example, locating a nearby printer requires fairly coarse-grained location information whereas locating a book in a library would require fine-grained information. While much research has focussed on developing services architectures for location-aware systems, less attention has been paid to the fundamental and challenging problem of locating and tracking mobile users, especially in in-building environments. We focus mainly on RF wireless networks in our research. Our goal is to complement the data networking capabilities of RF wireless LANs with accurate user location and tracking capabilities for higher level of our SCADA mobile system usage. 6.1 Data Collection A key step in our research methodology is the data collection phase. We record information about the radio signal as a function of the user s location. We use the signal information to construct and validate models for signal propagation during off-line analysis as well as to infer the location of a user in real time. We refer to the former as the off-line phase and the latter as the real-time phase. Among other information, the WaveLAN NIC makes available the signal strength (SS) and the signalto-noise ratio (SNR). SS is reported in units of dbm and SNR is expressed in db. A signal strength of s Watts is equivalent to 10*log10(s/0.001) dbm. A signal strength

of s Watts and a noise power of n Watts yields an SNR of 10*log10(s/n) db. For example, a signal strength of 1 Watt is equivalent to 30 dbm. Furthermore, if the noise power is 0.1 Watt, the SNR would be 10 db. The WaveLAN driver extracts the SS and the SNR information from the WaveLAN firmware each time a broadcast packet is received. It then makes the information available to user-level applications via system calls. It used the wlconfig utility, which provides a wrapper around the calls, to extract the signal information. 6.2 Ongoing work We are working on small model of location-aware enhancement, which we will use in our SCADA model for adding informations about user location. These informations will be useful for next generation of SCADA model. Now we have created an application based on.net language and we use it for testing. This application records just one set of signal strength measurements. By this set of value is determined an actual user position. Acknowledgement: The work and the contribution were supported by the project GAČR 102/05/0571 Architectures of embedded system networks. References: [1] Krejcar, O., Mobile information system via wireless technology, IFAC 04, 2004, pp. 332-337 [2] Krejcar, O., SCADA systems on mobile devices, IWCIT 03, 2003, pp. 172-177. [3] Yuan, M., Enterprise J2ME: Developing Mobile Java Application, Prentice Hall, San Francisco, USA, 2003 [4] Wilding-McBridge, D., Java Development on PDAs, Addison-Wesley, Boston, USA, 2003 7 Conclusion The paper deals with the subject of SCADA systems programming possibilities in the context of mobile devices as well as in relationships with control systems and problems with solutions of possible situations arising from their design or their operation. The main objective is to provide the complex view at branch of knowledge and to show possibilities how to use SCADA systems on concrete mobile device (mobile phone and PDA ipaq) in context of use Java language. Main aspect is in Java language and use of created SCADA based application on wide scale of mobile devices without any changes of source code. Other aspect that we have also presented in this paper is an enhancement of SCADA system for locating and tracking users inside a building. We will able to locate and track users with a high degree of accuracy. The median resolution of the system will be in the range of 2 to 3 meters, about the size of a typical office room. Our practice and experiments indicate that it is possible to build an interesting class of location-aware services, such as printing to the nearest printer, users navigating through a building, etc., on an RF wireless LAN. This, we believe, is a significant contribution of our research. This mobile platform is very scalable and user configurable and free for develop. Creating of SCADA systems on these embedded systems has many specific issues and programmer has several different ways to use it and we would like to describe one of them.