diff --git a/src/main/java/a8k/extapi_controler/pagecontrol/ExtApiTabConfig.java b/src/main/java/a8k/extapi_controler/pagecontrol/ExtApiTabConfig.java index 03a7acf..58715e4 100644 --- a/src/main/java/a8k/extapi_controler/pagecontrol/ExtApiTabConfig.java +++ b/src/main/java/a8k/extapi_controler/pagecontrol/ExtApiTabConfig.java @@ -33,7 +33,7 @@ public enum ExtApiTabConfig { ReactionPlatesTransmitCtrl("ReactionPlatesTransmitCtrl", false), HbotControlService("HbotControlService", false), TubePreProcesControler("硬件控制.样本预处理模块", false), - TubeScanerControler("硬件控制.样本搬运与扫描", false), + TubeTubeFeedingModule("硬件控制.入料模块", false), ConsumablesScanCtrlService("硬件控制.耗材扫描", false), diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_START.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_START.java index 42889e7..088203e 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_START.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/DO_START.java @@ -6,7 +6,7 @@ import a8k.service.app.appstate.GStateService; import a8k.service.app.appstate.resource.A8kPublicResourceType; import a8k.service.app.appstate.type.MainFlowCtrlState; import a8k.service.app.appstate.type.state.A8kWorkState; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; import a8k.service.debug.AppDebugHelperService; import a8k.type.exception.AppException; import jakarta.annotation.PostConstruct; @@ -29,7 +29,7 @@ public class DO_START extends A8kStepAction { GStateService gstate; @Resource - TubeScanerControler tubeScanerControler; + TubeTubeFeedingModule tubeTubeFeedingModule; @Resource AppDebugHelperService appDebugHelper; @@ -47,7 +47,7 @@ public class DO_START extends A8kStepAction { if (appDebugHelper.isDebug()) { appDebugHelper.doVirtualThings("弹出试管架", 2); } else { - tubeScanerControler.ejectTubeHolder(); + tubeTubeFeedingModule.ejectTubeHolder(); } } diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java index 3347304..f8bcd9a 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ1_ENTER_TUBEHOLDER_AND_SCAN.java @@ -15,7 +15,7 @@ import a8k.service.app.appstate.resource.A8kPublicResourceType; import a8k.service.app.appstate.type.TubeHolder; import a8k.service.app.appstate.type.state.TubeHolderState; import a8k.service.app.appstate.type.state.TubeState; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; import a8k.service.debug.AppDebugHelperService; import a8k.type.TubeHolderScanResult; import a8k.type.exception.AppException; @@ -47,11 +47,11 @@ public class SEQ1_ENTER_TUBEHOLDER_AND_SCAN extends A8kStepAction { @Resource - CondtionMgrService cmgr; + CondtionMgrService cmgr; @Resource - TubeScanerControler stc; + TubeTubeFeedingModule stc; @Resource - AppEventBusService ebus; + AppEventBusService ebus; @Resource AppTubeSettingMgrService appTubeSettingMgrService; @Resource diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java index a09b54d..af9feb5 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ2_SWITCH_TO_THE_NEXT_TUBE.java @@ -9,7 +9,7 @@ import a8k.service.app.appstate.type.MainFlowCtrlState; import a8k.service.app.appstate.type.TubeHolder; import a8k.service.app.appstate.type.Tube; import a8k.service.app.appstate.type.state.TubeState; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; import a8k.service.debug.AppDebugHelperService; import a8k.type.exception.AppException; import jakarta.annotation.PostConstruct; @@ -39,11 +39,11 @@ public class SEQ2_SWITCH_TO_THE_NEXT_TUBE extends A8kStepAction { } @Resource - GStateService gstate; + GStateService gstate; @Resource - TubeScanerControler sstc; + TubeTubeFeedingModule sstc; @Resource - CondtionMgrService cms; + CondtionMgrService cms; @Resource ProjectProcessContextMgrService projectProcessContextMgrService; diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ4_PRE_PROCESS.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ4_PRE_PROCESS.java index 57a1fcc..9044f4b 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ4_PRE_PROCESS.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ4_PRE_PROCESS.java @@ -13,7 +13,7 @@ import a8k.service.app.appstate.resource.A8kPublicResourceType; import a8k.service.app.appstate.type.Tube; import a8k.service.app.devicedriver.basectrl.HbotBaseMoveControler; import a8k.service.app.devicedriver.ctrl.ReactionPlatesTransmitCtrl; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; import a8k.service.app.devicedriver.ctrl.TubePreProcesControler; import a8k.type.ecode.AppError; import a8k.type.exception.AppException; @@ -46,7 +46,7 @@ public class SEQ4_PRE_PROCESS extends A8kStepAction { GStateService gstate; @Resource - TubeScanerControler sstc; + TubeTubeFeedingModule sstc; @Resource ConsumablesMgrService consumablesMgrService; @Resource diff --git a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ7_EJECT_TUBEHOLDER.java b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ7_EJECT_TUBEHOLDER.java index c86401e..fdc8153 100644 --- a/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ7_EJECT_TUBEHOLDER.java +++ b/src/main/java/a8k/service/app/appctrl/mainflowctrl/action/SEQ7_EJECT_TUBEHOLDER.java @@ -7,7 +7,7 @@ import a8k.service.app.appstate.GStateService; import a8k.service.app.appstate.type.MainFlowCtrlState; import a8k.service.app.appstate.resource.A8kPublicResourceType; import a8k.service.app.appstate.type.state.TubeHolderState; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; import a8k.service.debug.AppDebugHelperService; import a8k.type.exception.AppException; import jakarta.annotation.PostConstruct; @@ -34,7 +34,7 @@ public class SEQ7_EJECT_TUBEHOLDER extends A8kStepAction { AppDebugHelperService appDebugHelper; @Resource - TubeScanerControler SST_HControler; + TubeTubeFeedingModule SST_HControler; MainFlowCtrlState state; diff --git a/src/main/java/a8k/service/app/devicedriver/basectrl/TubeTransportControler.java b/src/main/java/a8k/service/app/devicedriver/basectrl/TubeTransportControler.java index a1cb3fe..63e62ce 100644 --- a/src/main/java/a8k/service/app/devicedriver/basectrl/TubeTransportControler.java +++ b/src/main/java/a8k/service/app/devicedriver/basectrl/TubeTransportControler.java @@ -6,7 +6,7 @@ import a8k.hardware.type.a8kcanprotocol.A8kEcode; import a8k.hardware.type.a8kcanprotocol.MId; import a8k.service.app.devicedriver.basectrl.type.MiniServoMId; import a8k.service.app.devicedriver.basectrl.type.StepMotorMId; -import a8k.service.app.devicedriver.pos.TubeScanPosMgr; +import a8k.service.app.devicedriver.pos.TubeFeedingModulePosMgr; import a8k.type.TargetPosMeasureDirection; import a8k.type.exception.AppException; import jakarta.annotation.Resource; @@ -25,7 +25,7 @@ public class TubeTransportControler { MiniServoControler miniServoControler; @Resource - TubeScanPosMgr tubeScanPosMgr; + TubeFeedingModulePosMgr tubeScanPosMgr; @Resource StepMotorControler stepMotorControler; diff --git a/src/main/java/a8k/service/app/devicedriver/calibration/TubePreProcesPosCalibration.java b/src/main/java/a8k/service/app/devicedriver/calibration/TubePreProcesPosCalibration.java index 20b30ec..5b28ed1 100644 --- a/src/main/java/a8k/service/app/devicedriver/calibration/TubePreProcesPosCalibration.java +++ b/src/main/java/a8k/service/app/devicedriver/calibration/TubePreProcesPosCalibration.java @@ -9,31 +9,42 @@ import a8k.service.app.devicedriver.basectrl.MiniServoControler; import a8k.service.app.devicedriver.basectrl.StepMotorControler; import a8k.service.app.devicedriver.basectrl.type.MiniServoMId; import a8k.service.app.devicedriver.basectrl.type.StepMotorMId; +import a8k.service.app.devicedriver.ctrl.TubePreProcesControler; import a8k.service.app.devicedriver.pos.TubePreProcesPosMgr; import a8k.type.exception.AppException; import jakarta.annotation.Resource; import org.springframework.stereotype.Component; -@ExtApiTab(cfg = ExtApiTabConfig.TubeScanPosCalibration) +@ExtApiTab(cfg = ExtApiTabConfig.TubePreProcesPosCalibration) @Component public class TubePreProcesPosCalibration { + final static Integer overtime = 6000; + @Resource TubePreProcesPosMgr tubePreProcesPosMgr; @Resource - A8kCanBusService canBus; + A8kCanBusService canBus; + @Resource + MiniServoControler miniServoControler; @Resource - MiniServoControler miniServoControler; + StepMotorControler stepMotorControler; @Resource - StepMotorControler stepMotorControler; + TubePreProcesControler tubePreProcesControler; //基础工具 @ExtApiFn(name = "归零", group = "测试工具", order = 11) public void deviceReset() throws AppException { enableModule(); stepMotorControler.stepMotorEasyMoveToZeroBlock(StepMotorMId.FeedingModXM, 15000); - + miniServoControler.miniServoMoveToBlock(MiniServoMId.ShakeModTubeScanerClampingSV, 20, overtime); + miniServoControler.miniServoMoveToBlock(MiniServoMId.ShakeModGripperSV, 300, overtime); + miniServoControler.miniServoMoveToBlock(MiniServoMId.ShakeModGripperYSV, 300, overtime); + stepMotorControler.stepMotorEasyMoveToZeroBlock(StepMotorMId.ShakeModClampingM, overtime); + stepMotorControler.stepMotorEasyMoveToZeroBlock(StepMotorMId.ShakeModGripperZM, overtime); + stepMotorControler.stepMotorEasyMoveToZeroBlock(StepMotorMId.ShakeModShakeM, overtime); + stepMotorControler.stepMotorEasyMoveToBlock(StepMotorMId.ShakeModShakeM, 90, overtime); } @ExtApiFn(name = "使能相关模块", group = "测试工具", order = 12) @@ -43,18 +54,70 @@ public class TubePreProcesPosCalibration { stepMotorControler.stepMotorEnable(StepMotorMId.ShakeModClampingM, 1); stepMotorControler.stepMotorEnable(StepMotorMId.ShakeModGripperZM, 1); stepMotorControler.stepMotorEnable(StepMotorMId.ShakeModShakeM, 1); + stepMotorControler.stepMotorEnable(StepMotorMId.FeedingModXM, 1); } @ExtApiFn(name = "失能相关模块", group = "测试工具", order = 13) public void disableModule() throws AppException { - stepMotorControler.stepMotorEnable(StepMotorMId.FeedingModInfeedM, 0); - stepMotorControler.stepMotorEnable(StepMotorMId.FeedingModOutfeedM, 0); + miniServoControler.miniServoEnable(MiniServoMId.ShakeModGripperSV, 0); + miniServoControler.miniServoEnable(MiniServoMId.ShakeModGripperYSV, 0); + stepMotorControler.stepMotorEnable(StepMotorMId.ShakeModClampingM, 0); + stepMotorControler.stepMotorEnable(StepMotorMId.ShakeModGripperZM, 0); + stepMotorControler.stepMotorEnable(StepMotorMId.ShakeModShakeM, 0); stepMotorControler.stepMotorEnable(StepMotorMId.FeedingModXM, 0); - miniServoControler.miniServoEnable(MiniServoMId.ShakeModTubeScanerClampingSV, 0); } + @ExtApiFn(name = "读取夹爪当前位置", group = "测试工具", order = 13) + public Integer readGripperPos() throws AppException { + return miniServoControler.miniServoReadPos(MiniServoMId.ShakeModGripperSV); + } + //标定和校准 + //夹爪 : 设置参考点,标定,验证 + //YSV : 设置参考点,标定,验证 + //ZM : 标定,验证 + //XProcessPos: 标定,验证 + //ShakeClamp : 标定,校验 - //标定和校准 + @ExtApiFn(name = "设置当前位置为<参考点>", group = "夹爪", order = 21) + public Integer gripperSVSetCurrentPosAsRef() throws AppException { + miniServoControler.miniServoSetCurPos(MiniServoMId.ShakeModGripperSV, 100); + return 100; + } + + @ExtApiFn(name = "<标定>当前点为<抓手张开位置>", group = "夹爪", order = 22) + public Integer gripperSVSetCurrentPosAsOpenPos() throws AppException { + Integer pos = miniServoControler.miniServoReadPos(MiniServoMId.ShakeModGripperSV); + tubePreProcesPosMgr.setGripperServoOpenPos(pos); + return pos; + } + @ExtApiFn(name = "<标定>当前点为<抓手闭合位置>", group = "夹爪", order = 23) + public Integer gripperSVSetCurrentPosAsClosePos() throws AppException { + Integer pos = miniServoControler.miniServoReadPos(MiniServoMId.ShakeModGripperSV); + tubePreProcesPosMgr.setGripperServoClosePos(pos); + return pos; + } + + @ExtApiFn(name = "<标定>当前点为<抓手取试管位置>", group = "夹爪", order = 24) + public Integer gripperSVSetCurrentPosAsTakeCapPos() throws AppException { + Integer pos = miniServoControler.miniServoReadPos(MiniServoMId.ShakeModGripperSV); + tubePreProcesPosMgr.setGripperServoTakeCapPos(pos); + return pos; + } + + @ExtApiFn(name = "<校验>张开", group = "夹爪", order = 26) + public void gripperSVOpen() throws AppException { + tubePreProcesControler.gripperSVOpen(); + } + + @ExtApiFn(name = "<校验>夹紧", group = "夹爪", order = 25) + public void gripperSVCClose() throws AppException { + tubePreProcesControler.gripperSVCClose(); + } + + @ExtApiFn(name = "<校验>夹住试管", group = "夹爪", order = 25) + public void gripperSVClampTube() throws AppException { + tubePreProcesControler.gripperSVClampTube(); + } } diff --git a/src/main/java/a8k/service/app/devicedriver/calibration/TubeScanPosCalibration.java b/src/main/java/a8k/service/app/devicedriver/calibration/TubeScanPosCalibration.java index e7e35c1..15b2e99 100644 --- a/src/main/java/a8k/service/app/devicedriver/calibration/TubeScanPosCalibration.java +++ b/src/main/java/a8k/service/app/devicedriver/calibration/TubeScanPosCalibration.java @@ -4,14 +4,13 @@ import a8k.extapi_controler.pagecontrol.ExtApiTabConfig; import a8k.extapi_controler.utils.ExtApiFn; import a8k.extapi_controler.utils.ExtApiTab; import a8k.hardware.A8kCanBusService; -import a8k.hardware.type.a8kcanprotocol.MId; import a8k.service.app.devicedriver.basectrl.MiniServoControler; import a8k.service.app.devicedriver.basectrl.StepMotorControler; import a8k.service.app.devicedriver.basectrl.TubeTransportControler; import a8k.service.app.devicedriver.basectrl.type.MiniServoMId; import a8k.service.app.devicedriver.basectrl.type.StepMotorMId; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; -import a8k.service.app.devicedriver.pos.TubeScanPosMgr; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; +import a8k.service.app.devicedriver.pos.TubeFeedingModulePosMgr; import a8k.type.TubeHolderScanResult; import a8k.type.exception.AppException; import jakarta.annotation.Resource; @@ -23,12 +22,12 @@ import org.springframework.stereotype.Component; public class TubeScanPosCalibration { @Resource - TubeScanPosMgr tubeScanPosMgr; + TubeFeedingModulePosMgr tubeScanPosMgr; @Resource A8kCanBusService canBus; @Resource - TubeScanerControler tubeScanerControler; + TubeTubeFeedingModule tubeTubeFeedingModule; @Resource TubeTransportControler tubeTransportControler; @Resource @@ -43,7 +42,7 @@ public class TubeScanPosCalibration { } @ExtApiFn(name = "获取所有坐标", group = "基础", order = 1) - public TubeScanPosMgr getPoss() throws AppException { + public TubeFeedingModulePosMgr getPoss() throws AppException { return tubeScanPosMgr; } @@ -120,7 +119,7 @@ public class TubeScanPosCalibration { @ExtApiFn(name = "扫描试管架", group = "校验", order = 33) public TubeHolderScanResult scanAll() throws AppException { - return tubeScanerControler.scanTubeHodler(); + return tubeTubeFeedingModule.scanTubeHodler(); } @ExtApiFn(name = "设置<试管扫描伺服力矩(100-1000)>", group = "其他", order = 41) diff --git a/src/main/java/a8k/service/app/devicedriver/ctrl/TubePreProcesControler.java b/src/main/java/a8k/service/app/devicedriver/ctrl/TubePreProcesControler.java index 120532e..4e40a6e 100644 --- a/src/main/java/a8k/service/app/devicedriver/ctrl/TubePreProcesControler.java +++ b/src/main/java/a8k/service/app/devicedriver/ctrl/TubePreProcesControler.java @@ -7,6 +7,7 @@ import a8k.service.app.devicedriver.basectrl.MiniServoControler; import a8k.service.app.devicedriver.basectrl.StepMotorControler; import a8k.service.app.devicedriver.basectrl.type.MiniServoMId; import a8k.service.app.devicedriver.basectrl.type.StepMotorMId; +import a8k.service.app.devicedriver.pos.TubePreProcesPosMgr; import a8k.type.exception.AppException; import a8k.hardware.A8kCanBusService; import a8k.hardware.type.a8kcanprotocol.A8kEcode; @@ -24,7 +25,8 @@ import org.springframework.stereotype.Component; @Component @ExtApiTab(cfg = ExtApiTabConfig.TubePreProcesControler) public class TubePreProcesControler { - static Logger logger = LoggerFactory.getLogger(TubePreProcesControler.class); + static Logger logger = LoggerFactory.getLogger(TubePreProcesControler.class); + static Integer actionOvertime = 10000; static class ORDER { @@ -48,6 +50,9 @@ public class TubePreProcesControler { DebugParam dp; @Resource + TubePreProcesPosMgr tubePreProcesPosMgr; + + @Resource MiniServoControler miniServoControler; @Resource StepMotorControler stepMotorControler; @@ -272,12 +277,24 @@ public class TubePreProcesControler { } } -// /** -// * 移动试管到试管预处理的位置 -// * @param tubeIndex 试管索引 -// */ -// public void moveTubeToPreProcessPos(Integer tubeIndex) throws AppException { -// moveTubeRackTo(stp.getTPreProcessXPos() + tubeIndex * tubeHolderParamMgr.getTubeSpacing(), TargetPosMeasureDirection.POSITIVE, false); -// } + // /** + // * 移动试管到试管预处理的位置 + // * @param tubeIndex 试管索引 + // */ + // public void moveTubeToPreProcessPos(Integer tubeIndex) throws AppException { + // moveTubeRackTo(stp.getTPreProcessXPos() + tubeIndex * tubeHolderParamMgr.getTubeSpacing(), TargetPosMeasureDirection.POSITIVE, false); + // } + + // 677 + public void gripperSVOpen() throws AppException { + miniServoControler.miniServoMoveToBlock(MiniServoMId.ShakeModGripperSV, tubePreProcesPosMgr.getGripperServoOpenPos(), actionOvertime); + } + + public void gripperSVCClose() throws AppException { + miniServoControler.miniServoMoveToBlock(MiniServoMId.ShakeModGripperSV, tubePreProcesPosMgr.getGripperServoClosePos(), actionOvertime); + } + public void gripperSVClampTube() throws AppException { + miniServoControler.miniServoMoveToBlock(MiniServoMId.ShakeModGripperSV, tubePreProcesPosMgr.getGripperServoClosePos(), actionOvertime); + } } diff --git a/src/main/java/a8k/service/app/devicedriver/ctrl/TubeScanerControler.java b/src/main/java/a8k/service/app/devicedriver/ctrl/TubeTubeFeedingModule.java similarity index 96% rename from src/main/java/a8k/service/app/devicedriver/ctrl/TubeScanerControler.java rename to src/main/java/a8k/service/app/devicedriver/ctrl/TubeTubeFeedingModule.java index e449152..23d6b7e 100644 --- a/src/main/java/a8k/service/app/devicedriver/ctrl/TubeScanerControler.java +++ b/src/main/java/a8k/service/app/devicedriver/ctrl/TubeTubeFeedingModule.java @@ -10,7 +10,7 @@ import a8k.service.app.devicedriver.basectrl.StepMotorControler; import a8k.service.app.devicedriver.basectrl.TubeTransportControler; import a8k.service.app.devicedriver.basectrl.type.MiniServoMId; import a8k.service.app.devicedriver.basectrl.type.StepMotorMId; -import a8k.service.app.devicedriver.pos.TubeScanPosMgr; +import a8k.service.app.devicedriver.pos.TubeFeedingModulePosMgr; import a8k.service.app.devicedriver.pos.TubeHolderParamMgr; import a8k.service.bases.AppEventBusService; import a8k.service.bases.appevent.AppWarningNotifyEvent; @@ -28,9 +28,9 @@ import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; @Component -@ExtApiTab(cfg = ExtApiTabConfig.TubeScanerControler) -public class TubeScanerControler { - static Logger logger = LoggerFactory.getLogger(TubeScanerControler.class); +@ExtApiTab(cfg = ExtApiTabConfig.TubeTubeFeedingModule) +public class TubeTubeFeedingModule { + static Logger logger = LoggerFactory.getLogger(TubeTubeFeedingModule.class); static Integer infeedOvertime = 10000; static Integer outfeedOvertime = 10000; static Integer scanOvertime = 3000; @@ -47,11 +47,11 @@ public class TubeScanerControler { @Resource AppEventBusService ebus; @Resource - A8kCanBusService canBus; + A8kCanBusService canBus; @Resource - TubeScanPosMgr stp; + TubeFeedingModulePosMgr stp; @Resource - TubeHolderParamMgr tubeHolderParamMgr; + TubeHolderParamMgr tubeHolderParamMgr; @Resource CodeScaner codeScaner; @Resource @@ -104,12 +104,9 @@ public class TubeScanerControler { public Boolean getTHchInterPPS() throws AppException { return canBus.getIOState(IOId.THChInterPPS); } - - /*========================================================================================= * 片段 *========================================================================================*/ - /** * 移动试管架到入口位置 */ diff --git a/src/main/java/a8k/service/app/devicedriver/pos/TubeScanPosMgr.java b/src/main/java/a8k/service/app/devicedriver/pos/TubeFeedingModulePosMgr.java similarity index 92% rename from src/main/java/a8k/service/app/devicedriver/pos/TubeScanPosMgr.java rename to src/main/java/a8k/service/app/devicedriver/pos/TubeFeedingModulePosMgr.java index 102539f..5b5feea 100644 --- a/src/main/java/a8k/service/app/devicedriver/pos/TubeScanPosMgr.java +++ b/src/main/java/a8k/service/app/devicedriver/pos/TubeFeedingModulePosMgr.java @@ -10,11 +10,12 @@ import org.springframework.stereotype.Component; @Component -public class TubeScanPosMgr { - static final Logger logger = LoggerFactory.getLogger(TubeScanPosMgr.class); +//horizontal scroll +public class TubeFeedingModulePosMgr { + static final Logger logger = LoggerFactory.getLogger(TubeFeedingModulePosMgr.class); - public final Integer ScanerClampingSVReleasePos = 100; - public final Integer ScanerClampingSVClampingPos = 1000; + public final Integer ScanerClampingSVReleasePos = 100; + public final Integer ScanerClampingSVClampingPos = 1000; public enum POS { TubeHolderEnterXPos, // 入料位置 diff --git a/src/main/java/a8k/service/app/devicedriver/pos/TubePreProcesPosMgr.java b/src/main/java/a8k/service/app/devicedriver/pos/TubePreProcesPosMgr.java index 548eca5..1de2810 100644 --- a/src/main/java/a8k/service/app/devicedriver/pos/TubePreProcesPosMgr.java +++ b/src/main/java/a8k/service/app/devicedriver/pos/TubePreProcesPosMgr.java @@ -10,7 +10,7 @@ import org.springframework.stereotype.Component; @Component public class TubePreProcesPosMgr { - static final Logger logger = LoggerFactory.getLogger(TubeScanPosMgr.class); + static final Logger logger = LoggerFactory.getLogger(TubeFeedingModulePosMgr.class); public enum POS { GripperServoOpenPos("抓手张开位置"),// @@ -50,6 +50,10 @@ public class TubePreProcesPosMgr { if (!nowParaVersion.equals(paraVersion)) { logger.info("init param"); posReader.setVersion(nowParaVersion); + + // 677,450,310,355 + // 1800, + posReader.updatePos(POS.GripperServoOpenPos, 450); posReader.updatePos(POS.GripperServoClosePos, 310); posReader.updatePos(POS.GripperServoTakeCapPos, 355); diff --git a/src/main/java/a8k/service/app/devicedriver/testscript/TestScript.java b/src/main/java/a8k/service/app/devicedriver/testscript/TestScript.java index 5b69f7d..b7edd7f 100644 --- a/src/main/java/a8k/service/app/devicedriver/testscript/TestScript.java +++ b/src/main/java/a8k/service/app/devicedriver/testscript/TestScript.java @@ -8,7 +8,7 @@ import a8k.type.ConsumableGroup; import a8k.type.exception.AppException; import a8k.type.IncubatorPos; import a8k.service.app.devicedriver.ctrl.TubePreProcesControler; -import a8k.service.app.devicedriver.ctrl.TubeScanerControler; +import a8k.service.app.devicedriver.ctrl.TubeTubeFeedingModule; import a8k.hardware.A8kCanBusService; import a8k.hardware.type.a8kcanprotocol.A8kEcode; import a8k.service.app.devicedriver.basectrl.HbotBaseMoveControler; @@ -61,7 +61,7 @@ public class TestScript { TubePreProcesControler tubePreProcesControler; @Resource - TubeScanerControler tubeScanerControler; + TubeTubeFeedingModule tubeTubeFeedingModule; EnginnerParamReader settingReader = new EnginnerParamReader(HbotBaseMoveControler.class);