Web Services Based Instrument Monitoring and Control Peter Turner, 1 Ian M. Atkinson, 2 Douglas du Boulay, 1 Cameron Huddlestone-Holmes, 2 Tristan King, 2 Romain Quilici, 1 Mathew Wyatt, 2 Donald F. McMullen, 3 1 Department of Chemistry, University of Sydney, Australia. 2 School of Information Technology, James Cook University, Townsville, Australia. 3 The Pervasive Technology Labs at Indiana University, Bloomington, IN USA.
Outline Background Australian Context CIMA DART implementation of CIMA Interactive Control Conclusions
Goal: Develop a Grid enabled and Web services based portal system for collaborative remote access to scientific instruments and their data. Focus on X-Ray instrumentation, and Environmental Sensor Networks - the Great Barrier Reef Why? Grid? Maximise resource utilization and return on investment/s Outreach, diffusion, training and education Access to compute cycles for processing and modeling and flexible distributed storage management Multi-Site Collaboration Goal for production level service: Significant collaboration between USyd, JCU, IU (and many others) Deployment and user focus issues (this is hard!)
Common Instrument Middleware Architecture (CIMA) Offers a general and re-usable model for instrument access and management using Web/Grid services; adaptable to different instrument settings Grid enablement of instruments & sensors Flexible and extensible with modular use of plug-ins, Common programmable interface reusable code base Publish-subscribe subscribe or registration model Basis for a standardised implementation/deployment system
CIMA Data Manager (Kepler) Live data feeds Instrument Representative Instruments SOAP Video feeds CIMA SOAP Interface Workflow & comp pipelines. Automatic metadata generation. GridSphere Portal PGL: SRB access & schemas Data Processing Applications, Annontation and visualisation CIMA core code from IU DART/JCU/UQ/Usyd/MU Implementation SRB HSM Storage MCAT SRB data repository (data and metadata)
Data Management Kepler workflow replaces MyManager Provides a highly customizable, highly extensible data manager Ability to customise data storage via a workflow system Not restricted to any particular data storage technology; SRB and Fedora have been explored
Storage Resource Broker (SRB) Data Grid middleware from SDSC (San Diego Supercomputing Centre) QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture. NFS and MySQL replaced with SRB Uniform interface to heterogeneous resources over a network. Logical View of data User defined metadata structures Works in conjunction with metadata catalog (MCAT).
User Facing Portal for SRB Use of Personal Grid Library (PGL) for SRB data manipulation / metadata display ChitterChatter provides the link QuickTime and a TIFF (LZW) decompressor are needed to see this picture. Metadata schema definitions applied to experimental data Stored experimental data is able to be easily retrieved, secured and annotated
Interactive Control Using CIMA and Portals Together with the use of AJAX, Pushlets and GridSphere portal/portlet software, we ve been implementing and extending CIMA (Common Instrument Middleware Architecture) as a basis for building Web services driven portal services for remote access.
Common Instrument Middleware Architecture (CIMA) Service architecture Instrument representative (IR) code (device independent) Plug-ins (device dependent) interact with drivers / software (BIS) Service life cycle Communications Based on XML parcels Support for synchronous and asynchronous interactions between clients and IR
Instrument Control Must support several types of commands Void command: Set variables Synchronous command: Get variables Asynchronous command: Queued command New Parcel types Get Command
GridSphere - CIMA Provides web-based based instrument monitoring and control - JSR168 Compliant Technologies: Tomcat, WS (axis/xfire), Pushlets, AJAX, JavaScript, CIMA Portal contains CIMA Sink Plugin architecture XML Based Instantiated and Registered when the portlets container is loaded Container Lifecycle Unregistered when the container is destroyed
Container A Data cache WebServices Container SOAP Web Services Based Pushlets-Ajax Instrument 1) Requests: XML Parcels Portlets Container CIMA component SOAP Dynamic content pushed: Monitor Monitor Control Data Retrieval User User Admin Several simultaneous users. Only one Administrator Pushed Data: XML Parcels 2) Responses: XML Parcels WebServices Container SRB Instruments CIMA component Pushed Data: XML Parcels Container B SOAP Data Manager
Container A Data cache WebServices Container SOAP Web Services Based Pushlets-Ajax Instrument 1) Requests: XML Parcels Portlets Container CIMA component SOAP Dynamic content pushed: Monitor Monitor Control Data Retrieval User User Admin Several simultaneous users. Only one Administrator Pushed Data: XML Parcels 2) Responses: XML Parcels WebServices Container SRB Instruments CIMA component Pushed Data: XML Parcels Container B SOAP Data Manager
An example Control of a Bruker Single Crystal X-ray Diffractometer Determines the structure of single crystals QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture.
QuickTime and a Microsoft Video 1 decompressor are needed to see this picture.
Conclusions CIMA has proved to be an architecture that is easily adaptable to a range of applications Web Services and Web2.0 technologies make control of instruments straight forward We are applying this approach to other instruments and sensor networks
Acknowledgements: JCU Sydney Uni Indiana Uni Adelaide Uni S. Ness D. du Boulay K. Chiu (SUNNY) A. Wendelborn M. Morgan C. Chee P. Coddington F. Eilert D. Zhang Department of Education Science and Training: Dataset Acquisition, Accessibility, and Annotation e-research Technologies (DART) project Australian Research Council: e-research Seed Funding Programme and the Research Networks Programme (MMSN: Molecular and Materials Structure Network).
Grazie
QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture.