DragScript Elements

From Voyager Wiki
Jump to navigation Jump to search

The DragScript "language" is composed of blocks that are dragged from the list on the right side of the DragScript editor to the script being created or edited on the left.

Each category of element is organized in list that can be expanded or contracted by clicking the "+" or "-" next to the element category name:

Dragscript-editor-elements.png

E.g., if you click the + in front of Actions, the list expands like this:

List-expanded.png

As you can see in the case of Actions, there are further subcategories of actions, and clicking the + in front of one of them expands it again:

Subcategory-expanded.png

Here, the list of Setup actions is fully expanded and we see three choices that we can drag to the active script: Connect Setup, Connect Setup with Timeout, and Disconnect Setup

For the remainder of this page, we will describe the available DragScript elements. New elements are added periodically and will be documented in the release notes and here.

Press Sort button to listing all the categories and blocks in alphabetical order.

DragScript Actions

Operating System

The Operating System actions control the PC running Voyager:

DSopOs.png

  • Shutdown PC: Shutdown the PC running Voyager
  • Restart PC: Restart (reboot) the PC running Voyager
  • Hybernate PC: Hybernate the PC running Voyager (only in OS that support it)
  • Suspend PC: Susend the PC running Voyager (only in OS that support it)
  • Kill Process: Kill a process on the PC running Voyager. Either type in the Process name or click one of the buttons to use a preconfigured process name.

Kill-process.png

  • Serial Port STRING Transmit: Send a text string with a terminator (if necessary) to an RS232 Serial Port

SerPortTx.png

  • Configuration
    • Serial Port Config: insert the string used to configure and open the serial port (portname,portspeed,databit,parity,datastopbit) for parity use N=None O=Odd E=Even (Example COM1,9600,8,N,1)
    • Text to Send: input the text to send to the serial port
    • Use Terminator: indicate if you want to use a terminator or not. CR = carriage return, LF=Line feed
  • Serial Port BINARY Transmit: Send Binary data string to an RS232 Serial Port

SerPortBin.png

  • Configuration
    • Serial Port Config: insert the string used to configure and open the serial port (portname,portspeed,databit,parity,datastopbit) for parity use N=None O=Odd E=Even (Example COM1,9600,8,N,1)
    • Binary Data To Send(*): input the binary data to send to the serial port. Binary Data must be entered ad a string in hexadecimal format separated (Example 0A 0B 0C A1 A2 A3)
  • UDP IP/Port STRING Transmit: Send a text string with a terminator (if necessary) to an UDP Port

Txudpstring.png

  • Configuration
    • IP/Hostname: IP or hostname of PC where to send data
    • Port: UDP port number to use for transmission
    • Text to Send: input the text to send to the UDP Port
    • Use Terminator: indicate if you want to use a terminator or not. CR = carriage return, LF=Line feed
  • UDP IP/Port BINARY Transmit: Send Binary data string to an RS232 Serial Port
  • UDPIPBinaryTX.png
  • Configuration
    • IP/Hostname: IP or hostname of PC where to send data
    • Port: UDP port number to use for transmission
    • Binary Data To Send(*): input the binary data to send to the serial port. Binary Data must be entered ad a string in hexadecimal format separated (Example 0A 0B 0C A1 A2 A3)

Setup

Setup actions control connecting and disconnecting to your equipment and software:

Dragscript-setup-2.14c.png

  • Connect Setup: Commands Voyager to connect to the equipment and software in the currently selected Profile
  • Connect Setup with Timeout: Command Voyager to connect to the equipment in the currently selected Profile. Voyager will timeout if connection does not complete within the specified number of seconds:

Setup-timeout.png

  • Disconnect Setup: Command Voyager to disconnect from the equipment and software in the currently selected Profile
  • Force Disconnect Setup: Command Voyager to forcefully disconnect the Seup without checking if the previous connection was actually successful (all setup checks connected regularly)
  • Connect Safety Monitor Control: Connect only the Safety Monitor control. This is useful for monitoring conditions prior to connecting all your equipment
  • Disconnect Safety Monitor Control: Disconnect only the Safety Monitor control
  • Connect Flat Device #1 / #2 Control: Connect only the Flat Device #1/#2. This is useful for switch on the flat device only when needed
  • Disconnect Flat Device #1 / #2 Control: Disconnect only the Flat Device #1/#2 control


Voyager

Interaction with Voyager Application:

Immagine 2021-04-05 193048.png

  • Change Voyager Profile: will allow changing of profile from DragScript. Voyager must have the setup not connect or action will failed.
    • Immaginefefefr.png
      • Profile: Profile select, and list of all profile if retrieved from Voyager
      • Get Voyager Profiles List: listg of profiles will be retrieved directly from Voyager using the Application Server. Male sure that the Application Server in Voyager is active
      • OK: Click to save your changes and close the window
      • Cancel: Click to discard your changes and close the window
  • Empty Voyager Temporary Folders: will remove all file from the temporary folders of Voyager (for example the FIT folder where is the temporary Shot for platesolving or pointing)

Session

Session actions run sequences to acquire images, flat frames, and shutdown ("Good Night") your system:

Session-script.png

Dragscript-sequence-211g.jpg

  • Configuration Panel:
    • Click the folder icon Folder-icon.png to select the Sequence file to run. Create your Sequence files in Voyager's OnTheFly workspace
    • Start/TimeSpan: Click one of the radio buttons to use that option to tell when to start and end the sequence. This is one way to have Voyager image this target until a specific time is reached, or an interval has elapsed. It is a good idea to specify an ending time here, or a minimum altitude in the Sequence definition or the Options field below, so Voyager will not continue trying to take images after the object has set
      • Start and End from Sequence: Use the start and end times specified in the sequence definition file. The start time comes from the On Start tab and the end time comes from the On End tab
      • Immediately Start and Finish After Interval: Start the sequence immediately and end it after the HH:MM:SS amount of time specified with the Time Span: counter fields
      • Start and End at Absolute Time: Voyager should wait until the specified Start: time and end the sequence at the specified End: time.
      • Immediately Start and End at Absolute Time: Start the sequence immediately and end it at the time specified in the counter fields
      • Immediately Start and Finish With Astronomical Night: Start the sequence immediately and finish it at Astronomical Night's end, offset +/- by the number of minutes set in the Offset: counter field
  • Calculated Time Span: Voyager will show how much time this sequence will take with the chosen Start/TimeSpan option if you choose Start and End at Absolute time. It is not possible to calculate this if you choose one of the "Immediately Start" options


Important Note! Enter time in 24 hour format using local time - or the time zone on the computer running Voyager. That's the time that will be used in doing these calculations. Midnight is 00:00:00. 10 pm local time is 22:00:00. 3 AM is 03:00:00.


Important Note! Note: If the Start: time is more than 12 hours in the future, Voyager will start the sequence, assuming that the start time has passed already in the current night. For example, if you specify a start time of 20:00:00 and it is now 20:15:00, Voyager will start the sequence


Important Note! If the End time is more than 12 hours in the future, Voyager will assume the End time has already passed for the night and end the sequence. For example, if a sequence has a Start time of 20:00:00 and an End time of 21:00:00 and the current time is 22:00:00, Voyager will end the sequence


Important Note! Times entered here will override any start or end times defined in the Sequence file. The times you define when you create the sequence are used for OnTheFly running of the Sequence, not for DragScript execution


Important Note! The Start and End times are checked at the beginning of running a sequence and the sequence exits with status OK if the current time is outside the Start and End time window
    • Options: Check the boxes to select any of these options:
      • Overrides Target Coords J2000: If checked, the RA and DEC coordinates are used instead of those in the sequence file. RA coordinates are in HH MM SS and DEC coordinates are HH MM SS.sss
      • Overrides Target Name with this: If checked, the name entered in the field will be used as the target name, which is part of the file name
      • Force Dynamic Target Comet : if checked force the Sequence to use a Comet Dynamic Target type, you MUST select the Comet using the Comet Finder button near the check. If you check the flag and do not select a Comet the Sequence will generate an Error at starting. Target Name and Target key will be populated after the search and the overrides target name will be used with the name of the Dynamic Target. You can for sure change it.
      • Force Dynamic Target Asteroid : if checked force the Sequence to use an Asteroid Dynamic Target type, you MUST select the Asteroid using the Asteroid Finder button near the check. If you check the flag and do not select an Asteroid the Sequence will generate an Error at starting. Target Name and Target key will be populated after the search and the overrides target name will be used with the name of the Dynamic Target. You can for sure change it.
      • Override Dynamic Target Pointing Type : if checked and only if you are using a Dynamic Target (comet or asteroid) Voyager allow you to select when calculating the RA/DEC coordinates od the Dynamic Target. Default for a Dynamic Target is the Calculate RA/DEC only at Sequence Begin
        • Calculate RA/DEC Only at Sequence Begin : Voyager will calculate the RA/DEC of the Dynamic Target only whe the Sequence action will start and will use this RA/DEC for all duration of the Sequence action. If the Sequence will be restarted anothe day or some hours after or generally will be restarted VOyager will calculate again the RA/DEC coordinates. But not in the same Sequence run.
        • Calculate RA/DEC at Each Precise Goto : Voyager will calculate the RA/DEC of the Dynamic Target at each precise pointing goto inside the Sequence Run included at the begin of Sequence
        • Calculate RA/DEC Every X Seconds : Voyager will calculate the RA/DEC of the Dynamic Target at the beginning of the Sequence and each X seconds like edited in the dedicated field. if the X interval is expired and Voyager is in exposure camera mode, will wait the end of exposure to calculate the new coordinates. A realign goto will not be requested if the next flag is not checked.
          • And Realign Target : if checked Voyager will force a realign with a Precise pointing to the new RA/DEC of the Dynamic Target
          • Without Using Plate Solving : if checked Voyager will avoid the precise pointing with plate solving for the realign and will use a simple goto without solving
      • Override Angle Rotation of Target with PA of°: if checked , if in the sequence the rotator is managed, this flag force the Rotation Angle to the value selected. The other rotator settings in sequence will not be changed.
      • Finish Running Exposure in case of elapsed time for Sequence Execution: If checked, an exposure in progress will be allowed to finish if it starts before the sequence end time but finishes after the sequence end time
      • Override Lower Altitude value under which Exit from Sequence: If checked, if the sequence target sets below the altitude given here, the sequence will end. This value will override the minimum altitude value chosen in the sequence file
      • Override Higher Altitude value above which Exit from Sequence: If checked, if the sequence target rises above the altitude given here, the sequence will end. This value will override the maximum altitude value chosen in the sequence file
      • Override Lower HourAngle value under which Exit from Sequence: If checked, if the sequence target HourAngle are lower the value given here, the sequence will end. This value will override the Lower HourAngle value chosen in the sequence file
      • Override Higher HourAngle value over which Exit from Sequence: If checked, if the sequence target HourAngle are higher the value given here, the sequence will end. This value will override the Higher HourAngle value chosen in the sequence file
      • Override Camera Cooling Temperature with Decimal Variable: if checked for colling temperature will be used the value inside the decimal variable selected in the drop-box combo box control
      • Override Lower Azimuth value under which Exit from Sequence: If checked, if the sequence target Azimuth are lower the value given here, the sequence will end. This value will override the Lower Azimuth value chosen in the sequence file
      • Override Higher Azimuth value over which Exit from Sequence: If checked, if the sequence target Azimuth are higher the value given here, the sequence will end. This value will override the Higher Azimuth value chosen in the sequence file
      • Use External Interval Angle: if each the azimuth constraints will be cheched you can decide with this flag to use external angle instead of internal angle between before and after azimuth. Example if you choose 70° before and 150° after with out external flag this mean sequence run if angle is between 70 and 150°, if you chec it and invert to external sequence will be terminate if azimuth is between 70 and 150°
    • Default: Click this button to populate this window with the default options
    • OK: Click to save your changes and close the window
    • Cancel: Click to discard your changes and close the window
    • Override FILE PATTERN: flag this chheckbox to activate sub foldering and file naming with File Pattern method, insert in the big text field near the flag the string to override of the file pattern to use instead of the one configured in the File Pattern Manager. This will affect only the actual sequence and do not change the main File Patterm Manager configuration. This is for example mandatory in case of join of the OpenSkyGems network and sharing of the observatory setup.
  • Research & Survey: Run a Research & Survey sequence with options

Research-survey-dragscript.png

  • Configuration Panel:
    • Click the folder icon Folder-icon.png to select the Research & Survey sequence file to run. Create your sequence files in Voyager's Research & Survey workspace
    • TYPO: Star/TimeSpan should be Start/TimeSpan
    • Start/TimeSpan: Click one of the radio buttons to use that option to tell when to start and end the Research & Survey sequence. This is one way to have Voyager image this target until a specific time is reached, or an interval has elapsed. It is a good idea to specify an ending time here, or a minimum altitude in the Research & Survey sequence definition or the Options field below, so Voyager will not continue trying to take images after the object has set
      • Immediately Start and Finish After Interval: Start the sequence immediately and end it after the HH:MM:SS amount of time specified with the Time Span: counter fields
      • Start and End at Absolute Time: Voyager should wait until the specified Start: time and end the sequence at the specified End: time.
      • Immediately Start and End at Absolute Time: Start the sequence immediately and end it at the time specified in the counter fields
      • Immediately Start and Finish With Astronomical Night: Start the sequence immediately and finish it at Astronomical Night's end, offset +/- by the number of minutes set in the Offset: counter field
    • Calculated Time Span: Voyager will show how much time this sequence will take with the chosen Start/TimeSpan option if you choose Start and End at Absolute time. It is not possible to calculate this if you choose one of the "Immediately Start" options
  • Options:
    • Finish Running Exposure in case of elapsed time for Sequence Execution: If checked, an exposure in progress will be allowed to finish if it starts before the sequence end time but finishes after the sequence end time
    • Default: Click this button to populate this window with the default options
    • OK: Click to save your changes and close the window
    • Cancel: Click to discard your changes and close the window


Important Note! See the Important Notes above in the Sequence discussion to understand how Voyager treats the values in the time fields when they have already passed in tonight's session or if they are also specified in the Research & Survey sequence definition file

Flat-sequence-dragscript.png

  • Click the folder icon Folder-icon.png and choose the Auto Flat sequence file to run. Configure the Auto Flat sequence files in the OnTheFly workspace
  • TYPO: Configuration dialog says "Good Night" but should be Auto Flat
  • Default: Click this button to populate this window with the default options (blanks out the Flat Sequence File field)
  • OK: Click to save your changes and close the window
  • Cancel: Click to discard your changes and close the window


  • Good Night: Run a series of one or more shutdown actions:

Dragscript-good-night.png

  • CCD Filter Select: Moves the filter wheel to the filter chosen from the drop-down box on the right
  • Sync Warmup: Send the CCD cooler a warmup command and wait until it finishes
  • Async Warmup: Send the CCD cooler a warmup command and continue execution without waiting for it to finish
  • Parking: Park the mount as specified in Mount Setup


Plate Solving

Plate Solving actions perform a plate solving action as defined in the Plate Solving setup of the active profile:

Dragscript-plate-solving.png


  • Plate Solving : Perform a plate solve action at the current scope location using the Plate Solve software defined in the Plate Solving setup of the active profile. Mount will not be synched
  • Plate Solving with Mount Sync: Perform a plate solve action at the current scope location using the Plate Solve software defined in the Plate Solving setup of the active profile. Send a Sync command to the mount unless you have chosen to not send a Sync command to your mount in Mount Setup. You may lost pointing model if you have one and your driver not allow additional and external sync

Blind Solving

Blind Solving actions perform a plate solving action as defined in the Plate Solving setup of the active profile:

BlindSolveBlocks.png


  • Blind Solving with Mount Sync: Perform a blind solve action at the current scope location using the Plate Solve software defined in the Plate Solving setup of the active profile. Send a Sync command to the mount unless you have chosen to not send a Sync command to your mount in Mount Setup. You may lost pointing model if you have one and your driver not allow additional and external sync


WEB Solving

Plate Solving actions perform a plate solving action as defined in the Plate Solving setup of the active profile:

WebSolvingBlocks.png


  • Web Solving with Sync: Perform a web blind solve action at the current scope location using the nova.astrometry.net site. An active Internet connection is required. Send a Sync command to the mount unless you have chosen to not send a Sync command to your mount in Mount Setup
    • Web-solving-with-sync.png
      • Timeout: Specify the number of minutes Voyager should wait after initiating the Web Solve before timing out. Use an IF TIMEOUT decision action to define what to do if the web solve times out

Guiding

Guiding actions send commands to the guide software:

Dragscript-guiding-dithering.png

  • Calibrate Guide: Command the guide software to perform a calibration action. It is recommended to include a Calibrate Guide action at the start of your sequence unless you are sure that your guider is calibrated from a previous session. Double click to bring up the configuration window:

Dragscript-calibrate-guide.png

  • Time: Exposure time for Calibration exposures by the guiding software
  • Binning: Binning level for Calibration exposures by the guiding software
  • Use RoboGuide Star Selection: If selected, use Voyager's RoboGuide process to choose a guide star for the Calibration action. This is mandatory at this time since some guiding software cannot select a guide star.
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Acquiring Guide Star: Commands the guiding software to select a guide star. Double click to bring up the configuration window:

Dragscript-acquire-guide-star.png

  • Time: Exposure time for guide star acquisition exposures by the guiding software
  • Binning: Binning level for guide star acquisition exposures by the guiding software
  • Use RoboGuide Star Selection: If selected, use Voyager's RoboGuide process to choose a guide star. This is mandatory at this time since some guiding software cannot select a guide star.
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Guide Start: Commands the guiding software to begin guiding. Double click to bring up the configuration window:

Dragscript-guide-start.png

  • Time: Exposure time for guiding exposures by the guiding software
  • Binning: Binning level for guiding exposures by the guiding software
  • Use RoboGuide Star Selection: If selected, use Voyager's RoboGuide process to choose a guide star. This is mandatory at this time since some guiding software cannot select a guide star.
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Guide Stop: Command the guiding software to stop guiding


  • Guide Dithering: Command the guiding software to perform a dithering action. Dithering is used to move the mount a tiny random amount in a random direction - usually only a couple of pixels. This prevents hot or cold pixels in your sensor from showing up in the same position in all of your images, making it easier to remove hot or cold pixels when stacking your images. Double click to bring up the configuration window:

Dragscript-guide-dithering.png

  • Max Pixel: Specify the maximum number of pixels that a dithering operation can move the mount
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window
  • Unguided Dithering: Perform a dithering action directly, vs. Guide Dithering which sends a dithering command to the guide software. Dithering is used to move the mount a tiny random amount in a random direction - usually only a couple of pixels. This prevents hot or cold pixels in your sensor from showing up in the same position in all of your images, making it easier to remove hot or cold pixels when stacking your images.

Unguided-dither-3.png

  • Max Pixel: Specify the maximum number of pixels that a dithering operation can move the mount
  • From Actual Position: This is the safest and default choice - it sends a command to move the mount up to the specified number of pixels from the current position. This should be a small movement, as the recommended number of pixels to dither is 3
  • From Last Goto Action Position: Send a command to move the mount a random number of pixels up to Max Pixel in a random direction relative to the position of the last Goto action. This should only be used following a successful Goto action in your DragScript. You can damage your mount if you use this without a successful Goto action preceding it.
  • From Last Precision Pointing Action Position: Send a command to move the mount a random number of pixels up to Max Pixel in a random direction relative to the position of the last Precision Pointing action. This should only be used following a successful Precision Pointing action in your DragScript. You can damage your mount if you use this without a successful Precision Pointing action preceding it.
  • Use Actual Position on Empty/Fail condition: If checked, if the position reported by the Last Goto Action or Last Precision Pointing Action is empty, or if the Last Goto Action or Last Precision Pointing Action ended with an error, use the Actual Position of the mount as the starting point for dithering. In other words, don't attempt to dither based on the Last Goto action position or the Last Precision Pointing action position if either of those positions is empty, as this would send a command to the mount that could cause a pier crash and/or damage to your equipment. Highly recommend leaving this checked.
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


Mount

Mount actions send commands to the mount defined in the Mount setup of the active profile:

Dragscript-mount.png

  • Stop Tracking: Command the mount to stop tracking
  • Start Tracking: Command the mount to start tracking
  • Parking: Command the mount to slew to the Park position
  • Unparking: Command the mount to Unpark
  • Sync on Park: Command the mount to save the current position as the Park position
  • Homing: Command the mount to move to the Home position (depends on the driver if the command will work, not all drivers have this command implemented !)
  • Goto RA/DEC: Command the mount to move to the specified RA and DEC coordinates (J2000)

Dragscript-gotoradec.png

  • RA J2000: Enter the RA coordinates in HH MM SS or HH MM SS.sss
  • DEC J2000: Enter the RA coordinates in DD MM SS or DD MM SS.sss
  • Default: Use the default settings: clears the RA and DEC fields
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Goto ALT/AZ: Command the mount to move to the specified Altitude and Azimuth coordinates

Goto-altaz.png

  • ALT: Enter the Altitude coordinates in DD MM SS or DD MM SS.sss
  • AZ: Enter the Azimuth coordinates in DD MM SS or DD MM SS.sss
  • Force Use of Normal RA/DEC Slew With Conversion: If checked, convert the requested ALT and AZ values to RA and DEC values and send a goto RA/DEC command to the mount
  • Default: Use the default settings: clears the AZ and ALT fields
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Goto Near Zenith: Command the mount to move to a point close to the current Zenith (directly overhead).
Important Note! Goto Near Zenith followed by a Blind Solving with Sync action is a good way to initialize your mount's pointing model at the start of a session. It is only a single point, but if your mount is accurately polar aligned, doing this before the first Precise Pointing operation may helps the Precise Pointing to succeed
  • Goto By Name: Command the mount to move to an object by name with an optional RA and DEC offset. This action requires Voyager to be connected to the Planetarium software defined in the current profile. The Object Name must match a name that can be successfully searched in the connected Planetarium software.

Dragscript-gotoname.png

  • Object Name: Name of the object to goto. Must be a name that can be successfully searched in the connected Planetarium software
  • Offset RA (optional): An optional +/- offset in HH MM SS or HH MM SS.sss to be added or subtracted from the RA coordinates returned by the Planetarium software
  • Offset DEC (optional): An optional +/- offset in DD MM SS or DD MM SS.sss to be added or subtracted from the DEC coordinates returned by the Planetarium software


  • Goto By Offset: Command the mount to move from actual position by an RA and DEC offset.

Immagineerferf.png

  • Offset RA : +/- offset in HH MM SS or HH MM SS.sss to be added or subtracted from the actual RA coordinates
  • Offset DEC : +/- offset in DD MM SS or DD MM SS.sss to be added or subtracted from the actual DEC coordinates


  • Precise Pointing: Command the mount to perform a precise pointing operation to the specified RA/DEC coordinates - slew to the object, plate solve to get actual coordinates, re-slew to correct pointing error:

Dragscript-precisepointing.png

  • RA J2000: Enter the RA coordinates in HH MM SS or HH MM SS.sss
  • DEC J2000: Enter the DEC coordinates in DD MM SS or DD MM SS.sss
  • Max Error using Multiple of Profile Error by: If selected, multiply the maximum allowed pointing error by the number specified in the counter field. E.g., if the Precision Pointing Max Allowed Error specified in Mount Setup is 50 arc-seconds, a value of 2 in the counter field here would change the maximum pointing error to 100 arc-seconds. Precise pointing returns an OK (success) result when the error is less than the Max Error.
  • Max Error is: If selected, use the value specified in the counter field as the maximum pointing error in arc-seconds. Precise pointing returns an OK (success) result when the error is less than the Max Error.
  • RoboClip: open RoboClip manager windowd and allow to select a target,
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Precise Pointing by Name: Command the mount to perform a precise pointing operation to the specified named object - slew to the object, plate solve to get actual coordinates, re-slew to correct pointing error. This action requires Voyager to be connected to the Planetarium software defined in the current profile. The Object Name must match a name that can be successfully searched in the connected Planetarium software.
  • Dragscript-precisepointing-name.png
    • Object Name: Name of the object to goto. Must be a name that can be successfully searched in the connected Planetarium software
    • Offset RA (optional): An optional +/- offset in HH MM SS or HH MM SS.sss to be added or subtracted from the RA coordinates returned by the Planetarium software
    • Offset DEC (optional): An optional +/- offset in DD MM SS or DD MM SS.sss to be added or subtracted from the DEC coordinates returned by the Planetarium software
    • Max Error using Multiple of Profile Error by: If selected, multiply the maximum allowed pointing error by the number specified in the counter field. E.g., if the Precision Pointing Max Allowed Error specified in Mount Setup is 50 arc-seconds, a value of 2 in the counter field here would change the maximum pointing error to 100 arc-seconds. Precise pointing returns an OK (success) result when the error is less than the Max Error.
    • Max Error is: If selected, use the value specified in the counter field as the maximum pointing error in arc-seconds. Precise pointing returns an OK (success) result when the error is less than the Max Error.
    • Default: Use the default settings
    • OK: Save changes and close the window
    • Cancel: Discard changes and close the window


  • Precise Pointing Mount & Rotator: Command the mount to perform a precise pointing operation to the specified named object - slew to the object, plate solve to get actual coordinates, re-slew to correct pointing error, rotating the rotator and align to the requested PA within the specified tollerance.
  • PrecisePointingMountRotator.png
    • RA J2000: Enter the RA coordinates in HH MM SS or HH MM SS.sss
    • DEC J2000: Enter the DEC coordinates in DD MM SS or DD MM SS.sss
    • Max Error using Multiple of Profile Error by: If selected, multiply the maximum allowed pointing error by the number specified in the counter field. E.g., if the Precision Pointing Max Allowed Error specified in Mount Setup is 50 arc-seconds, a value of 2 in the counter field here would change the maximum pointing error to 100 arc-seconds. Precise pointing returns an OK (success) result when the error is less than the Max Error.
    • Max Error is: If selected, use the value specified in the counter field as the maximum pointing error in arc-seconds. Precise pointing returns an OK (success) result when the error is less than the Max Error.
    • Rotation Angle: an arbitrary angle that can be a Rotator PA or Sky PA, depends on following setting.
    • Rotation Type: define if the rotation angle is the rotator angle (rotator PA) reported from the driver (and with offset if asked to Voyager in Sync) or the Sky angle (Sky PA) chosen with web dashboard VirtualFOV or planetarium or another system. If you select Sky PA Voyager will use the Plate solve PA result to rotate the rotator to the right angle. If you select the Rotator PA Voyager will just rotating rotator using drive angle at desidered value, no correction using the plate solved PA will be done
    • PA Tollerance +/-: if the PA of rotator is inside the interval given the position will be declared ok and rotator will not be rotate.
    • Rotator & Meridian Flip: "Mantain the Same Image Orientation After the Meridian" if checked force Voyager to shot the target with same orientation in the images taken before anf after meridian. In this case if you have chosen Rotator PA like Rotation type the rotator will be flipped if the mount is after the meridian, if you chosen Sky PA the PA will retained also after the meridian triggering a rotator flip.Use this flag is useful also to use always the same guide star in case of use of OAG or system with high focal lenght.
    • RoboClip: open RoboClip manager windowd and allow to select a target, with RA and DEC will be also acquired the PA
      • Default: Use the default settings
      • OK: Save changes and close the window
      • Cancel: Discard changes and close the window


  • Stop Tracking (Only FS2 Mount): Command an FS2 mount to stop tracking
  • Start Tracking (Only FS2 Mount): Command an FS2 mount to start tracking
  • FS2 Meridian Flip WEST: Command an FS2 mount to perform a meridian flip to the West
  • FS2 Meridian Flip EAST: Command an FS2 mount to perform a meridian flip to the East
  • Connect Maxim Telescope: Connect the Telescope/Mount defined in Maxim DL configuration (you must have camera configured in Voyager like Maxim DL)
  • Disconnect Maxim Telescope: Disconnect the Telescope/Mount defined in Maxim DL configuration (you must have camera configured in Voyager like Maxim DL)
    Important Note! The FS2 Mount commands should only be used if your mount is controlled by the Astro Electronic FS2 motor control system. Using these commands with other mounts may fail and cause damage to the mount and other equipment

Dome

Dome actions send commands to the dome defined in the Dome Setup area of the active profile:

Dragscript-dome-217d.jpg

  • Open Shutter: Command the dome's shutter or the observatory's roll-off roof to open
  • Close Shutter: Command the dome's shutter or the observatory's roll-off roof to close
  • Dome Slave ON: Send a command to the dome software to "Slave" to the mount. The dome's azimuth position will track with the mount's movements in azimuth
  • Dome Slave OFF: Send a command to the dome software to turn off "Slave" to the mount. The dome's azimuth position will stop tracking the mount's azimuth movements
  • Dome Goto Azimuth: Command the Dome to rotate to the specified Azimuth

Dragscript-dome-az.png

  • Azimuth: Azimuth position the mount should move to in degrees
  • Cancel: Discard changes and close the window
  • OK: Save changes and close the window


  • Dome Find Home: Command the dome to find its Home position. If your dome supports the Find Home command, the dome moves to a known position
  • Dome Park: Send a Park command to the dome.
  • Dome Unpark: Send an Unpark command to the dome


Camera

Camera actions can control the camera's cooling system and take exposures

Dragscript-camera.png

  • Cool Down: Command the camera's cooling system to cool down to a desired temperature:

Dragscript-cooldown.png

  • Final Temperature: Desired sensor temperature in °C
  • Use Variable: check this flag if you want to set the cooling temperature reading the value inside the variable selectable in the drop-down combo instead to use a fixed value
  • Async Cooling: If checked, command the cooling system to go to the Final Temperature and do not wait for the cooling system to report that it has reached the desired temperature
  • Use CCD Firmware Cooldown: If selected, let the CCD's cooling system manage the speed of the cooldown process
  • Use Voyager Ramp Mode Cooldown: If selected, let Voyager's cooldown process manage the speed of the cooldown process. Voyager's process is defined in Camera Setup
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Warmup: Command the camera's cooling system to warmup

Dragscript-warmup.png

  • Async Cooling: If checked, command the camera's cooling system to warmup and do not wait for the warmup operation to finish
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Expose: Take an exposure

Dragscript-expose-216d.jpg

  • Exposure Type: Choose Light, Bias, Dark or Flat from the drop-down list
  • Filter Index: Choose the filter for the exposure from the drop-down list
  • Expose: Enter the exposure length in seconds in the counter field
  • Use Variable: select if you want to get the exposure time from the decimal variable selected in the near list control
  • Binning: Select the binning level for the exposure from the counter field
  • SubFrame: Select the frame size from the drop-down list: Full Frame, 1/2, 1/4, 1/8, 1/16 or CUSTOM. If you select CUSTOM subframe size, enter the desired subframe size in percent in the counter field that appears
  • Gain: Set the camera's Gain value to the number in the spinner control. Works only if you are using the ASI Camera native driver.
  • Offset: Set the camera's Offset value to the number in the spinner control. Works only if you are using the ASI Camera native driver.
  • File Directory: Click the folder icon to select the folder where Voyager should save the image resulting from this exposure
  • File Name: Enter the file name to use when saving the image resulting from this exposure
  • Make Unique File Name: If checked, add a suffix to the file name if needed to avoid overwriting an existing file
  • FIT Object Name: The name to use to populate the OBJECT field in the FITS header
  • FIT Airmass calculation: Compute the current airmass value and add to the FITS file header. Airmass is the amount of atmosphere you are imaging through. It is one when imaging directly overhead, and increases as you image closer to the horizon.
  • Focuser Position Add to FIT Name: add the focuser position to the FIT name, only if you are using RoboFire like Autofocus control in Voyager
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window
  • TheSkyX/64 Camera FW Reconnect: Reconnect camera and filterwheel if the control used for camera in Voyager is TheSkyX or TheSky64


Important Note! Dragscript editor doesn’t have access to profile configuration, for this reason you dont find setting about readout mode and speed in exposure block. Exposure block use auto mode of readout mode and default speed mode. This mean chooses are based on shot type and binning. It retrieve automatically the correct values you set up on Voyager camera setting tab.


Important Note! Filter labels are shown in this dialog if the DragScript editor is opened from Voyager and filter labels are defined in the current profile. Otherwise only filter indexes are shown. The first filter is index zero (0)


Important Note! If you check the use variable flag the exposure time used for the exposure will be added to the name of FIT file


AutoFocus

These DragScript commands perform Voyager's autofocus operations:

Dragscript-autofocus.png

  • AutoFocus with RoboStar: perform an autofocus operation using Voyager's RoboStar method to choose the focus star:

Dragscript-autofocus-robostar.png

  • Monochromatic Camera: Select if a monochrome camera is connected. Select a filter to use for the autofocus operation from the drop-down list
  • DSLR/Color Camera: Select if a DSLR or Color (OSC) camera is connected
  • No Filter: Select if a monochrome camera is connected without filters
  • Use Low Precision Pointing: If checked, Voyager's RoboStar operation will slew to the focus star with a more relaxed precision pointing operation. Specify the multiple for the maximum allowed precision pointing error in the counter field. E.g., if the precision pointing max allowed error configured in Mount Setup is 50 arc-seconds, a "Multiple Max Allowed Error by" setting of two would relax the maximum allowed pointing error to 100 arc-seconds
  • AutoFocus OnPlace: Perform the autofocus operation at the current scope location. Do not use RoboStar to select a focus star
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Simple Goto RoboStar Star: Perform a simple goto operation to move the mount to the focus star selected by RoboStar:

DSSimpleGotoRoboStar.png

  • Monochromatic Camera: Select if a monochrome camera is connected. Select a filter to use for the precise pointing operation from the drop-down list
  • DSLR/Color Camera: Select if a DSLR or Color (OSC) camera is connected
  • No Filter: Select if a monochrome camera is connected without filters
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Precise Pointing RoboStar Star: Perform a precise pointing operation to move the mount to the focus star selected by RoboStar:

Dragscript-precisepointing-robostar.png

  • Monochromatic Camera: Select if a monochrome camera is connected. Select a filter to use for the precise pointing operation from the drop-down list
  • DSLR/Color Camera: Select if a DSLR or Color (OSC) camera is connected
  • No Filter: Select if a monochrome camera is connected without filters
  • Use Low Precision Pointing: If checked, Voyager will slew to the focus star with a more relaxed precision pointing operation. Specify the multiple for the maximum allowed precision pointing error in the counter field. E.g., if the precision pointing max allowed error configured in Mount Setup is 50 arc-seconds, a "Multiple Max Allowed Error by" setting of two would relax the maximum allowed pointing error to 100 arc-seconds
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • RoboFire Focuser Move To: Move the focuser to a specified absolute or relative position:

Dragscript-robomove.png

  • Position: Desired focuser position in steps
  • Mode: Choose absolute or relative
    • Absolute: Command the focuser to move to the specified position. Your focuser must support absolute positioning.
    • Relative: Command the focuser to move in or out by the specified number of steps. Negative numbers move the focuser IN and positive move it out, unless you specify "Reverse Focuser Direction" in Autofocus Setup
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • RoboFire Focuser Move From Variable: Move the focuser to an absolute or relative position stored in a variable:

Dragscript-robomove-variable.png

  • Get Position From Variable: select the variable that contains the position
  • Mode: Choose absolute or relative
    • Absolute: Command the focuser to move to the specified position. Your focuser must support absolute positioning.
    • Relative: Command the focuser to move in or out by the specified number of steps. Negative numbers move the focuser IN and positive move it out, unless you specify "Reverse Focuser Direction" in Autofocus Setup
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window
Important Note! Be sure to select the right Variable and that the variable is valorized before using this block or you can lost focus. Be sure also to have inserted limits on RoboFIre configuration to avoid damage to your focuser.


  • AutoFocus with RoboFire LocalField: Perform Voyager's LocalField (multiple star) autofocus routine

Dragscript-localfield.png

  • Monochromatic Camera: Select if a monochrome camera is connected. Select a filter to use for the precise pointing operation from the drop-down list
  • DSLR/Color Camera: Select if a DSLR or Color (OSC) camera is connected
  • No Filter: Select if a monochrome camera is connected without filters
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


Rotator

Rotator actions can move the rotator to a specified Position Angle or flip the rotator 180 degrees:

Dragscript-rotator.png


  • Rotator Move To: Move the rotator to the specified position angle in degree
    • Dragscript-rotatormove.png
      • PA: Move the rotator to this Position Angle in degrees
      • OK: Save changes and close the window
      • Cancel: Discard changes and close the window
  • Rotator 180° Flip: Move the rotator to a position 180 degrees opposite its current position
  • Rotator Sync: Synchronize the mechanical position to the submitted position (create an offset to the mechanical position)
    • RotatorSyncBlockConf.png
      • Rotator Sync To: with this option Voyager will sync the rotator PA to the PA in the next field
      • PA: Position Angle to use for sync
      • Use Variable: get PA value from the selected variable
      • Reset Rotator Sync: with this option Voyager will reset the Sync (remove the offset applied to the mechanical position of rotator)
      • Default: reset all parameters in the form to the default values
      • Cancel: exit from the configuration form without saving anything
      • OK: accept the inserted value and store data
  • Precise Rotate SkyPA: Move the rotator to the specified SkyPA position
    • PRSKYPADS.png
      • Rotation Angle: SKY PA in degree to use for positioning the rotator
      • PA Tollerance +/-: max allowed difference in degree between solved PA and requested PA
      • Save Final Rotator PA to this DragScript Decimal: if flagged save the Rotator PA degree of pointing (if positioned ok) to the decimal variable selected in the combobox
      • OK: Save changes and close the window
      • Cancel: Discard changes and close the window

Flat Device

Flat Device commands can open and close the flat device cover:

Dragscript-flat-device.jpg

  • Open Flat Device Cover: Command the flat device to open
  • Close Flat Device Cover: Command the flat device to close
  • Switch On Light Flat Device: Turn the light on for the specified Flat Device

Dragscript-switch-on-flat-device.jpg

  • Device ID: Choose the Flat Device number to control with this command. See Flat Device Setup for more information on flat devices.


  • Switch Off Light Flat Device: Turn the light off for the specified Flat Device

Dragscript-switch-off-flat-device.jpg

  • Device ID: Choose the Flat Device number to control with this command. See Flat Device Setup for more information on flat devices.


  • Select Brightness Flat Device: Set the brightness level for the specified Flat Device.

Dragscript-select-brightness.jpg

  • Device ID: Choose the Flat Device number to control with this command. See Flat Device Setup for more information on flat devices.
  • Brightness: Brightness level for the specified Flat Device.
Important Note! If you have a flat device that can open and close, don't forget to issue an Open Flat Device command in your DragScript before taking exposures including plate solving and autofocus!

Script

The Script action can run an external script or program:

Dragscript-script-external.png

External-script-1.png

  • File Program/Script: Click the folder icon to select the program or script to run
  • Arguments: Command line arguments to be passed to the program or script when invoking it
  • Wait For Program/Script: If checked, wait for the program or script to return before continuing (synchronous execution)
  • On Timeout Kill Program/Script: If checked, and the "Wait for Program/Script" option is checked, and the "Wait / Timeout" time period has elapsed, terminate the external program or script
  • Return OK to DragScript Engine only if Script return this: If checked, the script or program must return the value specified in the text field in order for this action to be considered a success and return OK
  • Save External Script output to this DragScript String: If checked, store the value that the external script or program returns in STDOUT to the DragScript string variable chosen from the drop-down list
  • Save External Script output to this DragScript Decimal: If checked, store the value that the external script or program returns in STDOUT to the DragScript decimal number variable chosen from the drop-down list
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window
Important Note! Voyager will only terminate the specified program or script when the timeout period expires. If the called program calls other programs, they will not be terminated by Voyager


Important Note! If the value returned from STDOUT is stored in a DragScript decimal number, be sure that the number returned uses a period as the decimal point separator


Example of Use

In this example, we call a Python script located in the directory d:\VScheduler\Scheduler.py, and wait up to 10 seconds for the script to complete.

The Python script writes a value to STDOUT with this code:

import sys

sys.stdout.write('RUN')

sys.stdout.flush()

We store that value in the SchedulerResult DragScript string variable. We can then make decisions in the DragScript using the DO IF STRING VALUE statement.

Script-scheduler-example.jpg


Timing

Timing actions inform DragScript to wait before performing an action. You can wait for a time interval, an absolute time to be reached, astronomical night with an offset, or for an object to reach a desired altitude:
Dragscript-timing-211a.jpg

  • Wait Time: Wait for a specified time to arrive or to elapse

Dragscript-waittime.png

  • Interval/Time: Enter a time in HH MM SS.
  • Wait Type: Chose Absolute or Relative
    • Absolute: Wait until this absolute time is reached. If the time specified is more than 12 hours in the future, Voyager will assume this time has passed and will not wait. For example, if the specified time is 20:00:00 and this action is executed at 20:15:00, Voyager will not wait because that would cause a wait until tomorrow night, which is probably not what you intended
    • Relative: Wait for this amount of time to elapse
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Wait Altitude: Wait until the object at the given RA and DEC coordinates reaches the specified altitude, either rising or setting:

Dragscript-wait-altitude.png

  • RA Target J2000: RA coordinates of the object you want to reach the Reference Altitude in HH MM SS or HH MM SS.sss
  • DEC Target J2000: DEC coordinates of the object you want to reach the Reference Altitude in DD MM SS or DD MM SS.sss
  • Reference Altitude: Altitude to reach in degrees
  • Exit Wait if Actual Altitude GREATER than or EQUAL (>=) to reference: Wait until the target rises above the reference altitude
  • Exit Wait if Actual Altitude LOWER than or EQUAL (>=) to reference: Wait until the target sets below the reference altitude
  • Wait Altitude until absolute time: The Wait Altitude operation will terminate when this time is reached, whether or not the target has reached the reference altitude. This is usually done to end the wait with morning light
  • Activate Antiglitch Altitude Reading System: set the flag if you want to activate an AntiGlitch system to avoid glitchy readings of values from mount drivers that have undeclared bugs (3 continuous readings are done to get the OK). Sometime happens in buggy drivers a single reading is damaged and trigger the OK to wait altitude status. I fyou have this problem activate the flag but report the problem to the mount driver developer.
  • RoboClip: load RA and DEC from RoboClip catalog
  • Coords From Sequence: load RA and DEC from a sequence file
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


  • Wait Astronomical/Nautical/Civil Night: Wait until astronomical/nautical/civil night, with an optional offset:

Dragscript-wait-night.png

  • Get Latitude and Longitude from Mount: Retrieve the current latitude and longitude from the connected mount, which must support this command. This location is used, along with the current date, to determine the time that night begins
  • Use the Latitude and Longitude indicated below: Specify your current latitude and longitude in the fields below. This location is used, along with the current date, to determine the time that night begins
  • Offset: Time in HH MM SS
    • Offset Before: If selected, exit the wait this amount of time before night
    • Offset After: If selected, exit the wait this amount of time after night
  • Exit with ERROR if Wait Time is Greater than: if this option is flag the DragScript will exit with Error if the time wait for the begin of the next astronomical night is greater than the value in hour expressed in the numeric edit. Useful if you want to detect that the actual night is already finished and the dragscript can exit otherwise without this flag the next astrnomical night will be waited
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window
  • Wait Dusk
    Dragscript-wait-dusk.jpg
  • Get Latitude and Longitude from Mount: Retrieve the current latitude and longitude from the connected mount, which must support this command. This location is used, along with the current date, to determine the time that dusk begins
  • Use the Latitude and Longitude indicated below: Specify your current latitude and longitude in the fields below. This location is used, along with the current date, to determine the time that dusk begins
  • Offset: Time in HH MM SS
    • Offset Before: If selected, exit the wait this amount of time before dusk
    • Offset After: If selected, exit the wait this amount of time after dusk
  • Save Time to Event (minutes) in Decimal: Save the computed time until Dusk in a decimal variable. See the DragScript example below for one way to use this.
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


You can configure the time at which dusk begins in the SkyFlat section of Flat Device Setup.

Important Note! If dusk (plus or minus the offset if one is specified) has already passed, Wait Dusk returns OK if it has been less than 12 hours since dusk, else it returns ERROR if has been more than 12 hours


  • Wait Dawn

Wait-dawn-2.jpg

  • Get Latitude and Longitude from Mount: Retrieve the current latitude and longitude from the connected mount, which must support this command. This location is used, along with the current date, to determine the time that dawn begins
  • Use the Latitude and Longitude indicated below: Specify your current latitude and longitude in the fields below. This location is used, along with the current date, to determine the time that dawn begins
  • Offset: Time in HH MM SS
    • Offset Before: If selected, exit the wait this amount of time before dawn
    • Offset After: If selected, exit the wait this amount of time after dawn
  • Save Time to Event (minutes) in Decimal: Save the computed time until dawn in a decimal variable. See the DragScript example below for one way to use this.
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


You can configure the time at which dawn begins in the SkyFlat section of Flat Device Setup.


Important Note! If dawn (plus or minus the offset if one is specified) has already passed, Wait Dawn returns OK if it has been less than 12 hours, else ERROR if more than 12 hours


  • Wait Safe: Wait Safe Condition wait the safe condition before allow dragscript to execute net instruction. During the wait the events like Emergency Exit and Emergency suspend will be disabled and not managed. Just to remember you emergency events can coming from Viking I/O, Safe Monitor control, Weather Condition control. Like said this action will forcing event disable until exit for timeout or for safe. So be sure to have the observatory on the right configuration to avoid weather damage (closed and all parked). This action allow Voyager to run forever DragScript in case of no emergency exit. Can wait a time or an interval or the presence of astronomical/nautical/civil night, with an optional offset. Usually this is the first action in a script, its a good thing to put the Start node in Event disabled mode when you are manage the events in your DragScript. Also remember that the event at exit of this action will be restored to the original status, if they are disabled they will be leave disable or viceversa. We suggest also generally in dragscript to disable events during an atomic tasks like the opening observatory and connect setup to avoid interruption not really needed with impredictable results. If the action finish for wait will produce a status of TIMEOUT to the DragScript, if the action finish for one of the exit options will produce a status of ERROR to the DragScript, if the action found a SAFE status inside the wait option will produce a status of OK to the DragScript. You can decide if repeat the the action in a never ending loop (if you use night this mean to wait for the next night if you not check the exit ERROR options) or simple end the DragScript if you start DragScript night by Night. Rember that an Emergency Exit in any case will exit the DragScript.
Important Note! Wait SAFE Cannot be used inside the Event Manager (Exit, Suspend, Resume)


DSWaitSafe.png

  • Wait SAFE until finish Night: this option wait SAFE status until on eof specified kind of Nights is finished
    • Get Latitude and Longitude from Mount: Retrieve the current latitude and longitude from the connected mount, which must support this command. This location is used, along with the current date, to determine the time that astronomical night begins and end
    • Use the Latitude and Longitude indicated below: Specify your current latitude and longitude in the fields below. This location is used, along with the current date, to determine the time that astronomical night begins and end
    • Night TYPE: the night to wait between Astronomical (Astrophotographers dark night -18° sun) , Nautical (-12° sun), Civil (-6° sun)
    • Offset: Time in HH MM SS
      • Offset Before: If selected, exit the wait this amount of time before astronomical night
      • Offset After: If selected, exit the wait this amount of time after astronomical night
  • Wait SAFE until absolute time: this option wait SAFE status until the absolute time you put inside the hh mm ss field
  • Wait SAFE for a time interval of: this option wait SAFE status until the amount of time in the interval will be elapsed
  • EXIT Options: with this options you can decide to exit with ERROR it the conditions inside is true
    • Exit with ERROR if the Astronomical Night has ended less than: if this option is flag the DragScript will exit with Error if the astronomical night is ended by the time in hh field. This work and be active only if you use Wais SAFE with astronomical night. This flag enabled prevento to wait for the next night if the night is finished and you want to shutdown all without wait the next night.
    • Exit with ERROR if Wait Time is greater than: if this option is flag the DragScript will exit with EORR if the time to wait is greater than the value in the hh field. This option is active only if you choose the Wait SAFE until absolute time. Useful if you dont wait over a certain time span.
  • EVENT CHECK options: with this option you can decide to remove from processing status of SAFE some kind of events that will be ignored (event in any case are disable during the wait safe action)
    • Check Emergency Exit Status in SAFE status calculation: if unchecked the condition that throw an Emergency Status will be ignored in calculation of SAFE Staus . ATTENTION !! this is a way really dangerous for your setup .. use only if you want to wait safe in particular condition , particular timing and for particular tasks
    • Check Emergency SUSPEND Status in SAFE status calculation: if unchecked the condition that throw an Emergency Status will be ignored in calculation of SAFE Staus . ATTENTION !! this could be a way really dangerous for your setup .. use only if you want to wait safe in particular condition , particular timing and for particular tasks.
  • LIGHT CONDITIONS options: with this option you can decide to remove from processing status of SAFE the LIGHT Conditions status
    • Remove Weather LIGHT Conditions Status From Calculation of All Emergency Status: if unchecked the LIGHT conditions from Weather system will be not used to calculate the SAFE Status. Usefull if you want to open the dome with the light approaching the night time and do skyflat. For the Dawn flat you can decide to disable the LIGHT event using dedicated block
  • MOON PHASE Options (Only for ADVANCED and FULL License Voyager versions): useful to ignore Safe status if the Moon Phase is over certains value
    • Unsafe if Moon Phase equal or greater than: if checked Voyager will check the Moon Phase and if the value is equal or greater than the one indicated will return Unsafe to Emergency Events system
  • Default: Use the default settings
  • OK: Save changes and close the window
  • Cancel: Discard changes and close the window


Using the Time to Event Value in a DragScript

Here's an example of using the Save Time to Event (minutes) value in a DragScript.

The basic idea is that you can decide whether or not to execute any actions based on how many minutes there are until or after dawn or dusk.

Dragscript-wait-dawn-2.jpg

The decimal variable "Minutes Before Event" is initialized to 0.

The Wait Dawn: Data from connected Setup - Offset (Before) 00:15:00 [hh:mm:ss]>>Minutes Before Event action waits until 15 minutes before dawn, and then puts the value 15 into the variable Minutes Before Event

The DO IF DECIMAL VALUE block will execute if the Minutes Before Event variable is between 0 and 15. If not, control passes to the End block.

The Goto Block: DAWN FLAT statement sends control back to that block, and the minutes before or after dawn are computed again and stored in the Minutes Before Event variable.

If it is after dawn when the Wait Dawn action runs, the value stored in Minutes Before Event will be negative, and the DO IF DECIMAL VALUE statement will not run.



Signals

Signals actions let you send notifications via email, Skype or SMS:


Dragscript-signals.png

Important Note! As of Voyager 2.1.4a, you can use the Save without Personal Info button to save a copy of your DragScript with all personal info (email addresses, email account logins, phone numbers, etc.) deleted. Use this save mode before posting a script online or sharing with others.

Dragscript-editor-toolbar-3.png

Use button 5 to save your DragScript with the personal info deleted for any of the actions in this group (Signals).


  • Send Email using Voyager Account: Send an email using Voyager's email account. You must have an active support and update Voyager license to use this option and an Internet connection

Dragscript-send-email.png

  • Mail to: Email address to send to
  • Object: Subject line of email TYPO: Should be Subject instead of Object
  • Text: Body of email
  • Cancel: Discard changes and close the window
  • OK: Save changes and close the window
  • JOLLY Strings:there are some special strings called jolly that can be used in mail text and will be replaced with some data from Voyager environment or DragScript variables
    • Internal IPs: ##INTERNAL-IP## write a list of all internal IPs avalaible in the system
    • External IP: ##EXTERNAL-IP## write a list of external IP assigned to your PC(router) if you have internet connection up
    • NOW: ##NOW## write the actual date and time
    • Mount Altitude: ##MOUNT-ALT## write the actual altitude of Telescope Mount if connected
    • Mount Azimuth: ##MOUNT-AZ## write the actual azimuth of Telescope Mount if connected
    • Variable: ##VAR-name## where you must replace the name with the real name of your variable (case sensitive) , write the actual value of you variable (decimal, string or counter)


  • Send Email: Send an email notification using a specified email server and account. Requires an Internet connection

Dragscript-sendemail.png

  • Mail From: Email address this message is from
  • Mail to: Email address to send to
  • Object: Subject line of email TYPO: Should be Subject instead of Object
  • Text: Body of email
  • SMTP User: Username to login to SMTP (mail) server. Check with your local ISP or network administrator if you don't know how to login to your SMTP server to send email
  • SMTP Password: Password to login to your SMTP (mail) server
  • SMTP Server: Hostname or IP address of your SMTP (mail) server
  • SMTP Port: Port number of your SMTP (mail) server
  • Use SSL: If checked, use an SSL (secure) connection to your mail server
  • GMAIL: Click this button to use the SMTP server and port information for Google Gmail
  • HOTMAIL: Click this button to use the SMTP server and port information for Microsoft Hotmail
  • Cancel: Discard changes and close the window
  • OK: Save changes and close the window
  • JOLLY Strings:there are some special strings called jolly that can be used in mail text and will be replaced with some data from Voyager environment or DragScript variables
    • Internal IPs: ##INTERNAL-IP## write a list of all internal IPs avalaible in the system
    • External IP: ##EXTERNAL-IP## write a list of external IP assigned to your PC(router) if you have internet connection up
    • NOW: ##NOW## write the actual date and time
    • Mount Altitude: ##MOUNT-ALT## write the actual altitude of Telescope Mount if connected
    • Mount Azimuth: ##MOUNT-AZ## write the actual azimuth of Telescope Mount if connected
    • Variable: ##VAR-name## where you must replace the name with the real name of your variable (case sensitive) , write the actual value of you variable (decimal, string or counter)


  • Start Skype Call: Start a Skype call from the computer running Voyager. Requires an Internet connection

Dragscript-skype.png

  • Phone Number to Call: Phone number or Skype name to call using Skype
  • After Command Wait: Time in seconds to wait after sending the command before timing out if no response from Skype
  • After leave ringing for: Time in seconds to wait after Skype places the call and the remote phone starts to ring
  • Skype Exe Directory: Location of Skype program on this computer
  • Find Skype: Look for Skype program on this computer and fill out the Skype Exe Directory if found
  • Test: Try to make a Skype call using the information in this dialog window
  • Cancel: Discard changes and close the window
  • OK: Save changes and close the window


  • Send SMS with Nexmo

Dragscript-nexmo.png

  • Source Number or Name: Phone number of sender, or name of sender. For country like USA this is a constraint to use (phone number) to avoid error in transmission (from Voyager version 2.2.1d)
  • To Telephone Number: Phone number to send SMS message to
  • Text: Body of SMS messages
  • API Key: API Key for Nexmo service - you must sign up at https://www.nexmo.com/ to get an API key and secret
  • API Secret: API Secret for Nexmo service
  • Cancel: Discard changes and close the window
  • OK: Save changes and close the window
  • JOLLY Strings:there are some special strings called jolly that can be used in mail text and will be replaced with some data from Voyager environment or DragScript variables
    • Internal IPs: ##INTERNAL-IP## write a list of all internal IPs avalaible in the system
    • External IP: ##EXTERNAL-IP## write a list of external IP assigned to your PC(router) if you have internet connection up
    • NOW: ##NOW## write the actual date and time
    • Mount Altitude: ##MOUNT-ALT## write the actual altitude of Telescope Mount if connected
    • Mount Azimuth: ##MOUNT-AZ## write the actual azimuth of Telescope Mount if connected
    • Variable: ##VAR-name## where you must replace the name with the real name of your variable (case sensitive) , write the actual value of you variable (decimal, string or counter)


Important Note! Nexmo is an online service that offers voice and data communication. To use Nexmo from Voyager you must register at their site at https://www.nexmo.com


  • Send Telegram
  • Text: message
  • API ID: API ID (token create during the chatbot) of your Telegram user
  • Chat ID: ID number assigned to chatbot created, you can get opening the link https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates
  • Cancel: Discard changes and close the window
  • OK: Save changes and close the window
  • JOLLY Strings:there are some special strings called jolly that can be used in mail text and will be replaced with some data from Voyager environment or DragScript variables
    • Internal IPs: ##INTERNAL-IP## write a list of all internal IPs avalaible in the system
    • External IP: ##EXTERNAL-IP## write a list of external IP assigned to your PC(router) if you have internet connection up
    • NOW: ##NOW## write the actual date and time
    • Mount Altitude: ##MOUNT-ALT## write the actual altitude of Telescope Mount if connected
    • Mount Azimuth: ##MOUNT-AZ## write the actual azimuth of Telescope Mount if connected
    • Variable: ##VAR-name## where you must replace the name with the real name of your variable (case sensitive) , write the actual value of you variable (decimal, string or counter)

Guide to obtain API ID and Chat ID :

  1. Download the Telegram APP on your mobile phone and register
  2. Open a chat with @BotFather and type /newbot to create a new private bot
  3. You will be asked for a friendly name - choose whatever you like, e.g. VoyagerMessages
  4. You will be given an "API Token" - save this somewhere - it is what you will enter as the API ID in your DragScript action, as shown above
  5. In your browser (can be on a desktop, doesn't have to be on your phone) open the link https://api.telegram.org/botYOUR-TOKEN/getUpdates replacing YOUR-TOKEN with the API Token
  6. You will get a short message that starts with {"ok":true. It won't have the Chat ID yet - this is OK
  7. Go back to Telegram and find the last message from @BotFather that starts with "Congratulations on your new bot. You will find it at ..." Click on that link and a new message room will open in Telegram, talking to your bot
  8. Type at least one message - a simple "hello" will do
  9. Go back to the browser page you opened in step 5 and hit reload - now you should see more characters including a long number after "from":{"id": That number is the Chat ID, which you use in your DragScript Send Telegram action as shown above
  10. If you don't see the Chat ID, try sending a couple more messages to your bot in Telegram and then quickly reload your browser until you get the ID
  11. That's it - you can now use the API ID and Chat ID to send Telegram messages from your DragScript


User Manual Input

User manual input actions allow interactions between Voyager and the user:


DragScriptUserInter.png


  • Wait User OK: Ask to the user with a windows prompt to press a button on the screen to continue or to abort and also its possible to activate a timeout during waiting of the user interaction
  • DragScriptWaitUser.png
  • Wait Mode: how the wait will be work
  • Use Timeout of: with this option the wait will finish in anycase after the seconds selected
  • In case of timeout exit with: if the Use timeout of option will be used then exit can be selected between TIMEOUT or OK action result, this result will be usable in the DragScript using the IF condition related to actions
  • No Timeout: with this option the wait will be for ever until physically user press the button on the screen
  • Message: show a text message inside window prompt to the user
  • Show Variable Value: show a text rappresentation of the variable selected inside window prompt to the user
  • Wait User DATA: Ask to the user with a windows prompt to input data (DECIMAL,STRING, COUNTER depends on type of variable used for storage) to continue or to abort and also its possible to activate a timeout during waiting of the user interaction. The inpout data will be stored in the selected variable.
  • Immaginewefwef.png
  • Wait Mode: how the wait will be work
  • Use Timeout of: with this option the wait will finish in anycase after the seconds selected
  • In case of timeout exit with: if the Use timeout of option will be used then exit can be selected between TIMEOUT or OK action result, this result will be usable in the DragScript using the IF condition related to actions
  • No Timeout: with this option the wait will be for ever until physically user press the button on the screen
  • Message: show a text message inside window prompt to the user
  • Show Variable Value: show a text rappresentation of the variable selected inside window prompt to the user
  • Insert Data in Variable: the data in input from the user will be stored in the selected DragScript variable (variable must be declared before use it in DragScript). Based on type of DragScript Variable the edit mask of input field will be adapted.
Important Note! if you using No Timeout option you must be really to be present in front of your PC to continue

Optec Perseus

Optec Perseus actions allow to interact with the hardware Port Instrument Selector from Optec :


OptecPer1.png


  • Optec Perseus Read Device Info: ask information about device and save it in environment variables of DragScript
  • Optec Perseus Read Device Status: ask status of device and save it in environment variables of DragScript
  • Optec Perseus Homing: command to device to Homing
  • Optec Perseus Set Port: rotate device to select the port selected index
    • OptecPer2.png
    • Port: port index to select


Important Note! ASCOM Switch driver of Optec Perseus must be installed in order to allow working the DragScript Blocks

Donuts

Donuts actions allow to interact with the software Donuts developed by Kames MacCormac, used for advanced research pointing, code here https://github.com/jmccormac01/Donuts :


DonutsSection.png

  • Donuts Calibration: ask to Donuts process to performe a Calibration using camera and mount