ACP Weather Safety

ACP includes features to monitor weather and take action when the weather becomes unsafe. Weather monitoring is handled by an external weather server that handles the interface with weather instruments and provides ACP with weather data. ACP includes weather servere that uses the "1-line data file" produced by Boltwood and AAG sensors. Both the Boltwood Cloud Sensor II and the original Boltwood Cloud Sensor are supported, and the type of unit is automatically detected. Additionally, weather servers are included for the AAG CloudWatcher and for the Aurora Cloud Sensor III. These servers are useful even when a single weather sensor system is shared among multiple telescope systems, since multiple readers can share the same data file. For our Sierra Remote Observatories customers, we have included a special SRO weather server that uses the SRO roof open/closed state as ACP Expert's weather safe/unsafe indication. ACP also comes with a weather server simulator that you can use to test safety scripts and weather display on ACP's web pages.

noteWe have deprecated the direct-connect weather servers for the Boltwood units and instead recommend using the file-sharing server ACP.BoltwoodFile. Weather servers for other weather sensors also use file-based data access, again to eliminate problems with long response times for API calls.

The only item coming from the weather server that ACP itself pays attention to is the "safe/unsafe" flag, sometimes called the "alert" condition. Other weather information (temperature, pressure, etc.) is displayed on ACP's web pages if it is available.

If the weather server reports an unsafe condition, ACP does the following:

  1. Sounds an alert (if sound/voice on errors is enabled)
  2. Interrupts any script that is running in ACP's console
  3. Runs the Weather Safety Script if it is present (a default safety script is included with ACP). Click on the link for more info about the weather safety script. The included default weather safety script allows a weather-unsafe condition to park your scope and close your dome (if the Dome preference "Close and park/home when scope is parked by script" is enabled!).
noteBe sure to read about the weather safety script!

noteClients of ACP's Weather object (for example ACP Scheduler) will see unsafe weather for at least the "Minimum Unsafe Time" as set in ACP Preferences, Weather tab. While ACP is enforcing that unsafe time, the WEATHER annunciator will be yellow and ACP and its clients will see Weather.Safe = False.

Boltwood Cloud Sensor and similar sensors like AAG Cloud Monitor and Aurora Cloud Sensor


ACP includes servers for the various Boltwood-like servers. They reads the "1-line" data file provided by the control software (e.g. Clarity), possibly over an intranet file share or DropBox share. If the device is an old Boltwood Cloud Sensor I, the Boltwood server can recognize the older format of data. These servers read the thresholds set by the control software to determine weather safe/unsafe. The AAG Cloud monitor has a "Solo" option and local CloudWatcher software that can (confusingly operate in "local" and "remote" modes). See the AAG docs. The key is that, for all of these, a 1-line data file is the source of weather data.

Specifically, the following weather items are available to ACP:

For the safe/unsafe decision, the weather servers use the "alert" condition coming from the weather software. Clarity has the alert checkboxes shown to the right. Other similar servers have similar ways to configure the "alert" condition. The key is that when the weather server indicates an alert, ACP wil interpret that as a weather unsafe condition. Thus you have complete control over the eaning of "unsafe". Refer to the documentation for your specific cloud sensor for details, and use the specific weather server as recommended below:

Using Boltwood-like Weather Sensors in ACP

To use your Boltwood (or Boltwood-like) sensor with ACP:

  1. Set up your sensor thresholds per the software documentation.
  2. For Clarity, set up the Data File to be in New Format and tell it where you want it to be written. This is done using the Data button in the Clarity Setup window (as shown in the image to the right, see the Clarity documentation).
  3. To set up ACP to use a particular weather server, you just need to put its Windows object ID into the "Weather server object ID" field on the Weather tab of ACP Preferences, then turn on "Enable weather services..." (same tab). Click the "Setup weather server..." button to tell the weather server to display its setup/configuration window (if it has one). Use this table for guidance.

    For Weather Sensor Server Object ID Setup
    Boltwood Cloud Sensor II ACP.BoltwoodFile Data File, new format (see image)
    Boltwood Cloud Sensor I ACP.BoltwoodFile Data File per Clarity I manual
    AAG Cloud Watcher AAG.Weather CCD Autopilot 4 File (see image)
    Aurora Cloud Sensor III ACP.AuroraWeather Use clarity_2.txt
    Foster Systems AstroAlert V4 ACP.BoltwoodFile CCD Autopilot data file
  4. Connect Weather when starting up ACP.

Sierra Remote Observatories

Sierra Remote houses telescopes within common/shared buildings. Each building has a roll-off roof which is controlled by a central weather safety system. In addition SRO has a Boltwood CloudSensor II which serves the entire facility via a shared 1-line data file that is periodically updated with current conditions (see the Boltwood File description above). The special SRO weather server reads a shared roof status file provided on the SRO intranet in order to determine weather safe/unsafe status. If the roof is open, safe weather is reported to ACP and vice versa. The rest of the weather data readings come from SRO's Boltwood data file (also on the SRO Intranet) and are used by ACP for weather display in its web interface.

Using ACP at Sierra Remote Observatories

  1. Open ACP Preferences, Weather tab.
  2. Enter ACP.SROWeather into the "Weather server object ID" field on the Weather tab of ACP Preferences, then turn on "Enable weather services..." (same tab). Click the "Setup weather server..." button.
  3. When you click Setup Weather Server... button, you'll see two standard Windows "file-open" windows. The first asks you to navigate to the Boltwood "1-line" data file. The second asks you to navigate to the SRO roof status file. Once you have selected these files, ACP's weather should come online within a few minutes. To find out where these files are on the SRO intranet, please contact Larry Van Vleet or Mel Helm.

The Weather Simulator

ACP comes with a simulator weather server. The main function of the simulator is to give you a way of switching between safe and unsafe conditions while testing safety scripts and ACP's actions on weather alerts. The simulator can also provide the optional weather items to ACP, or answer "not supported" depending on the state of a checkbox next to the item's field.

Using the Weather Simulator

  1. Open ACP Preferences, Weather tab.
  2. Enter WeatherSim.Weather into the "Weather server object ID" field on the Weather tab of ACP Preferences, then turn on "Enable weather services..." (same tab). The Setup button doesn't do anything but pop up a dialog saying that there is nothing to do.
  3. The weather simulator window has controls that allow you to make instant changes to the weather. Remember that ACP only checks the weather every 30 or so seconds, and that it will force the weather to remain unsafe for a minimum time.

Weather Server Theory of Operation

There is no standard programming interface for getting weather information. Each different weather system has its own way of tying into a computer, ranging from low level serial data to a product-specific scripting/ActiveX interface. Since there are no weather interface standards, ACP has a flexible set of hooks for accessing weather information. An ACP-compatible weather server is a scriptable object that, at a minimum, provides just two items: a Weather.Safe property, and a Weather.SetupDialog() method (which may simply pop up a message box).

In addition to the above required items, ACP's weather server interface includes a number of optional environment properties. If the weather server makes these available, then scripts running in ACP have access to them. ACP itself pays no attention to them with one exception: If AmbientTemperature is available, it is periodically copied to ACP's Prefs.SiteTemperature so scripts can do (e.g.) accurate refraction and air-mass calculations.

The documentation for the ACP Weather Server interface gives details.

Developing a Weather Server

As stated above, the minimal weather server need only provide a safe/unsafe flag. Of course, it may provide other information as well, and ACP will make it available to scripts and components.
noteDC-3 Dreams offers programming services for developing weather servers. If your weather station has a serial or scriptable/ActiveX interface with which information can be read, DC-3 Dreams can develop the weather server needed by ACP, assuming your weather station provides enough information for a safe/unsafe decision!.

The Weather Simulator was written in VB6, and sources are provided with ACP. ACP also comes with a template Windows Script Component that has the properties and SetupDialog() method needed for use with ACP. Using this, you could develop a weather server with Notepad.