Package gda.device
Interface IScannableMotor
- All Superinterfaces:
Configurable,ControllerRecord,Device,Findable,gda.observable.IObservable,Scannable,ScannableMotion,ScannableMotionUnits
- All Known Subinterfaces:
IScannableMotorObservable,ITweakableScannableMotor
- All Known Implementing Classes:
AirBearingScannableMotor,B18EnergyScannable,ControllerScannable,Crystal1PitchScannable,DummyScannableMotor,IdealBaseX,QexafsScannable,ScannableAttenuatorWedge,ScannableMotor,SmarGonScannableMotor,TrajectoryScannableMotor,TurboXasScannable,TweakableScannableMotor,ZebraQexafsScannable,ZebraScannableMotor,ZebraScannableMotorForQexafs
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringCouples (at present) ScannableMotor.rawAsynchronousMoveTo and RotationViewer.moveMotorFields inherited from interface gda.device.Scannable
ATTR_NEXUS_CATEGORY, ATTR_NX_CLASS, DEFAULT_INPUT_NAME, VALUE_UNAVAILABLEFields inherited from interface gda.device.ScannableMotion
FIRSTINPUTLIMITSFields inherited from interface gda.device.ScannableMotionUnits
HARDWAREUNITS, USERUNITS -
Method Summary
Modifier and TypeMethodDescriptiondoubleReturns the innermost (i.e.Returns the lower motor limit in its external representation.getMotor()Method required by scripts which need to access the real motor at times.
Before the script could get the motor name but now that the motor may be set by spring, scripts cannot get the underlying motor.doubledoublegetSpeed()doubleReturns this motor's time to velocity.Returns the innermost (i.e.Returns the upper motor limit in its external representation.doublevoidSets the motor used by this scannable motor.voidsetMotorName(String motorName) voidsetPosition(Object position) Set the positionvoidsetSpeed(double requiredSpeed) Set the speed of the underlying motorvoidsetTimeToVelocity(double timeToVelocity) Sets this motor's time to velocity.Methods inherited from interface gda.factory.Configurable
configure, isConfigureAtStartup, isConfigured, reconfigureMethods inherited from interface gda.device.ControllerRecord
getControllerRecordNameMethods inherited from interface gda.device.Device
close, getAttribute, getProtectionLevel, setAttribute, setProtectionLevelMethods inherited from interface gda.observable.IObservable
addIObserver, deleteIObserver, deleteIObserversMethods inherited from interface gda.device.Scannable
asynchronousMoveTo, atCommandFailure, atLevelEnd, atLevelMoveStart, atLevelStart, atPointEnd, atPointStart, atScanEnd, atScanLineEnd, atScanLineStart, atScanStart, checkPositionValid, getExtraNames, getInputNames, getLevel, getOutputFormat, getPosition, getScanMetadataAttribute, getScanMetadataAttributeNames, getScanMetadataAttributes, isAt, isBusy, moveTo, setExtraNames, setInputNames, setLevel, setOutputFormat, setScanMetadataAttribute, setScanMetadataAttributes, stop, toFormattedString, waitWhileBusyMethods inherited from interface gda.device.ScannableMotion
a, ar, checkPositionWithinGdaLimits, checkPositionWithinGdaLimits, getLowerGdaLimits, getNumberTries, getOffset, getScalingFactor, getTolerances, getUpperGdaLimits, r, setLowerGdaLimits, setLowerGdaLimits, setNumberTries, setOffset, setScalingFactor, setTolerance, setTolerances, setUpperGdaLimits, setUpperGdaLimitsMethods inherited from interface gda.device.ScannableMotionUnits
addAcceptableUnit, getAcceptableUnits, getHardwareUnitString, getUserUnits, setHardwareUnitString, setOffset, setUserUnits
-
Field Details
-
WAS_ALREADY_BUSY_SO_COULD_NOT_BE_MOVED
Couples (at present) ScannableMotor.rawAsynchronousMoveTo and RotationViewer.moveMotor- See Also:
-
-
Method Details
-
setMotor
Sets the motor used by this scannable motor.- Parameters:
motor- the motor
-
getMotor
Motor getMotor()Method required by scripts which need to access the real motor at times.
Before the script could get the motor name but now that the motor may be set by spring, scripts cannot get the underlying motor.- Returns:
- Motor
-
setMotorName
- Parameters:
motorName- The motorName to set.
-
getMotorName
String getMotorName()- Returns:
- Returns the motorName.
-
getSpeed
- Returns:
- speed of the motor
- Throws:
DeviceException
-
getMotorResolution
- Returns:
- the resolution of the motor
- Throws:
DeviceException
-
getDemandPositionTolerance
double getDemandPositionTolerance()- Returns:
- the deadband retry of an EPICS motor for eg.
-
getUserOffset
- Returns:
- the user offset on the motor
- Throws:
DeviceException
-
getTimeToVelocity
Returns this motor's time to velocity.- Throws:
DeviceException
-
setTimeToVelocity
Sets this motor's time to velocity.- Throws:
DeviceException
-
setSpeed
Set the speed of the underlying motor- Parameters:
requiredSpeed- in the motor's units- Throws:
DeviceException
-
setPosition
Set the position- Throws:
DeviceException
-
getLowerMotorLimit
Returns the lower motor limit in its external representation. Null if there is no lower Motor limit.- Returns:
- limit in external representation
- Throws:
DeviceException
-
getUpperMotorLimit
Returns the upper motor limit in its external representation. Null if there is no upper Motor limit.- Returns:
- limit in external representation
- Throws:
DeviceException
-
getLowerInnerLimit
Returns the innermost (i.e. the most limiting) of the lower Scannable and Motor limits.- Returns:
- the highest minimum limit, or null if neither are set.
- Throws:
DeviceException
-
getUpperInnerLimit
Returns the innermost (i.e. the most limiting) of the upper Scannable and Motor limits.- Returns:
- the lowest maximum limit, or null if neither are set.
- Throws:
DeviceException
-