Ultimate
script & description by Jeff Medkeff
Ultimate is a general-purpose telescope and CCD camera control script. It is a complete ground-up redevelopment of the concepts demonstrated in the previous Acquire script. It is smaller, easier to maintain, and more powerful and flexible than acquire.
Ultimate is currently in limited deployment. Interested parties may download the latest script (v. 0.5.9). Ultimate is distributed as a freeware (GPL licenced) VBscript source file.
NOTICE: Southern-hemisphere LX-200 users should be aware that the ASCOM Platform v. 2.3 and earlier LX-200 driver has a potentially destructive bug relating to the telescope.park method. The bug may result in destruction of cameras or instruments if you are using an LX-200 telescope in the southern hemisphere. This script uses telescope.park to shut the telescope down at the end of an observing run. This can be changed for southern-hemisphere users by altering the Select Case statement in Sub Donescope in the script. Please contact me for details.
Ultimate requires that you have, and late-binds to, the following software:
- Widgets freeware, available from this site. The current version of Ultimate (0.5.5) requires version 3.1.25 or greater of Widgets. Ultimate may not run, or may run and crash, resulting in damage to hardware, if you do not have the required version of Widgets.
- Astronomer's Control Program from DC3 Dreams. The script is compatible with ACP remote web operation and is compatible with ACP2 and ACP3.
- PinPoint 3.x or PinPoint 4.x from DC3 Dreams.
- ASCOM Platform, which includes the necessary telescope and other drivers.
- NOVAS-COM Vector Astrometry Engine, freeware from DC3 Dreams and the ASCOM Initiative. This comes with ACP and PinPoint, so if you already have those packages, don't bother getting them again.
Additional utilities are also available:
- Target List Maker (freeware) This simple app lets you set up a scheduled target list quickly and easily.
- Ultimate Prefs, Ultimate's stand-alone script configuration utility (beta). This will allow you to change the operational parameters of the script. The settings can be browsed with plus and minus buttons; each setting is documented on screen, and changes are recorded when you alter the value and move to a new setting. Easier than editing the script. Settings are stored in the system registry. If you are running version 0.4 or greater of the script for the first time, or are using this configuration utility for the first time, you might want to first run the setting initialization script.
Ultimate flow control
- Initializes camera, misc. objects.
- processes user-defined target list, if any.
- any kind or combination of targets can be scheduled
- Photometry mode supported (sit on one target and take continuous images)
- Schedules diverse targets into appropriate time-of-night slot based on RA
- For scheduled solar system objects, the position can be dynamically generated using included ephemeris generator at time of observation (major planets, moon, and elements-available objects only).
- For moving objects, optional offset guiding is available (useful for very faint objects).
- fills unscheduled time with dynamically-selected targets, if desired; user specifies type:
- asteroid survey fields. These are opposition biased, and actively avoid being scheduled in locations near the moon or near the galactic plane (with user-settable tolerances). (Supported.)
- low-elongation moving object survey fields. (Test only.)
- supernova survey (z and other selection criteria user-settable). (Test only.)
- Target-of-opportunity observations. (Test only.)
- observes those targets.
- Slews telescope to target (if necessary)
- User-settable scope settling/backlash takeup pause times
- These are real-time pauses. Multitask script operations conducted during the pause do not lengthen the time of the pause.
- User-settable pointing verification behaviour:
- No pointing verification.
- Full pointing verification with an explicit pointing exposure (and update sync and re-slew if needed) after each slew.
- Pre-slew pointing verification, in which the previous data image is solved and telescope is sync'ed before making slew to next target (this prevents download-while-slewing features from operating). (Test only.)
- Partial pointing verification - control system evaluates data images for pointing errors and schedules pointing updates when errors accumulate above a user-defined threshold. (Test only.)
- When pointing verification is active, failed verifications may be passed into a 'spiral' routine to hunt for alternative solutions (user-settable).
- Autoguiding options:
- No guiding (for saving time).
- Picks guide stars from user-selected catalog; makes minor adjustments to pointing to put the selected star on guider while keeping target within field. (If the guide star is not found, will optionally make smal shifts in pointing to find one.) This is the only autoguiding option because it has been found to be highly reliable.
- Images the target:
- Filter is user-specified.
- Duration of scheduled targets is user-specified.
- In the case of certain survey targets, the duration is user-specified but subject to modification based on the presence of the moon in the sky.
- Other target exposure durations can be dynamically assigned - based, e.g., on their brightness or speed of motion.
- Slews to next target
- Downloads and saves image while slewing.
- Repeats the observing cycle on the next target.
- parks the telescope. Site-code triggered customizations are implemented where specific behaviour is needed.
- takes a user-defined number of dark frames.
- Shuts down camera.
The following 'safety' features are incorporated:
- System is aware of dark/twilight/daylight status, and will not observe when the sky is bright.
- System will skip or wait for targets of insufficient altitude. Although this should be rare considering the scheduling capabilities, errors can be made, and they won't bring observing to a halt.
- Soft camera and telescope timeouts are incorporated to help with 'fail safe' goals.
- Most soft errors first park the telescope, and then throw the error. This prevents the telescope winding up its cables waiting for user response to an error message.
Robotic Observatory home page.