
public class LoaderClampModule extends MobileItemModule implements MovedByEPOSController, ControlledBySensors
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
updatingState |
currentAction, FCSLOG, hasToWaitForEndOfAction, lock, scheduler| Constructor and Description |
|---|
LoaderClampModule(LoaderHookModule hook1,
LoaderHookModule hook2,
LoaderHookModule hook3,
LoaderHookModule hook4,
ForceSensor forceSensor0,
ForceSensor forceSensor1,
DigitalSensor clampedStatusSensor)
Build a new LoaderClampModule with 4 hooks and the parameters to configure the EPOS controller
in mode CURRENT and in mode HOMING.
|
| Modifier and Type | Method and Description |
|---|---|
void |
abortAction(FcsEnumerations.MobileItemAction action,
long delay)
aborts action actually running.
|
org.lsst.ccs.framework.TreeWalkerDiag |
checkHardware() |
void |
checkHardwareStateAndDoHomingIfPossible()
If loader is empty, go to home position otherwise do nothing.
|
void |
checkInitialized()
Check if clamp controller is initialized.
|
void |
clamp()
Clamps hooks.
|
void |
close()
Closes clamp in order to hold the filter.
|
StatusDataPublishedByLoaderClamp |
createStatusDataPublishedByLoaderClamp()
Creates and returns the object to be published on the STATUS bus by the LoaderClampModule.
|
String |
getControllerName()
Returns controller name.
|
int |
getCurrentToClamp() |
int |
getCurrentToOpen() |
FcsEnumerations.LockStatus |
getLockStatus() |
int |
getPosition()
Return position for end user.
|
int |
getRelativePositionToClose() |
int |
getRelativePositionToUnclamp() |
int |
getTargetPositionToClamp() |
int |
getTargetPositionToOpen() |
void |
initModule() |
boolean |
isActionCompleted(FcsEnumerations.MobileItemAction action)
Check if the action is completed.
|
boolean |
isCANDevicesReady()
Returns true if loader CANopen devices are booted, identified and homingDone.
|
boolean |
isClamped()
Returns true if LockStatus=CLAMPED
|
boolean |
isClosed()
Returns true if LockStatus=CLOSED
|
boolean |
isControllerInFault()
Return true if the controller is in fault (an EmergencyMessage has been previously received.)
|
boolean |
isHomingDone()
Returns true if loader clamp is homingDone.
|
boolean |
isInError()
Returns true if clamp LockStatus is in ERROR or LockStatus is UNKNOWN.
|
boolean |
isOpened()
Returns true if LockStatus=OPENED
|
boolean |
isUnderLoad() |
void |
open()
Open clamp in order to release filter.
|
void |
postAction(FcsEnumerations.MobileItemAction action) |
String |
printHardwareState()
Return a printed list of hardware with initialization information.
|
void |
processUpdate(Observable source,
org.lsst.ccs.framework.Module.ValueUpdate v)
Updates field controllerInFault when the controller notifies its observers and sends new values.
|
void |
publishData()
Publish Data on status bus for trending data base and GUIs.
|
void |
quickStopAction(FcsEnumerations.MobileItemAction action,
long delay) |
int |
readPosition()
To display position for end user.
|
void |
setControllerInFault(boolean controllerInFault) |
void |
startAction(FcsEnumerations.MobileItemAction action)
starts the action given as argument.
|
void |
unclamp()
unclamp Loader clamp.
|
void |
updateCurrent()
Updates the field readCurrent of the clamp in reading the CPU of the
controller.
|
void |
updatePosition()
Updates the position of the clamp in reading the CPU of the controller.
|
void |
updateStateAndCheckSensors()
reads sensors, computes and state and raises an ALERT if sensors are in error.
|
void |
updateStateWithSensorsToCheckIfActionIsCompleted()
reads sensors or any device and updates state from sensors
it can be also reading a position or a current on a motor controller.
|
abort, abort, checkStarted, checkStopped, executeAction, getHaltRequired, isMoving, quickstop, readSensorsUntilActionIsCompleted, shutdownNow, signal, stop, stopgetNObserverThreads, getObservables, getTickMillis, init, listens, setNObserverThreads, setObservables, setTickMillis, startTicking, tick, updateaddObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitprocessEmergencyMessage, processFaultReset, updateControllerInFaultcheckSensorsraiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseWarning, raiseWarning, raiseWarning, raiseWarninggetComponentConfigurationEnvironment, getComponentLookup, getName, getSubsystemchange, dropSubmittedChanges, getChildren, getComponentByName, getEnvironment, getParent, getParentObject, getSubmittedChanges, isParameterConfigurable, printConfigurableParameters, setBulkParameter, submitChange, submitChanges, validateBulkChangesetParameterBulkpublic LoaderClampModule(LoaderHookModule hook1, LoaderHookModule hook2, LoaderHookModule hook3, LoaderHookModule hook4, ForceSensor forceSensor0, ForceSensor forceSensor1, DigitalSensor clampedStatusSensor)
hook1 - hook2 - hook3 - hook4 - forceSensor0 - forceSensor1 - clampedStatusSensor - public String getControllerName()
getControllerName in interface MovedByEPOSControllerpublic boolean isControllerInFault()
MovedByEPOSControllerisControllerInFault in interface MovedByEPOSControllerpublic void setControllerInFault(boolean controllerInFault)
setControllerInFault in interface MovedByEPOSControllerpublic int getTargetPositionToOpen()
public int getRelativePositionToClose()
public int getRelativePositionToUnclamp()
public int getTargetPositionToClamp()
public int getCurrentToClamp()
public int getCurrentToOpen()
@Command(type=QUERY, level=1, description="Display position for end user.Do not read again controller.") public int getPosition()
@Command(type=QUERY, level=1, description="Returns true if homing of loader clamp has been done.") public boolean isHomingDone()
public FcsEnumerations.LockStatus getLockStatus()
@Command(type=QUERY, level=1, description="Returns true if LockStatus=CLOSED") public boolean isClosed()
@Command(type=QUERY, level=1, description="Returns true if LockStatus=OPENED") public boolean isOpened()
@Command(type=QUERY, level=1, description="Returns true if LockStatus=CLAMPED") public boolean isClamped()
@Command(type=QUERY, level=1, description="Returns true if LockStatus=ERROR or UNKNOWN.") public boolean isInError()
isInError in interface ControlledBySensorspublic boolean isUnderLoad()
public boolean isCANDevicesReady()
isCANDevicesReady in class MobileItemModulepublic void initModule()
initModule in class MobileItemModule@Command(type=ACTION, level=1, description="Attention : this commands moves the clamp to do the homing of the controller. If loader is empty, go to home position otherwise do nothing.") public void checkHardwareStateAndDoHomingIfPossible()
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.HardwareExceptionpublic void checkInitialized()
RejectedCommandException - if clamp is not homingDone@Command(type=ACTION, level=1, description="Open clamp.") public void open()
@Command(type=ACTION, level=1, description="Closes clamp.", timeout=60000) public void close()
@Command(type=ACTION, level=1, description="Clamp to hold tightly a filter.") public void clamp()
@Command(type=ACTION, level=1, description="Unclamp filter and return to CLOSED position.") public void unclamp()
public boolean isActionCompleted(FcsEnumerations.MobileItemAction action)
isActionCompleted in class MobileItemModuleaction - public void updateStateWithSensorsToCheckIfActionIsCompleted()
MobileItemModuleupdateStateWithSensorsToCheckIfActionIsCompleted in class MobileItemModulepublic void startAction(FcsEnumerations.MobileItemAction action)
MobileItemModulestartAction in class MobileItemModulepublic void abortAction(FcsEnumerations.MobileItemAction action, long delay)
MobileItemModuleabortAction in class MobileItemModulepublic void quickStopAction(FcsEnumerations.MobileItemAction action, long delay)
quickStopAction in class MobileItemModulepublic void postAction(FcsEnumerations.MobileItemAction action)
postAction in class MobileItemModulepublic void updateStateAndCheckSensors()
@Command(type=QUERY, level=1, description="Update clamp current in reading controller.") public void updateCurrent()
FcsHardwareException@Command(type=QUERY, level=1, description="Update clamp position in reading controller.") public void updatePosition()
FcsHardwareException@Command(type=QUERY, level=1, description="To update and display position for end user.Updates loader clamp position in reading controller and returns it.") public int readPosition()
@Command(type=ACTION, level=1, description="Return a printed list of hardware with initialization information.") public String printHardwareState()
public void processUpdate(Observable source, org.lsst.ccs.framework.Module.ValueUpdate v)
processUpdate in class org.lsst.ccs.framework.Modulesource - v - public StatusDataPublishedByLoaderClamp createStatusDataPublishedByLoaderClamp()
public void publishData()
publishData in interface MovedByEPOSControllerpublishData in class MobileItemModuleCopyright © 2017 LSST. All rights reserved.