The following sections describe the PV names for PEPPEx motion control stage. The device is composed of two movable axis. One in Y direction with a total movable range of 82 mm and one in X axis with total movable range of 8 mm.
Y Axis:
The Zone plates are on the Y axis. Only one at a time can be inserted. There are 4 zone plates, ordered from the first inserted to the last as the actuator moves from its nominal "Zero" position. Zero position is at the out/upper limit switch and the axis moves in negative direction as is grows into the beam.
PVs related to mover as a whole
MOVR:UNDS:5013:Y:ENABLE | Enable motor torque |
MOVR:UNDS:5013:Y:ENABLEDSTAT | motor torque status |
MOVR:UNDS:5013:Y:MOTR.VAL | motor record - requested position |
MOVR:UNDS:5013:Y:MOTR.RBV | motor record - readback position |
MOVR:UNDS:5013:Y:Moving | Binary PV indicating if mover is moving or not |
MOVR:UNDS:5013:Y:EncRdbk | BissC Encoder Readback |
MOVR:UNDS:5013:Y:EncOffset | Absolute Encoder Offset |
MOVR:UNDS:5013:Y:DISABLE | Disable motor torque |
X Axis:
The actuator moves in negative X direction towards the aisle. The nominal Zero position will be the center of the first inserted zone plate into the beampath.
PVs related to mover as a whole
MOVR:UNDS:5013:X:ENABLE | Enable motor torque |
MOVR:UNDS:5013:X:ENABLEDSTAT | motor torque status |
MOVR:UNDS:5013:X:MOTR.VAL | motor record - requested position |
MOVR:UNDS:5013:X:MOTR.RBV | motor record - readback position |
MOVR:UNDS:5013:X:HomeOffset | Distance from beam centerline to aisle limit switch |
MOVR:UNDS:5013:X:Moving | Binary PV indicating if mover is moving or not |
MOVR:UNDS:5013:X:EncRbdk | BissC Encoder Readback |
MOVR:UNDS:5013:X:EncOffset | Absolute Encoder Offset |
MOVR:UNDS:5013:X:DISABLE | Disable motor torque |
Test Information from B31
X axis maximum speed attained 1mm/sec
Y axis maximum speed attained 0.75mm/sec
When X axis moves in CW direction (looking at the rear shaft of the motor or looking from aisle side) the paddle moves into the beam.
Data from alignment (Pre installation from B31)
Zone Plate 0 center | 0 | -31.7783 |
Zone Plate 1 center | -0.0194 | -46.2797 |
Zone Plate 2 center | 0.1694 | -60.3538 |
Zone Plate 3 center | 0.4287 | -74.7899 |
Motion End of Travel limit positions from alignment (Pre installation from B31)
Y Axis Motion End of travel limit (Top) | 0 |
Y Axis Motion End of travel limit (Bottom) | -81.5293 |
X Axis Motion End of travel limit (CCW label) | 4.0418 |
X Axis Motion End of travel limit (CW label) | -4 |
MPS limit positions from alignment (Pre installation from B31)
MPS Out | 0 | -3.8244 |
MPS 0 | -28.262 | -35.799 |
MPS 1 | -42.611 | -50.221 |
MPS 2 | -56.988 | -64.621 |
MPS 3 | -71.380 | -78.655 |
IOC Configuration
sioc-unds-mc03 | IOC Name |
moc-unds-mc48 | MOC Name |
motion/motionApp | source code location |
acsw-unds-nw50 | port 1 |
Aerotech requirements
resoluteEncoder.abi reads back data from DRIVEINFO field ResoluteAbsolutePosition. This program needs to be autorun in Task1 so that data can be read in EPICS
parameterNames.cfg must be loaded in the file system
Aerotech parameters setup
X axis
Counts/unit
Encoder = 50nm resolution => 1 count of encoder = 5 * 10^(-5) mm
In Aerotech for mm as unit
Counts/unit = 1/ (5* 10^(-5)) = 20000
Counts/rev
1 motor revolution = 1.27 mm
=> 20000*1.27 = 25400
Parameters that affected in lowering the chriping noise
Running current = 0.5A
Holding current = 0.2A
Stepper Damping Cut off = 150
Y axis
Counts/unit
Encoder = 50nm resolution => 1 count of encoder = 5 * 10^(-5) mm
In Aerotech for mm as unit
Counts/unit = 1/ (5* 10^(-5)) = 20000
Counts/rev
Y axis seems to have a gear reducer 5:1 added
5 motor revolution = 1.27 mm
=> 20000*1.27/5 = 5080
Parameters that affected in lowering the chriping noise
Running current = 2A
Holding current = 0.5A
Stepper Damping Cut off = 80
Max Speed
X axis maximum speed attained 1mm/sec
Y axis maximum speed attained 0.75mm/sec
Error Thresholds
InPositionDistance (the position error threshold below which an axis is considered to be in position) for both axis 10-5 mm
InPositionTime (quantity of time that the position error of the axis must be less than InPositionDistance) = 500 sec
PositionErrorThreshold ( maximum allowable position error (the difference between the position command and the position feedback) before a position error fault is generated.)
1mm
1 Comment
Namrata Balakrishnan
Currently Axis Y is running open loop.
So,
starting with stepper resolution of 5000 (similar to open loop collimators)
Counts/rev
stepper with no feedback, matching counts per rev to the stepper resolution
Counts/unit
5 motor revolution = 1.27 mm
for 1mm = 5/1.27 revolutions of motor
so counts/unit will be (counts/rev) * (5/1.27) = 5000 * 5 /1.27 = 19685