1 / 60

ATST Software and Instrument Development

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.

metea
Download Presentation

ATST Software and Instrument Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ATST Software andInstrument 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 1st: after command accepted 2nd: after action completes associated configuration ID

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

  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 Running (Functional Behavior) Shutdown Uninit Remove

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

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

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

  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. FeedOptics Mount M1 Mirror Wavefront PAC Enclosure Acq. M3 Azimuth Actuators Coudé AO Polarization Carousel Camera Altitude M4 Supports Coudé aO Analysis Shutter Filter Coudé M7-M9 Thermal Calibration Coudé CT Thermal Shutter GOS Vent Gates Telescope Control Trajectories Pointing TCS TCS Functions: • Ephemeris calculator • Coordinate conversions • Pointing corrections • Mount and enclosure trajectories • Wavefront correction strategy • Polarization and calibration configuration Coordination Optics M2 Mirror Hexapod Tip-Tilt Lyot Stop Heat Stop Occulter 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. Fibre Channel Switch Data Handling • Large volume data processing • Use of existing Digital Archive • Connection to worldwide VSO • High-speed instrument data • High-speed data storage • High-speed quick look display Processing Inst Inst Inst Inst Reduction Data Storage Calibration Databases Pipeline Quality Assurance Realtime Storage Quicklook Data Control Quicklook Quicklook NSO Digital Archive Virtual Solar Observatory

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

  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 Scripts OCS 4.2 Users ICD 3.1-4-4.2 DHS 4.3 ICS 3.1.4 TCS 4.4 ICD 3.1.4-3.2 ICD 3.1.4-3.3 ICD 3.1.4-3.4 ICD 3.1.4-3.5 ICD 3.1.2-3.1.4 ICD 3.1.1-4.4 BDT 4.3.1 VBI 3.2 ViSP 3.3 NIRSP 3.4 VTF 3.5 SynchroBus 3.1.2 GOS 3.1.1 ICD 3.2-3.6 ICD 3.3-3.6 ICD 3.4-3.6 ICD 3.5-3.6 ICD 3.1.1-3.1.2 Cameras 3.6 ICD 3.6-4.3 ICD 3.1.2-3.6 SynchroBus Data LAN

  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. Synchrobus CPU Antenna NTP/Ethernet GPS Receiver Timecode Generator Network Switch CPU CPU Distribution Hub IRIG-B/DCLS Fiber Polarizer Controller Virtual Camera Controller Virtual Camera Controller Virtual Camera Controller Timecode Receiver Timecode Receiver Timecode Receiver Timecode Receiver

  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. BaseController ITimebaseConnection HardwareController ITimebaseConnection TimebaseController <uses> Bc635Connection

  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 BuildAstronomerScientist RunObserverOperator Experiments Observations Properties

  28. Actors Roles Resources Select Experiments Experiments Resident Astronomer Manage Experiments Select Instruments Build Instruments Scripts Instrument Scientist Build Experiments Build Scripts Instruments Run Scripts Run Experiments Configure Instrument Components Observer Analyze Data ManageData Data Store ControlData Resources OperateTelescope Telescope Operator OperateFacility Manage Services Services Engineer OperateComponents

  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 Operation status (by color) Finish rule Time left Instrument being displayed Status messages go here Instrument health (by color) Active mode (by color) Time left Mode Status (color) ViSP action for ObserveMode Mode being displayed Details for ViSP's Observe mode

  40. What the display controls Experiment being examined Instrument to display Display inst. overview (deselect mode) Display mode overview (deselect instrument) Operation control (pull down) Select mode to display Select action for Observe Mode Mode Control (pull down) Set params for ViSP's Observe 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. 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

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

  47. ICS Interfaces • Put interface picture here

  48. Synchrobus Requirements • Requirements

  49. Synchrobus Design • Design picture

More Related