public abstract class BasicAutoChangerModule extends MobileItemModule implements AutoChanger
| Modifier and Type | Field and Description |
|---|---|
protected CarouselModule |
carousel |
protected boolean |
closingLatches |
protected FcsEnumerations.LockStatus |
latchesState |
protected boolean |
openingLatches |
static String |
publishedByAutoChangerOutputName |
protected ModuleState |
state |
protected long |
timeoutForClosingLatches |
protected long |
timeoutForOpeningLatches |
protected long |
timeToWaitForCompleteClose
When we close the Latches, after the numeric sensors have detected that the latches are closed, we want to wait
some time to be sure that the latches are really closed.
|
protected long |
timeToWaitForCompleteOpen
When we open the Latches, after the numeric sensors have detected that the latches are opened, we want to wait
some time to be sure that the latches are really opened.
|
protected TruckModule |
truckXminus
The truck on side X-
|
protected TruckModule |
truckXplus
The truck on side X+
|
protected boolean |
updatingLatches |
itemMoving, lock, motionCompleted| Constructor and Description |
|---|
BasicAutoChangerModule() |
executeAction, readSensorsUntilActionIsCompleted, shutdownNowalias, change, checkHardware, dropConfigurationContext, getCheckedValueFromConfiguration, getChildren, getContext, getModule, getName, getNObserverThreads, getObservables, getSubsystem, getTickMillis, init, listens, newConfigurationContext, notifyChange, notifyChangeWithoutPreliminaryChecks, publishData, publishData, publishData, publishData, publishData, publishData, publishData, register, removeLogPanicState, sendToReply, sendToStatus, setBeanName, setContext, setEnvironment, setHandlerLevel, setLogLevel, setName, setNObserverThreads, setObservables, setStateModularSubsystem, setStateModularSubsystem, setTickMillis, shutdownCommand, start, startTicking, tick, updateaddObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetTrucksPosition, goToPosition, locateTrucks, moveFilterToOnline, stopprotected CarouselModule carousel
protected TruckModule truckXminus
protected TruckModule truckXplus
public static final String publishedByAutoChangerOutputName
protected volatile ModuleState state
protected volatile FcsEnumerations.LockStatus latchesState
protected volatile boolean updatingLatches
protected volatile boolean closingLatches
protected volatile boolean openingLatches
protected long timeoutForOpeningLatches
protected long timeoutForClosingLatches
protected long timeToWaitForCompleteClose
protected long timeToWaitForCompleteOpen
public CompactIOModule getRailsSensorsDIO()
public void setRailsSensorsDIO(CompactIOModule railsSensorsDIO)
public CompactIOModule getFilterSensorsDIO()
public void setFilterSensorsDIO(CompactIOModule filterSensorsDIO)
public Filter getFilterOnTrucks()
getFilterOnTrucks in interface AutoChangerpublic ModuleState getState()
public void setState(ModuleState state)
state - the state to setpublic FilterLatchModule getLatchXminus()
public void setLatchXminus(FilterLatchModule latchXminus)
public FilterLatchModule getLatchXplus()
public void setLatchXplus(FilterLatchModule latchXplus)
public TruckModule getTruckXminus()
public void setTruckXminus(TruckModule truckXminus)
public TruckModule getTruckXplus()
public void setTruckXplus(TruckModule truckXplus)
public boolean isTrucksEmpty()
public void setTrucksEmpty(boolean isEmpty)
public void setFilterOnTrucks(Filter filterOnTrucks)
public String getFilterOnTrucksName()
public String getFilterSensorsDIOName()
public void setFilterSensorsDIOName(String filterSensorsDIOName)
public String getRailsSensorsDIOName()
public void setRailsSensorsDIOName(String railsSensorsDIOName)
public long getTimeToWaitForCompleteClose()
public void setTimeToWaitForCompleteClose(long timeToWaitForCompleteClose)
public long getTimeToWaitForCompleteOpen()
public void setTimeToWaitForCompleteOpen(long timeToWaitForCompleteOpen)
public long getTimeoutForClosingLatches()
public void setTimeoutForClosingLatches(long timeoutForClosingLatches)
public long getTimeoutForOpeningLatches()
public void setTimeoutForOpeningLatches(long timeoutForOpeningLatches)
public abstract boolean isMovingToStandback()
public abstract boolean isMovingToStandby()
public void initModule()
initModule in class org.lsst.ccs.framework.Modulepublic void processUpdate(Observable source, org.lsst.ccs.framework.Module.ValueUpdate v)
processUpdate in class org.lsst.ccs.framework.Modulepublic StatusDataPublishedByBasicAutoChanger getStatusData()
public void publishDataAndNotifyObservers()
public abstract boolean isMoving()
public abstract String goToStandby() throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException, CanOpenException
org.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareExceptionCanOpenExceptionpublic abstract String goToStandback() throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException, CanOpenException
org.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareExceptionCanOpenExceptionpublic abstract String moveFilterToStandby(Filter aFilter) throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException, CanOpenException
moveFilterToStandby in interface AutoChangerorg.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareExceptionCanOpenExceptionpublic abstract String moveFilterToStandback(Filter aFilter) throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException, CanOpenException
org.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareExceptionCanOpenExceptionpublic abstract void updateStateWithSensors()
throws HardwareException,
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionpublic void checkPreConditionsForTrucksMotion()
throws org.lsst.ccs.bus.BadCommandException,
HardwareException,
org.lsst.ccs.bus.ErrorInCommandExecutionException
org.lsst.ccs.bus.BadCommandExceptionHardwareExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionpublic String grabFilterAtStandby(Filter filter) throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException, CanOpenException
grabFilterAtStandby in interface AutoChangerorg.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareExceptionCanOpenExceptionpublic String ungrabFilterAtStandby() throws org.lsst.ccs.bus.ErrorInCommandExecutionException, org.lsst.ccs.bus.BadCommandException, HardwareException, CanOpenException
ungrabFilterAtStandby in interface AutoChangerorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionorg.lsst.ccs.bus.BadCommandExceptionHardwareExceptionCanOpenExceptionpublic FcsEnumerations.LockStatus getLatchesState()
public boolean isHoldingFilterAtStandby()
public boolean isHoldingFilterAtStandback()
public boolean isActionCompleted(FcsEnumerations.MobileItemAction action)
isActionCompleted in class MobileItemModulepublic void postAction(FcsEnumerations.MobileItemAction action)
postAction in class MobileItemModulepublic void startAction(FcsEnumerations.MobileItemAction action) throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException
startAction in class MobileItemModuleorg.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareExceptionpublic void updateStateWithSensorsToCheckIfActionIsCompleted()
throws HardwareException,
org.lsst.ccs.bus.ErrorInCommandExecutionException
updateStateWithSensorsToCheckIfActionIsCompleted in class MobileItemModuleHardwareExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionpublic String openLatchesAtStandby() throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException
openLatchesAtStandby in interface AutoChangerorg.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareErrorHardwareExceptionpublic String closeLatchesAtStandby() throws org.lsst.ccs.bus.BadCommandException, org.lsst.ccs.bus.ErrorInCommandExecutionException, HardwareException
closeLatchesAtStandby in interface AutoChangerorg.lsst.ccs.bus.BadCommandExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionHardwareErrorHardwareExceptionpublic void updateLatchesStateWithSensors()
throws HardwareException,
org.lsst.ccs.bus.ErrorInCommandExecutionException
HardwareExceptionorg.lsst.ccs.bus.ErrorInCommandExecutionExceptionpublic FcsEnumerations.AutoChangerTrucksLocation getTrucksLocation()
public boolean isAtStandby()
isAtStandby in interface AutoChangerpublic boolean isAtStandback()
public void updateTrucksLocationWithSensors()
throws org.lsst.ccs.bus.ErrorInCommandExecutionException
org.lsst.ccs.bus.ErrorInCommandExecutionExceptionCopyright © 2013 LSST. All Rights Reserved.