160 likes | 429 Views
Faranguiss PONCET Jean-Luc PONS ESRF – Grenoble - FRANCE. Tango Application Toolkit (Tango ATK). Tango ATK. What is Tango? Goals of Tango Application Toolkit (ATK) Software Architecture Inside Tango ATK Synoptic drawing and viewing. Distributed Software. Dev. Dev. Dev. Dev.
E N D
Faranguiss PONCETJean-Luc PONSESRF – Grenoble - FRANCE Tango Application Toolkit (Tango ATK) Tango ATK
Tango ATK • What is Tango? • Goals of Tango Application Toolkit (ATK) • Software Architecture • Inside Tango ATK • Synoptic drawing and viewing Tango ATK
Distributed Software Dev Dev Dev Dev Dev Dev Control System Framework O O O O O O TANGO Control System Dev Dev Dev Dev Dev Dev O O O O O O CORBA What is Tango? A CORBA based framework for distributed and object oriented control systems Central Tango component : Device TANGO CORBA CORBA Tango ATK
What is Tango? The device is a remote object TANGO software Bus network Interface: • Attributes • Commands (position,…) Device (on, off,…) Implementation HardWare (motor,…) Tango ATK
TANGO Application Toolkit (ATK) QTango Python Java C++ Java C++ Dev Dev Dev Dev OPC What is Tango? Software Bus for distributed control software TANGO Software Bus Tango ATK
Tango ATK goals Provide a framework to speed up the development of Tango Applications Help standardize the look and feel of the applications Implements the core of “any” Tango Java client Is extensible Tango ATK
Software Architecture Application Tango ATK Java Swing Tango Java API Tango ATK
Application ATKCore Tango Java API ATKWidget Java Swing Software Architecture Control Myviewer.setModel(coreObject) Model View NumberSpectrumViewer NumberScalarListViewer CommandComboViewer StateViewer … etc. Attribute AttributeList Command CommandList … etc. Tango ATK
ATKCore Notify all it’s attribute listeners Tango Java API Notify all it’s error listeners Inside Tango ATK ATKCore sub-package provides the classes which implement the model Model View ATKWidget ATK Attribute Viewer ATK Attribute Viewer Attribute Change Event Connects to Tango Device Attribute Attribute Subscribes to Tango Events Error occurs ATK Error Viewer Tango ATK
Inside Tango ATK ATKWidget sub-package provides the classes to view and to interact with ATKCore objects NumberSpectrumViewer NumberImageViewer View ATKWidget Java Swing ScalarListViewer CommandComboViewer Tango ATK
Synoptic Use Jdraw editor to draw the synoptic Associate parts of the drawing to Tango components (attributes, commands) Give the “panel” class name to be popped up when this object is clicked Tango ATK
Synoptic Launch the ready to use ATK application “SimpleSynopticAppli” to test the synoptic at run time Tango ATK
Synoptic Design your own specific ATK application using your favorite Java IDE Tango ATK
Synoptic Final synoptic application Tango ATK
Conclusion • New control applications at ESRF are now based on Tango ATK • The QTango developed at ELETTRA follows the same design pattern and software architecture. • ATK Java Beans have been successfully integrated in a Java Scada system at SOLEIL Tango ATK
Thank you for your attention • http://www.esrf.fr/tango • http://www.elettra.trieste.it/~tango/index.html • http://www-controle.synchrotron-soleil.fr:8001/collaboration More information : Tango ATK