Download presentation
Presentation is loading. Please wait.
Published byHarold Houston Modified over 6 years ago
1
BLU-ICE & The Distributed Control System Past, Present, and Future
Scott McPhillips Stanford Synchrotron Radiation Laboratory
2
Overview Review the core features Example Applications
DCS 1.0: Centralized Message Routing Architecture DCS 2.0: Scripted Devices DCS 3.0: Scripted Operations Example Applications Automatic Loop Alignment Data Collection Crystal Screening Plans for releasing DCS 3.0
3
What is a core feature? Features that could persist in a completely different environment. Features that simplify hardware control & integration.
4
DCS 1.0: Software Components & Acronyms
XOS (Cross Operating System library) Provides subset of system calls with O.S. independent API. BLU-ICE (the GUI interface) Multiple, fully synchronized clients Written in TCL. Simple scripting available. Scans Hardware testing DHS (Distributed Hardware Servers) Translates DCS protocol into hardware specific protocol. DCSS (The Distributed Control System Server) Centralized process 1 DCSS per beam line.
5
DCS 1.0: Basic Architecture
BLU-ICE(s) DCSS is the central message router BLU-ICE clients connect to DCSS only. Hardware servers connect to DCSS only. DCSS records the state of the beam line. Benefits Fewer interfaces / less complexity. Easier system level debugging? Persistent & current state available in 1 place. DCSS Hardware Servers Beam Line Hardware
6
DCS 1.0: Limitations BLU-ICE(s) Combo motors not support natively in DCS 1.0. Requires lower level control system to support these features. DCSS table_vert table_vert_1 table_vert_2 Table table_pitch table_pivot ICS Wrapper DHS Galil DHS ICS control system Beam Line Hardware
7
DCS 2.0: Scripted Devices DCSS TCL Scripting added to DCSS. Core
DCSS sits above all of the hardware servers. Relationships can be defined between devices spanning multiple hardware servers. BLU-ICE DCSS TCL Scripting Engine Core Scripting engine obeys and depends upon centralized messaging. Connects as “GUI client.” Connects as a DHS. Hardware Servers Beam Line Hardware
8
DCS 2.0: Scripted Devices Support for unlimited parent and “grandparent” hierarchy. beam_size_y slit_1_vert_gap slit_2_vert_gap slit_1_upper slit_1_lower slit_2_upper slit_2_lower Virtual motor support (e.g. table_pivot) table_vert table_vert_1 table_vert_2 Table table_pitch table_pivot
9
DCS 3.0: Operations Added a generic “Operation” message to the DCS protocol. Allows easy integration of new types of hardware. DCSS routes the operation request to the responsible DHS. Added “scripted operation” capabilities to the scripting engine. Scripted operations can do anything possible in TCL. move motors or scripted devices. wait for motors to complete moving. Start other operations (DHS or scripted). wait for operations to complete. Scripted devices can start operations. DCS protocol messages are unlimited in size. Removed the 200 byte message size limitation. DCSS is backward compatible with old hardware servers.
10
DCS 3.0: Example Application #1 Automatic Loop Alignment
BLU-ICE Wrote “camera” DHS with operations for retrieving and processing images. “getLoopTip” will return image coordinates of tip of sample. “addImageToList” takes a picture and stores it in memory. “findBoundingBox” looks at images in memory and finds 3D bounding box for loop. Wrote Scripted Operation “centerLoop.” Calls the “camera” DHS operations. Moves motors. Script handles the high level centering decisions. Center loop DCSS centerLoop Image operations Move motors Camera DHS Motor DHS Axis Server Motion controller Sample camera
11
DCS 3.0: Example Application #2: Data Collection
collectRun collectFrame gonio_phi detector_z_corr optimizedEnergy Legend collectRun operation does the following: Moves motors to the next frame’s position. Waits for the motors. Starts the operation “collectFrame”. Waits for the collectFrame operation to complete. Loops over the above steps until the run is finished. Scripted Device Scripted Operation “Real” hardware
12
DCS 3.0: Example Application #2: Data Collection
collectRun collectFrame gonio_phi detector_z_corr detector_encoder detector_z optimizedEnergy optimize Legend energy Scripted Device table_vert Scripted Operation ion_chambers “Real” hardware
13
DCS 3.0: Example Application #2: Data Collection
collectRun collectFrame gonio_phi detector_z_corr detector_encoder detector_z optimizedEnergy optimize Legend energy Scripted Device table_vert table_slide Scripted Operation ion_chambers mono_angle “Real” hardware table_horz_2 table_horz_1 table_vert_1 table_vert_2
14
DCS 3.0: Example Application #2: Data Collection
collectRun collectFrame gonio_phi expose detector_z_corr detector gonio_phi detector_encoder detector_z optimizedEnergy optimize Legend energy Scripted Device table_vert table_slide Scripted Operation ion_chambers mono_angle “Real” hardware table_horz_2 table_horz_1 table_vert_1 table_vert_2
15
DCS 3.0: Example Application #3: Crystal Screening
centerLoop optimizedEnergy Video Snapshot collectFrame Mount Next Crystal Legend Beamstop_z Scripted Device Sample_x,y,z Scripted Operation Gonio_phi detector_z robot “Real” hardware
16
DCS 3.0+: Development Environment
All code stored in CVS (Concurrent Version System) External collaborators can see what is being worked on at SSRL. Absorb architecturally consistent changes from external collaborators. Open the software portions of Bugzilla to external Collaborators? Engineering change requests already being tracked at SSRL. Create an online discussion group? Allow collaborators to discuss design changes, problems, and solutions without opening a bug report. Documentation DCS Administrator’s Manual Script Writer’s Guide
17
Acknowledgements Developers Scientific Input Team Leaders
Tim McPhillips, Guenter Wolf, Henry van den Bedem, Ken Sharp, Nick Sauter, Jian Zhong, Hilary Yu, Thomas Eriksson Scientific Input Paul Ellis, Aina Cohen, Ana Gonzalez, Mitch Miller, Irimpan Mathews, Dan Harrington, Ezequiel Panepucci, John Coller, Hsiu-Ju Chiu, Ashley Deacon, Paul Phizackerley, Jeanette Hobbs, Linda Brinen Team Leaders Peter Kuhn, Mike Soltis
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.