
public class AutochangerLatchModule extends MobileItemModule implements FilterLatch
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
updatingState |
currentAction, fcslog, haltRequired, hasToWaitForEndOfAction, lock, motionCompleted, moving, stopRequired| Constructor and Description |
|---|
AutochangerLatchModule(String moduleName,
int aTickMillis,
EPOSController latchController,
long timeoutForClosing,
long timeoutForOpening,
NumericSensor lockSensor,
NumericSensor unlockSensor,
NumericSensor filterPresenceSensor,
int minCurrent,
int maxCurrent,
int currentToOpen) |
| Modifier and Type | Method and Description |
|---|---|
void |
abortAction(FcsEnumerations.MobileItemAction action,
long delay) |
org.lsst.ccs.framework.TreeWalkerDiag |
checkHardware() |
String |
close() |
String |
getControllerName() |
int |
getCurrentToOpen() |
NumericSensor |
getFilterPresenceSensor() |
EPOSController |
getLatchController() |
NumericSensor |
getLockSensor() |
FcsEnumerations.LockStatus |
getLockStatus() |
int |
getMaxCurrent() |
int |
getMinCurrent() |
StatusDataPublishedByAutochangerLatch |
getStatusData() |
long |
getTimeoutForClosing() |
long |
getTimeoutForOpening() |
NumericSensor |
getUnlockSensor() |
void |
initModule() |
boolean |
isActionCompleted(FcsEnumerations.MobileItemAction action) |
boolean |
isControllerInFault() |
boolean |
isEmpty() |
boolean |
isHardwareReady() |
boolean |
isInError() |
boolean |
isInitialized() |
boolean |
isLocked() |
boolean |
isUnlocked() |
String |
open() |
void |
postAction(FcsEnumerations.MobileItemAction action) |
void |
processUpdate(Observable source,
org.lsst.ccs.framework.Module.ValueUpdate v)
What to do when the Modules we observe send there new values.
|
void |
publishData()
Publish Data on status bus for trending data base and GUIs.
|
void |
quickStopAction(FcsEnumerations.MobileItemAction action,
long delay) |
void |
setCurrentToOpen(int currentToOpen) |
void |
setMaxCurrent(int maxCurrent) |
void |
setMinCurrent(int minCurrent) |
void |
startAction(FcsEnumerations.MobileItemAction action) |
void |
tick() |
void |
updateCurrent()
Updates the field readCurrent of the latch in reading the CPU of the controller.
|
void |
updateStateWithSensors()
This methods updates the whole autochanger state in reading all the sensors.
|
void |
updateStateWithSensors(String[] hexaValues)
This methods updates lockStatus from the values return by the sensors.
|
void |
updateStateWithSensorsToCheckIfActionIsCompleted() |
abort, abort, checkStarted, checkStopped, executeAction, getHaltRequired, isMoving, quickstop, readSensorsUntilActionIsCompleted, shutdownNow, signal, stop, stopalias, getComponentTree, getEnvironment, getModule, getName, getNObserverThreads, getObservables, getSubsystem, getTickMillis, init, listens, percolateSignal, postStart, sendSignal, sendSignalWithTimeLimit, setEnvironment, setName, setNObserverThreads, setObservables, setTickMillis, startTicking, updateaddObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetNamepublic AutochangerLatchModule(String moduleName, int aTickMillis, EPOSController latchController, long timeoutForClosing, long timeoutForOpening, NumericSensor lockSensor, NumericSensor unlockSensor, NumericSensor filterPresenceSensor, int minCurrent, int maxCurrent, int currentToOpen)
public NumericSensor getFilterPresenceSensor()
getFilterPresenceSensor in interface FilterLatchpublic NumericSensor getLockSensor()
getLockSensor in interface FilterLatchpublic NumericSensor getUnlockSensor()
getUnlockSensor in interface FilterLatch@Command(type=QUERY, level=1, description="Returns this latch controller name.") public String getControllerName()
public EPOSController getLatchController()
@Command(type=QUERY, level=1, description="Returns true if latchController is in Fault.") public boolean isControllerInFault()
isControllerInFault in interface FilterLatch@Command(type=QUERY, level=1, description="Returns true if latch is initialized.") public boolean isInitialized()
@ConfigChanger public void setMinCurrent(int minCurrent)
@ConfigChanger public void setMaxCurrent(int maxCurrent)
@ConfigChanger public void setCurrentToOpen(int currentToOpen)
public int getMinCurrent()
public int getMaxCurrent()
public int getCurrentToOpen()
public long getTimeoutForOpening()
public long getTimeoutForClosing()
public FcsEnumerations.LockStatus getLockStatus()
getLockStatus in interface FilterLatch@Command(type=QUERY, level=1, description="Returns true if LockStatus=LOCKED") public boolean isLocked()
@Command(type=QUERY, level=1, description="Returns true if LockStatus=UNLOCKED") public boolean isUnlocked()
@Command(type=QUERY, level=1, description="Returns true if LockStatus=ERROR, this means that unlockSensor and lockSensor return non consistant values.") public boolean isInError()
@Command(type=QUERY, level=1, description="Returns true if autochanger is empty.") public boolean isEmpty()
public void initModule()
initModule in class MobileItemModulepublic void tick()
tick in class org.lsst.ccs.framework.Modulepublic org.lsst.ccs.framework.TreeWalkerDiag checkHardware()
throws org.lsst.ccs.HardwareException
checkHardware in interface org.lsst.ccs.framework.HardwareControllercheckHardware in class MobileItemModuleorg.lsst.ccs.HardwareException@Command(type=ACTION, level=1, description="Update latch state in reading sensors.") public void updateStateWithSensors() throws FcsHardwareException
FcsHardwareException@Command(type=ACTION, level=1, description="Update state in reading sensors.") public void updateStateWithSensors(String[] hexaValues)
hexaValues - @Command(type=QUERY, level=1, description="Update latch current in reading controller.") public void updateCurrent() throws org.lsst.ccs.messaging.BadCommandException, SDORequestException
org.lsst.ccs.messaging.BadCommandExceptionSDORequestException@Command(type=QUERY, level=1, description="Returns true if autochanger hardware is connected and ready.") public boolean isHardwareReady()
isHardwareReady in class MobileItemModule@Command(type=ACTION, level=1, description="Close latch.") public String close() throws org.lsst.ccs.messaging.BadCommandException, org.lsst.ccs.messaging.ErrorInCommandExecutionException, FcsHardwareException
org.lsst.ccs.messaging.BadCommandExceptionorg.lsst.ccs.messaging.ErrorInCommandExecutionExceptionFcsHardwareException@Command(type=ACTION, level=1, description="Open latch.") public String open() throws org.lsst.ccs.messaging.BadCommandException, org.lsst.ccs.messaging.ErrorInCommandExecutionException, FcsHardwareException
org.lsst.ccs.messaging.BadCommandExceptionorg.lsst.ccs.messaging.ErrorInCommandExecutionExceptionFcsHardwareExceptionpublic boolean isActionCompleted(FcsEnumerations.MobileItemAction action)
isActionCompleted in class MobileItemModulepublic void updateStateWithSensorsToCheckIfActionIsCompleted()
throws Exception
updateStateWithSensorsToCheckIfActionIsCompleted in class MobileItemModuleExceptionpublic void startAction(FcsEnumerations.MobileItemAction action) throws org.lsst.ccs.messaging.BadCommandException, org.lsst.ccs.messaging.ErrorInCommandExecutionException, FcsHardwareException
startAction in class MobileItemModuleorg.lsst.ccs.messaging.BadCommandExceptionorg.lsst.ccs.messaging.ErrorInCommandExecutionExceptionFcsHardwareExceptionpublic void abortAction(FcsEnumerations.MobileItemAction action, long delay) throws org.lsst.ccs.messaging.BadCommandException, org.lsst.ccs.messaging.ErrorInCommandExecutionException, FcsHardwareException
abortAction in class MobileItemModuleorg.lsst.ccs.messaging.BadCommandExceptionorg.lsst.ccs.messaging.ErrorInCommandExecutionExceptionFcsHardwareExceptionpublic void quickStopAction(FcsEnumerations.MobileItemAction action, long delay) throws org.lsst.ccs.messaging.BadCommandException, org.lsst.ccs.messaging.ErrorInCommandExecutionException, FcsHardwareException
quickStopAction in class MobileItemModuleorg.lsst.ccs.messaging.BadCommandExceptionorg.lsst.ccs.messaging.ErrorInCommandExecutionExceptionFcsHardwareExceptionpublic void postAction(FcsEnumerations.MobileItemAction action) throws org.lsst.ccs.messaging.BadCommandException, org.lsst.ccs.messaging.ErrorInCommandExecutionException, FcsHardwareException
postAction in class MobileItemModuleorg.lsst.ccs.messaging.BadCommandExceptionorg.lsst.ccs.messaging.ErrorInCommandExecutionExceptionFcsHardwareExceptionpublic void processUpdate(Observable source, org.lsst.ccs.framework.Module.ValueUpdate v)
processUpdate in class org.lsst.ccs.framework.Modulesource - v - public StatusDataPublishedByAutochangerLatch getStatusData()
@Command(type=QUERY, level=1, description="Publish Data on the Status Bus.") public void publishData()
publishData in class MobileItemModuleCopyright © 2015 LSST. All rights reserved.