Package dics :: Module rotator :: Class rotator
[hide private]
[frames] | no frames]

Class rotator
source code

Class representing the camera rotation system used by DAZLE for field rotation comepensation.

Instance Methods [hide private]
  __init__(self, portname, telescope, target, idle, run, boost, dt, name='rotator')
Initialiser for rotator class.
  updateConfig(self, config)
Should be called by the parent instrument object's destructor to enable status information to be saved to file on exit.
  setCurrents(self, idle, run, boost)
Sets the motor currents to be used by the rotator.
  setupRotator(self)
Instructs the rotator to perform its initialisation routine, which determines the encoder angular scale and zero point, and sets up the upper and lower motion limits.
  setTarget(self, field)
Changes to current target field to the rotator.target instance given as the argument.
  setTelescope(self, observatory)
Changes the current telescope/observatory for the instrument to the rotator.telescope instance passed as the srgument
  startTracking(self, logData=False)
Creates an instance of rotator.tracker thread and sets it running for the currently set telescope and target.
  stopTracking(self)
  isTracking(self)
  isLockedOn(self)
  where(self)
Request status information from the Taranis.
  Info(self)
Get Rotator Info useage: dazle.rotator_1.Info()
  MoveByDeg(self, MoveAngleDeg=1.0, MoveTimeSec=1.0)
Moves the rotator by an angle in degrees(default is 1.0deg) MoveTimeSec is to be the time step for the move.

Method Details [hide private]

__init__(self, portname, telescope, target, idle, run, boost, dt, name='rotator')
(Constructor)

source code 

Initialiser for rotator class.

Arguments:

portname:       The device name of the serial port which the
                Taranis stepper motor controller is connected to.
telescope:      A rotator.telescope object containing observatory
                specific information.
target:         A rotator.target object contain details of the target
                field for observations.
idle:           The peak motor current when the motor is stationary,
                in amps.  Must be >=0 and <= run.
run:            The peak motor current when the motor is moving
                continously, in amps.  Must be >= idle and <= boost.
boost:          The peak motor current when the motor is accelerating/
                decelerating, in amps.  Must be >=run and <= 4.5.
dt:             The interval between tracking corrections, in seconds.
name:           label used for logging purposes.

updateConfig(self, config)

source code 

Should be called by the parent instrument object's destructor to enable status information to be saved to file on exit.

Takes a ConfigParserRT.SafeConfigParser object as argument.

setCurrents(self, idle, run, boost)

source code 

Sets the motor currents to be used by the rotator.

Arguments:

idle:  The peak motor current when the motor is stationary, in amps.
       Must be >=0 and <= run.
run:   The peak motor current when the motor is moving continously,
       in amps.  Must be >= idle and <= boost.
boost: The peak motor current when the motor is accelerating/
       decelerating, in amps.  Must be >=run and <= 4.5.

setupRotator(self)

source code 
Instructs the rotator to perform its initialisation routine, which determines the encoder angular scale and zero point, and sets up the upper and lower motion limits.

setTarget(self, field)

source code 
Changes to current target field to the rotator.target instance given as the argument.

setTelescope(self, observatory)

source code 
Changes the current telescope/observatory for the instrument to the rotator.telescope instance passed as the srgument

startTracking(self, logData=False)

source code 

Creates an instance of rotator.tracker thread and sets it running
for the currently set telescope and target.

Arguments:

logData:   Boolean to indicate whether tracking status information
           should be logged to the file 'dicstrack.log'. Default False.

stopTracking(self)

source code 

isTracking(self)

source code 

isLockedOn(self)

source code 

where(self)

source code 
Request status information from the Taranis.

Info(self)

source code 
Get Rotator Info useage: dazle.rotator_1.Info()

MoveByDeg(self, MoveAngleDeg=1.0, MoveTimeSec=1.0)

source code 

 Moves the rotator by an angle in degrees(default is 1.0deg) 
 MoveTimeSec is to be the time step for the move. This could be
 sepecified as a rate RotRate in Degrees/sec.

 The Taranis software has a time step parameter which
 I have yet to understand. 

 See rotator.where for getting rotator location 


History
   20060605 Original by rgm