Drama Actions in TCS D-TASK

Summary:

Action         Source module         Arguments
ADD            tcsAdd.c              [name]
AGSP           tcsAgsp.c
ARCHIVE        tcsArchive.c          BEGIN|END
APERTURE       tcsAperture.c         0-6
AUTOGUIDE      tcsAuto.c             ON|OFF|RESUME|SUSPEND|STAR|CENTRE x y
BEGMSG         tcsBEGMSG.c           1-53
DOME           tcsDome.c             degrees
GOCAT          tcsGocat.c            name
GOTO           tcsGoto.c             name h m s.s d m s.s Byyyy.y|Jyyyy.y|A
FOCUS          tcsFocus.c            mm
FOCOFF         tcsFocus.c            +/- mm
NEXT           tcsNext.c
OFFSET         tcsOffset.c           deltaRA deltaDec / radian
PFCU           tcsPfcu.c
POINT          tcsPoint.c            BEGIN|END|name
TCSPOLL        tcsPoll.c
ROTATOR        tcsRotator.c          FLOAT|MOUNT|SKY|VERTICAL|VFLOAT angle
SED            tcsSe.c               name value
SEND           tcsSend.c             string
SOURCE         tcsSource.c           tcsTarget_t
Plus the default GIT actions.

Index:

tcsAdd tcsAgsp tcsArchive tcsAperture tcsAuto tcsBEGMSG tcsDome tcsGocat tcsGoto tcsFocus tcsNext tcsOffset tcsPfcu tcsPoint tcsPoll tcsRotator tcsSe tcsSend tcsSource

tcsAdd

COMPONENT:
 tcsAdd.c v%I%; copyright (c) RGO.

TYPE:
 C source-code: DRAMA ACTION in tcs.

PURPOSE:
  Add new entry to TCS catalogue.  For Perkin-Elmer TCS, this software
  spoofs the whole thing and keeps the catalogue locally.

FUNCTION:
 Either add a source previously entered into the edit-block (also local)
 or mark the current telescope position as a new source.

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
 Argument1 is potentially the name given to the current position.

RESOURCES:

REFERENCES:

PROCESSING:
 If Argument1 exists:
	Add name to catalogue using current telescope postion
 Else
	Add contents of edit block to tcs catalogue
 But
  	if name already exists, return error.

DATA:

HISTORY:
  1996 Nov 25 PSB: Add SdsFreeId.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsAgsp

COMPONENT:
 tcsAgsp.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
 Action AGSP: to respond to unsolicited demands from the TCS to the ICS AGSP
 task.

FUNCTION:
 The main tcs DRAMA task has an alternative input connected to the RS232
 IPL link to the TCS Perkin Elmer.  The TCS will occasionally make requests
 of the ICS, eg for probe coordinates.  This action is permanently active
 to service those requests.
   An activation of this routine asserts that the TCS is operating at
 Cassegrain focus.

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
 DitsSignal comes from iplRead with the IPL packet in Argument1

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
 1996 Oct ` 8 PSB: add reading and parameters for GDOF_X, GDOF_Y for
                  old-autoguider support.
		  Split processing of unsolicited requests into tcsUnsolicited()
 1996 Oct 22 PSB: Fix it to accept un-solicited ROTATOR input, on using realINT

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsArchive

COMPONENT:
 tcsArchive.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:  callback routine to srvArchive system.

PURPOSE:
	To write out TCS FITS packet from DRAMA D-task

FUNCTION:
  If context.operation is B
     begin archiving;  start effective airmass calculation, store beginning
     tracking structure.
  If context.operation is E
     end archiving;  compute effective airmass, compute mean tracking
     structure values,  and write the actual packet to context.PacketPtr.

  A typical packet produced by tcsArchive might be:
LATITUDE=            28.762000 / Telescope latitude  (degrees), +28:45:43.2
LONGITUD=            17.877639 / Telescope longitude (degrees), +17:52:39.5
SLATEL  = 'LPO2.5  '           / Telescope name known to SLALIB
TELESCOP= 'INT     '           / 2.5m Isaac Newton Telescope
RA      = '  4:42:14.760'      / Right Ascension (HH:MM:SS.SSS)
CRVAL1  =  70.5614999916360262 / '  4:42:14.760'
DEC     = '+22:57:24.94'       / Declination (DD:MM:SS.SS)
CRVAL2  =  22.9569291606247461 / '+22:57:24.94'
EQUINOX = 'J2000.00'           / Equinox of coordinates
RADECSYS= 'FK5     '           / mean place new (after the 1976 IAU) system
MJD-OBS =        50287.4079398 / Modified Julian Date of midtime of observation
JD      =      2450287.9079398 / Julian Date of midtime of observation
STSTART = '  4:41:31.0'        / Local sidereal time at start of observation
ST      = '  4:41:31.0'        / Local sidereal time at start of observation
AZIMUTH =           178.455777 / Mean azimuth of observation (degrees)
ZD      =             5.815292 / Mean zenith-distance of observation (degrees)
FSTATION= 'PRIME   '           / Focal station of observation
TELFOCUS=             0.048495 / Telescope focus (metres)
ROTTRACK=                    T / Rotator always tracks sky on equatorial mount
ROTSKYPA=             0.000000 / Turntable position angle (degrees)
PARANGLE=            -1.470127 / Parallactic angle at observation midpoint
VIGNETTE=                    F / This is an assumption
DOMEAZ  =           181.007068 / Mean dome azimuth during observation
AIRMASS =             1.005163 / Effective mean airmass
TEMPTUBE=           -52.400000 / Truss Temperature (degrees Celsius)
CAT-NAME= 'S05+22  '           / Target input-catalogue name
CAT-RA  = '  4:42:14.703'      / Target Right Ascension
CAT-DEC = '+22:57:24.89'       / Target Declination
CAT-EQUI= 'J2000.00'           / Equinox of target coordinates
CAT-EPOC=              2000.00 / Target epoch of proper motions
PM-RA   =            -0.000130 / Target proper-motion RA (sec time/year)
PM-DEC  =            -0.016300 / Target proper-motion (sec arc/year)
PARALLAX=             0.008000 / Target Parallax (arcsec)
RADVEL  =            15.000000 / Target radial velocity (km/s)
RATRACK =             0.000000 / Differential-tracking rate RA (arcsec/sec)
DECTRACK=             0.000000 / Differential-tracking rate Dec (arcsec/sec)

SUBORDINATES:
	Slalib

DEPENDENCIES:
	Invoked as a callback via srvArchiveInit.

INTERFACES:
 Call from C:
 int tcsArchive(srvArchS_t * context, StatusType * status)
	
	Some values obtained from D-task Drama parameters, some from extern.

 To invoke DRAMA action :   cmd TCS ARCHIVE tcs 99 &   // start of archive
                            cmd -k TCS ARCHIVE         // end archive
 The start should be practically instantaneous with shutter open, and
 the end instantaneous with shutter close.

RESOURCES:
	Since many FITS values are derived from compound information, all
	cards are written out in plain C, to make the derivation easy to read.

REFERENCES:
 References:
 NASA/Science Office of Standards and Technology:
   "Definition of the Flexible Image Transport System (FITS)"
       June 18, 1993  Standard NOST 100-1.0
   "A User's Guide for the Flexible Image Transport System (FITS)"
       version 3.1 May 2, 1994.

 Representations of celestial coordinates in FITS
    Eric W. Greisen and Mark Calabretta    Astronomy and Astrophysics 1995

 INT-DAS-2: FITS Headers for INT Observations,  Rixon, Irwin, Bunclark & Lewis.

HISTORY:
  1996 Oct 7 PSB: Fix some `=' misalignments.
  1996 Oct 9 PSB: v2.2 of srvArchive.c - protocol mods.
  1996 Oct 25 PSB: improve documentation.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsAperture

COMPONENT:
 prolog.c v1.1; copyright (c) RGO.

TYPE:
 DRAMA action code.

PURPOSE:
 To switch observing apertures:

FUNCTION:
 Send appropriate IPL commands to switch to aperture nominal, A and B:

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
 APERTURE n
 aperture [n]     (default n = 0)
        n             WFC Prime        Cass          TCS mapping
        0 (Nominal)     Array centre   slit             Nominal
        1               Chip 1                          A
        2               Chip 2                          A
        3               Chip 3                          A
        4               Chip 4                          A
        5               Autoguider     Probe Park       B
        6               Finder         Finder           Nominal

RESOURCES:

REFERENCES:

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsAuto

COMPONENT:
 tcsAuto.c v%I%; copyright (c) RGO.

TYPE:
 C source-code: DRAMA ACTION procedure.

PURPOSE:
 tcsAuto turn autoguiding on or off, allows guiding to pull in to given
 (x,y) or to accept first guiding coordinates recieved from autoguider
 as guiding origin.

FUNCTION:
  Argument1 can be "ON", "OFF", "RESUME", "SUSPEND", "STAR", "CENTRE" for
  compatibility with WHT, but only ON and OFF do anything.  Arguments 2 & 3
  must be double pixel positions.
  GUIDE ON -1.0 -1.0   results in TCS taking first incoming autoguider packet
                       as the (x,y) guiding origin
  GUIDE ON 500.0 600.0 results in the TCS taking 500.0,600.0 as the guide origin

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:
  See comments in AUTOGUID.FTN on TCS.

PROCESSING:
  If Argument1 = ON
    set AG_X = Argument1 and AG_Y = Argument2 in TCS
    If Argument2 = Argument3 = -1.0
      set IMODE = 1
      else
      set IMODE = 2
  if Argument1 = OFF
    set IGIDER = 1

DATA:

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsBEGMSG

COMPONENT:
 tcsBEGMSG.c v1.1; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
  To send a single-shot queue parameter to a task in the PE TCS; very much
  an engineering tool.

FUNCTION:
 tcsBEGMSG...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:
  BEGMSG.FTN in TCS

PROCESSING:

DATA:

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsDome

COMPONENT:
 tcsDome.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
   Action TCSDOME: Send dome to given azimuth in degrees.

FUNCTION:
 tcsDome...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
  Argument1 is requested dome azimuth in degrees.

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
  1996 Nov 26 PSB: make it synchronise properly with IPL.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsGocat

COMPONENT:
 tcsGocat.c v1.1; copyright (c) RGO.

TYPE:
 C source-code: DRAMA action

PURPOSE:
 Slew telescope to current coordinates of a named catalogue entry.
 For Perkin-Elmer TCS, this software spoofs the whole thing and keeps
 the catalogue locally.

FUNCTION:
 Takes a string in Argument1 which is the name of a catalogue entry.
 Returns an error if not present. Slew telescope to target position.

SUBORDINATES:
  catGet pulls name from catalogue and sticks it in editblock; tcsNext
  causes appropriate hardware commands to happen.

DEPENDENCIES:

INTERFACES:
  Argument1 is string containing name of catalogue entry.

RESOURCES:
  The local copy of the tcs catalogue.

REFERENCES:

PROCESSING:

DATA:

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsGoto

COMPONENT:
 tcsGoto.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
 Single-shot command-line telescope slew command.

FUNCTION:
 tcsGoto...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
  1996 Nov 25 PSB: Add SdsFreeId.
  1996 Nov 26 PSB: Change Arg to GitArg, include extensive range checking.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsFocus

COMPONENT:
 tcsFocus.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
   Action FOCUS: to command a particular telescope focus, or apply offset.

FUNCTION:
 tcsFocus...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:
  Comments in BEGMSG.FTN

PROCESSING:
  If DitsCode = 0, do absolute focus, if = 1 do offset.

DATA:

HISTORY:
  1996 Nov 26 PSB: Make it block waiting for focus demand to finish.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsNext

COMPONENT:
 tcsNext.c v%I%; copyright (c) RGO.

TYPE:
 C source-code: DRAMA ACTION

PURPOSE:
 tcsNext slews telescope to position stored in edit block, possibly
 put there by SOURCE.
 The TARGET parameter is updated.

FUNCTION:

SUBORDINATES:
 tcsSlew does the hardware driving.

DEPENDENCIES:

INTERFACES:
 no arguments.

RESOURCES:

REFERENCES:

PROCESSING:

DATA:
 editBlock is external tcsTarget_t

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsOffset

COMPONENT:
 tcsOffset.c v%I%; copyright (c) RGO.

TYPE:
 C source-code: DRAMA ACTION

PURPOSE:

FUNCTION:
 tcsOffset offsets telescope by given RA, Dec offsets.

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
  Argument1 is RA offset in radians, Argument is Dec in radians.

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
  1996 Nov 26 PSB: Change ArgGet* to GitArg* to include range checking.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsPfcu

COMPONENT:
 tcsPfcu.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
 The main tcs DRAMA task has an alternative input connected to the RS232
 IPL link to the TCS Perkin Elmer.  The TCS will occasionally make requests
 of the ICS, eg for PFCU rotator position.  This action is permanently active
 to service those requests.
   An activation of this routine asserts that the TCS is operating at
 Prime focus.

FUNCTION:
 tcsPfcu...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
 DitsSignal comes from iplRead with the IPL packet in Argument1

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
  1996 Oct 8 PSB: Tidy put Paramater Putting.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsPoint

COMPONENT:
 tcsPoint.c v1.2; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
   Action tcsPoint: tell TCS to log a pointing position:

FUNCTION:
  Could be used manually by centering stars on tv and entering command; but
  it would be easier to do an old-fasioned PE-style pointing test.
  Or, could be used as part of an automatic pointing test. 

SUBORDINATES:

DEPENDENCIES:
  POINT.TSK must be running in the TCS Perkin Elmer as well as the TCS 
  itself.  Don't touch the `LOG' button.
  Need the Pointing Grid to be loaded into the system catalogue; in this
  version, that means copying it to tcs.cat

INTERFACES:
  Argument1 is a string, either BEGIN, END, or "name"

RESOURCES:

REFERENCES:

PROCESSING:
  If Arg1 is BEGIN, open point.aux and write header record
  If Arg1 is END, close point.aux
  Else
    write "name" to point.aux and cause TCS to log current encoders.

DATA:
  Produces a file called point.aux locally containing the TPOINT header
  information and a list of observed stars.   Produces POINT.DAT etc
  on the Perkin Elmer (since encoder logging is a critical-time process
  which cannot happen over the IPL) which must be fetched and merged
  with point.aux later...

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsPoll

COMPONENT:
 tcsPoll.c v1.4; copyright (c) RGO.

TYPE:
 C source-code: DRAMA ACTION procedure.

PURPOSE:
   Action TCSPOLL: to poll the IPL for TCS status information.

FUNCTION:
 tcsPoll is started by tcs itself and runs permanently.

SUBORDINATES:

DEPENDENCIES:
 iplRead, the Alternative Input, DitsSignal's this action with the
 incoming IPL packet.

INTERFACES:

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
  1996 Oct 19 PSB: Major rethink after finding TCS can't cope with more
                   than one incoming IPL message: after poll-time
                   expires, check if there is a queue entry and send it,
                   else send next poll request.
  1996 Oct 22 PSB: Remove rotator polling on discover real TCS sends it at
                   cass.
  1996 Oct 23 PSB: Change flag on ErsOut to ERS_M_BROADCAST so that messages
                   go to TALKER not back to me and then out on stderr.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsRotator

COMPONENT:
 tcsRotator.c v%I%; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
 Action tcsRotator: Send rotator to given position angle in degrees.

FUNCTION:
 tcsRotator accepts the WHT mount commands, but they don't map terribly
 well onto an equatorial telescope.

SUBORDINATES:

DEPENDENCIES:

INTERFACES:
  ROTATOR [FLOAT | MOUNT | SKY | VERTICAL | VFLOAT]  (double)angle

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:
  1996/08/01 PSB Change arg routines to Git.
  1996 Oct 22 PSB: Take out long polltime for new IPL scheme.
  1996 Nov 25 PSB: move get POSITION to parallactic section & add SdsFreeId
  1996 Dec  3 PSB: Make it block waiting for rotator demand to finish.

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsSe

COMPONENT:
 tcsSe.c v1.1; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
   Action TCSSE: Set a task-common variable in TCS. 

FUNCTION:
 tcsSe...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsSend

COMPONENT:
 tcsSend.c v1.1; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
   Action TCSSEND: Send a verbatim messsage  to a TCS task: 

FUNCTION:
 tcsSend...

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:

PROCESSING:

DATA:

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index

tcsSource

COMPONENT:
 tcsSource.c v1.3; copyright (c) RGO.

TYPE:
 C source-code:

PURPOSE:
 Load a target into the edit block, for use by ADD or NEXT

FUNCTION:
 tcsSource transfers a tcsTarget_t SDS structure in Argument1 into
 the editblock, also tcsTarget_t.

SUBORDINATES:

DEPENDENCIES:

INTERFACES:

RESOURCES:

REFERENCES:
 tcsTypes.h

PROCESSING:

DATA:
 This module defines and initialises the edit block.

HISTORY:

PERSONNEL:
 PSB:   Peter Bunclark, RGO Astronomy Division.
*/
Back to Index
This page is %M% v%I%, last revised %E% (Automatically generated by the script acthtml).