Designing Control System Software for Radio Telescopes S

  • Slides: 16
Download presentation
Designing Control System Software for Radio Telescopes S. Chaudhuri, A. Ahuja, S. Natrajan, and

Designing Control System Software for Radio Telescopes S. Chaudhuri, A. Ahuja, S. Natrajan, and H. M. Vin Presenter: Harrick M. Vin Vice President and Chief Scientist Tata Research Development and Design Centre, Tata Consultancy Services (TCS)

Two Interesting Projects Control System Software for Scientific Apparatus Design of command-control environment for

Two Interesting Projects Control System Software for Scientific Apparatus Design of command-control environment for complex, scientific apparatus Collect and analyze data streams from a large network of sensors Control apparatus operations through actuators International Thermo-nuclear Experimental Reactor (ITER) [In collaboration with IPR, Ahmedabad] GMRT Radio Telescope [In collaboration with NCRA, Pune] TCS CONFIDENTIAL November 2008 2

Requirements and Opportunities Solution requirements • Agility – Rapid development of software control system

Requirements and Opportunities Solution requirements • Agility – Rapid development of software control system • Configurability – Ease of building custom enhancements • Evolvability – Evolve systems to accommodate new technologies Broader requirement • Reusability – Reuse the framework across different apparatus Common practice • One-off custom-built software control systems • Design and implementation takes too long • Too much custom coding Not very configurable • Significant changes required to accommodate changes • Definitely not reusable TCS CONFIDENTIAL November 2008 3

Vision and Approach Vision • Reusable, evolvable and configurable control software framework • Specification-driven

Vision and Approach Vision • Reusable, evolvable and configurable control software framework • Specification-driven architecture Automate code generation • Dramatically reduce effort and cost Key questions • What are the “common” abstractions? • Is there a generic architecture for control system software? Approach • Model scientific apparatus as a network of sensors and actuators • Develop a flexible architecture for control element • Capture interactions with sensors and actuators • Model complete system as a composition of control elements TCS CONFIDENTIAL November 2008 4

SACE Architecture Sensor-Actuator Control Element (SACE) Subsystem Self Description SACE Configuration Data Streaming Data

SACE Architecture Sensor-Actuator Control Element (SACE) Subsystem Self Description SACE Configuration Data Streaming Data & Event Distribution Event Notification Command Reception Data Processing Event Processing Command Processing Data Acquisition Event Reception Command Distribution TCS CONFIDENTIAL Validation Rules Command Translation FSM, Script, Rules November 2008 5

SACE @ GMRT Software Control System @ GMRT Using SACE TCS CONFIDENTIAL November 2008

SACE @ GMRT Software Control System @ GMRT Using SACE TCS CONFIDENTIAL November 2008 6

SACE Architecture Sensor-Actuator Control Element (SACE) SACE Configuration Data Streaming Data & Event Distribution

SACE Architecture Sensor-Actuator Control Element (SACE) SACE Configuration Data Streaming Data & Event Distribution Subsystem Self Description Real-time visualization Event Notification Command Reception Data Processing Event Processing Command Processing Data Acquisition Event Reception Command Distribution TCS CONFIDENTIAL Validation Rules Command Translation FSM, Script, Rules November 2008 7

SACE Implementation SACE Prototype Implementation • Philosophy: Leverage third-party components as much as possible

SACE Implementation SACE Prototype Implementation • Philosophy: Leverage third-party components as much as possible • Technology choices: – Basic platform: Java – System specification format: XML – Command validation and translation: • Unimode FSM Framework • Open. Rules rules engine – – – Interpreter for configuration and control scripts: Mozilla Rhino Data stream processing: HSQLDB, Hibernate (in-memory DB) Communication: TCP/IP sockets Driver integration: Java Native Interface (JNI) Auto-generation of UI: Swing Data stream visualization: JFree. Chart TCS CONFIDENTIAL November 2008 8

SACE @ GMRT SACE Experience @ GMRT Existing control system software: ~15, 000 lines

SACE @ GMRT SACE Experience @ GMRT Existing control system software: ~15, 000 lines of code • ABCCom – running at individual GMRT antennas • Teleset – running at Central Building SACE-based control system software • Reuse about 50% of code of ABCCom (~3, 000 lines of code) • Drivers for interaction with hardware devices • Replace the rest of ABCCom and Teleset with SACE-geenrated code ! Benefits • Flexibility, Evolvability and Configurability • Reuse TCS CONFIDENTIAL November 2008 9

For more information, contact: Harrick Vin (harrick. vin@tcs. com)

For more information, contact: Harrick Vin (harrick. vin@tcs. com)

SACE @ GMRT IF Subsystem: Self Description TCS CONFIDENTIAL November 2008 11

SACE @ GMRT IF Subsystem: Self Description TCS CONFIDENTIAL November 2008 11

SACE @ GMRT Data Validation Using Rules TCS CONFIDENTIAL November 2008 12

SACE @ GMRT Data Validation Using Rules TCS CONFIDENTIAL November 2008 12

SACE @ GMRT IF Command Validation and Translation TCS CONFIDENTIAL November 2008 13

SACE @ GMRT IF Command Validation and Translation TCS CONFIDENTIAL November 2008 13

SACE @ GMRT Control Script for IF Subsystem TCS CONFIDENTIAL November 2008 14

SACE @ GMRT Control Script for IF Subsystem TCS CONFIDENTIAL November 2008 14

SACE @ GMRT SACE-generated UI and Data Stream Visualization TCS CONFIDENTIAL November 2008 15

SACE @ GMRT SACE-generated UI and Data Stream Visualization TCS CONFIDENTIAL November 2008 15

For more information, contact: Harrick Vin (harrick. vin@tcs. com)

For more information, contact: Harrick Vin (harrick. vin@tcs. com)