error = ecmcSlitDemoLib.getAxisError(centerMotor, 1) error = ecmcSlitDemoLib.getAxisError(masterMotor, 1) epics.caput(centerMotor + '-TrajSourceType-Cmd', 0) epics.caput(gapMotor + '-TrajSourceType-Cmd', 0) epics.caput(leftMotor + '-TrajSourceType-Cmd', 0) epics.caput(rightMotor + '-TrajSourceType-Cmd', 0) epics.caput(masterMotor + '-TrajSourceType-Cmd', 0) error = ecmcSlitDemoLib.getAxisError(leftMotor, 1) error = ecmcSlitDemoLib.getAxisError(rightMotor, 1) error = ecmcSlitDemoLib.getAxisError(gapMotor, 1) error = ecmcSlitDemoLib.getAxisError(centerMotor, 1) error = ecmcSlitDemoLib.getAxisError(masterMotor, 1) #Start homing sequences ecmcSlitDemoLib.triggHomeAxis(leftMotor, 3) ecmcSlitDemoLib.triggHomeAxis(rightMotor, 3) print 'Wait for homing sequences to finish:', done = ecmcSlitDemoLib.waitForAxis(leftMotor, 180) if not done: print "%s failed to home." % leftMotor sys.exit() done = ecmcSlitDemoLib.waitForAxis(rightMotor, 180) if not done: print "%s failed to home." % rightMotor sys.exit() ecmcSlitDemoLib.setAxisEnable(masterMotor, 1) #run master axis motor to 0 print 'Move master axis to position 0.'
#epics.caput(Mtr5 + '-TrajSourceType-Cmd', 0) #epics.caput(Mtr6 + '-TrajSourceType-Cmd', 0) print 'Ensure internal trajectory source on all axes' error = ecmcSlitDemoLib.getAxisError(Mtr1, 1) error = ecmcSlitDemoLib.getAxisError(Mtr2, 1) #error=ecmcSlitDemoLib.getAxisError(Mtr3,1); #error=ecmcSlitDemoLib.getAxisError(Mtr4,1); #error=ecmcSlitDemoLib.getAxisError(Mtr5,1); #error=ecmcSlitDemoLib.getAxisError(Mtr6,1); error = ecmcSlitDemoLib.getAxisError(gapMotor, 1) error = ecmcSlitDemoLib.getAxisError(centerMotor, 1) print 'Start homing sequence' #Start homing sequences ecmcSlitDemoLib.triggHomeAxis(Mtr1, HomProcLeft) #ecmcSlitDemoLib.triggHomeAxis(Mtr2,HomProcLeft) ecmcSlitDemoLib.triggHomeAxis(Mtr1, HomProcRight) #ecmcSlitDemoLib.triggHomeAxis(Mtr3,HomProcRight) #ecmcSlitDemoLib.triggHomeAxis(Mtr4,HomProcRight) #ecmcSlitDemoLib.triggHomeAxis(Mtr5,HomProcRight) #ecmcSlitDemoLib.triggHomeAxis(Mtr6,HomProcLeft) print 'Wait for homing sequences to finish:' done = ecmcSlitDemoLib.waitForAxis(Mtr1, 1800) if not done: print "%s failed to home." % leftMotor sys.exit() done = ecmcSlitDemoLib.waitForAxis(Mtr2, 1800) if not done: print "%s failed to home." % rightMotor
epics.caput(Mtr5 + '-TrajSourceType-Cmd', 0) epics.caput(Mtr6 + '-TrajSourceType-Cmd', 0) print 'Ensure internal trajectory source on all axes' error = ecmcSlitDemoLib.getAxisError(Mtr1, 1) error = ecmcSlitDemoLib.getAxisError(Mtr2, 1) error = ecmcSlitDemoLib.getAxisError(Mtr3, 1) error = ecmcSlitDemoLib.getAxisError(Mtr4, 1) error = ecmcSlitDemoLib.getAxisError(Mtr5, 1) error = ecmcSlitDemoLib.getAxisError(Mtr6, 1) error = ecmcSlitDemoLib.getAxisError(gapMotor, 1) error = ecmcSlitDemoLib.getAxisError(centerMotor, 1) print 'Start homing sequence' #Start homing sequences ecmcSlitDemoLib.triggHomeAxis(Mtr1, HomProcLeft) ecmcSlitDemoLib.triggHomeAxis(Mtr2, HomProcLeft) ecmcSlitDemoLib.triggHomeAxis(Mtr3, HomProcRight) ecmcSlitDemoLib.triggHomeAxis(Mtr4, HomProcRight) ecmcSlitDemoLib.triggHomeAxis(Mtr5, HomProcRight) ecmcSlitDemoLib.triggHomeAxis(Mtr6, HomProcLeft) print 'Wait for homing sequences to finish:' done = ecmcSlitDemoLib.waitForAxis(Mtr1, 1800) if not done: print "%s failed to home." % leftMotor sys.exit() done = ecmcSlitDemoLib.waitForAxis(Mtr2, 1800) if not done: print "%s failed to home." % rightMotor sys.exit()
testLoops = 10 timeout = 50 if len(sys.argv) != 6: print( "python ecmcTestHome.py. <motorPvNamepv> <testnumberpv> <sequence> <testnumber>" ) print("python ecmcTestHome.py IOC:Axis1 IOC:TestNumber 1 10") sys.exit() motorPvName = sys.argv[1] testPvname = sys.argv[2] nCmdData = float(sys.argv[3]) testNumber = float(sys.argv[4]) testPv = epics.PV(testPvname) if testPv is None: print("Invalid testPv") sys.exit() #Start homing sequences ecmcSlitDemoLib.setAxisEnable(motorPvName, 1) time.sleep(1) ecmcSlitDemoLib.triggHomeAxis(motorPvName, nCmdData) time.sleep(1) ecmcSlitDemoLib.setAxisEnable(motorPvName, 0) testPv.put(testNumber) print('Homing done') # Runing homing