
public class LoaderClampModule extends MobileItemModule implements MovedByEPOSController, ControlledBySensors
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
updatingState |
currentAction, FCSLOG, hasToWaitForEndOfAction, lock, name, scheduleralertSeparater| 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.
|
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 |
initializeController() |
boolean |
isActionCompleted(FcsEnumerations.MobileItemAction action)
Check if the action is completed.
|
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() |
boolean |
myDevicesReady()
Returns true if loader CANopen devices are booted, identified and homingDone.
|
void |
open()
Open clamp in order to release filter.
|
void |
postAction(FcsEnumerations.MobileItemAction action) |
void |
postStart() |
String |
printHardwareState()
Return a printed list of hardware with initialization information.
|
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 |
startAction(FcsEnumerations.MobileItemAction action)
starts the action given as argument.
|
String |
toString() |
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, checkReadyForAction, checkStopped, executeAction, getHaltRequired, isMoving, quickstop, readSensorsUntilActionIsCompleted, shutdownNow, signal, stop, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitmonitorCurrentcheckSensorsraiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseWarning, raiseWarning, raiseWarning, raiseWarning, raiseWarninggetComponentConfigurationEnvironment, getComponentLookup, getName, getSubsystemcheckHardware, checkStartedpublic 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 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 myDevicesReady()
myDevicesReady 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 void postStart()
postStart in interface org.lsst.ccs.framework.HasLifecyclepublic void initializeController()
public 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()
updateCurrent in interface MovedByEPOSControllerFcsHardwareException@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()
@Command(type=QUERY, level=1, description="List and display clamp info.") public String toString()
public StatusDataPublishedByLoaderClamp createStatusDataPublishedByLoaderClamp()
public void publishData()
publishData in interface MovedByEPOSControllerpublishData in class MobileItemModuleCopyright © 2017 LSST. All rights reserved.