Acquire
script & description by Jeff Medkeff
Acquire is a telescope and CCD camera control script that began to take shape in 1998. It is built around the very first AcquireImages.vbs script that Bob Denny included with the first beta release of Astronomer's Control Panel's automation interface. Since then, I've added a whole bunch of features to it and changed a lot of Bob's original code. Many of the programming practices found here don't make much sense - I was learning at the time - but at least it works.
Acquire is a VBscript source file.
Get the latest version.
Acquire also makes use of Widgets and ScriptSupport on this site.
Acquire flow control
- Initializes camera, misc. objects.
- processes user-defined target list, if any.
- observes those targets.
- fills the rest of the night with script-selected targets.
- parks the telescope.
- takes a user-defined number of dark frames.
Script-selected targeting
- Find position of meridian.
- Based on exposure time and amount of overhead, find how long it takes to observe one field.
- Based on user-settable time between observations, find out how many targets are needed, and how long this many targets will take to observe.
- Divide the time by two, and add that to the sidereal time. This will be used as the RA of the fields.
- Find the declination of the ecliptic at this RA, but avoid anything too close to the galactic plane.
- If the resulting fields are too close to the (asteroid) stationary points, shift them away.
- If these fields are too close to the moon (tolerances are user-settable), shift them.
- Build a "ladder" of fields of increasing declination; observe them.
- This insures that you will start observing east of the meridian, and at the end of these targets the telescope will be west of the meridian by an equal amount.
Observing loop
- Read current plan file, get target information.
- Select guide star, if needed, from star catalog. Compute telescope pointing position accordingly.
- Make sure this target is not below our practical horizons. If it is too low in the west, we skip it. If too low in the east, we wait for it unless it is very low. If it is too far south in declination (i.e., will never rise high enough), we skip it. These are user-definable settings.
- Also make sure that we have to observe this. Three observations of each target are completed by default, but this can be overridden in the target list. If we only need one or two observations, we skip one or two of the three opportunities to process this target.
- If necessary, slew to the field (no slew if we are already there, within the user-defined pointing tolerance).
- Take pointing exposure; solve.
- If pointing exposure doesn't solve, we assume the telescope has pointed badly, and attempt to solve the pointing exposure by opening adjacent areas in the star catalog and looking for a match.
Report pointing error.
- If necessary, refine pointing.
- If we are to guide, start guider. Although a star was selected earlier, it may not be there; the script will hunt around to find one if the selected star is not there. The amount of "hunting" is 0.8x the guider's field of view, but if you have a large guider relative to the camera field, this can be changed in the script. The "hunting" is weighted toward westerly-movements first, which minimizes backlash problems.
- Take exposure.
- Loop.
Robotic Observatory home page.