RSS RSS feed
November 21, 2009
Hot Topics:

Java Automation And Related Specification Requests

  • July 12, 2002
  • By Sione Palu
  • Send Email »
  • More Articles »

An example of the implementation of a SCADA system is to provide remote control, monitoring, reporting and alarm functions for a remote facility in a water supply system. Since Java is the language of the internet, SCADA application developed in Java can be interface with remote terminal units via the web. It does perform the task of control and monitoring for the water / wastewater systems, water supply pumps, the storage reservoir and a number of sewage pumping/overflow chambers over leased telephone lines. The total run time and number of starts are stored and uploaded to the SCADA systems during specific polling sequences. SCADA offers reliable remote control and monitoring which enables operators to operate critical systems with increased security, reduced down time and maintenance /operating costs, as well as documentation for compliance monitoring purposes.

Building Automation

This specification request JSR-60 is to develop a set of Java APIs that can be used to access and program building automation systems. The specification will include:

  • A Java based object model to define building automation software components.
  • Definitions for common building automation applications (scheduling, alarming, trending).
  • Definitions for BACnet objects (devices, protocol stacks, and network management).

The proposed name is "javax.baja" and it targets desktop, server, personal, embedded, card, and so on. BACnet stands for Data Communication Protocol for Building Automation and Control Networks. It is an American protocol to standardized building automation and control equipment from multiple manufacturers. Different manufactures have their own propriety systems that are not interoperable with others equipments. The end result is that building owners have often felt trapped, locked-in to products of a single manufacturer. The following lists BACnet applications:

  • HVAC Control (Heating Ventilating Air Conditioning)
  • Fire Detection and Alarm
  • Lighting Control
  • Security
  • Smart Elevators
  • Utility Company Interface

The protocol had to be applicable to all building automation needs. To accomplish this, BACnet specifies most all of the most common functions: analog and binary input, output, and values; control loops; schedules, etc., that clearly apply to almost any kind of monitoring or control application.

This Building Automation API specification intends to define a Java model for BACnet protocol. It is an API for programmable logic controllers (PLC) in building automation industries. PLCs are the control hubs for a wide variety of automated systems and processes. They contain multiple inputs and outputs, which use transistors, and other circuitry to simulate switches and relays to control equipment. They are programmable via software interfaced via standard computer interfaces and network options. Now different vendors can manufacture their products like controllers, gateways, routers and diagnostic tools in compliant with BACnet protocol.

Distributed Real-Time Specification

This draft is for Distributed Real-Time Specification for Java extends RMI in the RTSJ (Real-Time Specification for Java), to provide support for predictability of end-to-end timeliness of trans-node activities. In many real-time applications (for example, in the industrial automation, defence, and telecommunication domains), which involve a multiplicity of computing nodes, must satisfy end-to-end timeliness requirements.

A control flow in a distributed Java program can be thought of as extending and retracting its locus of execution point movement among remote object instances by a sequence of RMI's and RETURN's. This means that the movement of a distributed (i.e., trans-node) program's execution point among the program's constituent objects, which may reside on a multiplicity of physical computing nodes. Control flow is based on threads performing RMI's, and there may be multiple concurrent control flows in a distributed program.

Each control flow may have one or more execution scheduling attributes - example, priority, importance, time constraints such as deadlines or utility functions -- that specify the acceptable timeliness for it completing the sequential execution of methods in object instances that may reside on multiple physical nodes. The semantics of acceptability with respect to these end-to-end timeliness attributes is defined by the application and the chosen scheduling policy. The aim of this proposed draft for Java Distributed Real-Time Specification is to provide an acceptably predictable end-to-end timeliness of control flow executions.

The package proposed name is "javax.realtime.distributed" although not yet finalized. This specification is intended to address application timeliness requirements everywhere in that two-dimensional predictability/time-frame space of distributed real-time Java systems.

Future Outlook for Java Automation

With the of release of RTSJ (Real-Time Specification for Java) API at the beginning of this year, embedded systems, real-time computer control and automation industries, Java is set to make a huge move into these markets. Still in the JCP (Java Community Process) are drafts for:

  • Industrial Automation Extension (JSR-7)
  • Building Automation for Java (JSR-60)
  • Distributed Real-Time Specification for Java (JSR-50)

As these JSRs emerge from the JCP, Java will have complete APIs for development of complex software applications like SCADA or DCS. A SCADA system that uses programmable logic controllers (PLC), remote terminal units (RTU), sensors and control equipment from different vendors would integrate with ease because of Java's implementation of BACnet protocol.

Automation and Control Java specification drafts mentioned in this article are not the only ones required for industrial automation application development. Computer Vision technology and Image Processing are required in some industrial automation control. Now there is Java3D and JAI (Java Advanced Imaging), which can be incorporated for control software application development.

Example, it takes about half a second to recognize your father, mother or brother if he/she walks into the room where you are sitting. Software such as Computer Vision Technology would take a bit longer than half a second (depending on number of images in its knowledge base) to recognize a persons face, provided the persons image is already existed in the database. Computer Vision incorporates paradigm of soft-computing. In semiconductor fabrication automation industry, Computer Vision is employed as a first line to eliminate chips that are malformed, defect or contain impurity. Even, the electrical test will catch these semiconductor defects and still eliminate them, it is cheaper if it only tested ones that appear normal but internally malformed. Because semiconductor devices is not a simple input and a simple output, but multiple so electrical test involves different configuration of the device. This means that if the malformed or defect ones are not isolated prior to the electrical test, a prolonged process will take place before the semiconductor device has passed the quality control. The devices are so small that even the human eyes cannot tell the defects from the good ones. Every type of defects is catalogued, digitally photographed and fed in to the database. Vision Software inspects every device that passes through and compare with the images in its database to see if it matches, if it does, then it sidelined that specific component as a bad one. Computer Vision for industrial automation can be developed with JAI and Java3D. I have noticed that interests in the Computer Vision using Java has increased dramatically within the last couple of years. Just do a search on the internet and you will come up with some GPL Computer Vision software that is written in Java.

There is a specification for Data-mining API in the JCP. All industrial automation systems produce large quantities of real-time data. Much of it is required for short-term control, but not for long-term benefit. Data warehousing is the process of collecting the subset of datum that have long-term impact on the company. Often this data is not the exact same set as required by real-time control. This large quantities of real-time-data can be mined and compare with current operating conditions of the plant and can make adjustment based on historical data, and this is done automatically without any human intervention. Automation data-mining component can be developed all in Java.

Some automation control tasks are quite complex, and expert systems are often employed to ease the complexity of plant operation. The expert systems can be an autonomous agent. Expert systems can be developed for industrial control using the upcoming Java Rule Engine and the Java Agent Framework which they are still in the JCP.

The good thing about the JCP is that it encourages participants from companies and vendors to extend Java with new sets of APIs or language specification. Java is full and complete and more specifications that addressed certain industries will be proposed to the JCP for approval.

Resources

About the author

Sione Palu has developed software for Publishing Systems, Imaging, and Web Applications. Currently, Palu develops (Swing-based) his own software application in Symbolic Algebra Systems with Visualization Mathematics for high-school level. Palu graduated from the University of Auckland, New Zealand, with a science degree in mathematics and computing. He has a personal interest in applying Java and mathematics in the fields of mathematical modelling and simulations, symbolic AI and soft-computing, wavelets, digital signal processing, and control systems.

1 2




Networking Solutions





Partners

  • Partner With Us














More for Developers

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs