ATST Software and Instrument Development 18 March 2009 Boulder, CO.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

Workshop on Integrated Machine Tool Simulation & Verification April 9-10, 2002 Cypress, California.
Multi-DNC Data Collection/Monitoring
1 Software & Grid Middleware for Tier 2 Centers Rob Gardner Indiana University DOE/NSF Review of U.S. ATLAS and CMS Computing Projects Brookhaven National.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
WBS & AO Controls Jason Chin, Don Gavel, Erik Johansson, Mark Reinig Design Meeting (Team meeting #10) Sept 17 th, 2007.
1 Operating Systems Ch An Overview. Architecture of Computer Hardware and Systems Software Irv Englander, John Wiley, Bare Bones Computer.
Distributed Control Systems Emad Ali Chemical Engineering Department King SAUD University.
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
Freiburg, May 2011 EST Design Study. End of Phase-III Meeting European Solar Telescope Design Study End of Phase III Meeting WP Instrument.
Agenda Adaptation of existing open-source control systems from compact accelerators to large scale facilities.
Guide to MCSE , Second Edition, Enhanced 1 Objectives Understand and use the Control Panel applets Describe the versatility of the Microsoft Management.
Computer Organization
Hunt for Molecules, Paris, 2005-Sep-20 Software Development for ALMA Robert LUCAS IRAM Grenoble France.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 10 Architectural Design.
1. 2 Purpose of This Presentation ◆ To explain how spacecraft can be virtualized by using a standard modeling method; ◆ To introduce the basic concept.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
DCS Overview MCS/DCS Technical Interchange Meeting August, 2000.
Architectural Design portions ©Ian Sommerville 1995 Establishing the overall structure of a software system.
50mm Telescope ACS Course Garching, 15 th to 19 th January 2007 January 2007Garching.
Artdaq Introduction artdaq is a toolkit for creating the event building and filtering portions of a DAQ. A set of ready-to-use components along with hooks.
ATST Software Conceptual Design ATST Conceptual Design Review 26 Aug 2003.
Cluster Reliability Project ISIS Vanderbilt University.
ANSTO E-Science workshop Romain Quilici University of Sydney CIMA CIMA Instrument Remote Control Instrument Remote Control Integration with GridSphere.
Magnetic Field Measurement System as Part of a Software Family Jerzy M. Nogiec Joe DiMarco Fermilab.
1 of 22 Glaciers and Ice Sheets Interferometric Radar (GISIR) Center for Remote Sensing of Ice Sheets, University of Kansas, Lawrence, KS
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
1 STScI Pipeline Thermal-vacuum data handling I. Neill Reid for WFC3 Instrument CALibration team ICAL.
IceCube DAQ Mtg. 10,28-30 IceCube DAQ: “DOM MB to Event Builder”
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
CHAPTER TEN AUTHORING.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
IT 456 Seminar 5 Dr Jeffrey A Robinson. Overview of Course Week 1 – Introduction Week 2 – Installation of SQL and management Tools Week 3 - Creating and.
OOI CI LCA REVIEW August 2010 Ocean Observatories Initiative OOI Cyberinfrastructure Architecture Overview Michael Meisinger Life Cycle Architecture Review.
Computer Emergency Notification System (CENS)
We have developed a GUI-based user interface for Chandra data processing automation, data quality evaluation, and control of the system. This system, known.
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
André Augustinus 10 September 2001 DCS Architecture Issues Food for thoughts and discussion.
MACCE and Real-Time Schedulers Steve Roberts EEL 6897.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Hobby - Eberly Telescope MARS Software Design Review November 2002 Michael H. Ward Systems Analyst McDonald Observatory MHW 04-November
Final Review of ITER PBS 45 CODAC – PART 1 – 14 th, 15 th and 16 th of January CadarachePage 1 FINAL DESIGN REVIEW OF ITER PBS 45 CODAC – PART 1.
Microscope Control Configuration This section of the QED manual will describe how to configure you Configure and Control your automated microscope. Mac.
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 1 CSC 342 Semester II: H ( G)
PI Data Archive Server COM Points Richard Beeson.
1 Computing Challenges for the Square Kilometre Array Mathai Joseph & Harrick Vin Tata Research Development & Design Centre Pune, India CHEP Mumbai 16.
Management of the LHCb DAQ Network Guoming Liu * †, Niko Neufeld * * CERN, Switzerland † University of Ferrara, Italy.
GAYA Analyzer SDD Presentation. GAYA Analyzer Introduction OMS40G256 is a hardware device used for detection of radioactive radiation for medical imaging.
INNOV-10 Progress® Event Engine™ Technical Overview Prashant Thumma Principal Software Engineer.
Online Software 8-July-98 Commissioning Working Group DØ Workshop S. Fuess Objective: Define for you, the customers of the Online system, the products.
Slide 1 Archive Computing: Scalable Computing Environments on Very Large Archives Andreas J. Wicenec 13-June-2002.
CSC480 Software Engineering Lecture 10 September 25, 2002.
Mantid Stakeholder Review Nick Draper 01/11/2007.
ICALEPCS 2005 Geneva, Oct. 12 The ALMA Telescope Control SystemA. Farris The ALMA Telescope Control System Allen Farris Ralph Marson Jeff Kern National.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
1. 2 Purpose of This Presentation ◆ To explain how spacecraft can be virtualized by using a standard modeling method; ◆ To introduce the basic concept.
TDAQ Experience in the BNL Liquid Argon Calorimeter Test Facility Denis Oliveira Damazio (BNL), George Redlinger (BNL).
Mountaintop Software for the Dark Energy Camera Jon Thaler 1, T. Abbott 2, I. Karliner 1, T. Qian 1, K. Honscheid 3, W. Merritt 4, L. Buckley-Geer 4 1.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Business-logic Layer Presentation Layer Network Layer Digital Signal Processing Layer SmartHome API SmartHome Software Architecture SH mobile application.
January 2010 – GEO-ISC KickOff meeting Christian Gräf, AEI 10 m Prototype Team State-of-the-art digital control: Introducing LIGO CDS.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Observatory Control System
Telescope Control System Preliminary Design Review
ATST Instrument Interface Overview
TOS Control – main idea and scheme
Presentation transcript:

ATST Software and Instrument Development 18 March 2009 Boulder, CO

Overview ATST Software – framework – principal systems – interfaces Instrument Development – ATST-supplied tools – mode scripts – software for hardware – instrument interface – data plugins

Framework Common Services Framework (CSF) – defines the software architecture for communications, control, and services. ATST base (“base”) – provides implementations for common controllers and connections. Instrument Control System – controls the execution of observations by an instrument. “A software framework, in computer programming, is an abstraction in which common code providing generic functionality can be selectively overridden or specialized by user code providing specific functionality.” –Wikipedia.

Framework Instrument Control System Framework – execution of instrument scripts observing mode, experiment parameters – building collections of mechanism management controllers, hardware controllers, connections – operating cameras synchronization, data transfer, header collection “Frameworks are similar to software libraries in that they are reuseable abstractions of code wrapped in a well-defined API. Unlike libraries, however, the overall program's flow of control is not dictated by the caller, but by the framework. This inversion of control is the distinguishing feature of software frameworks.” -- Wikipedia

Common Services Framework Control Model – command, action, response Container/Component Model – idealized installable components Configuration Model – narrow command interface, broad parameterization Service Model – useful functionality provided as external server resources. Documented in SPEC-0022 – “Common Services Users’ Manual”

Command-Action-Response Command – control configurations, not actions – do not block – queue & schedule configurations Action – perform work in the background – multiple, simultaneous actions Response – 1 st : after command accepted – 2 nd : after action completes – associated configuration ID

Containers and Components Components Container Lifecycle control Service interfaces Custom interface User (functional) code Toolbox CS code

Components Uniform Lifecycle –Part of technical architecture –Managed by container Access to services –Provided by container –Shared/private services Isolated namespace –Independent from other components in same container Create Initialize Startup Shutdown Uninit Running (Functional Behavior) Remove

Configurations Configuration AttributeTable Attribute Name Value Header Tag Access Key Config Id Attribute Name Value Attribute Name Value

Services “Major” Service Classes “Minor” Service Classes App (for connections) Event Log Health Archive Property and Constant Header IdDB Used by all Components Available to Support Functionality

Example:ViSP Five systems: hardware controller and 4 Virtual camera controllers – hardware controller one C++ container holding components – ICS instrument sequencer (atst.ics.visp) – ICS mechanism components (atst.ics.visp.mc.*) » slit, slide, grating(3), stage(4) – each Virtual Camera controller one C++ container holding components – ICS virtual camera controller (atst.ics.visp.dc) – ICS bulk data transfer controller (atst.ics.visp.dc.bdt)

ViSP Container 5 ViSP Container 4 ViSP Container 3 dc dc.vc dc.vc.timebase dc.vc.camera dc.bdt dc.bdt.buffers Example: ViSP Components ViSP Container 1 is mc mc.slit mc.slit.decker mc.slit.rot mc.slide mc.grating1 mc.grating1.a mc.grating1.b mc.grating1.g mc.stage1 mc.stage1.g mc.stage1.b mc.stage1.a mc.stage1.z mc.strage1.y mc.stage1.x ViSP Container 2 dc dc.vc dc.vc.timebase dc.vc.camera dc.bdt dc.bdt.buffers

Principal Systems Observatory Control System – executes the observing program that controls the experiment. Telescope Control System – moves the telescope and controls the optical configuration Data Handling System – transfers, displays, processes, and stores camera data. Instrument Control System

Observatory Control System Facility Management – deploy containers, components, and systems – control services Experiment Management – build, queue, and manage experiments – create and run observing programs – coordinate experiments and data User Interactions – alarms, health, telescope control – script building, observing control

Telescope Control TCS Functions: Ephemeris calculator Coordinate conversions Pointing corrections Mount and enclosure trajectories Wavefront correction strategy Polarization and calibration configuration TCS Mount Azimuth Altitude Coudé M1 Mirror Actuators Supports Thermal M2 Mirror Hexapod Tip-Tilt Lyot Stop Heat Stop Occulter Feed Optics M3 M4 M7-M9 GOS Enclosure Carousel Shutter Thermal Vent Gates Wavefront Coudé AO Coudé aO Coudé CT Acq. Camera Filter Shutter Pointing Optics Trajectories Coordination PAC Polarization Analysis Calibration Control & coordinate the subsystems: Mount Control System M1 Mirror Control System M2 Mirror Control System Feed Optics Control System Wavefront Correction Control System Enclosure Control System Acquisition Control System Polarization, Analysis, Calibration System

Data Handling High-speed instrument data High-speed data storage High-speed quick look display Inst Fibre Channel Switch Realtime Storage NSO Digital Archive Virtual Solar Observatory Processing Reduction Databases Calibration Quality Assurance Pipeline Inst Data Storage Quicklook Data Control Large volume data processing Use of existing Digital Archive Connection to worldwide VSO

Instrument Control Observation Management Observations Scripts Instrument Sequencer Mechanism Controller Detector Controller Other Instruments

Interfaces ICS Interfaces – Observatory Control System – Instruments (ViSP, VBI, VTF, NIRSPen) – Synchrobus Instrument Interfaces – ICS – Camera Synchrobus Bulk Data Transfer User Interfaces

Instrument Control System Interfaces OCS 4.2 OCS 4.2 ICS ICS TCS 4.4 TCS 4.4 DHS 4.3 DHS 4.3 VBI 3.2 VBI 3.2 ViSP 3.3 ViSP 3.3 NIRSP 3.4 NIRSP 3.4 VTF 3.5 VTF 3.5 Data LAN SynchroBus Cameras 3.6 Cameras 3.6 ICD ICD ICD ICD ICD ICD ICD ICD ICD ICD ICD Scripts ICD ICD SynchroBus SynchroBus ICD GOS GOS BDT BDT Users

OCD to ICS Select the controlling experiment – Instrument then has access to experiment’s parameters. – ICS can allocate and control instruments in experiment. Change the current observing mode – Instrument responds to new mode with new script. – Instrument can cancel/abort current script. Events – Unallocated instruments can ‘follow’ observing mode. – Current script status (% done, iteration, alarms, etc) is reported.

ICS to Instrument Property Definitions – general instrument properties beamlines in use, current configuration – mechanisms and their properties connection type, positions, rates, channels, etc. – virtual cameras and their properties cameras, identifiers, data filters, sizes, etc. Script Definitions – available modes – repetitions, wavelenght, order, steps, policies, etc – script library

Virtual Camera Controller Polarizer Controller Synchrobus GPS Receiver Timecode Generator Distribution Hub Distribution Hub Timecode Receiver NTP/Ethernet Antenna Network Switch IRIG-B/DCLS Fiber CPU

Synchrobus Symmetricom bc635PCI-V2 – PCI bus – IRIG B analog or DC Level Shift – 100 nsec resolution – MPPS rate synthesizer – external event capture – flywheel drift on signal loss – Linux SDK

Synchrobus Software ATST base TimebusController – slave to GPS/TAI – rate generation – event interrupt – input pulse tagging ATST base ITimebusConnection ATST base Bc635Connection – Symmetricom bc625 driver and library – Implementation of TimebusController functions. TimebaseController BaseController ITimebaseConnection Bc635Connection HardwareController ITimebaseConnection

Instrument to camera TBD – built from the existing virtual camera interface of DST. Modes: – accumulated, burst, frame select, monitor – focus, alignment, etc

Camera to Synchrobus Select bc635 modes – rate generation, event interrupt Select pulse tagging – reference time, pulse multiplier

User Interfaces Resident Astronomer – experiment control Observer/Operator – facility control telescope, framework – observation control observing scripts, mode Instrument Scientist – instrument configuration instrument scripts, telemetry Experiments Observations Properties Build Astronomer Scientist Run Observer Operator

Manage Experiments Build Experiments Run Experiments Manage Data Operate Facility Analyze Data Control Data Resources Select Experiments Select Instruments Resident Astronomer Instrument Scientist Observer Operator Engineer Operate Components Operate Telescope Manage Services Run Scripts Configure Instrument Build Instruments Build Scripts Components Experiments Services Instruments Scripts Telescope Data Store ActorsRolesResources

Instrument Development ATST-supplied software – CSF, base, ICS, mini-DHS, TCS simulator Observing mode scripts – one script for each supported mode, null mode script. New hardware – help extend ATST base with controllers and connections Instrument interface – define all instrument properties and configurations Data plugins – quick look display, quality assurance, reduction software

Instrument Development Complete facility instrument – completely integrated into software architecture synchronized, modal response, data transfer – full use of software framework events, alarms, health, logs, component/container Proxy facility instrument – partial use of software framework non-standard parts, proxies, stand-alone components Visitor facility instrument – partially integrated into software architecture – minimal use of software framework

Instrument Development Instrument User Interfaces – stand-alone engineering user interface used for calibration, configuration, and engineering may use non-framework components – instrument scientist interface development and testing of mode scripts status reports during observations

Mode "Scripts" Observatory broadcasts its current observing mode – all systems run in that mode (OCS, TCS, ICS, instruments) – allocated instrument execute their appropriate script Modes for each instrument: – setup – observe – calibrate (wave, pol, tel, etc) – specialized instrument modes

New hardware Instrument builders will choose/use new hardware – build/find Linux drivers – build CSF Controller support – possibly build new connection interfaces – build new hardware connections. Add hardware to ATST standards – propose new standard – develop to CSF software standards – enjoy full ATST support of software

Instrument Interface Properties – each instrument component should have a set range, positions, rates, etc – stored in the Property service – retrieved automatically at load time atst.ics.visp.mc.slide (ContinuousMotorController) – {minpos, maxpos, scale, channel, maxvel} atst.ics.visp.mc.grating1 (DiscreteMotorController) – {minpos, maxpos, pos, channel, maxvel}

Data Plugins Quick Look – convert data stream to quick look display – low latency, fully automated, no display feedback Quality Assurance – convert data stream to uqality control data files – high latency, selective files Reduction – only necessary to physically reduce the data volume

OCS User Interfaces

Experiment Control

How the display is organized Instrument setup/control/monitoring Observation mode setup/control/monitoring Detailed display/setup

What the display is showing Experiment being examined Instrument being displayed Mode Status (color) Time left Mode being displayed Details for ViSP's Observe mode ViSP action for ObserveMode Active mode (by color) Time left Finish rule Instrument health (by color) Operation status (by color) Status message s go here

What the display controls Experiment being examined Mode Control (pull down) Operation control (pull down) Set params for ViSP's Observe mode Select action for Observe Mode Select mode to display Instrument to display Display mode overview (deselect instrument) Display inst. overview (deselect mode)

Alarm/Health Management

What the display is showing Health (by color) Alarm status (by color) Raised alarm Acknowledged alarm Log a comment about an alarm View alarm history

Checking an alarm Details on alarm. Can acknowledge, clear, or leave raised.

Checking health detail Can get details on any component by selecting that component.

Framework Observatory Control System – executes the observing program that controls the experiment. Telescope Control System – moves the telescope and controls the optical configuration Data Handling System – transfers, displays, processes, and stores camera data. “Frameworks are similar to software libraries in that they are reuseable abstractions of code wrapped in a well-defined API. Unlike libraries, however, the overall program's flow of control is not dictated by the caller, but by the framework. This inversion of control is the distinguishing feature of software frameworks.” -- Wikipedia

Overview ICS Interfaces – Synchrobus, Observatory Control, Data Handling Requirements – Synchronization, scripting, Design – Sequencer, mechanism, detector controllers – ATST base controllers Common Services Framework

ICS Interfaces Put interface picture here

Synchrobus Requirements Requirements

Synchrobus Design Design picture

Synchrobus Interface

OCS Interface

DHS Interface

ICS Design Requirements

ICS Design

ICS Instrument Sequencer

ICS Components

ICS Detectors

ATST Base Controllers

Common Services Framework