The SkyRoof and SkyRoofHub drivers are fully compatible with ASCOM standards and are fully scriptable under the ASCOM platform.


The drivers conform to all of the applicable ASCOM.Dome methods and properties along with a few customized properties.

Specifically, the custom properties concern operation of an auxiliary dew heater relay and an option to detect the on-board AtPark status of the

controller board.


The special commands are as follows:

(where 'roof' is the name of the ASCOM dome object)


To test AtPark status: 


roof.Action("ParkCheck", "")  This method will return a string either 'true' or 'false' depending on current AtPark state of the mount as detected by SkyRoof.


To activate or deactivate the auxiliary (dew) relay:


roof.Action("HeaterOn", "")  or  roof.Action("HeaterOff", "")



Below is an example script to open and close an observatory roof with a Visual Basic Script using the SkyRoofHub driver:


Set roof=CreateObject("ASCOM.SkyRoofHub.Dome")        'Assign the variable "roof" to the ASCOM driver object

Set objShell = WScript.CreateObject("WScript.Shell")       'Shell for PopUp messages

Const Timeout = 3                                                          'Constant for PopUp message display time

Const PopUp_Title = "SkyRoof Driver Script"                     'PopUp message title

roof.connected = true                                                      'Connect to the driver

wscript.sleep(3000)                                                         'Wait a few seconds for connection to driver

roof.openshutter                                                              'Open the roof

objShell.Popup "Opening Roof...", Timeout, PopUp_Title     'Status message

while roof.shutterstatus <> 0                                             'Loop until the driver reports the roof is open

wend

objShell.Popup "Roof Open", Timeout, PopUp_Title            'Roof is open

wscript.sleep 10000                                                         'Wait ten seconds

objShell.Popup "Closing Roof...", Timeout, PopUp_Title      'Status message

roof.closeshutter 'Close the roof

while roof.shutterstatus <> 1                                             'Loop until the driver reports the roof is closed

wend

objShell.Popup "Roof Closed", Timeout, PopUp_Title          'Status message

roof.connected = false                                                      'Disconnect from driver

Set roof=Nothing                                                              'Dispose object





ASCOM Driver Methods and Properties w/SkyRoof ASCOM driver


Connected  -Boolean (read/write)-Driver connection state


ShutterStatus -Returns current roof state 

  0- Roof shutter status open  

  1- Roof shutter status closed  

  2- Roof shutter status opening  

  3- Roof shutter status closing  

  4- Roof shutter status error  


OpenShutter -transmits command to open roof

CloseShutter -transmits command to close roof

AbortSlew -transmits command to stop roof

Action("ParkCheck", "") -returns the AtPark status of the telescope (state of external AtPark device)

Action("HeaterOn", "") -energizes auxiliary dew heater relay on the SkyRoof control board (returns nothing)

Action("HeaterOff", "") -de-energizes auxiliary dew heater relay on the SkyRoof control board (returns nothing)


*Other methods and properties are available-refer to ASCOM Dome class for details


*The firmware in the SkyRoof controller board will not allow the 'roof close' relay to energize unless the

AtPark state is detected as 'parked' or the AtPark connectors have been jumped at the board.

Beginning with SkyRoof controller board firmware version 7.0, the 'roof open' relay will also not energize if the AtPark state is not detected.











Created with the Personal Edition of HelpNDoc: Converting Word Documents to eBooks: A Step-by-Step Guide with HelpNDoc