Orbit server usage instructions

These are the instructions for controlling the orbit server using the scripts in /local/os/scripts on abcmw1. There is also a short info text in /local/os/scripts/help.  Start out with a couple of ssh sessions to abcmw1 and cd /local/os/scripts.

Complete system

IllustrationAs PDF.

Orbit server

To start the orbit server, first run the findserver script to see if it's already running. If it is, you might want to kill it. Kill the top-level thread and wait a couple of seconds, then run findserver again.

Then run the startserver script. It will start the orbit server and provide it with a configuration which is not applying any corrections. It will be run with nohup, so you can logout afterwards and it will continue to run. Remember to start it as a user which people have access to, otherwise they might not be able to easily kill the server. (The server will write (rotating) log output to /local/os/logfile.txt, which you can do tail -F on if you want.)

Configurator

The setconfig script changes the configuration of the server. The script and the configuration files contains comments and are more or less self-explanatory. Please note that it is necessary to manually make sure the configuration files are valid, especially containing the correct number of entries for the matrix, the BPM calibration parameters (one per BPM input) and the correction factors (one per corrector).

The fifth argument to the os_config program is where to send the Java GUI updates (abcmw1 in the script). To receive updates this must, for the moment, be changed to the host where the Java GUI is running.

A script named stopcorrections is a quick way of applying a configuration which is not sending any corrections to the real power converters, but instead to dummy  "/dev/null" outputs.

Orbit server in/out monitor program

Run the datamonitor script. The monitor program will start and wait for valid data to be received. If the orbit server is configured with BPM inputs that actually receive data, it should happen within ~30 seconds. If not, run the tailpackets script to observe everything received by the server and check if the data is incomplete or flagged as invalid (trailing I:s instead of V:s at the end of the line). The tailmeasurements script instead displays only complete sets of input data (the only thing acted on), and the tailcorrections script displays the corrections applied.

The in/out monitor program shows complete sets of input data (in millimeters) with sigma (in raw units), and the calculated corrections (which may or may not be sent to actual correctors, depending on the current configuration).

Orbit server performance monitor program

Run the perfmonitor script. The same applies as for the data monitor program, but this will instead display the orbit servers own measurement of the time between a packet is received and the corrections are sent. This time should normally be around 1-2 milliseconds, and the latest value is in the top-right corner. The rest of the screen shows the number of measurements in each millisecond bucket, since a server configuration was last applied.

Java GUI

The Java GUI can be started on any machine with a Java Virtual Machine, v1.3 or newer. It is available in \\cern.ch\dfs\Users\j\janders\Public\BeamPositionMonitor_mod\JavaGUI\sources (alternative HTTP link to snapshot 2003-07-25: zip archive) with two Windows batch files, one to use in the general case where the Java binary is in the search path, and one specially adapted for PCOPCR04 where the exact Java location is specified in the batch file. If you are using a computer with Java, but not with the Java binary in the path, make a copy of the PCOPCR04 batch file and change the reference to the Java binary to where the computer has it installed. On Unix systems, also replace the semicolon in the classpath with a colon.

When the Java GUI is started, it is also necessary to instruct the server to send the updates to it. See the parameters to os_config, explained in the setconfig script. (Next time the Java program is updated, this manual step will be eliminated.)

CMW Management Console

This Java application can show the current state of the orbit server, as well as any other CMW server implementing the administration interface. It is in development, but a snapshot is in \\cern.ch\dfs\Users\j\janders\Public\MConsole.zip . Talk to me if you want to use it. The monitor programs and tail scripts mentioned earlier are probably more useful.


Please send questions, suggestions or comments to jens.andersson@cern.ch.

This page was updated June 10th, 2003.  URL: http://proj-lhcfeedback.web.cern.ch/proj-lhcfeedback/os_scripts.htm