CRUISE_SETUP.expect
author ladcp@ladcp-mac.local
Fri, 10 Dec 2010 15:45:10 +0000
changeset 6 1ab5767c18dd
parent 5 f41d45fe7ae9
child 12 5e67754f6457
permissions -rwxr-xr-x
typo fix
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     1
#======================================================================
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     2
#                    C R U I S E _ S E T U P . E X P E C T 
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     3
#                    doc: Wed Mar 10 21:14:18 2004
6
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
     4
#                    dlm: Fri Dec 10 15:42:51 2010
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     5
#                    (c) 2004 A.M. Thurnherr
6
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
     6
#                    uE-Info: 184 25 NIL 0 0 72 2 2 8 NIL ofnI
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     7
#======================================================================
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     8
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
     9
#--------
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    10
# HISTORY
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    11
#--------
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    12
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    13
# Mar 10, 2004: - created during NBP0402
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    14
# Apr  4, 2004: - final version NBP0402
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    15
# Jun 15, 2004: - adapted to BB150/Workhorse setup
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    16
# Jun 16, 2004: - ditto
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    17
# Jun 19, 2004: - BUG: could not handle multiple BB150 data files
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    18
# Jan 19, 2006: - updated documentation
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    19
#		- allowed for empty-string time_server
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    20
# Nov  4, 2006: - changed backup dir structure
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    21
# Aug 25, 2010: - rename* funs modified to allow them to be used to ensure
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    22
#		  that downladed file names have correct case
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    23
#		- renamed from DEFAULTS.expect to CRUISE_SETUP.expect
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    24
# Aug 26, 2010: - added ymodem_receive_cmd
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    25
#		- changed default string quotes to {} to prevent Tcl variable
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    26
#		  and command substitutions
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    27
# Oct 18, 2010: - changed comment for ymodem_receive_cmd to account for the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    28
#		  fact that bbabble now uses the -u option by default
6
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
    29
# Dec 10, 2010: - updated comments
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
    30
#		- made mkProfile default file-checking program
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
    31
#		- made backup dir structure consistent with raw dir structure
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    32
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    33
#-----------
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    34
# TWEAKABLES
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    35
#-----------
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    36
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    37
# At the beginning of each cast, the clock of the acquisition computer should
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    38
# synchronized with the master clock used for timestamping the GPS information.
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    39
# The best way to accomplish this is to run a NTP daemon (e.g. ntpd) polling
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    40
# an NTP server on the ship.
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    41
# If running ntpd is inconvenient or not possible, the follwing variable can
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    42
# be set to the name of the NTP server, in which case the time is sync'ed
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    43
# at the beginning of each cast with the function set_computer_time (defined
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    44
# below).
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    45
# If there is no NTP server available, the variable should be set to the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    46
# empty string and the clock must be sync'ed manually.
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    47
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    48
set time_server	{};
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    49
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    50
# bbabble needs to know the tty device name(s) of the serial connection(s)
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    51
# to the ADCP head(s). If only one head is connected, tty1 is ignored.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    52
# If two heads are connected, the device names are exchangeable, i.e.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    53
# either instrument can be connected to either port.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    54
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    55
set tty0 {/dev/ttyS0};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    56
set tty1 {/dev/ttyS1};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    57
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    58
# In case of 2 ADCP heads, babble needs to know which is the master and
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    59
# which is the slave. This is accomplished by setting the following variables
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    60
# to the corresponding instrument serial numbers (PS0 output). By convention,
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    61
# the downlooker is the master. If only a single head is connected, both
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    62
# variables are ignored.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    63
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    64
set master_sn 7877;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    65
set slave_sn  1412;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    66
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    67
# Before deployment, every ADCP head has to be programmed by sending it
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    68
# a corresponding command file, defined by the following variables. If only
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    69
# a single head is connected, the slave_* variable is ignored.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    70
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    71
set master_cmd_file {MASTER.cmd};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    72
set slave_cmd_file  {SLAVE.cmd};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    73
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    74
# For convenience, it is best to use the station number to name the ADCP data
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    75
# files, and to indicate whether the data file comes from the master or
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    76
# slave. The following variables variables define the printf(3) format
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    77
# that is used to create the files names from the station number. If only
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    78
# a single head is connected, the slave_* variable is ignored.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    79
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    80
set master_deployment_name_fmt	{%03dDL};
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
    81
set slave_deployment_name_fmt	{%03dUL};
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    82
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    83
# Older RDI instruments (e.g. the BB150) do not allow the data-file name
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    84
# to be defined in the instrument, in which case the files have to be
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    85
# renamed after downloading. The following variables define the shell
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    86
# globbing patterns for the master and slave. For example, the UH BB150
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    87
# used during CLIVAR P02 generated files with extension .612; the coresponding
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    88
# globbing pattern is {*.612}. If only a single head is connected, the
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    89
# slave_* variable is ignored.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    90
# NB: For dual-headed LADCP systems it is important that the globs do not
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    91
#     match both master and slave data files. {*.000} therefore will not
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    92
#     work for dual-head Workhorse systems.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    93
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    94
set master_download_glob 	{};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    95
set slave_download_glob		{};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    96
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    97
# For consistency it is nicest if low station numbers contain leading
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    98
# zeroes. The following variable defines the corresponding printf(3) format.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
    99
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   100
set stn_format {%03d};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   101
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   102
# The following directory is used to store command files, instrument
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   103
# configurations and ADCP data. Separate subdirectories (named according to
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   104
# stn_format) are used for each cast.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   105
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   106
set raw_dir {../data/raw};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   107
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   108
# After downloading, the data directory is backed up to the following
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   109
# directory. Make sure that it resides on a different disk than raw_dir.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   110
# Empty string disables backup for testing purposes.
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   111
# NOTE: RELATIVE PATHNAMES MUST START FROM CAST DIR (NOT ACQUISITION DIR)
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   112
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   113
set backup_dir {../../backup/raw};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   114
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   115
# By default, bbabble will look for standard UN*X ymodem receive
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   116
# programs (rb and lrb) and call the first one it finds with the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   117
# -u option. If neither of the standard programs exist, if neither is in the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   118
# current $PATH, or if non-standard options have to be passed the following
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   119
# variable can be set to a non-empty string, such as {/sw/bin/rb -u}
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   120
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   121
set ymodem_receive_cmd {}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   122
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   123
# bbabble can be made to abort downloading after a preset amount of time,
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   124
# defined by the following variable. 
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   125
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   126
set download_timeout 999999;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   127
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   128
#----------------------------------------------------------------------
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   129
# Semi-Standard Functions
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   130
#----------------------------------------------------------------------
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   131
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   132
# The program for polling an NTP server is different on different
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   133
# UN*X systems. Either rdate or ntpdate should be available. Note
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   134
# that sudo will propt for the login password of the user running
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   135
# the LADCP acquisition, unless it is explicitly set to allow execution
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   136
# of the command without a password.
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   137
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   138
proc set_computer_time {} {				# set computer clock
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   139
	global time_server;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   140
	if {[string length $time_server] == 0} {return}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   141
	exec sudo rdate -s $time_server;
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   142
#	exec sudo ntpdate -s $time_server;
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   143
}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   144
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   145
#----------------------------------------------------------------------
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   146
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   147
# After the LADCP data files have been downloaded they should be
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   148
# checked. A simple yet effective check consists in estimating the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   149
# bottom depth (zmax) and end depth (zend) by time-integrating the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   150
# vertical-velocity measurements. There are two different publicly
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   151
# available programs to accomplish this: scanbb from the UH LADCP
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   152
# software suite, and mkProfile from the perl-utilities available
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   153
# from the LDEO LADCP repository.
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   154
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   155
proc check_data {file} {				# check data file
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   156
	exec sh -c "mkProfile -Q $file 2> `basename $file .000`.profinfo";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   157
	exec sh -c "cat `basename $file .000`.profinfo > /dev/tty";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   158
#	exec sh -c "scanbb $file";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   159
#	exec sh -c "sed -n '/^zmax/,/^zend/s/ at.*/m/p' `basename $file .000`.scn > /dev/tty";
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   160
}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   161
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   162
#----------------------------------------------------------------------
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   163
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   164
# The following two routines backup the master and slave files from the
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   165
# raw directory. 
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   166
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   167
proc backup_master_data {stn} {
6
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
   168
	global stn_format master_deployment_name_fmt master_cmd_file backup_dir;
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   169
	if {[string length $backup_dir] == 0} {return}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   170
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   171
	if {![file isdirectory $backup_dir]} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   172
		error "$backup_dir does not exist relative to [pwd]";
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   173
	}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   174
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   175
	set stnstr [format $stn_format $stn];
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   176
	set cast_dir [format %s/%s $backup_dir $stnstr];
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   177
	if {![file isdirectory $cast_dir]} {exec mkdir $cast_dir};
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   178
	exec sh -c "cp [format $master_deployment_name_fmt $stn]* $cast_dir";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   179
	exec sh -c "cp $master_cmd_file* $cast_dir";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   180
	exec sh -c "cp *log $cast_dir";
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   181
}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   182
	
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   183
proc backup_slave_data {stn} {				# copy data to network
6
1ab5767c18dd typo fix
ladcp@ladcp-mac.local
parents: 5
diff changeset
   184
	global stn_format slave_deployment_name_fmt slave_cmd_file backup_dir;
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   185
	if {[string length $backup_dir] == 0} {return}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   186
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   187
	if {![file isdirectory $backup_dir]} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   188
		error "$backup_dir does not exist relative to [pwd]";
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   189
	}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   190
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   191
	set stnstr [format $stn_format $stn];
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   192
	set cast_dir [format %s/%s $backup_dir $stnstr];
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   193
	if {![file isdirectory $cast_dir]} {exec mkdir $cast_dir};
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   194
	exec sh -c "cp [format $slave_deployment_name_fmt $stn]* $cast_dir";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   195
	exec sh -c "cp $slave_cmd_file* $cast_dir";
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   196
	exec sh -c "cp *log $cast_dir";
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   197
}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   198
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   199
#----------------------------------------------------------------------
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   200
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   201
# See comments on master_download_glob and slave_download_glob above.
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   202
4
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   203
proc rename_master_download_file {target} {		# rename after download 
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   204
	global master_download_glob;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   205
	
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   206
	if {[string length $master_download_glob] == 0} {return}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   207
	set files [glob -nocomplain $master_download_glob];
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   208
	set nfiles [llength $files];
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   209
	if {$nfiles == 0} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   210
		if {![file exists $target]} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   211
			error {can't find downloaded master file};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   212
		}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   213
		return;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   214
        }
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   215
        if {$nfiles > 1} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   216
	        send_user {WARNING: Multiple files downloaded from master --- rename, backup, check manually!};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   217
	}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   218
	if {![string equal [lindex $files end] $target]} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   219
		exec mv [lindex $files end] $target;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   220
	}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   221
}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   222
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   223
proc rename_slave_download_file {target} {		# rename after download
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   224
	global slave_download_glob;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   225
	
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   226
	if {[string length $slave_download_glob] == 0} {return}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   227
	set files [glob -nocomplain $slave_download_glob];
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   228
	set nfiles [llength $files];
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   229
	if {$nfiles == 0} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   230
		if {![file exists $target]} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   231
			error {can't find downloaded slave file};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   232
		}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   233
		return;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   234
        }
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   235
        if {$nfiles > 1} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   236
	        send_user {WARNING: Multiple files downloaded from slave --- rename, backup, check manually!};
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   237
	}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   238
	if {![string equal [lindex $files end] $target]} {
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   239
		exec mv [lindex $files end] $target;
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   240
	}
fda11de1826e version left on Poseidon at end of P403
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents:
diff changeset
   241
}
5
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   242
f41d45fe7ae9 V1.5 initial release
A.M. Thurnherr <ant@ldeo.columbia.edu>
parents: 4
diff changeset
   243