If you are looking to script the roof, I do know that there is an ASCOM standard Dome object (something like "M1OASYS.Dome") that would have all of the standard calls for the ASCOM Dome Standard. That standard interface is documented in the end-user ASCOM Platform (Start menu, All Programs, ASCOM Platform 6, Help and Device Interface Standards.
So to open the roof, e.g.,
Code:
var roof = new ActiveXObject("M1OASYS.Dome"); // <- The ID is a guess
roof.Connected = true;
roof.OpenShutter();
at this point you should wait for roof.ShutterStatus to become 0 (shutterOpen). Waiting needs some sort of sleep or wait function and this depends on whether you are running the script in the ACP Console (Util.WaitForMilliseconds(xxx)
or under the Windows shell (WScript.Sleep(xxx)
.
Code:
while (roof.ShutterStatus !== 0) { // Yes, in Javascript the extra = is for "real" 0
wait statement for 500 ms
}
Finally, to be really robust you need to check for ShutterStatus = 4 (shutterError) in the loop. Failure to do so will result in an infinite loop if the roof encounters a problem while opening. The ShutterStatus will never become 0. Once again, printing something out depends on whether you are running in ACP's console (Console.PrintLine("xxx")
or the windows shell (Wscript.Echo("xxx")
Code:
while (roof.ShutterStatus !== 0) { // Yes, in Javascript the extra = is for "real" 0
if (roof.ShutterStatus == 4) {
PrintStatement("Shutter error. Aborted")
break;
}
else {
wait statement for 500 ms
}
}