DefaultBackground
DefaultColor
TitleColor
BorderColor
MenuColor
DisplayColor
SelectColor
CurrentColor
SelectBackground
based on:
BLACK=0,Both
BLUE=1,Both
GREEN=2,Both
CYAN=3,Both
RED=4,Both
MAGENTA=5,Both
BROWN=6,Both
LIGHTGRAY=7,Both
DARKGRAY=8,Foreground only
LIGHTBLUE=9,Foreground only
LIGHTGREEN=10,Foreground only
LIGHTCYAN=11,Foreground only
LIGHTRED=12,Foreground only
LIGHTMAGENTA=13,Foreground only
YELLOW=14,Foreground only
WHITE=15,Foreground only
BLINK=128,Foreground only
DisplayOpeningMsgs: if set to zero, opening and closing messages are suppressed
MoveHsMsgDeg: how long of a slew allowed before a confirming message is displayed
InterfacePath: location of controlling planetarium software program, ie, c:\guide\
HandPadPresentFlag: if 1 then handpad present, if 0, then handpad not present and handpad is ignored. If the handpad is not connected or in an error condition at program startup, it is ignored.
IACA_Flag: if 1, use IACA to communicate with other IACA aware programs
AltLowLimitDeg, AltHighLimitDeg, AzLowLimitDeg, AzHighLimitDeg: these limits are active only when HsTimerFlag is set to 1 (on); if HsTimerFlag is on and desiring to disable the alt limits, set both alt limits to 0; if HsTimerFlag is on and desiring to disable the az limits, set both az limits to 0
Siderostat: set to 0 if standard equatorial or altazimuth mount, set to 1 if you are using a siderostat or uranostat flat to focus light into a stationary telescope tube; you must set AzLowLimitDeg to about 90, AzHighLimitDeg to about 270, where due south is about 180, the difference between the limits must be 180 deg or less. This allows the altitude to exceed 90 deg, otherwise the flat mirror will attempt to flip upside down when aimed at northly objects.
HomeAltDeg, HomeAzDeg: these are the home, or park coordinates
MsArcsecSec: microstepping speed when the hand paddle is used to center objects, can be changed while the program is running
BacklashMsArcsecSec: backlash takeup microstepping speed, cannot be changed while the program is running
AltFullStepSizeArcsec, AzFullStepSizeArcsec: these are the step sizes for the altitude and azimuth steppers. The altitude is measured by using a precision level to set the tube horizontal, resetting alt to 0, then moving the scope via the motors until the precision level indicates the tube is exactly vertical. The ratio between the displayed alt and 90 degrees is the amount to adjust the step size by. Similarly, one complete turn in azimuth can be used to adjust the azimuth step size
RefractFlag: 1 if you wish refraction to be used, 0 if you wish refraction to be display only
AltBacklashArcmin, AzBacklashArcmin: these are backlash values (if left 0, backlash is disabled)
GuideArcsecSec: guiding correction speed, can be changed while the program is running
The following are drift rates that a star will be dragged across an
autoguider with knife-edge detector. These autoguiders work by expecting
the tracking rate to be slightly off guaranteeing that the star will always
eventually move across the knife-edge. When the star crosses the
knife-edge the autoguider gives it a little kick in the opposite direction,
then waits for the star to reappear.
GuideDragAltArcsecPerMin
GuideDragAzArcsecPerMin
GuideDragRaArcsecPerMin
GuideDragDecArcsecPerMin
AutoAltPECSyncOnFlag: turns on automatic synchronization of the altitude PEC using pin 17 of the parallel port
AutoAltPECSyncLowHighFlag: determines of the low to high transition or the high to low transition of parallel port 17 is used to detect the automatic synchronization of altitude PEC.
AutoAltPECSyncDirFlag: direction that alt PEC must be moving in order to trigger auto-sync: 0 = either direction, 1 = CCW direction, 2 = CW direction
AutoAzPECSyncOnFlag: turns on automatic synchronization of the azimuth PEC using pin 15 of the parallel port
AutoAzPECSyncLowHighFlag: determines of the low to high transition or the high to low transition of parallel port 15 is used to detect the automatic synchronization of azimuth PEC.
AutoAzPECSyncDirFlag: direction that az PEC must be moving in order to trigger auto-sync: 0 = either direction, 1 = CCW direction, 2 = CW direction
FullstepsPerPECArray: This allows periodic correction for single through quad worms by tying the PEC sequence to an amount of fullsteps, not to a motor's single turn. Positive values in PEC.DAT indicate too much clockwise motion. Values are in tenths of an arc second. A total of 200 values per PEC are used regardless of number of fullsteps per PEC array. PEC must be synchronized by placing the motor shafts in the predetermined starting position and hitting the 'PEC on' keyboard menu item selection or by using the auto-sync option.
FRStepSizeArcsec: field rotation motor step size, set to 0 if you wish field rotation disabled
SectoredFRDrive: if using a sectored field de-rotation drive, set to 1, otherwise field de-rotator motor may slew large angles after the scope finishes a slew.
FRStepSpeedMilliSec: speed of field rotation motor when slewed by hand paddle
InvertOutput: Original designed called for 7404 inverters to drive the transistors, hence InvertOutput 1 in the original config.dat (parallel port output goes high, hex inverters go low, and drive transistors turn off, hence the need to invert the output). In the original design, if opto-isolators were used, then InvertOutput 0 (parallel port output goes high, hex inverters go low, opto-isolators turn on pulling output low, hex inverters go high, and drive transistors turn on, hence no need to invert output). If using the printed circuit board, the pcb design uses 7408 and gates (parallel port output goes high, 7408 and gates go high, opto-isolators turn off allowing output to return to high, 7408 and gates go high, and drive transistors turn on, hence no need to invert the output). Screw this up and you will pump a lot of current through the steppers!
HsTimerFlag: set to 1 if you wish to use IRQ 8 to time the halfstep slews, this allows for realtime updating of scope coordinates, keyboard interruption of slews, and altitude limit checking during a slew, otherwise if set to 0, halfsteps are timed by a delay loop with interrupts disabled to avoid interruption; using IRQ8 works perfectly in DOS, not at all in Win 3.x, and slowly in Win95
MaxDelay, MinDelay, HsDelayX: these set the slowest and fastest slew speeds:
when using IRQ 8 timing of halfsteps, ramp speed starts at (MaxDelay - MinDelay) and achieves highest speed of MinDelay
when using delay loop timing of halfsteps with interrupts disabled, ramp speed starts at (MaxDelay - MinDelay)* HsDelayX and achieves highest speed of MinDelay * HsDelayX, where HsDelayX is used as a multiplier to keep the MaxDelay and MinDelay values reasonably sized on fast CPUs
HsRampX: the amount of time to ramp up or ramp down is multiplied by HsRampX
InterruptHs: number of halfsteps before interrupts disabled if using delay loop timing of halfsteps
HoldReps: time to lock stepper rotors at beginning and end of slew to prevent shaft oscillation and overshoot
MaxConsecutiveSlews: maximum number of consecutive slew attempts to reach a desired position. If slews cannot reach position, scope begins tracking. This prevents oscillations when MsRepsTick or PWM values are low and tracking speed exceeds maximum microstepping speed.
PWMRepsTick: count of pulse width modulations per bios clock tick. Set to average value of PWMReps displayed on screen.
MsDelayX: repetition value of each value in the microstepping arrays, this allows for smaller arrays when needing large PWM[] values for fast PCs.
MsPause: the number of dummy loop repetitions at the end of every PWM[] loop. This allows for fine low voltage resolution when using a high voltage power supply
Ms: number of microsteps: leave at 10
PWM[0] through PWM[9] : These values sets the voltages for individual
microsteps. In general, these values should reflect a the ratios discussed
earlier. If the microstepping is not smooth, adjust these values. If the
motors become too warm and take too much current, lower the PWM[0] through
PWM[9] values, decrease MsDelayX and increase MsPause.
The rotor is positioned based on the inverse square strength of two
adjoining windings:
step 0: PWM[0]
step 1: PWM[1] and PWM[9]
step 2: PWM[2] and PWM[8]
step 3: PWM[3] and PWM[7]
step 4: PWM[4] and PWM[6]
step 5: PWM[5] and PWM[5]
step 6: PWM[6] and PWM[4]
step 7: PWM[7] and PWM[3]
step 8: PWM[8] and PWM[2]
step 9: PWM[9] and PWM[1]
These values should be adjusted for minimum current draw through the
steppers while tracking. When tracking, the steppers draw approximately
0.1 amp while producing adequate torque.
PPortAddr: parallel port address: enter a 1 or 2 or 3 for lpt port 1 through 3, or enter the base address in a 3 digit decimal form where portid lpt1 = decimal 888 (hex 378) lpt2 = decimal 632 (hex 278), monochrome video card = decimal 956 (hex 3BC)
EncoderString: options are:
NoEncoders,
BSeg = Bob Segrest unit,
ResetViaR = MicroGuiderIII, Ouranos, StarPort, and types that support
reset by 'R...',
ResetViaZ = BBox, NGC types, and types that support reset by 'Z...',
NoReset = SkyWizard and types that are not resettable,
Mouse = using encoders from mouse (turn off acceleration, etc in mouse
driver)
EncoderComPort: enter 1 or 2 for com1 or com2, ignored if using Mouse driver
SerialWriteDelayMs: millisecond wait after querying encoders before reading encoders; some wait is required, often 20-50 milliseconds
AltEncoderCountsPerRev, AzEncoderCountsPerRev: encoder counts per full revolution of the telescope mount; max of 65,534 with some encoder boxes having lower limits; if unable to set limits, then start scope.exe in serial test mode, turn on encoder box, enter commands from encoder box manual to manually set the resolution, check manual for any confirmation commands, if successful, write down what you entered and what the encoder box returned and send to the author, exit scope.exe, restart scope.exe in normal mode - do not turn off encoder box - and continue with normal operation of the telescope
AltEncoderDir, AzEncoderDir: allows changing of direction that encoder counts up, set to 0 to reverse count direction
EncoderErrorThresholdDeg: if encoder readings compared to current coordinates exceed this threshold, then current coordinates reset to encoder readings; if 0, coordinates not reset no matter how great the discrepancy
TrackEncoderErrorThresholdDeg: as above, but the error threshold to be used when tracking or slewing is on
MakeEncoderResetLogFile: set to 1 if you wish encoder threshold violations to be recorded into the file "Encoders.txt"
LX200ComPort: enter 1 or 2 for the com port to receive LX200 styled commands from external PC; set to 0 if not used
LX200MotionTimeoutSec: if no LX200 stop motion command received, motion will stop in this many seconds
LX200SlewHs: if no slew stop received, slew distance in halfsteps
Z1Deg: elevation offset to horizon perpendicular
Z2Deg: optical axis error in same plane
Z3Deg: correction to zero setting of elevation (this can be set to zero permanently and the altitude offset function in the program used to make an automatic Z3 correction)
LongitudeDeg: your site's longitude, used to determine HAOffset and local sidereal time
Tz: used to determine sidereal time, the initialization process does not depend on sidereal time or longitude, instead relying completely on the time interval between initializations
DST: also used to determine sidereal time
TestString:
NoTest = normal program execution,
TestSerial = test of serial routines,
TestVideo = test of video routines,
TestATimes = test of astronomical time routines,
TestParallelPort = parallel port test,
TestEncoders = test of encoder routines,
TestHandpad = hand paddle test,
TestConversion = coordinate conversion routines test,
TestAltOffset = test of altitude offset algorithm,
TestIACA = test of IACA routines,
Track = put the program into a mode where the motors track or move
at a constant speed of 'x' number of microsteps per second, input at a
screen prompt, optionally can adjust PWM[] values on the fly,
PreloadGuidexx.dat = preloads the program with guidealt.dat and guideaz.dat,
then runs normally