Differences between revisions 22 and 25 (spanning 3 versions)
Revision 22 as of 2008-12-30 05:29:58
Size: 5674
Editor: YoichiAso
Comment:
Revision 25 as of 2009-02-17 01:40:55
Size: 6029
Editor: RanaAdhikari
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
----------
 Find the [[Locking Scripts]] here.
Line 4: Line 6:
--------------------------------------
Find the [[Locking Scripts]] here.
--------------------------------------
----------
Scripts that run all the time (usually):
Line 8: Line 9:
Scripts that run all the time (usually):

|| '''Name of script'''    || '''Computer where it lives''' || '''What it does '''|| '''Notes '''          ||
|| [#PSLWatch PSLWatch]          || op340m                  || Runs lockFSS, lockMZ, lockPMC when appropriate              || ||
|| [#autolockMCmain40m autolockMCmain40m]|| op340m                  || watches the MC. Runs mcup and mcdown              || ||
|| [#FSSSlowServo FSSSlowServo]     || op340m                  || Watches C1:PSL-FAST_MON and servos C1:PSL-SLOW_DC              || ||
|| [#blinky blinky]            || op340m                  || blinks a light if a script is alive || forked by mother script ||
|| [#RGAlogger RGAlogger]         || op340m                  || gets data from RGA nightly              || Runs as a cron job ||
|| autoburt          || op340m                  || backs up EPICS control settings hourly              || Runs as a cron job ||
|| rsync.backup      || fb40m                   || backup minute trend files and /cvs/cds/caltech to the archive in Powell-Booth || Runs as a cron job ||
|| [[ndsproxy]]      || nodus || Provides NDS access from off-site || ||
|| [[EPICS gateway]] || nodus                   || Provides DAQ channel access from off-site || ||
|| '''Name of script''' || '''Computer where it lives''' || '''What it does ''' || '''Notes ''' ||
|| [#PSLWatch PSLWatch] || op340m || Runs lockFSS, lockMZ, lockPMC when appropriate ||broken||
|| [#autolockMCmain40m autolockMCmain40m] || op340m || watches the MC. Runs mcup and mcdown || ||
|| [#FSSSlowServo FSSSlowServo] || op340m || Watches C1:PSL-FAST_MON and servos C1:PSL-SLOW_DC || ||
|| [#blinky blinky] || op340m || blinks a light if a script is alive || forked by mother script ||
|| [#RGAlogger RGAlogger] || op340m || gets data from RGA nightly || Runs as a cron job ||
|| autoburt || op340m || backs up EPICS control settings hourly || Runs as a cron job ||
|| rsync.backup || fb40m || backup minute trend files and /cvs/cds/caltech to the archive in Powell-Booth || Runs as a cron job ||
|| [[ndsproxy]] || nodus || Provides NDS access from off-site || ||
|| [[EPICS gateway]] || nodus || Provides DAQ channel access from off-site || ||
Line 21: Line 20:
|| [[captureScreen.sh]]|| nodus ||Takes MEDM screen snapshots || ||
|| ''others''        ||                         ||               || ||
-------------------------
|| [[captureScreen.sh]] || nodus ||Takes MEDM screen snapshots || ||
|| [#CronJobs cron jobs] || nodus ||||<style="text-align: center;"> ||
||
''others'' || || || ||
Line 26: Line 25:
----------
Line 27: Line 27:
Line 29: Line 28:

'''PSLWatch''' is a perl script running on '''op340m'''. It watches the PSL, and dispatches the appropriate of '''lockMZ''', '''lockPMC''', or '''lockFSS'''. It has a '''blinky'''.
 . '''PSLWatch''' is a perl script running on '''op340m'''. It watches the PSL, and dispatches the appropriate of '''lockMZ''', '''lockPMC''', or '''lockFSS'''. It has a '''blinky'''.
Line 34: Line 31:
Line 36: Line 32:

The '''FSSSS''' is a perl script running on '''op340m'''. It implements a PID servo that uses the PSL-FAST (the NPRO PZT control signal) as an error signal, and feeds back to PSL-SLOWDC (which changes the crystal temperature). You can manipulate the gain, settings, timeouts, etc. on the C1PSL_SLOW.adl screen. It blinks its light everytime it does something. Can be disabled with the channel C1:PSL-FSS_SLOWLOOP.
 . The '''FSSSS''' is a perl script running on '''op340m'''. It implements a PID servo that uses the PSL-FAST (the NPRO PZT control signal) as an error signal, and feeds back to PSL-SLOWDC (which changes the crystal temperature). You can manipulate the gain, settings, timeouts, etc. on the C1PSL_SLOW.adl screen. It blinks its light everytime it does something. Can be disabled with the channel C1:PSL-FSS_SLOWLOOP.
Line 41: Line 35:
Line 43: Line 36:

'''RGAlogger''' In $SCRIPTS/RGA, it polls the RGA for data and settings, and puts these into two files:
 . '''RGAlogger''' In $SCRIPTS/RGA, it polls the RGA for data and settings, and puts these into two files:
Line 47: Line 38:
Line 49: Line 39:
Line 51: Line 40:
Line 55: Line 43:
 '''autolockMCmain40m''' is the Mode Cleaner autolocker script. It watches the mode cleaner transmitted power level, and runs the appropriate script when certain conditions are reached. The subscript '''mcup''' ramps gains, engages boosts, and turns on the WFS. '''mcdown''' is the inverse of '''mcup'''. It can be enabled or disabled by using a button on the C1IOO_LockMC.adl screen.
 . '''autolockMCmain40m''' is the Mode Cleaner autolocker script. It watches the mode cleaner transmitted power level, and runs the appropriate script when certain conditions are reached. The subscript '''mcup''' ramps gains, engages boosts, and turns on the WFS. '''mcdown''' is the inverse of '''mcup'''. It can be enabled or disabled by using a button on the C1IOO_LockMC.adl screen.
Line 58: Line 45:
Line 63: Line 49:

*Location: $SCRIPTS/starwars/
 *Name: bobafett.pl
 *Use: run without additional arguments
 * Location: $SCRIPTS/starwars/
 * Name: bobafett.pl
 * Use: run without additional arguments
Line 69: Line 53:
Line 71: Line 54:

With the Num Lock 'ON', the up(8) and down(2) arrows will move the component in positive and negative PIT respectivily. While the left(4) and right(6) will move in positive and negative YAW, respectivily.  
 With the Num Lock 'ON', the up(8) and down(2) arrows will move the component in positive and negative PIT respectivily. While the left(4) and right(6) will move in positive and negative YAW, respectivily.
Line 75: Line 56:
Line 77: Line 57:
Line 79: Line 58:
Line 81: Line 59:
Line 85: Line 62:
 * Location: $SCRIPTS/general/blinky
 * Name: blinky.pl
 * Use:
Line 86: Line 66:
 *Location: $SCRIPTS/general/blinky
 *Name: blinky.pl
 *Use:
blinky is used to provide heart beat functions to scripts (e.g. PSLwatch and mcautolock40m) when that script dies, this one dies too.
Line 90: Line 68:
blinky is used to provide heart beat functions
to scripts (e.g. PSLwatch and mcautolock40m)
when that script dies, this one dies too.
usage: blinky <channel name> usage: blinky <channel name> <optional blink rate> usage: blinky <channel name> <required blink rate> <parent perl script pid>option 3 is for calling this function inside a perl script where the
Line 94: Line 70:
usage: blinky <channel name>
usage: blinky <channel name> <optional blink rate>
usage: blinky <channel name> <required blink rate> <parent perl script pid>option 3 is for calling this function inside a perl script where the
       grandparent pid is needed.
       default blink rate is 1 pulse per seconds
 . grandparent pid is needed. default blink rate is 1 pulse per seconds
Line 103: Line 75:

<<Anchor(CronJobs)>>
== Cron jobs ==
You are encouraged to make a copy of crontab files in /cvs/cds/caltech/crontab/ whenever you edit a crontab on a machine '''after confirming it works fine'''. This directory is svn managed. So do {{{svn ci}}} after you update a file.

=== nodus ===
The current crontab of controls@nodus is the following:

{{{
0 10 * * * /cvs/cds/caltech/scripts/backup/check_backup.sh
0,5,10,15,20,25,30,35,40,45,55 * * * * /cvs/cds/caltech/statScreen/bin/cronjob.sh
2,12,22,32,42,52 * * * * /cvs/cds/caltech/scripts/webStatus/webStatus.sh
}}}

{{{check_backup.sh}}} will check the daily backup status.

{{{statScreen/bin/cronjob.sh}}} will take screen shots of medm screens and post it on the web.

{{{webStatus.sh}}} will update the webStatus page.

This page describes, or has links to descriptions of, all scripts used at the 40m.



Scripts that run all the time (usually):

Name of script

Computer where it lives

What it does

Notes

[#PSLWatch PSLWatch]

op340m

Runs lockFSS, lockMZ, lockPMC when appropriate

broken

[#autolockMCmain40m autolockMCmain40m]

op340m

watches the MC. Runs mcup and mcdown

[#FSSSlowServo FSSSlowServo]

op340m

Watches C1:PSL-FAST_MON and servos C1:PSL-SLOW_DC

[#blinky blinky]

op340m

blinks a light if a script is alive

forked by mother script

[#RGAlogger RGAlogger]

op340m

gets data from RGA nightly

Runs as a cron job

autoburt

op340m

backs up EPICS control settings hourly

Runs as a cron job

rsync.backup

fb40m

backup minute trend files and /cvs/cds/caltech to the archive in Powell-Booth

Runs as a cron job

ndsproxy

nodus

Provides NDS access from off-site

EPICS gateway

nodus

Provides DAQ channel access from off-site

[#bobafett bobafett]

any

Useful for aligning suspended optics by hand

captureScreen.sh

nodus

Takes MEDM screen snapshots

[#CronJobs cron jobs]

nodus

others


PSLWatch

  • PSLWatch is a perl script running on op340m. It watches the PSL, and dispatches the appropriate of lockMZ, lockPMC, or lockFSS. It has a blinky.

FSSSlowServo

  • The FSSSS is a perl script running on op340m. It implements a PID servo that uses the PSL-FAST (the NPRO PZT control signal) as an error signal, and feeds back to PSL-SLOWDC (which changes the crystal temperature). You can manipulate the gain, settings, timeouts, etc. on the C1PSL_SLOW.adl screen. It blinks its light everytime it does something. Can be disabled with the channel C1:PSL-FSS_SLOWLOOP.

RGA logger

  • RGAlogger In $SCRIPTS/RGA, it polls the RGA for data and settings, and puts these into two files: RGA-date.data RGA-date.settings both in the $SCRIPTS/RGA/logs directory. It also checks the file $SCRIPTS/RGA/alarms/RGAalarms.spec for limits on certain AMUs, and compares the current data to the limits. If the current partial pressure of a given AMU exceeds its specified limit, it puts that information into a file called RGA-date.alarms. Run as a cronjob every day at 12.05 am by op340m.

autolockMCmain40m

  • autolockMCmain40m is the Mode Cleaner autolocker script. It watches the mode cleaner transmitted power level, and runs the appropriate script when certain conditions are reached. The subscript mcup ramps gains, engages boosts, and turns on the WFS. mcdown is the inverse of mcup. It can be enabled or disabled by using a button on the C1IOO_LockMC.adl screen. This script runs all the time on op340m. It's written in csh, and is fairly robust. It may crash when c1psl is rebooted. A cron job on op340m occasionally checks whether it's running and restarts it if it isn't. Any changes to the mode cleaner states (lock acquisition or in-lock) should be made in the mcup and mcdown scripts, in the $SCRIPTS/MC/ directory. autolockMCmain40m should not be edited.

bobafett.pl

  • Location: $SCRIPTS/starwars/
  • Name: bobafett.pl
  • Use: run without additional arguments This script can be used to manually align a component (TM or TT-PZT stage) in the PIT and YAW using the keypad on the keyboard. It does exactly what the (1D) sliders do in the EPCIS screens, but you don't have to move the mouse around when swapping axis. When started, the user will be presented with a menu with the choice of all the components of the 40m. With the Num Lock 'ON', the up(8) and down(2) arrows will move the component in positive and negative PIT respectivily. While the left(4) and right(6) will move in positive and negative YAW, respectivily. To change the step size, you use the (7) and (9) keys to increase and decrease, respectivily. The change is written directly to the '_COMM' channel of the component. When one of the PZT stages is chosen, the step size is automatically multiplied by 10k (which will be shown). The script can be ended by pressing 'q'.

blinky

  • Location: $SCRIPTS/general/blinky
  • Name: blinky.pl
  • Use:

blinky is used to provide heart beat functions to scripts (e.g. PSLwatch and mcautolock40m) when that script dies, this one dies too.

usage: blinky <channel name> usage: blinky <channel name> <optional blink rate> usage: blinky <channel name> <required blink rate> <parent perl script pid>option 3 is for calling this function inside a perl script where the

  • grandparent pid is needed. default blink rate is 1 pulse per seconds

Run on OP340m.

E.g. if the MC autolocker is not blinking log into OP340m, find the PID of autolockMCmain40m (1234, say) and type 'blinky C1:IOO-MC_AUTOLOCK_BEAT 1 1234 &'

Cron jobs

You are encouraged to make a copy of crontab files in /cvs/cds/caltech/crontab/ whenever you edit a crontab on a machine after confirming it works fine. This directory is svn managed. So do svn ci after you update a file.

nodus

The current crontab of controls@nodus is the following:

0 10 * * * /cvs/cds/caltech/scripts/backup/check_backup.sh
0,5,10,15,20,25,30,35,40,45,55 * * * * /cvs/cds/caltech/statScreen/bin/cronjob.sh
2,12,22,32,42,52 * * * * /cvs/cds/caltech/scripts/webStatus/webStatus.sh

check_backup.sh will check the daily backup status.

statScreen/bin/cronjob.sh will take screen shots of medm screens and post it on the web.

webStatus.sh will update the webStatus page.

Computers_and_Scripts/All_Scripts (last edited 2021-06-22 22:48:36 by GautamvenugopalanATligoDOTorg)