Abeans is the next generation of Cosylab's Java based client framework for building control system applications. It has been ported, plugged to such different CS as those of DESY (TINE), SNS (EPICS) and GSI. At the moment we are working on the installations for ALMA project by ESO and for Data Acquisition group at JLab. Abeans consists of two parts, Abeans for control and CosyBeans. Abeans for control provide application services and the mechanisms that allow simple implementation of data flow between the local application and the remote control system. This task is realized in two layers. Firstly, Abeans define a model that is a layer of Java Beans components that represents controlled objects. Secondly, Abeans define a plug which is a driver layer, specific to a given model and an underlying communication system. In addition, Abeans provide several useful services: logging, exception handling, configuration and data resource loaders, authentication, and policy management. CosyBeans provide clear and consistent visualization of dynamic data with standardized presentation of alarms, monitors and connection status. In this article we present the basic concepts of Abeans and latest developments, such as the BACI model, developed for ESO, the possibility to write CosyBeans GUI components as JADE agents for JLab and AbeansDirectory, an Abeans service that is an implementation of JNDI DirContext. We continue by outlining some use cases where we show how these technical solutions help solve concrete problems the application programmer is facing in the real life. We will look at a generic application Object Explorer that is able to display and modify any value that is accessible by a given control system. This means that the same application can be used to explore TINE, EPICS or ACS CORBA based system. Second example will be a specialized panel that displays and controls values of a remote physical device. We will show that by using Abeans, the application developer just needs to take care of the user interface – by means of CosyBeans graphical displayers, he can construct a fully functional application in a visual editor without writing a single line of code, the lifecycle of remote entities and the installation of services is performed by the Abeans. As a third example, we will show how to make use of the Abeans when developing a complex application for machine physics that interacts with a large number of physical devices and depends heavily on the services provided by the framework.
[1]
M. Plesko,et al.
WHERE AND WHAT EXACTLY IS “KNOWLEDGE” IN CONTROL SYSTEMS
,
2003
.
[2]
M. Plesko,et al.
INTEGRATION OF ABEANS AND ACS IN THE GSI CONTROLS ENVIRONMENT
,
2003
.
[3]
John D Galambos,et al.
XAL APPLICATION PROGRAMMING FRAMEWORK
,
2003
.
[4]
B. Jeram,et al.
THE ALMA COMMON SOFTWARE, ACS STATUS AND DEVELOPMENTS
,
2003
.
[5]
I. Kriznar,et al.
THE UPGRADE OF THE ANKA CONTROL SYSTEM TO ACS (ADVANCED CONTROL SYSTEM)
,
2003
.
[6]
G. Tkacik,et al.
A REFLECTION ON INTROSPECTION
,
2003
.
[7]
J. Dovc,et al.
A GUERILLA APPROACH TO CONTROL SYSTEM DEVELOPMENT
,
2001
.