|
|
@ -15,8 +15,6 @@ import java.util.Map; |
|
|
|
public class StartResetTaskThread extends Thread { |
|
|
|
// logger |
|
|
|
public static final Logger LOG = LoggerFactory.getLogger(StartResetTaskThread.class); |
|
|
|
// 是否需要放置异常处理试管架 |
|
|
|
private Boolean isErrorTubeRackRequired = true; |
|
|
|
// pause lock |
|
|
|
private final Object pauseLock = new Object(); |
|
|
|
// action result |
|
|
@ -39,9 +37,8 @@ public class StartResetTaskThread extends Thread { |
|
|
|
this.setupHeatingSlotCover(); |
|
|
|
// 蠕动泵初始化 |
|
|
|
this.setupPeristalticPump(); |
|
|
|
if ( this.isErrorTubeRackRequired ) { |
|
|
|
this.setupErrorTubeRack(); |
|
|
|
} |
|
|
|
// 初始化异常处理区 |
|
|
|
this.setupErrorTubeRack(); |
|
|
|
break; |
|
|
|
} catch ( Exception e ) { |
|
|
|
UfMdbNotification.error(e.getMessage()); |
|
|
@ -68,8 +65,6 @@ public class StartResetTaskThread extends Thread { |
|
|
|
*/ |
|
|
|
private void setupHeatingSlotCover() { |
|
|
|
boolean isDoorOpen = false; |
|
|
|
Integer errorSlotIndex = UfApplication.getApp().getEnv().getProperty("app.errorSlotIndex", Integer.class); |
|
|
|
|
|
|
|
for ( int i=0; i<5; i++ ) { |
|
|
|
this.setProgressMessage("设备初始化 : 检查试管架 " + (i+1) + "/5"); |
|
|
|
UfCmdSnippetExecutor.execute(String.format("HeatingSlotCoverEnable.%d",i)); |
|
|
@ -85,13 +80,6 @@ public class StartResetTaskThread extends Thread { |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
// 如果是空试管架, 又是异常区域则不处理, 因为异常区域始终要有个试管架 |
|
|
|
var emptyRackExistsPos = UfMdbOption.getInteger("HeatingPlateMotorSlotCoverEmptyRackExists", 0); |
|
|
|
if ( currentPos > emptyRackExistsPos && null != errorSlotIndex && errorSlotIndex == i ) { // 异常区域存在空试管架 |
|
|
|
this.isErrorTubeRackRequired = false; |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
// 将试管架移至加液盘 |
|
|
|
UfCmdSnippetExecutor.execute(String.format("TubeRackMoveToLiquidPlate.%d", i)); |
|
|
|
// 打开柜门 |
|
|
|