|
@ -1,12 +1,28 @@ |
|
|
package a8k.service.hardware; |
|
|
package a8k.service.hardware; |
|
|
|
|
|
|
|
|
|
|
|
import a8k.a8k_can_protocol.CmdId; |
|
|
|
|
|
import a8k.a8k_can_protocol.Errorcode; |
|
|
|
|
|
import a8k.a8k_can_protocol.ModuleId; |
|
|
|
|
|
import a8k.appbean.A8kTubeType; |
|
|
import a8k.appbean.AppErrorCode; |
|
|
import a8k.appbean.AppErrorCode; |
|
|
|
|
|
import a8k.appbean.HardwareException; |
|
|
import a8k.appbean.SampleTubeState; |
|
|
import a8k.appbean.SampleTubeState; |
|
|
|
|
|
import a8k.base_hardware.A8kCanBusService; |
|
|
|
|
|
import a8k.service.db.dao.A8kTubeInfoDao; |
|
|
|
|
|
import a8k.service.db.dao.SamplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
import com.iflytop.uf.UfActuatorCmdExecutor; |
|
|
|
|
|
import jakarta.annotation.Resource; |
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.stereotype.Component; |
|
|
import org.springframework.stereotype.Component; |
|
|
|
|
|
|
|
|
@Component |
|
|
@Component |
|
|
public class SamplesPreProcessModuleCtrlService { |
|
|
public class SamplesPreProcessModuleCtrlService { |
|
|
|
|
|
|
|
|
|
|
|
@Resource |
|
|
|
|
|
A8kTubeInfoDao tubeInfoDao; |
|
|
|
|
|
@Resource |
|
|
|
|
|
private A8kCanBusService a8kCanBusService; |
|
|
|
|
|
@Resource |
|
|
|
|
|
private SamplesPreProcessModuleCtrlParamsService samplesPreProcessModuleCtrlParamsService; |
|
|
/* |
|
|
/* |
|
|
样品预处理模块 |
|
|
样品预处理模块 |
|
|
主要负责样品预处理的相关操作 |
|
|
主要负责样品预处理的相关操作 |
|
@ -20,7 +36,40 @@ public class SamplesPreProcessModuleCtrlService { |
|
|
/** |
|
|
/** |
|
|
* 按照一定顺序归零设备 |
|
|
* 按照一定顺序归零设备 |
|
|
*/ |
|
|
*/ |
|
|
public void moveToZero() { |
|
|
|
|
|
|
|
|
public void moveToZero() throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getGripperServo_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getHorizontalMotor_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeShakeModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
/* |
|
|
/* |
|
|
1. 假设没有试管在当前设备上的前提下归零设备 |
|
|
1. 假设没有试管在当前设备上的前提下归零设备 |
|
|
2. 舵机虽然没有零位,但需要将其移动到待机位置 |
|
|
2. 舵机虽然没有零位,但需要将其移动到待机位置 |
|
@ -31,8 +80,32 @@ public class SamplesPreProcessModuleCtrlService { |
|
|
* 使能模组 |
|
|
* 使能模组 |
|
|
* @param enable 是否使能模组 |
|
|
* @param enable 是否使能模组 |
|
|
*/ |
|
|
*/ |
|
|
public void enableModule(boolean enable) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void enableModule(boolean enable) throws HardwareException { |
|
|
|
|
|
this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.MotorTubeShakeModule, |
|
|
|
|
|
CmdId.kstep_motor_enable, |
|
|
|
|
|
enable ? 1 : 0 |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kstep_motor_enable, |
|
|
|
|
|
enable ? 1 : 0 |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kstep_motor_enable, |
|
|
|
|
|
enable ? 1 : 0 |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kmini_servo_enable, |
|
|
|
|
|
enable ? 1 : 0 |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_enable, |
|
|
|
|
|
enable ? 1 : 0 |
|
|
|
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -49,14 +122,103 @@ public class SamplesPreProcessModuleCtrlService { |
|
|
* @param tubeType TubeType_HighBlood,TubeType_ShortBlood,TubeType_Mini,TubeType_MiniBlood,TubeType_BulletTube1P5,TubeType_BulletTube0P5 |
|
|
* @param tubeType TubeType_HighBlood,TubeType_ShortBlood,TubeType_Mini,TubeType_MiniBlood,TubeType_BulletTube1P5,TubeType_BulletTube0P5 |
|
|
* @param judgeCapExist 是否判断试管帽子存在与否 |
|
|
* @param judgeCapExist 是否判断试管帽子存在与否 |
|
|
*/ |
|
|
*/ |
|
|
public AppErrorCode takeTube(String tubeType,boolean judgeCapExist) { |
|
|
|
|
|
|
|
|
public AppErrorCode takeTube(String tubeType,boolean judgeCapExist) throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getHorizontalMotor_takeCapPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
var motorUdTubeTaskPos = params.getZMotor_ShortBloodTakeCapHeight(); |
|
|
|
|
|
var tubeTypeValue = A8kTubeType.valueOf(tubeType); |
|
|
|
|
|
if ( tubeTypeValue.equals(A8kTubeType.HighBlood) ) { |
|
|
|
|
|
motorUdTubeTaskPos = params.getZMotor_HighBloodTakeCapHeight(); |
|
|
|
|
|
} |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
motorUdTubeTaskPos, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
if ( judgeCapExist ) { |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kmini_servo_rotate_with_torque, |
|
|
|
|
|
params.getGripperServo_takeCapTorque(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_stop |
|
|
|
|
|
); |
|
|
|
|
|
var pos = this.a8kCanBusService.callcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_read_pos |
|
|
|
|
|
); |
|
|
|
|
|
if ( pos.getContentI32(0) > params.getGripperServo_hatDeterminesPosThres() ) { |
|
|
|
|
|
return AppErrorCode.TubeNotHasHat; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_rotate_with_torque, |
|
|
|
|
|
params.getGripperServo_takeCapTorque(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getHorizontalMotor_takePushCapPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getZMotor_placeShakeHeight(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getGripperServo_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getHorizontalMotor_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* |
|
|
/* |
|
|
注意事项: |
|
|
注意事项: |
|
|
1. 取试管并将试管放在试管夹紧位置,同时升降电机和平移电机移动到待机位 |
|
|
1. 取试管并将试管放在试管夹紧位置,同时升降电机和平移电机移动到待机位 |
|
|
2. 试管放置的水平高度和其在试管架中的高度保持一直 |
|
|
2. 试管放置的水平高度和其在试管架中的高度保持一直 |
|
|
3. 取试管前,先通过试管夹紧功能判断一下试管帽是否存在(在试管没帽的边沿位置,抓手扭矩抓紧,如果等待一定时间后,抓手位置接近极限位置,则认为没有帽子,返回TubeNotHasHat错误) |
|
|
3. 取试管前,先通过试管夹紧功能判断一下试管帽是否存在(在试管没帽的边沿位置,抓手扭矩抓紧,如果等待一定时间后,抓手位置接近极限位置,则认为没有帽子,返回TubeNotHasHat错误) |
|
|
4. 无论是否抓取成功,只要不向外抛出异常,方法结束时,该模块涉及到组件均需要返回待机位置。 |
|
|
4. 无论是否抓取成功,只要不向外抛出异常,方法结束时,该模块涉及到组件均需要返回待机位置。 |
|
|
|
|
|
|
|
|
*/ |
|
|
*/ |
|
|
|
|
|
|
|
|
return AppErrorCode.Success; |
|
|
return AppErrorCode.Success; |
|
@ -65,22 +227,108 @@ public class SamplesPreProcessModuleCtrlService { |
|
|
/** |
|
|
/** |
|
|
* 取试管帽 |
|
|
* 取试管帽 |
|
|
*/ |
|
|
*/ |
|
|
public AppErrorCode takeTubeCap() { |
|
|
|
|
|
// |
|
|
|
|
|
// |
|
|
|
|
|
// |
|
|
|
|
|
// |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public AppErrorCode takeTubeCap( String tubeType ) throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getHorizontalMotor_takePushCapPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getGripperServo_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
var motorUdTakeCapPos = params.getZMotor_ShortBloodTakeCapHeight(); |
|
|
|
|
|
var tubeTypeValue = A8kTubeType.valueOf(tubeType); |
|
|
|
|
|
if ( tubeTypeValue.equals(A8kTubeType.HighBlood) ) { |
|
|
|
|
|
motorUdTakeCapPos = params.getZMotor_HighBloodTakeCapHeight(); |
|
|
|
|
|
} |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
motorUdTakeCapPos, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getGripperServo_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getHorizontalMotor_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
return AppErrorCode.Success; |
|
|
return AppErrorCode.Success; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 盖试管帽,并将试管移动回试管架中 |
|
|
* 盖试管帽,并将试管移动回试管架中 |
|
|
*/ |
|
|
*/ |
|
|
public void pushBackTubeCapAndTakeBakTube(String tubeType) { |
|
|
|
|
|
// |
|
|
|
|
|
// |
|
|
|
|
|
// |
|
|
|
|
|
|
|
|
public void pushBackTubeCapAndTakeBakTube(String tubeType) throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getHorizontalMotor_takePushCapPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getGripperServo_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
var motorUdTakeCapPos = params.getZMotor_ShortBloodTakeCapHeight(); |
|
|
|
|
|
var tubeTypeValue = A8kTubeType.valueOf(tubeType); |
|
|
|
|
|
if ( tubeTypeValue.equals(A8kTubeType.HighBlood) ) { |
|
|
|
|
|
motorUdTakeCapPos = params.getZMotor_HighBloodTakeCapHeight(); |
|
|
|
|
|
} |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
motorUdTakeCapPos, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getGripperServo_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
params.getHorizontalMotor_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -94,37 +342,117 @@ public class SamplesPreProcessModuleCtrlService { |
|
|
* @param times 摇匀次数 |
|
|
* @param times 摇匀次数 |
|
|
* @param shakeDegree 摇匀角度 |
|
|
* @param shakeDegree 摇匀角度 |
|
|
*/ |
|
|
*/ |
|
|
public void ShakeTube(String tubeType, int times, int shakeDegree) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void ShakeTube(String tubeType, int times, int shakeDegree) throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
var standByPos = params.getShakeMotor_standbyPos(); |
|
|
|
|
|
var startPos = standByPos - shakeDegree/2; |
|
|
|
|
|
var endPos = standByPos + shakeDegree/2; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeShakeModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_reciprocating_motion, |
|
|
|
|
|
startPos, |
|
|
|
|
|
endPos, |
|
|
|
|
|
times, |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 打开气溶胶风扇 |
|
|
* 打开气溶胶风扇 |
|
|
*/ |
|
|
*/ |
|
|
public void openAerosolFan() { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void openAerosolFan() throws HardwareException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callcmd(ModuleId.MotorTubeRackMoveModule, CmdId.kstep_motor_easy_move_to_zero, params.getAerosolFanLevel()); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 关闭气溶胶风扇 |
|
|
* 关闭气溶胶风扇 |
|
|
*/ |
|
|
*/ |
|
|
public void closeAerosolFan() { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void closeAerosolFan() throws HardwareException { |
|
|
|
|
|
this.a8kCanBusService.callcmd(ModuleId.MotorTubeRackMoveModule, CmdId.kstep_motor_easy_move_to_zero, 0); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 设备初始化时复位 |
|
|
* 设备初始化时复位 |
|
|
*/ |
|
|
*/ |
|
|
public void moduleResetWhenPowerOn() { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void moduleResetWhenPowerOn() throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getTubeClampMotor_standbyPos() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getHorizontalMotor_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeShakeModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 设备运行时复位 |
|
|
* 设备运行时复位 |
|
|
*/ |
|
|
*/ |
|
|
public void moduleRuntimeReset() { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void moduleRuntimeReset() throws HardwareException, InterruptedException { |
|
|
|
|
|
var params = this.samplesPreProcessModuleCtrlParamsService; |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeCapClipModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getTubeClampMotor_standbyPos() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeMoveUpDownModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.ServoTubeMoveFrontBackModule, |
|
|
|
|
|
CmdId.kmini_servo_move_to, |
|
|
|
|
|
params.getHorizontalMotor_standbyPos(), |
|
|
|
|
|
params.getActionOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeScanClampModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeShakeModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to, |
|
|
|
|
|
0, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
|
|
|
this.a8kCanBusService.callblockcmd( |
|
|
|
|
|
ModuleId.MotorTubeShakeModule, |
|
|
|
|
|
CmdId.kstep_motor_easy_move_to_zero, |
|
|
|
|
|
params.getMoveToZeroOvertime() |
|
|
|
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |