public class AutochangerOnlineClampModule extends MobileItemModule implements MovedByEPOSController
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
updatingState |
currentAction, FCSLOG, haltRequired, hasToWaitForEndOfAction, lock, motionCompleted, moving, stopRequired| Constructor and Description |
|---|
AutochangerOnlineClampModule(EPOSController onlineClampController,
NumericSensor lockSensor0,
NumericSensor lockSensor1,
NumericSensor unlockSensor0,
NumericSensor unlockSensor1,
Map<String,Integer> paramsForCurrentToLock,
Map<String,Integer> paramsForCurrentToUnlock)
Build an AutochangerOnlineClampModule with a controller, 4 sensors and
2 maps of parameters for the controller.
|
| Modifier and Type | Method and Description |
|---|---|
void |
abortAction(FcsEnumerations.MobileItemAction action,
long delay)
What to do to abort an action.
|
void |
checkConditionsForLocking()
Check if it's safe to lock the clamp.
|
void |
checkConditionsForUnlocking()
Check if it's safe to unlock the clamp.
|
void |
checkControllerBeforeAction()
Read parameters for mode CURRENT on controller CPU.
|
org.lsst.ccs.framework.TreeWalkerDiag |
checkHardware()
This method is called during INITIALIZATION phase.
|
void |
configureController()
Configure ONLINE clamp controller.
|
void |
configureDigitalInputOfOnlineClamps()
This method is used to configure the controllers of the autochanger
online clamps.
|
void |
configureDigitalOutputOfOnlineClamps()
This methods is used to configure the autochanger onlineClamps EPOS
controllers.
|
StatusDataPublishedByAutochangerOnlineClamp |
createStatusDataPublishedByOnlineClamp()
Creates and returns the object to be published on the STATUS bus.
|
EPOSController |
getController()
Return ONLINE clamp controller
|
String |
getControllerName()
return controller name
|
int |
getCurrentToClamp()
For simulator
|
int |
getCurrentToLock()
For simulator
|
int |
getCurrentToUnlock()
For simulator
|
StatusDataPublishedByAutochangerOnlineClamp |
getStatusData()
Returns the object to be published on the STATUS bus.
|
long |
getTravelTime()
For simulator
|
void |
initModule()
Initialize fields autochanger, lockStatus and listens to its controller.
|
boolean |
isActionCompleted(FcsEnumerations.MobileItemAction action) |
boolean |
isCANDevicesReady()
Return true when ONLINE clamp hardware is ready.
|
boolean |
isControllerInFault()
Returns true if controller is in fault.
|
boolean |
isInError()
Returns true if LockStatus=ERROR, this means lockSensor or unlockSensor is in ERROR
or unlockSensor and lockSensor return non consistant values.
|
boolean |
isInitialized()
Returns true if clamp is initialized : hardware is ready (at least booted) and
clamp controller is initialized (parameters in the controller CPU have been checked and
controller has been configured.
|
boolean |
isInTravel()
Returns true if LockStatus=INTRAVEL.
|
boolean |
isLocked()
Returns true if LockStatus=LOCKED.
|
boolean |
isLockSensorInError()
Returns true if lockSensor and lockSensorC return the same value.
|
boolean |
isUnlocked()
Returns true if LockStatus=UNLOCKED.
|
boolean |
isUnlockSensorInError()
Returns true if unlockSensor and unlockSensorC retun the same value.
|
void |
lock()
Lock the ONLINE clamp.
|
void |
postAction(FcsEnumerations.MobileItemAction action)
What to be done after the action is completed.
|
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() |
void |
quickStopAction(FcsEnumerations.MobileItemAction action,
long delay) |
void |
setControllerInFault(boolean controllerInFault)
set controllerInFault
|
void |
startAction(FcsEnumerations.MobileItemAction action)
Start action of locking or unlocking.
|
String |
testLock()
Lock online clamp for CPPM test bench.
|
String |
testUnlock()
Unlock online clamp for CPPM test bench.
|
void |
tick() |
void |
unlock()
Unlock the ONLINE clamp.
|
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, stopgetNObserverThreads, getObservables, getTickMillis, init, listens, sendSignal, sendSignalWithTimeLimit, setNObserverThreads, setObservables, setTickMillis, startTicking, updateaddObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitprocessEmergencyMessage, processFaultResetgetComponentConfigurationEnvironment, getComponentLookup, getName, getSubsystemraiseAlarm, raiseAlarm, raiseAlarm, raiseWarning, raiseWarning, raiseWarningchange, dropSubmittedChanges, getChildren, getComponentByName, getEnvironment, getParent, getParentObject, getSubmittedChanges, isParameterConfigurable, postStart, printConfigurableParameters, setBulkParameter, start, submitChange, submitChanges, validateBulkChangepublic AutochangerOnlineClampModule(EPOSController onlineClampController, NumericSensor lockSensor0, NumericSensor lockSensor1, NumericSensor unlockSensor0, NumericSensor unlockSensor1, Map<String,Integer> paramsForCurrentToLock, Map<String,Integer> paramsForCurrentToUnlock)
onlineClampController - lockSensor0 - lockSensor1 - unlockSensor0 - unlockSensor1 - paramsForCurrentToLock - paramsForCurrentToUnlock - public EPOSController getController()
public int getCurrentToLock()
public int getCurrentToUnlock()
public int getCurrentToClamp()
public long getTravelTime()
@Command(type=QUERY,
level=1,
description="Returns true if lockSensor and lockSensorC retun the same value. Doesn\'t read again sensors.")
public boolean isLockSensorInError()
@Command(type=QUERY,
level=1,
description="Returns true if unlockSensor and unlockSensorC retun the same value. Doesn\'t read again sensors.")
public boolean isUnlockSensorInError()
@Command(type=QUERY,
level=1,
description="Returns true if LockStatus=ERROR, this means that lockSensor or unlockSensor is in ERROR or thatunlockSensor and lockSensor return non consistant values. Doesn\'t read again sensors.")
public boolean isInError()
@Command(type=QUERY,
level=1,
description="Returns true if LockStatus=LOCKED. Doesn\'t read again sensors.")
public boolean isLocked()
@Command(type=QUERY,
level=1,
description="Returns true if LockStatus=UNLOCKED. Doesn\'t read again sensors.")
public boolean isUnlocked()
@Command(type=QUERY,
level=1,
description="Returns true if LockStatus=INTRAVEL. Doesn\'t read again sensors.")
public boolean isInTravel()
@Command(type=QUERY,
level=1,
description="Returns true if controller is in fault. Doesn\'t read controller CPU.")
public boolean isControllerInFault()
isControllerInFault in interface MovedByEPOSControllerpublic void setControllerInFault(boolean controllerInFault)
setControllerInFault in interface MovedByEPOSControllercontrollerInFault - @Command(type=QUERY,
level=1,
description="Returns controller name.")
public String getControllerName()
getControllerName in interface MovedByEPOSController@Command(type=QUERY,
level=1,
description="Returns true if clamp is initialized : controller is booted, parameters in the controller CPU have been checked and controller is configured.")
public boolean isInitialized()
public void initModule()
initModule in class MobileItemModulepublic void tick()
tick in class org.lsst.ccs.framework.Module@Command(type=QUERY,
level=1,
description="Returns true if controller is initialized and configured.")
public boolean isCANDevicesReady()
isCANDevicesReady in class MobileItemModule@Command(type=QUERY,
level=1,
description="Check if the onlineClamp can be locked.")
public void checkConditionsForUnlocking()
FcsHardwareException@Command(type=QUERY,
level=1,
description="Check if the onlineClamp can be locked.")
public void checkConditionsForLocking()
FcsHardwareExceptionpublic 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=QUERY,
level=1,
description="Read in the CPU of the controller parameters for mode CURRENT.If a parameter has a different value than in configuration, throws an exception.")
public void checkControllerBeforeAction()
throws org.lsst.ccs.HardwareException
org.lsst.ccs.HardwareExceptionFcsHardwareException@Command(type=ACTION,
level=1,
description="Configure controller.")
public void configureController()
throws org.lsst.ccs.HardwareException
org.lsst.ccs.HardwareExceptionFcsHardwareException@Command(type=ACTION,
level=1,
description="Update online clamp state in reading sensors.")
public void updateStateWithSensors()
FcsHardwareException@Command(type=ACTION,
level=1,
description="Update state in reading sensors.")
public void updateStateWithSensors(String[] hexaValues)
hexaValues - public boolean isActionCompleted(FcsEnumerations.MobileItemAction action)
isActionCompleted in class MobileItemModulepublic void updateStateWithSensorsToCheckIfActionIsCompleted()
updateStateWithSensorsToCheckIfActionIsCompleted in class MobileItemModule@Command(type=ACTION,
level=1,
description="Lock the ONLINE clamp.")
public void lock()
@Command(type=ACTION,
level=1,
description="Unlock the ONLINE clamp.")
public void unlock()
public void startAction(FcsEnumerations.MobileItemAction action)
startAction in class MobileItemModuleaction - FcsHardwareException@Command(type=ACTION,
level=1,
description="Lock online clamp for CPPM test bench.")
public String testLock()
throws org.lsst.ccs.HardwareException
FcsHardwareExceptionorg.lsst.ccs.HardwareException@Command(type=ACTION,
level=1,
description="Unlock online clamp for CPPM test bench.")
public String testUnlock()
throws org.lsst.ccs.HardwareException
FcsHardwareExceptionorg.lsst.ccs.HardwareExceptionpublic void abortAction(FcsEnumerations.MobileItemAction action, long delay)
abortAction in class MobileItemModuleaction - delay - FcsHardwareExceptionpublic void postAction(FcsEnumerations.MobileItemAction action)
postAction in class MobileItemModuleaction - FcsHardwareException@Command(type=ACTION,
level=1,
description="To configure the online clamps controllers.")
public void configureDigitalInputOfOnlineClamps()
@Command(type=ACTION,
level=1,
description="To configure the online clamps controllers.")
public void configureDigitalOutputOfOnlineClamps()
FcsHardwareExceptionpublic void processUpdate(Observable source, org.lsst.ccs.framework.Module.ValueUpdate v)
processUpdate in interface MovedByEPOSControllerprocessUpdate in class org.lsst.ccs.framework.Modulesource - v - public StatusDataPublishedByAutochangerOnlineClamp getStatusData()
public StatusDataPublishedByAutochangerOnlineClamp createStatusDataPublishedByOnlineClamp()
public void publishData()
publishData in interface MovedByEPOSControllerpublishData in class MobileItemModulepublic void quickStopAction(FcsEnumerations.MobileItemAction action, long delay)
quickStopAction in class MobileItemModuleCopyright © 2016 LSST. All rights reserved.