org.lsst.ccs.subsystems.fcs.singlefiltertest
Class SftAutoChangerModule

java.lang.Object
  extended by java.util.Observable
      extended by org.lsst.ccs.framework.Module
          extended by org.lsst.ccs.subsystems.fcs.BasicAutoChangerModule
              extended by org.lsst.ccs.subsystems.fcs.singlefiltertest.SftAutoChangerModule
All Implemented Interfaces:
Serializable, Observer, AutoChanger

public class SftAutoChangerModule
extends BasicAutoChangerModule

This class is for the Single Filter Test autochanger. The autochanger in Single Filter Test has no flip rail and no online clamp. To move the autochanger trucks in the Single Filter Test we have 2 pneumatic cylinders each moved by an actuator : when we want the truck to be in stanby position, the standby actuator has to be ON and the standback actuator has to be OFF, when we want the truck to be in standback position, the standback actuator has to be ON and the standby actuator has to be OFF.

Author:
virieux
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.lsst.ccs.framework.Module
org.lsst.ccs.framework.Module.ValueUpdate
 
Field Summary
protected  SftTruckMotor sftTrucksMotor
           
 
Fields inherited from class org.lsst.ccs.subsystems.fcs.BasicAutoChangerModule
lockingLatches, publishedByAutoChangerOutputName, state, truckXminus, truckXplus, unlockingLatches, updatingLatches
 
Fields inherited from class org.lsst.ccs.framework.Module
configMethods, log, name, nObserverThreads, registry, tickMillis
 
Constructor Summary
SftAutoChangerModule()
           
 
Method Summary
 SftTruckMotor getSftTrucksMotor()
           
 long getTimeToConfortAPosition()
           
 long getTimeToGoToStandback()
           
 long getTimeToGoToStandby()
           
 double getTrucksPosition()
           
 String goToPosition(double trucksPositionOnline)
           
 String goToStandback()
           
 String goToStandby()
          This methods moves the trucks from standback position to standby position.
 boolean isMoving()
           
 void locateTrucks()
           
 String moveFilterToOnline(Filter filter)
           
 String moveFilterToStandback(Filter aFilter)
           
 String moveFilterToStandby(Filter aFilter)
           
 void setSftTrucksMotor(SftTruckMotor sftTrucksMotor)
           
 void setTimeToConfortAPosition(long timeToConfortAPosition)
           
 void setTimeToGoToStandback(long timeToGoToStandback)
           
 void setTimeToGoToStandby(long timeToGoToStandby)
           
 String stop()
           
 String toString()
           
 
Methods inherited from class org.lsst.ccs.subsystems.fcs.BasicAutoChangerModule
checkPreConditionsForMotion, getFilterOnTrucks, getFilterOnTrucksName, getFilterSensorsDIO, getLatchXminus, getLatchXplus, getRailsSensorsDIO, getState, getStatusData, getTrucksLocation, getTruckXminus, getTruckXplus, grabFilterAtStandby, initModule, isAtStandback, isAtStandby, isMovingToStandback, isMovingToStandby, isTrucksEmpty, lockLatchesAtStandby, processUpdate, publishDataAndNotifyObservers, setFilterOnTrucks, setFilterSensorsDIO, setLatchXminus, setLatchXplus, setMovingToStandback, setMovingToStandby, setRailsSensorsDIO, setState, setTrucksEmpty, setTruckXminus, setTruckXplus, ungrabFilterAtStandby, unlockLatchesAtStandby, updateLatchesStateWithSensors, updateTrucksLocationWithSensors
 
Methods inherited from class org.lsst.ccs.framework.Module
change, checkHardware, dropConfigurationContext, getCheckedValueFromConfiguration, getContext, getModule, getName, getNObserverThreads, getObservables, getSubsystem, getTickMillis, init, listens, newConfigurationContext, notifyChange, notifyChangeWithoutPreliminaryChecks, publishData, publishData, publishData, publishData, register, register, sendToReply, sendToStatus, setBeanName, setContext, setName, setNObserverThreads, setObservables, setStateModularSubsystem, setStateModularSubsystem, setTickMillis, shutdownCommand, shutdownNow, start, startTicking, tick, update
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

sftTrucksMotor

protected SftTruckMotor sftTrucksMotor
Constructor Detail

SftAutoChangerModule

public SftAutoChangerModule()
Method Detail

getSftTrucksMotor

public SftTruckMotor getSftTrucksMotor()

setSftTrucksMotor

public void setSftTrucksMotor(SftTruckMotor sftTrucksMotor)

getTimeToConfortAPosition

public long getTimeToConfortAPosition()

getTimeToGoToStandback

public long getTimeToGoToStandback()

getTimeToGoToStandby

public long getTimeToGoToStandby()

setTimeToConfortAPosition

public void setTimeToConfortAPosition(long timeToConfortAPosition)

setTimeToGoToStandby

public void setTimeToGoToStandby(long timeToGoToStandby)

setTimeToGoToStandback

public void setTimeToGoToStandback(long timeToGoToStandback)

toString

public String toString()
Overrides:
toString in class BasicAutoChangerModule

stop

public String stop()

locateTrucks

public void locateTrucks()

isMoving

public boolean isMoving()
Specified by:
isMoving in class BasicAutoChangerModule

goToStandback

public String goToStandback()
                     throws org.lsst.ccs.bus.BadCommandException,
                            org.lsst.ccs.bus.ErrorInCommandExecutionException,
                            HardwareErrorDetectedException,
                            CanOpenError
Specified by:
goToStandback in class BasicAutoChangerModule
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareErrorDetectedException
CanOpenError

goToStandby

public String goToStandby()
                   throws org.lsst.ccs.bus.BadCommandException,
                          org.lsst.ccs.bus.ErrorInCommandExecutionException,
                          HardwareErrorDetectedException,
                          CanOpenError
This methods moves the trucks from standback position to standby position. It first checks the preconditions for a motion of the trucks. Then it checks if the trucks are in standback position otherwise throws a BadCommandException. If the trucks are at standback, it first conforts the position (standbackMotor.on) then it moves the trucks to the standby position (standbackMotor.off then standbyMotor.on). The motor is stopped after the temporisation has expired. The command is completed when the position sensors at standby says the trucks are in standby.

Specified by:
goToStandby in class BasicAutoChangerModule
Returns:
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareErrorDetectedException
CanOpenError

moveFilterToStandback

public String moveFilterToStandback(Filter aFilter)
                             throws org.lsst.ccs.bus.BadCommandException,
                                    org.lsst.ccs.bus.ErrorInCommandExecutionException,
                                    HardwareErrorDetectedException,
                                    CanOpenError
Specified by:
moveFilterToStandback in class BasicAutoChangerModule
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareErrorDetectedException
CanOpenError

moveFilterToStandby

public String moveFilterToStandby(Filter aFilter)
                           throws org.lsst.ccs.bus.BadCommandException,
                                  org.lsst.ccs.bus.ErrorInCommandExecutionException,
                                  HardwareErrorDetectedException,
                                  CanOpenError
Specified by:
moveFilterToStandby in interface AutoChanger
Specified by:
moveFilterToStandby in class BasicAutoChangerModule
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareErrorDetectedException
CanOpenError

goToPosition

public String goToPosition(double trucksPositionOnline)
                    throws org.lsst.ccs.bus.BadCommandException
Throws:
org.lsst.ccs.bus.BadCommandException

getTrucksPosition

public double getTrucksPosition()

moveFilterToOnline

public String moveFilterToOnline(Filter filter)
                          throws org.lsst.ccs.bus.BadCommandException,
                                 org.lsst.ccs.bus.ErrorInCommandExecutionException,
                                 HardwareErrorDetectedException,
                                 CanOpenError
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareErrorDetectedException
CanOpenError


Copyright © 2012 LSST. All Rights Reserved.