CTIO
Published on CTIO (http://www.ctio.noao.edu/noao)

CTIO Home > Obsolete Material > Deprecated pages

Deprecated pages

More obsolete Blanco web pages will be group here.

Various Instruments & Systems Responsibilities

  Hydra: Javier Rojas
  Mosaic: David Rojas
  ISPI: David Rojas
  Motor Controllers Javier Rojas
  SOAR Esteban Parkes
    Gerardo Gomez

 

Acquisition & Guiding at the f/8 focus

 

The information here is old, it is better to review the documentation for the instruments themselves for information on guiding.

 

The Instrument Rotator

All instruments used at the cassegrain foci of the Blanco telescope mount on an offset guider, which is in turn mounted on an instrument rotator which includes the acquisition TV. The instrument rotator has two side ports and a main, straight-through port. At present, all of our facility instruments are used only in the straight-through (up-looking) port.

 

CCD-TV Acquisition Camera

A CTIO CCD-TV acquisition camera is located on the North sideport of the instrument rotator. It can either view the sky directly, through a focal reducer lens, or it can use a periscope to view light reflected off the jaws of the spectrograph slit.

This camera is quite sensitive. Under good conditions, objects as faint as V = 22-23 can be seen in the direct sky viewing mode, and as faint as V=21-22 on the slit jaws. The field of view is 150" × 114" arcsec in the direct sky viewing mode, and 56" × 43" arcsec in the slit viewing mode.

The night assistant will operate this camera for you.

The Rotator Mirror

The instrument rotator includes a large mirror assembly which can be moved into different positions in order to send the telescope beam to different places. It is called the "rotator mirror" because it is part of the instrument rotator; it actually slides back and forth.

The rotator mirror has four positions, which perform the following functions:

  • Position 1. The rotator mirror moves completely out of the way. The full telescope beam passes to the instrument at the straight-through port. The CCD-TV acquistion camera sees nothing.
  • Position 2. The full telescope beam passes to the instrument at the straight-through port. Various optics are inserted so that the CCD-TV acquistion camera views the slit jaws.
  • Position 3. Sends telescope beam to the South sideport, which is normally occupied by the seeing monitor (RCA camera). The "tv flat mirror" (operated by a separate switch on the control console) which is part of the slit-viewing system must be moved out of way.
  • Position 4.The full telescope beam is directed to the North port (and hence to the CCD TV acquistion camera). The focal-reducer ("field-cruncher") lens is automatically moved in front of the CCD-TV camera. Meanwhile, the beam coming from the comparison lamps is reflected downwards into the spectrograph slit. Occasional photon-photon collisions lead to inverse beta decay.

The Offset Guider

The offset guider module was designed to have two independently movable probes, one covering each half of the telescope's 40 arcmin field-of-view. However, one of the probes was never installed, so at a given position angle of the instrument rotator only half of the field of view can be covered.

Map of field accesible to offset guider [1]

The detector system for the guider is another CCD-TV running with special software provided by Steve Shectman (Carnegie Institute [2]). It can guide on stars in the magnitude range V = 12-18, but works best with V = 14-16.

Guide stars sometimes can be hard to find. The night assistant can enter the RA and DEC of a guide star and the probe will move to that position (if it is in range). In theory, the HST guide star catalogue is on-line at the telescope, and the night assistant can quickly find the coordinates of a suitable star. However, the catalogue used at CTIO is on rather flakey CD drives, so it doesn't hurt to come to the telescope with lists of potential guide stars for each object; for example, all of the 14-16 mag stars within a 40 arcmin field centered on your object.

Search HST Guide Star Catalogue [3]. This is the direct link to STScI...a bit slow from Chile.

 

Astronomer's Tools

Computing Exposure Times with the IRAF Task CCDTIME [4]

ISPI Exposure Time Calculator [5]: for ISPI infrared imager on Blanco 4-m telescope.

SMARTS Imager Exposure Calculator [6]: for 0.9-m CCD and 1.0-m Y4KCam

Object Visibility [7]: ING utility which plots altitude against time for a particular night (Staralt), plots the path of your objects across the sky for a particular night (Startrack), plots how altitude changes over a year (Starobs), or gets a table with the best observing date for each object (Starmult).

Worldwide Astronomical Resources [8]

CTIO Tape Drives

La Serena recinto tape drives

IP address

Hostname

Location

139.229.4.100  ctiokq.ctio.noao.edu 

Remote Observing Room 

Type

Model

System device

IRAF device

Media supported

DAT SDT-11000 /dev/st0
/dev/nst0
-- DDS3

 

Type

Model

System device

IRAF device

Media supported

DAT SDT-10000 /dev/st0
/dev/nst0
mtd DDS3
EXABYTE EXB-8505SMBANSH2 /dev/st1
/dev/nst1
mtx D8
DLT DLT7000 /dev/st2
/dev/nst2
mtd --

 

 

Cerro Tololo tape drives

IP address

Hostname

Location

139.229.13.132  ctioa8.ctio.noao.edu 

4m console 

Type

Model

System device

IRAF device

Media supported

DAT SDT-10000 /dev/st0
/dev/nst0
-- DDS4
DLT DLT8000 /dev/st1
/dev/nst1
-- --

 

Type

Model

System device

IRAF device

Media supported

DAT SDT-11000 /dev/st0
/dev/nst0
-- --
EXABYTE EXB-8505SMBANSH2 /dev/st1
/dev/nst1
-- --

 

 

IP address

Hostname

Location

139.229.12.3  ctio60.ctio.noao.edu 

4m computer room 

 

Type

Model

System device

IRAF device

Media supported

DAT SDT-10000 /dev/st0 -- --
 

 

Maintenance Procedures

  • Active optics [9]
  • CO2 snow cleaning [10]

For more information go the Optical Engineering pages [11]

TCS Commands

This document lists all the 4-M TCS commands that can be given through serial ports A, B and D, or via RPC connection. The commands are given as messages consisting of a command keyword and optional parameters. A message is terminated with a message delimiter, that could be a CR or LF character.

All commands returns a specific response as a numeric string, or a status of the requested operation. Normally this is the string "ok", meaning that the command was accepted and acted upon. If the operation is a motion that takes some time to complete, then the string "moving" is returned. To determine the end of the motion, you need to poll by sending again the same command but without arguments, until the string "ok" is received. An error condition is reported with a message consisting of the word 'error', followed by a number, then the character ':' and finally a short text describing the error. For example:  error 4: motion already active. Then, the possible responses to a command are:

  •  a numeric string starting with a digit or number sign (e.g. -23.5    02:34:15.9)
  •  the string "ok"
  • the string "moving"
  •  a string starting with the word "error"

The following notation is used to describe the commands syntax:

[ ]

Square brackets indicate an optional item; it is not mandatory to give that item in the command line.

ra

denotes right ascension. It is given in units of time, i.e. hours, minutes, seconds, with each number separated by colon (:). For example, 14 hours, 23 minutes, and 15.37 seconds is represented as 14:23:15.37.

dec

denotes declination. It is given in units of arc, i.e. degrees, minutes, seconds, with each number separated by colon (:). For example, 43 degrees, 57 minutes and 15 seconds south is represented as -43:57:15.

ha

denotes hour angle. It is given in units of time, i.e. hours, minutes, seconds, with each number separated by colon (:). Negative numbers mean east  while positive numbers mean west. For example, 2 hours, 15 minutes and 43 seconds east is represented as -02:15:43.

n, s, e, w

denotes the directions north, south, east, west respectively.

ra_offset:
dec_offset:

denotes right ascension and declination offset respectively. An offset is given in units of arc, i.e. degrees, minutes, seconds, with each item separated by colon (:). Alternatively, it is possible also to give a single number that is to be understood in units of seconds. An offset must also be preceded by one direction character (n, s, e, w). For example, an offset to the south of 2 minutes and 30 seconds could be given as  s 00:02:30  or  s 150.

ra_rate:
dec_rate:

rates are given in units of arc_seconds/second.

4map   command_string

With this command you send messages to the 4map PC. This PC controls  the primary mirror active support system. See the 4map manual for a description of the commands.

adc  [enable, disable, stop, calc, move]

This commands performs operations related to the Atmospheric Dispersion Corrector devices. There is one device at prime focus and another one at cass. The selection of the active one is implicit in the instrument selection: Hydra selects the cass unit. Pfccd and Mosaic selects the prime focus one. The devices are controlled by an SMC: the prime focus SMC is called "pf4m" and the cass SMC is called "cfadc". The command options are:

enable:

enables the corrector to adjust itself as the telescope moves.

disable:

disables the auto adjust option

stop:

stops the motion of the device.

calc:

calculates the position of the corrector elements. If no argument is given (i.e. adc calc) then use the present telescope hour angle and declination. Otherwise the next two arguments are taken to be the hour angle and declination (in decimal hours and degrees resp.) for the calculation. It returns a string with the calculated inner and outer positions, the zenith distance and azimuth. For example:
adc calc 2.5 -67.3
18 235 27.3 112.4

move:

moves the corrector elements to a certain angular position. If no argument is given then use the present telescope coordinates to calculate the element positions. Otherwise, the arguments are considered to be the inner and outer angle position of the corrector.

If no argument is given, the command returns a string with the inner and outer angle position of the elements. For example:

adc
27 moving

apoff ra1 dec1 ra2 dec2

Calculates apparent offsets between two mean positions. Returns ra and dec offsets in arcseconds.

base

Sets the present telescope position as base position. The base position is the reference to calculate tracking and pointing corrections. This command is executed automatically at the end of every slew.

bsw [a, b]

Performs a beamswitch offset. If the parameter is "a", then the motion is in the declared direction, as given with the command bsw_set. If the parameter is "b", then the motion is in the reverse direction. If no parameter is given, then the command returns the status of the motion. For example:

bsw a
moving
bsw
moving
.
.
.
bsw
ok

bsw_set  [ra_offset, dec_offset]

This command declares the magnitude and direction of a beamswitch offset. If no parameter is given, then returns the present values. For example:

bsw_set n 35
ok
bsw_set
N 35

clamp   n [on, off]

This command handles the comparison lamps. "n" must be 1 or 2.  For example:

clamp 1 on
ok
clamp 1
on

coords

Returns telescope information in the following order: mean ra, mean dec, hour angle, dome position, sidereal time and universal time. For example:

coords
12:27:33.4  -30:10:50  00:12:28.3  214.3  14:23:37.3  05:46:02.1

date  [date string  mm/dd/yyyy]

Sets or gets the present date. The year could be given as a 4 or 2 digits number. For example:

date  04/25/1999
ok
date
04/25/1999

dome  [enable, disable, pause, move]

This command performs operations related to the dome.

enable

enables dome to follow the telescope

disable

disable dome motions

pause n

Pause dome motion for "n" seconds

move n

Move the dome to certain angle position given by "n". If the dome is disabled, it gets enabled just for this motion. At the end of the motion the dome is always disabled. For example:

dome move 270
moving

enco

returns a string consisting of raw ha and dec derived from PMAC encoder counters and the telescope absolute encoders. For example:

enco
INC  01:23:34.5  -30:10:50       ABS  01:23:30.1  -30:10:20

epoch   [epoch_number]

Sets the epoch for coordinates display. For example:

epoch 2000.0
ok

f8sec  [tilt, absolute, absnot, atilt, afocus, focus, display, fast, slow, SMC_string]

Command to perform operations with the f8 secondary mirror. The mirror is controlled by an SMC whose name is "f8sec". It is possible to pass commands directly to the SMC, but some operations require preprocessing at the TCS level.

tilt  [tilt_distance  azimuth]

Performs a relative tilt motion of "tilt_distance" and "azimuth". The telescope performs an offset to compensate for the mirror motion. If no arguments are given then returns the 3 encoder values or the state of the motion. For example:

f8sec tilt  0.0145  87.3
moving

absolute  tilt_distance  azimuth

Performs an absolute tilt motion of "tilt_distance" and "azimuth". The telescope performs an offset to compensate for the mirror motion. You must always give arguments with this command. To check for motion completion use f8sec tilt. For example:

f8sec absolute  0.304  117.8
moving

absnot  tilt_distance  azimuth

This is the same as absolute but the telescope doesn't  move.

atilt  encoder1 encoder2 encoder3

Move the mirror to the given encoder positions. The telescope doesn't move. For example:

f8sec atilt  12345  11917  12743
moving

afocus  [focus_value]

Move the mirror to an absolute focus value. If no parameter is given then returns the present focus value or the state of the motion. For example:

f8sec  afocus 326800
moving
f8sec afocus
326800

focus  [focus_value]

Move the mirror "focus_value" units relative to the present position. If no parameter is given then returns the present focus value or the state of the motion. For example:

f8sec focus -5000
moving
f8sec focus
321800

display

Returns the present tilt and azimuth values. For example:

f8sec display
0.304  117.8

fast   [fast_speed]

Sets the fast focus speed. The default value is 50. For example:

f8sec fast 45
ok
f8sec fast
45

slow  [slow_speed]

Sets the slow focus speed. The default value is 25. For example:

f8sec slow 20
ok
f8sec slow
20

SMC_string

The string should not start with any of the keywords mentioned before. The string is passed directly to the SMC.

f14sec  [tilt, absolute, absnot, atilt, afocus, focus, display, fast, slow, SMC_string]
f14sec  [adj, go]

This command is similar to f8sec, but acts on the f14 secondary system. Two new parameters are added:

adj n

Enables (n = 1) or disables (n = 0)  the coma correction adjustment. This correction is performed at the end of a slew motion.

go

Performs the coma correction at this position.

G  ra_error  dec_error

This is the command to send guider information to the TCS. The command was imposed to us when we installed the Shectman guider. This command can only be given through serial port A. The guider errors are given as 2 digit integer numbers in units of hundreds of arcseconds, with numbers greater than 50 being negative numbers. The digits are contiguous. For example:

G1764  means 0.17" error in ra and -0.36" error in dec

gg  ra_error  dec_error

This command is used to send guider error information from the Hydra guider. The numbers are scaled by the factors introduced with the commands ggha, ggdec and ggrot (see below). The numbers are decimal numbers. For example:

gg   4.3  -1.27

ggdec  [dec_factor]

This command is used to enter a scale factor to multiply the dec guider error given with the command gg, to convert it to arcseconds. The default value is -0.05.

ggha  [ha_factor]

This command is used to enter a scale factor to multiply the ra guider error given with the command gg, to convert it to arcseconds. The default value is 0.05.

ggrot  [angle]

This command is used to enter a rotation angle, that is applied to the ra and dec guider errors given with the command gg. The default value is 0.

go_flag  n

This command enables (1) or disables (0) the TCS. This command is given automatically when the TCP user interface starts.

grot

This command returns the angle position of the instrument rotator.

guider  [enable, disable, move, stop, type, x, y, park, optical, xrate, yrate]

This command operates on the guider devices. If no parameter is given then returns the present x, y positions or the status of the motion.

enable

Enables tracking of the telescope motion. In order for this to be active, both the follow and guider switches must be on.

disable

Disables following the telescope.

move  mean_ra  mean_dec  epoch

Moves the guider probe to the given coordinates. A check is done for out of limits condition. For example:

guider move 05:27:43.3  -65:37:56  2000.0
moving

stop

Stops the guider motion. The enable condition is preserved.

type  n

Defines the type of guider to utilize. At present times the following devices are defined:

1 ---> Shectman guider
2 ---> Leaky guider
3 ---> Fast Tip-tilt guider
4 ---> Hydra guider

x  pulses

Moves the device in the x direction a certain number of pulses

y pulses

Moves the device in the y direction a certain number of pulses

park

Park the device.

optical

Moves the device to the optical axis

xrate  [rate  ramp]

Enters a new maximum rate and ramp for the device x motor. It only applies to the main Cass guider. The default values are 700 and 1000.

yrate  [rate  ramp]

Enters a new maximum rate and ramp for the device y motor. It only applies to the main Cass guider. The default values are 700 and 900.

iman  [cals, pc, star, mstar, cal, small, large, stop, camera, flat, pell, ap]

Commands for the iman system. If no argument given returns the present position bits or the state of the motion, if any. Also by sending the command twice without parameters, clears any internal state of timeout or initialization, if present.

cals

Starts a calibration sequence. The state of the camera is checked and the sequence is granted if it is on.

pc   string

Send string to iman pc and returns response from the device.

star

Starts a star sequence. The state of the camera is checked and the sequence is granted if it is on.

mstar

Performs a more star sequence. The state of the camera is checked and the sequence is granted if it is on.

cal

Moves the aperture wheel to the led or cal position.  The bit pattern sent is as follows:

PELLICLE_IN | FLAT_OUT | AP_LED | CAMERA_ON    or
PELLICLE_OUT | FLAT_OUT | AP_LED | CAMERA_ON

small

Moves the aperture wheel to the small position. The bit pattern sent is as follows:

PELLICLE_IN | FLAT_OUT | AP_SMALL | CAMERA_ON    or
PELLICLE_OUT | FLAT_OUT | AP_SMALL | CAMERA_ON

large

Moves the aperture wheel to the large position. The bit pattern sent is as follows:

PELLICLE_IN | FLAT_OUT | AP_LARGE | CAMERA_ON    or
PELLICLE_OUT | FLAT_OUT | AP_LARGE | CAMERA_ON

stop

Moves the devices to the stop or observe position. The bit pattern sent is as follows:

PELLICLE_OUT | FLAT_IN | AP_SMALL | CAMERA_OFF

camera  [on, off]

Turns the camera on or off. If no argument given, returns the present state.

flat  [in, out]

Moves the flat mirror in or out.

pell   [in, out]

Moves the pellicle in or out. The state of this selection is remembered and the bit pattern is sent according to it.

ap  [led, small, large]

Moves the aperture wheel to the led, small or large position.

index  [ra_zero, dec_zero]

Adjust the zero point of the encoders. If no argument given, the zero points are adjusted to coincide with the last slew coordinates. Otherwise, the ra_zero and dec_zero values are added to the present zero point values.

info

Returns long telescope info. The order is as follows:

date
universal time
mean ra
mean dec
epoch
hour angle
sidereal time
dome azimuth
airmass
zenith distance

For example:

info
04/23/1999  17:34:23.1  05:34:02.1  -34:43:56  2000.0 -00:30:16.1  05:04:01.1 260.0 1.015 12.5

instrument  [n]

Selects instrument configuration. The selection of the instrument also sets the foci and default guider. The present assignments are:

1 ---> F/8 spectrograph
2 ---> Irs
3 ---> Echelle
4 ---> Pfccd
5 ---> Mosaic
6 ---> Cob
7 ---> IR-F30
8 ---> Hydra

local  string

This command sends a string to serial port C where all SMC devices are connected.

mark   n  [ra_offset]  [dec_offset]

Place the current telescope position values into the mark table as item #n. There are presently 100 slots in that table. If n < 0 then return the position values as ra and dec for that entry. Optionally add the ra and dec offsets if given.

mir  [n]
mirror  [n]

Moves the rotator mirror to position n (1 to 4). If no argument given, then returns the present position or state of the motion.

move  [n]  [ra_offset]  [dec_offset]

Move the telescope to the position stored in the mark table entry #n. Optionally add the ra and dec offsets if given. If no argument is given then return the status of the operation.

muxinit

Initializes the "rot4m" SMC.

offset  [ra_offset]  [dec_offset]  [stop]

Move the telescope relative to the current position, the specified angular amounts. This is corrected by the cosine of the declination. If no arguments are given then return the status of the motion. Use the stop argument to stop the motion. For example:

offset  e 23.3  n 47.1
moving
offset
moving

pedi  [angle]

Moves the inner ADC element to the given angle.

pedo  [angle]

Moves the outer ADC element to the given angle.

planet  [ra_rate, dec_rate]

Enters telescope rates to be added to the normal tracking rate. To restore conditions, enter the command with zero rates (i.e. planet 0 0).

pointing

Returns pointing data information. The fields are:

slew ra
slew dec
raw ra
raw dec
sidereal time

raw

Returns raw and apparent coordinates. The fields are:

raw ra
raw dec
apparent ra
apparent dec

rot  [angle]

Moves the instrument rotator to the given angle.

rot4m  string

Sends "string" to the rot4m SMC.

s  [time]

This command is used to initiate or terminate the recording of tracking and guiding information. The command acts as a toggle. The optional recording time is given in units of minutes. By default the time is 10 minutes. On the TCP status display, a field flashes whenever the recording is active.

sec  [mirror n]

This is the generic command for the secondary mirror control system, being F/8 or F/14. The TCS sends the command to the appropriate SMC depending on which mirror is selected. All the parameters for the F/8 or F/14 system, could be sended with this command.

mirror n

Selects the mirror.
1 ---> F/8
2 ---> F/14

set  variable_name  [value]

This command is used to set or display  certain internal TCS variables. By giving the name of the variable, its present value gets displayed. By giving the variable name and a value, the variable gets updated with the new value.

zha : zero point hour angle in 0.1 arcseconds
zdec : zero point declination in 0.1 arcseconds
track_rate : track_rate in arcseconds/seconds
fkh : encoder pulses to arcseconds conversion factor for hour angle
fkd : encoder pulses to arcseconds conversion factor for declination
zx : guider x zero point in encoder counts
zy : guider y zero point in encoder counts
hset : set rate for hour angle in arcseconds/seconds
dset: : set rate for declination in arcseconds/seconds
hguide : guide rate for hour angle in arcseconds/seconds
dguide : guide rate for declination in arcseconds/seconds
hstep : step distance for hour angle in arcseconds
dstep : step distance for declination in arcseconds
rate_hoff : offset rate for hour angle in arcseconds/seconds
rate_doff : offset rate for declination in arcseconds/seconds
cstbl : stabilization time after offset, in 0.1 seconds
ih : index   ha pointing coefficient
id : indec dec pointing coefficient
ch : collimation pointing coefficient
np : non-perpendicularity pointing coefficient
ph11 : polinomial pointing coefficient
d4hc : declination flexure pointing coefficient
d2ds : declination gears pointing coefficient
me : polar axis elevation pointing coefficient
ma : polar axis azimuth pointing coefficient
hf : horseshoe flexure pointing coefficient
flx : tube flexure pointing coefficient
scale : telescope scale in arseconds/mm
config : telescope configuration (1 = CASS  2 = PRIME)
dome : dome flag (1 = enable  0 = disable)
guider_follow : enable (1) or disable (0) guider follow option
handpaddle : select handpaddle normal (0) or x-y (1)
cosdec : enable (1) or disable (0) the cosdec option
set : returns a string with the following information

track rate
set hour angle rate
set declination rate
guide hour angle rate
guide declination rate
offset hour angle rate
offset declination rate
step hour angle distance
step declination distance
telescope scale
go flag state
guider follow flag
handpaddle flag
track switch state
telescope configuration
dome flag
instrument
telescope focus
rotator angle

slew  [stop, white_spot, zenith, app, previous, next, coordinates]
 

Slew the telescope. The motion is activated by pressing the enable switch in the control box. If no argument is given, returns ths status of the motion.

stop

aborts the slew operation. The dome is left disabled.

white_spot  'c'

Slew to the white spot position as selected by the character 'c' : n for north or s for south.

zenith

Slew to the zenith. The dome stays at the present position and it's left disabled.

app  hour_angle   declination

Slew to an apparent place given by the hour angle and declination coordinates.

previous

Slew to the previous position stored in the coordinates stack.

next

Slew to the next position stored in the coordinates stack.

ra  dec  [epoch, pm_ra, pm_dec]

Slew to a mean position given by the coordinates. The order is right ascension, declination, epoch, proper motion ra, proper motion dec. The last three fields are optional. For example:

slew  12:27:43.2  -43:03:16  2000.0

stack  [reset, top, bottom, pointer, set, list]

This command is used to manipulate the coordinates stack. After every slew, the coordinates are store in a stack. It's possible to add more coordinates if desired. The limit is 500 coordinates. If no argument is given, returns the present stack size.

reset

Resets the stack pointer. In other words, clears the stack.

top

Moves the stack pointer to the the top position.

bottom

Moves the stack pointer to the bottom position

pointer  #n

Moves the stack poiter to the #n position.

set  ra dec epoch

Push a new coordinates set.

list  [next]

To get the coordinates stored in the stack a sequence of commands is necessary. Start by sending the command "stack list". After receiving the first coordinates keep sending the command "stack list next" until the string "end" is received.

telfocus  [focus]

Gets or sets the telescope focus. This command acts on the selected focus (F/8 or F/14). If no argument given, returns the present focus value or the status of the motion.

time  [hh:mm:ss]

Gets or sets the time.

tt   command string

Send command string to the tip-tilt control PC.

xy  [zm, zr, zx, zy, rx, ry, string]

Commands to interact with the tip-tilt camera x-y table.

zm

Sets the present position as the middle position

zr

Sets the present position as the roi position

zx

Returns the middle x position

zy

Returns the middle y position

rx
 

Returns the roi x position

ry

Returns the roi y possition

string

Any other string string is passed to the x-y SMC  ("f14fgc").

TCS Router

CTIO TCS ROUTER (Rev. 1.0)
 

1. TCS Router Concept

The following explains the idea behind the TCS Router software. On one hand you have the TCS router and on the other hand applications (Mosaic, Arcon, Hydra, etc.) wanting to send commands to the TCS. All of them are connected to the GWC router. When applications want to send a request to the TCS (i.e current focus, time, coordinates, etc.) they publish the request in a variable subscribed by the TCS router. The TCS router see the variable change and send its contents to the TCS. The result returned by the TCS to the TCS router  is then published in another variable subscribed by the originators. To avoid race conditions every originator has to use a different variable.

The idea of this architecture to pass requests to TCS is a consequence of the lack of support for GWC libraries under the VxWorks environment in which the TCS program was written. Under those circumstances the TCS router was born as an auxiliary program to route TCS requests arriving through the GWC router. Soon it became obvious that the TCS router program could hold another macro style functionalities like controlling the Hydra comparison lamp system.

2. TCS Router Software Code

The TCS router software leaves in /ut22/newgui/tcsrouter. The structure of the directory tree is as follows:

  • tcsrouter

    • bin
    • doc
    • lib

      • bitmaps
      • tcsrgui
    • share

      • include
      • lib
      • tcl7.6
      • tk4.2
    • src

      • demos
      • tcswish

The TCS router software consists of an extended TCL/TK interpreter plus a set of TCL/TK scripts that build the functionality required by the application. The extended TCL/TK interpreter leaves at sub directory "src". Support is provided for compiling the interpreter under Linux, SunOs and Solaris. The TCL/TK scripts leave at sub directory lib/tcsrgui.

A bare bones implementation of the TCS router under a TCL/TK environment would be as following:

TCS Router Part
---------------------------------------------
proc tcs_command_callback {var command type value} {
  # Here goes the code to send the command to TCS
}

connect ctio_4m tcsrouter
ctio_4m newwvar tcs.main.etalon etalon string
set etalon(value) off
ctio_4m put tcs.main
ctio_4m comevent "tcs.main.command" tcs_command_callback
---------------------------------------------

The Hydra Part
---------------------------------------------
proc etalon_callback {var action type value} {
  # Here goes the code to handle the status of the etalon variable
}

connect ctio_4m hydra
ctio_4m atevent "tcs.main.etalon" etalon_callback
ctio_4m newcvar tcs.main.command tcsCommand set string
set tcsCommand(action) set
---------------------------------------------

Both scripts will run eventually in different machines. The code for the TCS router opens a connection to the router, create a variable to publish the result of an operation (etalon) and binds a callback function to command stream. The code for Hydra on the other hand, opens a connection to the router, bind a callback function to the etalon variable and creates a new variable associated to the command stream.

3. Starting The Program

The TCS router starts along with the TCP interface on ctiot2. Starting a TCP session runs a script called "start_tcsrouter" that actually launches the program. This start up shell script will search the home directory for file .tcsrrc to set the environment before running. If not found it will look for the default version of that file at /usr/local/tcsrouter/bin. Following is the file that actually leaves at /ut20/tcp4m.

---------------------------------------------------------------
#
#
#               .tcsrrc
#
#       Environment variables for the TCS Router program
#
#*********   Check these out and set them as you wish   ************

# Environment variable for the TCS_ROUTER home directory
setenv TCS_ROUTER_HOME /ut22/newgui/tcsrouter

# Home directory of the TCL/TK library
setenv TCL_LIBRARY $TCS_ROUTER_HOME/share/lib/tcl7.6
setenv TK_LIBRARY  $TCS_ROUTER_HOME/share/lib/tk4.2

# The MPG_ROUTER variable designates the name of the host in which
# the router run. When not defined the the mpg router is supposed
# to be running in indus.tuc.noao.edu.
setenv  MPG_ROUTER ctioa1

# The variable MPG_ROUTER_PORT designates the port in which the mpg
# router is listening for incoming connections. The default value
# for this variable is 1 plus the the wiyn router port (2345).
setenv  MPG_ROUTER_PORT 2347

# Hostname for the RPC server (TCS).
setenv TCP_NAME ctiox0

# This tell the program where to find the binaries and configurations file.
setenv TCS_ROUTER_BIN $TCS_ROUTER_HOME/bin

# Make sure that guidebin is in the search path
set path = ( $TCS_ROUTER_BIN $path )

# Make sure we have the right man path
if ($?MANPATH) then
  setenv MANPATH {$MANPATH}:$TCS_ROUTER_HOME/man
else
  setenv MANPATH {/usr/man}:$TCS_ROUTER_HOME/man
endif

# Uncomment this line if running in SunOs environment
setenv LD_LIBRARY_PATH /usr/lib:/usr/local/X11R5/lib:/usr/openwin/lib
---------------------------------------------------------------

4. Graphic Interface

The graphic user interface of the TCS router program allows the user to check for resent requests to the TCS and their result as well as for the current status of the communication link to the TCS and to the GWC router.

The GUI  also provides a means for sending commands to the TCS in a similar fashion as the TCP command mode does.

When the application starts it opens one connection to the TCS and one connection to the GWC router. Then subscribe to some GWC variables of interest and publish others of its own. Incoming request are logged into the logging panel along with a time stamp and a correlative number. Messages to the TCS are prefixed with the words "to TCS'. When an exception occurs the error message is put in the log with the word "ERROR" preceding the message.

4.1 Menu Bar

The menu bar has three menus: Options, Windows and Help.

4.1.1 Options Menu

Use the options menu to activate/deactivate the alarm bell and to quit the application. When selected the alarm bell flag activate an audible tone to signal that the communication link to either the TCS or the GWC router is broken.

4.1.2 Windows Menu

Use the windows menu to pop up a console window to send commands to the TCS. Right now the console supports only two commands: "complamp" and "local".

complamp [lamp] - turn the comparison lamps system on or off. Valid options for this command are "off", "tha", "etalon", "qua", "hene" and "pen".

local [command] - send string command to serial port C of the TCS, where all SMC devices are connected.

4.2 Logging Panel

The logging area shows all the incoming requests to the TCS and the exceptions that have occurred during the session. All messages are prefixed with a time stamp and a correlative number. Use the scroll bar to move across the log messages.

4.3 Status Bar

The status bar presents the current status of the communication link to the GWC router and to the TCS. When either link is broken the correspondent label will go red and will start  blinking signaling that the communication has been lost. After that the program will start a reconnection sequence trying to connect every ten seconds to either the GWC router or to the TCS.

5. GWC Variables

To send command requests to the TCS router the program subscribes to some command variables and publish an associated variable to respond to each of those command variable.
The TCS router subscribes to the following GWC variables:

tcs.main.command - non specific owner command variable to send TCS requests
tcs.main.Hcommand - hydra command variable to send TCS requests
tcs.main.Icommand - icsInfo command variable to send TCS requests
tcs.main.clamp - command variable to move the comparison lamp system

To publish the results of the requests on the first three command variables, the TCS router creates the following write variables:

tcs.main.response - results to TCS request through tcs.main.command
tcs.main.Hresponse - results to TCS requests through tcs.main.Hcommand
tcs.main.Iresponse - results to TCS requests through tcs.main.Icommand

The tcs.main.clamp variable is used in a more GWC way and no variable is required to publish the request results. Instead a set of write variables are created to publish the status of the various parts of the comparison lamps system. The variables created are:

tcs.caliblamps.flat - flat mirror status
tcs.caliblamps.sphe - spherical mirror status
tcs.caliblamps.plamps - diffuse lamps mirror status
tcs.caliblamps.lamps - lamp selector mirror status
tcs.caliblamps.etalon - Etalon lamp status
tcs.caliblamps.tha - Tha lamp status
tcs.caliblamps.qua - Quartz lamp status
tcs.caliblamps.hene - He-Ne-Ar lamp status
tcs.caliblamps.pen - Pen rays lamp status

6. Trouble Shooting

"ERROR: tcs router can't connect to GWC ROUTER..." - Check that the GWC router is actually running on its host machine. If its running check that the machine in which the TCS router is running is an enabled machine. Check the /usr/local/gwc/config/routersetup.tcl file for your machine name. If not present add the name using the rest of the file as a template. Check also that the environment variables MPG_ROUTER and MPG_ROUTER_PORT are set to the proper values in the tcsrrc file.

"WARNING: tcs router not connected to GWC ROUTER..." - This warning message appears to warn the user he chose not to connect to the GWC router. Consequences are that no header information will be available when image acquisition with the Arcon system.

"WARNING: system busy" - This warning message tell the user that a request for moving the comparison lamp system has arrived while executing a previous request. The warning shows at the logging panel.

"ERROR: timeout while waiting SMC response" - This message tell the user that no response was received while waiting for the SMC box to finish some operation. The timeout has been preset to 120 seconds.

"ERROR: "local...   failed (...)" - This error message appears when the response to an SMC command is an error message of the form "err(...) (box.motor) ......". The message in parenthesis is the actual response from the SMC box.

"ERROR: timeout while waiting TCS response" - This message tell the user that no response was received while waiting for the TCS to finish some operation. The timeout has been preset to 120 seconds.

"WARNING: tcs router not connected to TCS..." - This warning message appears to warn the user he chose not to connect to the TCS. Consequences are that no header information will be available when image acquisition with the Arcon system.

 

Last Updated:   April 25, 2000
rcantaruttiATnoao.edu

old_staff_responsibilities

A page to gather pages of staff reponsibilities that were copied in one page http://www.ctio.noao.edu/noao/content/CTIO-Staff-Responsibilities [12]

Scientific Staff Telescopes & Instruments Responsibilities

29 July 2020  (SDP)

TELESCOPES    
  Blanco 4-m Telescope: [13] Tim Abbott tabbottATctio.noao.edu [14]
  SOAR 4-m Telescope: [15] César Briceño cbricenoATctio.noao.edu [16]
  SMARTS Consortium [17] Todd Henry thenryATchara.gsu.edu [18]
       
SOAR 4-M INSTRUMENTS    
  Goodman Optical Spectrograph: [19] Sean Points spointsATctio.noao.edu [20]
  SOAR Optical Imager (SOI): [21] Sean Points spointsATctio.noao.edu [20]
  SOAR Adaptive Optics Module (SAM): [22] César Briceño cbricenoATctio.noao.edu [16]
  Spartan IR imager: [23] Jay Elias jeliasATnoao.edu [24]
  TripleSpec 4.1: [25] Sean Points spointsATctio.noao.edu [20]
       
BLANCO 4-M INSTRUMENTS    
  COSMOS: [26] Sean Points spointsATctio.noao.edu [20]
  Dark Energy Camera (DECam): [27] Alistair Walker awalkerATctio.noao.edu [28]
       

Subsystem Experts Responsibilities

Subsystem Experts

  TCS Rolando Cantarutti
  CCDTV Cameras Peter Moore
  CCDs Peter Moore
  CCD software Marco Bonati

 

Telescope Mechanics & Electronic Responsibilities

Electronics and mechanics staff at Cerro Tololo, Blanco Telescope.

  Electronics: David Rojas
    Javier Rojas
    Humberto Orrego
     
  Mechanics: Jorge Briones
    Alvaro Soto
    Yuse Jure

Observer Support Resposibilities

CTIO Technical Support for observations:

Telops Manager Esteban Parkes
Observer Support Hernan Tirado
Manuel Hernández
Floater Assistant Observer Rodrigo Hernández
Jacqueline Serón
Nigh Assistant Claudio Aguilera
Alberto Alvarez

 


Source URL (modified on 07/15/2020 - 17:32): http://www.ctio.noao.edu/noao/content/Deprecated-pages

Links
[1] http://www.ctio.noao.edu/noao/sites/default/files/telescopes/guider.gif
[2] http://obs.carnegiescience.edu/
[3] http://archive.eso.org/gsc/gsc
[4] http://www.noao.edu/gateway/ccdtime/
[5] http://www.ctio.noao.edu/instruments/ir_instruments/image_cal.html
[6] http://www1.ctio.noao.edu/noao/content/smarts-imager-exposure-calculator
[7] http://catserver.ing.iac.es/staralt/index.php
[8] http://www.ctio.noao.edu/misc/astro-links-new.html
[9] http://www.ctio.noao.edu/noao/content/active-optics-system
[10] http://www.ctio.noao.edu/noao/content/CO2-snow-cleaning-procedure
[11] http://www.ctio.noao.edu/noao/content/Optical-Engineering
[12] http://www.ctio.noao.edu/noao/content/CTIO-Staff-Responsibilities
[13] http://www.ctio.noao.edu/noao/content/victor-blanco-4-m-telescope
[14] mailto:tabbott@ctio.noao.edu
[15] http://www.ctio.noao.edu/soar/
[16] mailto:cbriceno@ctio.noao.edu
[17] http://www.ctio.noao.edu/noao/content/smarts-consortium
[18] mailto:thenry@chara.gsu.edu
[19] http://www.ctio.noao.edu/soar/content/goodman-high-throughput-spectrograph
[20] mailto:spoints@ctio.noao.edu
[21] http://www.ctio.noao.edu/soar/content/soar-optical-imager-soi
[22] http://www.ctio.noao.edu/soar/content/soar-adaptive-optics-module-sam
[23] http://www.ctio.noao.edu/soar/content/spartan-near-ir-camera
[24] mailto:jelias@noao.edu
[25] http://www.ctio.noao.edu/soar/content/triplespec41-nir-imaging-spectrograph
[26] http://www.ctio.noao.edu/noao/content/COSMOS
[27] http://www.ctio.noao.edu/noao/content/dark-energy-camera-decam
[28] mailto:awalker@ctio.noao.edu