Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "ATST Software and Instrument Development 18 March 2009 Boulder, CO."— Presentation transcript:

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

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

3 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.

4 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

5 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”

6 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

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

8 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

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

10 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

11 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)

12 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

13 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

14 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

15 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

16 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

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

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

19 Instrument Control System Interfaces OCS 4.2 OCS 4.2 ICS 3.1.4 ICS 3.1.4 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 3.1-4-4.2 ICD 3.1.2-3.6 ICD 3.1.4-3.2ICD 3.1.4-3.3ICD 3.1.4-3.4ICD 3.1.4-3.5 ICD 3.5-3.6ICD 3.4-3.6ICD 3.3-3.6ICD 3.2-3.6 ICD 3.1.1-4.4 Scripts ICD 3.6-4.3 ICD 3.1.1-3.1.2 SynchroBus 3.1.2 SynchroBus 3.1.2 ICD 3.1.2-3.1.4 GOS 3.1.1 GOS 3.1.1 BDT 4.3.1 BDT 4.3.1 Users

20 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.

21 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

22 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

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

24 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

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

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

27 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

28 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

29 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

30 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

31 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

32 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

33 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

34 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}

35 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

36 OCS User Interfaces

37 Experiment Control

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

39 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

40 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)

41 Alarm/Health Management

42 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

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

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

45

46 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

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

48 ICS Interfaces Put interface picture here

49 Synchrobus Requirements Requirements

50 Synchrobus Design Design picture

51 Synchrobus Interface

52 OCS Interface

53 DHS Interface

54 ICS Design Requirements

55 ICS Design

56 ICS Instrument Sequencer

57 ICS Components

58 ICS Detectors

59 ATST Base Controllers

60 Common Services Framework


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

Similar presentations


Ads by Google