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).