Control System Studio Guide
Total Page:16
File Type:pdf, Size:1020Kb
Control System Studio Guide For installers and maintainers of CSS Kay Kasemir Gabriele Carcassi Control System Studio Guide: For installers and maintainers of CSS Kay Kasemir Gabriele Carcassi Copyright © 2011 Oak Ridge National Laboratory Acknowledgements Control System Studio (CSS) is the result of contributions from many people: • First of all, CSS builds heavily on Eclipse. • Matthias Clausen at the Deutsches Electronen Synchrotron started the CSS idea. • Many people from the Canadian Light Source, Brookhaven National Laboratory, Argonne National Laboratory, ITER and other sites have contributed either through extensions, code fixes, suggestions or bug reports. Check the @author tags in the source code to get an idea. The sources for this book are on SourceForge under http://cs-studio.hg.sourceforge.net/hgweb/cs-studio/ docbook/. Thanks to Gabriele Carcassi, the latest HTML version is available at http://cs-studio.sourceforge.net/ docbook/, and the current PDF is at http://cs-studio.sourceforge.net/docbook/css_book.pdf. iii Table of Contents No Warranty ...................................................................................................................... x I. CSS Guide ..................................................................................................................... 1 1. Introduction ........................................................................................................... 2 2. Control System Studio (CSS) .................................................................................... 3 2.1. Example Use Case ........................................................................................ 3 2.2. Java, Eclipse, RCP ....................................................................................... 5 2.3. RCP and Control System Studio ..................................................................... 7 3. Control System ....................................................................................................... 9 4. Compiling, Running, Debugging CSS ....................................................................... 10 4.1. Prerequisites .............................................................................................. 10 4.2. Obtaining the Source Code ........................................................................... 11 4.3. IDE Example ............................................................................................. 12 4.4. JUnit Tests, Headless JUnit Tests .................................................................. 15 4.5. Product Export from IDE ............................................................................. 16 Command-line Products for Windows ........................................................... 17 4.6. Delta Pack, Cross-Platform Export ................................................................. 17 4.7. Headless Build ........................................................................................... 18 4.8. Feature Patch ............................................................................................. 19 5. Workspace ........................................................................................................... 20 5.1. Selecting a Workspace ................................................................................. 20 5.2. Projects, Saving Files, Default Project ............................................................ 20 5.3. Linked Folders ........................................................................................... 21 6. Hierarchical Preferences ......................................................................................... 22 6.1. Plugin Defaults: preferences.ini ..................................................................... 22 6.2. Product (Site) Defaults: plugin_customization.ini .............................................. 23 6.3. Command-line Adjustments: -pluginCustomization ........................................... 23 6.4. End User Settings: Preference Pages .............................................................. 24 6.5. Secure Storage of Passwords ......................................................................... 24 org.csstudio.sns.passwordprovider ................................................................ 25 7. Console ............................................................................................................... 26 7.1. Enabling the Console .................................................................................. 26 7.2. Console Commands ..................................................................................... 26 7.3. Adding Commands ..................................................................................... 26 8. Network Usage by CSS .......................................................................................... 28 8.1. Windows Firewall Warning .......................................................................... 28 8.2. Required Firewall Exceptions ........................................................................ 28 9. Relational Database (RDB) ..................................................................................... 29 9.1. Supported Databases ................................................................................... 29 9.2. RDB User Accounts .................................................................................... 29 9.3. Network Access ......................................................................................... 29 9.4. RDB URLs and Schemata ............................................................................ 30 10. Archive System ................................................................................................... 31 10.1. Relational Database Setup .......................................................................... 32 10.2. Building the Tools .................................................................................... 33 10.3. Archive Engine Configuration ..................................................................... 33 Channel Groups ........................................................................................ 33 Channels ................................................................................................. 33 Duplicate Channels ................................................................................... 34 10.4. Sample Modes .......................................................................................... 34 Monitored ................................................................................................ 34 Monitored With Threshold ......................................................................... 34 iv Control System Studio Guide Scanned/Sampled ...................................................................................... 34 Writing Samples to Storage ........................................................................ 35 Time Stamp Checks .................................................................................. 35 10.5. Editing the Configuration ........................................................................... 35 SQL Manipulation .................................................................................... 36 Archive Config Tool ................................................................................. 36 10.6. Running Archive Engines ........................................................................... 37 Engine Web Server ................................................................................... 37 10.7. Web-Based Archive Monitor and Editor ........................................................ 38 10.8. Viewing Data in CSS ................................................................................ 38 11. Java Message Server ............................................................................................ 39 11.1. Apache ActiveMQ Server ........................................................................... 39 11.2. Client (CSS) Configuration ......................................................................... 39 11.3. Testing your Setup .................................................................................... 39 11.4. Message Types ......................................................................................... 40 11.5. JMS logging to RDB ................................................................................. 40 11.6. Viewing the Message History ...................................................................... 40 12. Authentication and Authorization ........................................................................... 42 12.1. Overview ................................................................................................. 42 12.2. Authentication: org.csstudio.platform.loginModule .......................................... 43 org.csstudio.platform.jaasAuthentication ........................................................ 43 org.csstudio.platform.jaasAuthentication.ui .................................................... 44 JAAS LDAP Authentication via JndiLoginModule .......................................... 44 JAAS LDAP Authentication via LDAPBindLoginModule ................................ 44 JAAS Kerberos Authentication .................................................................... 45 12.3. Authorization: org.csstudio.platform.authorizationProvider ................................ 45 org.csstudio.sns.dummyAuthorization