![]() | |||
|
Home > Astronomy > Site Quality > Atmospheric Seeing at ING > Software of RoboDIMM |
The Software for RoboDIMMThe decision to outsource (subcontract) the software
for RoboDIMM was in line with the "off-the-shelf" philosophy of the
RoboDIMM project. It is also understandable because good quality software
is the most critical and labour intensive component.
Collaboration with the contracted company, StarTel (Netherlands), has proved very successful. A fully functional program was delivered on time and StarTel keeps regular contact to offer improvements to the system and to gain ever more experience. See the links for contact details. An important part of the subcontracting process was agreeing which functions the software should have and which it would not, mainly decided by RoboDIMM's operational procedure. The implementation is outlined in main features below, followed by a simplified description of the most important processes, each linked from the tables on the right. Note: The programs were written in C++ on a RedHat Linux (PC) platform. Main Features"Robot"
The main program
for automatic monitoring. A collection of routines that control each
of the processes essential to measuring
the seeing. The robot runs some processes continuously in the background
(Time keeping and Logging),
while others are executed in sequence: from Finding the star and measuring CCD frames, to parking the telescope
safely at the end of the night.
Server Administrates telnet sessions, setting
up a command prompt by which the user can either start automatic monitoring
(the 'Robot' program) or send commands to run sub-routines of that program
('manual' mode). The server also writes status messages, logs and sends
warning emails to the user.
The Robot requires the server to be running, but the user normally exits it at the end. GUI - Graphical User Interface Not essential
to running the monitor, but makes it easier for the user by bringing together
all the important control functions and status information. Controls the
Robot through a telnet session, including command buttons. Continually
updates display of the 4 seeing measurements, telescope parameters, targets
available, the latest image available from the CCD and the currently active
sub-process.
Database Once checked
by the filter routine, the measurements and
relevant simultaneous data are stored in a database on the RoboDIMM PC.
The database records the following data: UT at midpoint of seeing sample, the catalog number for the star, its listed V magnitude, the mean peak counts of thbbe horizontal and vertical image pairs, the telescope observing elevation, the CCD readout subwindow width, its height, the 4 FWHM measurements (hL, hT, vL, vT), the number of images sampled, the number used to measure motion statistics, the profile shape index and a validity flag.
The database can be queried using PostgresQL. Time keeping This runs continuously in the background, ensuring
that the PC and telescope keep accurate time by connecting with the
ING time service computer and internet time services. This is essential
for accurate telescope pointing as well as time-stamping each measurement
in the database.
When the program starts, it writes the updated UT and ST to the telescope onboard memory. It also writes the current telescope position to memory, by assuming this is at north pole park position, i.e. RA=ST, Dec=0. Start up and shutdown of the observing procedure are scheduled according to the calculated times for sunrise and sunset. The program choses to abandon one target and slew to the next based on the calculated airmass, which again depends on time keeping. Chosing a target The program regularly updates which targets
from its catalogue file (the SAO catalog) are available to it, i.e. within
a certain (configurable) distance of zenith and within a (configurable)
magnitude range.
By default the magnitude range is V=2 to 4, but if a star is lost during observations, the program assumes it is due to cloud and switches to magnitude range V= -0.9 to 3 ('cloudy profile'). The currently available stars are assigned a priority that depends both on the amount of time they are above the zenith distance limit (their 'uptime') and their (catalogued) magnitude. A longer uptime generally assigns greater priority than a brighter magnitude, but in 'cloudy profile' the stars are listed in strict order of descending magnitude.
To further increase time spent taking seeing measurements,
the same object is observed until its zenith distance becomes greater than
the set limit (30 degrees). Then the telescope is moved to whichever star
is at the top of the prioritised list as updated at that time.
Thus a star is usually followed for typically 3 hours, from near its lowest
limit in the east, through the meridian to its lowest point in the west. CCD Exposures In fact, several processes use CCD exposures in
different ways: locating the star and
focusing the telescope use full-frame readout,
while the CCD is windowed to take the sample images for seeing measurement.
All processes use the SExtractor
program to extract star centroids from the (FITS) images and to measure
(by index) the shape (ellipticity) of the stellar patches. The output from
SExtractor is used to filter out bad images - e.g. the 10ms exposures in the
seeing sample must each return exactly 4 centroids to be counted as valid.
The seeing sample takes 200 images (the number is configurable) and the process currently lasts typically 2.5 minutes, depending on the window size. The window size and position are adapative and depend on the mean bulk image motion (as opposed to the differential motion). These in turn are affected by the amount of wind buffeting and the telescope tracking (drift). Locate TargetOnce the telescope stops slewing and arrives at the target position, control is returned to the program which initiates the search sequence: First a series of 4 full-chip exposures are taken at the initial target position, with increasing exposure tim, in case of cloud. If at least one star image is returned by SExtractor, the program causes the telescope to be moved in order to place the target in the center of the CCD, repeating exposures as necessary.If no star image is returned by SExtractor, the program initiates a standard spiral search pattern, known as a Mosaic. This consists in moving the telescope by a step size just smaller than the field size (2.8 × 3.8 arcminutes approx.) first in one axis and then the other, taking a series of exposures at each position, until a star image is found. The immediate search is carried out in areas adjacent to the intial position, and then spirals out to include areas adjacent to these. If the telescope park position was correct at the beginning of the night, this results in the star being found within a few minutes.
If no star is found even after the search area reaches
its set maximum size, a warning is emailed to the user and the telescope is
parked. MeasurementsThe seeing estimate is derived from the statistics of centroid positions in the sample of multiple 10ms exposures. Unsuitable exposures are filtered out by using SExtractor to detect blended, elongated, oversized or saturated images, insufficient flux or cosmic rays. A minimum of 4 star images must be found and 70% of the sample exposures must be valid for the series to be used.
The four star images formed by RoboDIMM are in the shape
of a cross (+). The centroid data returned by SExtractor for each valid exposure
are used to calculate distances between the horizontal and vertical image
pairs. The distances in x and y directions on the CCD are calculated separately,
giving a total of four distance measurements for which the variance is calculated.
These variances consistute two estimates each of "transverse" and "longitudinal"
image motion, which are used to calculate corresponding estimates of seeing
FWHM. More detail. FocusWhen the system is in focus, the cross shaped image is symmetrical - the distance between the horizontal and vertical image pairs is symmetrical. During tracking the focus is known to wander due to flexure in the primary mirror position, causing the image to become asymmetrical. The average distance is measured from several seeing samples (the distance varies between exposures because of the seeing) and is checked for symmetry. Once the asymmetry oversteps a set limit, the electronic focuser is moved by the amount required to correct the focus deviation. There is no special check of the result, but the symmetry continues to be monitored in sucessive seeing samples.LoggingAn important feature of the software in the debugging stage, it also allows the status to be monitored. |
Top | Back |
|