jozef stefan institute igor verstovsek ([email protected]), miha kadunc, jernej kamenik,...

22
Jozef Stefan Institute Igor Verstovsek ([email protected]), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj, Gasper Tkacik, Dragan Vitas Cosylab Ltd. (Ljubljana, Slovenia) A Generic Java and GUI Development Framework That can be Interfaced to Different Control Systems Abeans

Upload: marshall-norris

Post on 29-Jan-2016

231 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef StefanInstitute

Igor Verstovsek ([email protected]), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj, Gasper

Tkacik, Dragan Vitas

Cosylab Ltd.

(Ljubljana, Slovenia)

A Generic Java and GUI Development Framework That can be Interfaced to Different

Control Systems

Abeans

Page 2: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 2

Introduction

• A brief history of Abeans

• Basic concepts

• Experience of using Abeans at various CS

Page 3: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 3

ESOR3 BACI

ACS CORBA

DESYR3 Channel

TINE

SNSR3 Channel JCA EPICS

GSIR3 Channel UFC, ACS

ANKAR2

ACS CORBA

RIKENR3

Prototype

SuperSORR2

CORBA

UVSORR2

CORBA

NRAOR3 BACI

ACS CORBA

DLSR3 Channel JCA EPICS

Page 4: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 4

A Brief History of Abeans

• 6 years of continuous development• @ ANKA, DESY, ESO, RIKEN, SNS, DLS, GSI,

SuperSOR, UVSOR, ...

Release 1– A wrapper for CORBA to make Java clients

Release 2– Plugs for different CS are introduced

Release 3– Professional, reusable GUI components– Plugs, Models, Services

Page 5: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 5

Basic Concepts

• Model: Logical containment of CS Objects– Channel, Device oriented

– GIS • Plug: Connection to remote modeling layer

– ACS, TINE, EPICS, UFC• Service: Implementation of shared functionality

– Error reporting, Logging, directory and lookup services

DeviceProperty 1

Property 2

Property 3

Channel 1

Channel 2

Page 6: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 6

Experience of Using Abeans at Various CS

• ANKA, ESO: ACS CORBA

• GSI: UFC going to ACS CORBA

• DESY: TINE

• Diamond, SNS: EPICS

• SNS: GUI Components

Page 7: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 7

Use of Enhanced GUI Components

• Use Abeans as a library– GUI widgets– Services

Page 8: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 8

Display of Data Quality

Page 9: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 9

Building GUI Applications

• Using NetBeans IDE to build GUI applications

Page 10: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 10

Use of ACS Services

• Most ACS CORBA services lack GUI components

• Example: Remote Logging service of Abeans– Encapsulates ACS CORBA logging

• Part of every Abeans application

Page 11: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 11

Facilitating Upgrade of GSI CS

• UFC, a custom CS will be upgraded to CORBA

• Transition period – both systems have to be supported

• Abeans can use multiple plugs– UFC + ACS

Page 12: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 12

Hierarchies in EPICS

• EPICS is a flat database– Hierarchy: Additional

data are needed• Naming convention,

database, etc.

• Abeans directory service– EPICS plug fills it– Based on JNDI– Cosy Navigator

Page 13: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 13

Reducing Memory Footprint of Java

• Java Virtual Machine Sharing

Java Abeans Application

JVM 1

Sh

are

?

Yes

Tra

nsfe

r Ap

p. d

ata

Another Java Abeans

Application

JVM 2

Page 14: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 14

Platform Independence for DESY

• TINE – applications in Visual Basic• Some people have Sun and Linux. They

have the need to run the same applications

• Abeans are written in Java

• Archive Reader

Page 15: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 15

Archive Reader for DESY

Page 16: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 16

Physics Applications for ANKA

Page 17: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 17

Complex Panels for ANKA

Page 18: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 18

Power Supply Table for Hitachi-Zosen

Page 19: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 19

Vacuum Display Application for Diamond

Page 20: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 20

Object Explorer

Page 21: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 21

Control Desk - Towards "ACS Office"

Page 22: Jozef Stefan Institute Igor Verstovsek (igor.verstovsek@cosylab.com), Miha Kadunc, Jernej Kamenik, Igor Kriznar, Gasper Pajor, Mark Plesko, Ales Pucelj,

Jozef Stefan Institute

ACS Workshop Igor Verstovsek, Abeans 22

Conclusion – What are Abeans Really

• A self-contained application framework• Deliver generic applications• A library for

– Communication management– GUI widgets– Services (e.g. Logging)

• Professional development process• Documentation (tutorials, reference manuals),

tests, quality control, support

http://abeans.cosylab.com