Browse Source

update

tags/v0
zhaohe 1 year ago
parent
commit
5fd251b18f
  1. 8
      src/main/java/a8k/a8k_can_protocol/IOId.java
  2. 2
      src/main/java/a8k/a8k_can_protocol/ModId.java
  3. 4
      src/main/java/a8k/appbean/HardwareException.java
  4. 6
      src/main/java/a8k/controller/TmpTestController.java
  5. 45
      src/main/java/a8k/service/ctrl_service/DeviceInitializationCtrlService.java
  6. 48
      src/main/java/a8k/service/hardware/MotorTubeRackMoveCtrlService.java
  7. 102
      src/main/java/a8k/service/hardware/SamplesPreProcessModuleCtrlService.java

8
src/main/java/a8k/a8k_can_protocol/IOId.java

@ -16,11 +16,11 @@ public enum IOId {
//转盘逻辑相关光电
//钩板电机零点光电终点光电
PullerMZeroPPS(ModuleType.ktmc_step_motor,ModuleId.OptModPullM,0),
PullerMEndPPS(ModuleType.ktmc_step_motor,ModuleId.OptModPullM,1),
PullerMZeroPPS(ModuleType.ktmc_step_motor, ModId.OptModPullM,0),
PullerMEndPPS(ModuleType.ktmc_step_motor, ModId.OptModPullM,1),
//推板电机零点光电终点光电
PusherMZeroPPS(ModuleType.ktmc_step_motor,ModuleId.PlatesBoxPusherM,0),
PusherMEndPPS(ModuleType.ktmc_step_motor,ModuleId.PlatesBoxPusherM,1),
PusherMZeroPPS(ModuleType.ktmc_step_motor, ModId.PlatesBoxPusherM,0),
PusherMEndPPS(ModuleType.ktmc_step_motor, ModId.PlatesBoxPusherM,1),
;

2
src/main/java/a8k/a8k_can_protocol/ModuleId.java → src/main/java/a8k/a8k_can_protocol/ModId.java

@ -1,6 +1,6 @@
package a8k.a8k_can_protocol;
public class ModuleId {
public class ModId {
public static final int HbotBoard = 10;//机械臂板模块

4
src/main/java/a8k/appbean/HardwareException.java

@ -1,7 +1,7 @@
package a8k.appbean;
import a8k.a8k_can_protocol.Errorcode;
import a8k.a8k_can_protocol.ModuleId;
import a8k.a8k_can_protocol.ModId;
public class HardwareException extends Exception {
// 构造函数
@ -14,7 +14,7 @@ public class HardwareException extends Exception {
}
public HardwareException(int moduleId, int HardwareErrorCode) {
super(String.format("Module ID %s has error code %s", ModuleId.ModuleId2Name(moduleId), Errorcode.toString(HardwareErrorCode)));
super(String.format("Module ID %s has error code %s", ModId.ModuleId2Name(moduleId), Errorcode.toString(HardwareErrorCode)));
}
int getModuleId() {

6
src/main/java/a8k/controller/TmpTestController.java

@ -1,7 +1,7 @@
package a8k.controller;
import a8k.a8k_can_protocol.CmdId;
import a8k.a8k_can_protocol.ModuleId;
import a8k.a8k_can_protocol.ModId;
import a8k.appbean.AppErrorCode;
import a8k.appbean.HardwareException;
import a8k.base_hardware.A8kCanBusService;
@ -56,8 +56,8 @@ public class TmpTestController {
@GetMapping("/tmp-test/a8k-can-bus-service-call")
@ResponseBody
public String a8kCanBusServiceCall() throws HardwareException, InterruptedException {
this.a8kCanBusService.callcmd(ModuleId.ShakeModTubeScanerRotateSV, CmdId.kmini_servo_enable, new Integer[]{1});
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModInfeedM, CmdId.kstep_motor_easy_move_by, new Integer[]{5000}, 20000);
this.a8kCanBusService.callcmd(ModId.ShakeModTubeScanerRotateSV, CmdId.kmini_servo_enable, new Integer[]{1});
this.a8kCanBusService.callblockcmd(ModId.FeedingModInfeedM, CmdId.kstep_motor_easy_move_by, new Integer[]{5000}, 20000);
return "OK";
}

45
src/main/java/a8k/service/ctrl_service/DeviceInitializationCtrlService.java

@ -1,6 +1,6 @@
package a8k.service.ctrl_service;
import a8k.a8k_can_protocol.ModuleId;
import a8k.a8k_can_protocol.ModId;
import a8k.appbean.AppErrorCode;
import a8k.appbean.HardwareException;
import a8k.base_hardware.A8kCanBusService;
@ -10,6 +10,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
@Component
public class DeviceInitializationCtrlService {
public static final Logger logger = LoggerFactory.getLogger(DeviceInitializationCtrlService.class);
@ -60,7 +61,7 @@ public class DeviceInitializationCtrlService {
SamplesPreProcessModuleCtrlParamsService samplesPreProcessModuleCtrlParams;
private void hardwareStaticInit() {
private void hardwareStaticInit() throws HardwareException {
/*
* 复位思路
* 硬件初始化:
@ -69,26 +70,24 @@ public class DeviceInitializationCtrlService {
* 3.使能所有电机
*/
// public static final int HbotM = 11;//机械臂XY
// public static final int PlatesBoxYM = 21;//板夹仓移动电机
// public static final int PlatesBoxPusherM = 22;//板夹仓推杆电机
// public static final int ShakeModClampingM = 31;//试管固定夹爪电机
// public static final int ShakeModGripperZM = 32;//摇匀升降电机
// public static final int ShakeModShakeM = 33;//试管摇匀电机
// public static final int ShakeModGripperYM = 34;//摇匀前后电机
// public static final int FeedingModInfeedM = 61;//入料电机
// public static final int FeedingModXM = 62;//试管架平移电机
// public static final int FeedingModOutfeedM = 63;//出料电机
// public static final int FeedingModScannerM = 64;//试管架扫码器
// public static final int IncubatorRotateCtrlM = 71;//孵育盘旋转
// public static final int PipetteModZMotor = 81;//机械臂Z
// public static final int OptModScannerMotor = 91;//板卡扫描电机
// public static final int OptModPullM = 92;//板卡推杆电机
//
// public static final int ShakeModGripperSV = 35;//摇匀试管帽夹爪
// public static final int ShakeModTubeScanerClampingSV = 36;//试管架旋转固定舵机
// public static final int ShakeModTubeScanerRotateSV = 37;//试管架旋转舵机
// HbotM
//PlatesBoxYM
//ShakeModClampingM
//ShakeModGripperZM
//ShakeModShakeM
//ShakeModGripperYM
//FeedingModInfeedM
//FeedingModXM
//FeedingModOutfeedM
//PipetteModZM
//OptModPullM
canBus.stepMotorEnable(ModId.HbotM,1);
// public static final int ShakeModGripperSV = 35;//摇匀试管帽夹爪
// public static final int ShakeModTubeScanerClampingSV = 36;//试管架旋转固定舵机
// public static final int ShakeModTubeScanerRotateSV = 37;//试管架旋转舵机
@ -122,8 +121,8 @@ public class DeviceInitializationCtrlService {
*
*/
canBus.stepMotorEasyMoveToZero(ModuleId.ShakeModGripperZM);
canBus.waitForMod(ModuleId.ShakeModGripperZM, actionOvertime);
canBus.stepMotorEasyMoveToZero(ModId.ShakeModGripperZM);
canBus.waitForMod(ModId.ShakeModGripperZM, actionOvertime);
} catch (HardwareException e) {
logger.error("HardwareException");
throw new RuntimeException(e);

48
src/main/java/a8k/service/hardware/MotorTubeRackMoveCtrlService.java

@ -52,24 +52,24 @@ public class MotorTubeRackMoveCtrlService {
public void moveToZeroWhenDeviceSetup() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to_zero, new Integer[]{}, params.moveToZeroOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to_zero, new Integer[]{}, params.moveToZeroOvertime);
}
public void moveToZero() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
var beforePosResponse = this.a8kCanBusService.callcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_read_pos, new Integer[]{0});
var beforePosResponse = this.a8kCanBusService.callcmd(ModId.FeedingModXM, CmdId.kstep_motor_read_pos, new Integer[]{0});
var beforePos = beforePosResponse.getContentI32(0);
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to_zero, new Integer[]{}, params.moveToZeroOvertime);
var afterPosResponse = this.a8kCanBusService.callcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_read_pos, new Integer[]{0});
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to_zero, new Integer[]{}, params.moveToZeroOvertime);
var afterPosResponse = this.a8kCanBusService.callcmd(ModId.FeedingModXM, CmdId.kstep_motor_read_pos, new Integer[]{0});
var afterPos = afterPosResponse.getContentI32(0);
var distance = beforePos - afterPos;
var dval = a8kCanBusService.module_read_reg(ModuleId.FeedingModXM, RegIndex.kreg_step_motor_dpos);
var dval = a8kCanBusService.module_read_reg(ModId.FeedingModXM, RegIndex.kreg_step_motor_dpos);
if (Math.abs(dval - distance) > params.horizontalMotorLostStepThresholdVal) {
throw new HardwareException(ModuleId.FeedingModXM, Errorcode.kstep_motor_lost_step);
throw new HardwareException(ModId.FeedingModXM, Errorcode.kstep_motor_lost_step);
}
//先通过move_to 指令移动到零点
@ -92,7 +92,7 @@ public class MotorTubeRackMoveCtrlService {
*/
public void moveTubeRackToEnterPos() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{params.tubeRackEnterPos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{params.tubeRackEnterPos}, params.actionOvertime);
}
/**
@ -100,7 +100,7 @@ public class MotorTubeRackMoveCtrlService {
*/
public void moveTubeRackToExitPos() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{params.tubeExistJudgmentPos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{params.tubeExistJudgmentPos}, params.actionOvertime);
}
/**
@ -108,7 +108,7 @@ public class MotorTubeRackMoveCtrlService {
*/
public void moveTubeRackToScanPos() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{params.tubeRackScanCodePos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{params.tubeRackScanCodePos}, params.actionOvertime);
}
/**
@ -116,10 +116,10 @@ public class MotorTubeRackMoveCtrlService {
*/
public String moveTubeRackToScanPosAndScan() throws HardwareException, InterruptedException {
this.moveTubeRackToScanPos();
this.a8kCanBusService.callcmd(ModuleId.FeedingModScannerMod, CmdId.kcode_scaner_start_scan, new Integer[]{});
this.a8kCanBusService.callcmd(ModId.FeedingModScannerMod, CmdId.kcode_scaner_start_scan, new Integer[]{});
Thread.sleep(500);
var response = this.a8kCanBusService.callcmd(ModuleId.FeedingModScannerMod, CmdId.kcode_scaner_read_scaner_result, new Integer[]{});
this.a8kCanBusService.callcmd(ModuleId.FeedingModScannerMod, CmdId.kcode_scaner_stop_scan, new Integer[]{});
var response = this.a8kCanBusService.callcmd(ModId.FeedingModScannerMod, CmdId.kcode_scaner_read_scaner_result, new Integer[]{});
this.a8kCanBusService.callcmd(ModId.FeedingModScannerMod, CmdId.kcode_scaner_stop_scan, new Integer[]{});
var contentBytes = response.getCmdContent();
return new String(contentBytes);
}
@ -138,7 +138,7 @@ public class MotorTubeRackMoveCtrlService {
var params = this.serviceParameterDao.getParameter();
var tubeInfo = this.tubeInfoDao.getTubeInfo(tubeType);
var scanPos = params.tubeScanPos + tubeIndex * tubeInfo.tubeSpacing;
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{scanPos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{scanPos}, params.actionOvertime);
}
/**
@ -149,10 +149,10 @@ public class MotorTubeRackMoveCtrlService {
public String moveTubeToScanPosAndScan(String tubeType, Integer tubeIndex) throws HardwareException, InterruptedException {
this.moveTubeToScanPos(tubeType, tubeIndex);
this.a8kCanBusService.callcmd(ModuleId.FeedingModScannerMod, CmdId.kcode_scaner_start_scan, new Integer[]{});
this.a8kCanBusService.callcmd(ModId.FeedingModScannerMod, CmdId.kcode_scaner_start_scan, new Integer[]{});
Thread.sleep(500);
var response = this.a8kCanBusService.callcmd(ModuleId.FeedingModScannerMod, CmdId.kcode_scaner_read_scaner_result, new Integer[]{});
this.a8kCanBusService.callcmd(ModuleId.FeedingModScannerMod, CmdId.kcode_scaner_stop_scan, new Integer[]{});
var response = this.a8kCanBusService.callcmd(ModId.FeedingModScannerMod, CmdId.kcode_scaner_read_scaner_result, new Integer[]{});
this.a8kCanBusService.callcmd(ModId.FeedingModScannerMod, CmdId.kcode_scaner_stop_scan, new Integer[]{});
var contentBytes = response.getCmdContent();
return new String(contentBytes);
}
@ -166,7 +166,7 @@ public class MotorTubeRackMoveCtrlService {
var params = this.serviceParameterDao.getParameter();
var tubeInfo = this.tubeInfoDao.getTubeInfo(tubeType);
var detectPos = params.tubeHeighJudgmentPos + tubeIndex * tubeInfo.tubeSpacing;
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{detectPos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{detectPos}, params.actionOvertime);
}
/**
@ -178,7 +178,7 @@ public class MotorTubeRackMoveCtrlService {
var params = this.serviceParameterDao.getParameter();
var tubeInfo = this.tubeInfoDao.getTubeInfo(tubeType);
var pos = params.tubePreProcessPos + tubeIndex * tubeInfo.tubeSpacing;
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{pos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{pos}, params.actionOvertime);
}
//
@ -194,16 +194,16 @@ public class MotorTubeRackMoveCtrlService {
var params = this.serviceParameterDao.getParameter();
var tubeInfo = this.tubeInfoDao.getTubeInfo(tubeType);
var pos = params.tubeRackExitPos + tubeIndex * tubeInfo.tubeSpacing;
this.a8kCanBusService.callblockcmd(ModuleId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{pos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.FeedingModXM, CmdId.kstep_motor_easy_move_to, new Integer[]{pos}, params.actionOvertime);
}
public boolean isTubeRackInEnterPos() throws HardwareException {
var response = this.a8kCanBusService.callcmd(ModuleId.FeedingModBoard, CmdId.kxymotor_read_inio, new Integer[]{3});
var response = this.a8kCanBusService.callcmd(ModId.FeedingModBoard, CmdId.kxymotor_read_inio, new Integer[]{3});
return response.getContentI32(0) == 1;
}
public boolean isTubeRackInExitPos() throws HardwareException {
var response = this.a8kCanBusService.callcmd(ModuleId.FeedingModBoard, CmdId.kxymotor_read_inio, new Integer[]{5});
var response = this.a8kCanBusService.callcmd(ModId.FeedingModBoard, CmdId.kxymotor_read_inio, new Integer[]{5});
return response.getContentI32(0) == 1;
}
@ -214,7 +214,7 @@ public class MotorTubeRackMoveCtrlService {
*/
public boolean getMoveChannelPhotoelectricState(int photoelectricIndex) throws HardwareException {
var index = 0 == photoelectricIndex ? 2 : 1;
var response = this.a8kCanBusService.callcmd(ModuleId.FeedingModBoard, CmdId.kxymotor_read_inio, new Integer[]{index});
var response = this.a8kCanBusService.callcmd(ModId.FeedingModBoard, CmdId.kxymotor_read_inio, new Integer[]{index});
return response.getContentI32(0) == 1;
}
@ -228,7 +228,7 @@ public class MotorTubeRackMoveCtrlService {
*/
public void scanClampModuleCompress() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
this.a8kCanBusService.callblockcmd(ModuleId.ShakeModTubeScanerClampingSV, CmdId.kmini_servo_move_to, new Integer[]{params.scanCodeClampPos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.ShakeModTubeScanerClampingSV, CmdId.kmini_servo_move_to, new Integer[]{params.scanCodeClampPos}, params.actionOvertime);
}
/**
@ -236,7 +236,7 @@ public class MotorTubeRackMoveCtrlService {
*/
public void scanClampModuleReset() throws HardwareException, InterruptedException {
var params = this.serviceParameterDao.getParameter();
this.a8kCanBusService.callblockcmd(ModuleId.ShakeModTubeScanerClampingSV, CmdId.kmini_servo_move_to, new Integer[]{params.scanCodeReleasePos}, params.actionOvertime);
this.a8kCanBusService.callblockcmd(ModId.ShakeModTubeScanerClampingSV, CmdId.kmini_servo_move_to, new Integer[]{params.scanCodeReleasePos}, params.actionOvertime);
}

102
src/main/java/a8k/service/hardware/SamplesPreProcessModuleCtrlService.java

@ -1,7 +1,7 @@
package a8k.service.hardware;
import a8k.a8k_can_protocol.CmdId;
import a8k.a8k_can_protocol.ModuleId;
import a8k.a8k_can_protocol.ModId;
import a8k.appbean.A8kTubeType;
import a8k.appbean.AppErrorCode;
import a8k.appbean.HardwareException;
@ -35,33 +35,33 @@ public class SamplesPreProcessModuleCtrlService {
public void moveToZero() throws HardwareException, InterruptedException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_move_to,
params.getGripperServo_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kmini_servo_move_to,
params.getHorizontalMotor_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModShakeM,
ModId.ShakeModShakeM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
@ -78,27 +78,27 @@ public class SamplesPreProcessModuleCtrlService {
*/
public void enableModule(Boolean enable) throws HardwareException {
this.a8kCanBusService.callcmd(
ModuleId.ShakeModShakeM,
ModId.ShakeModShakeM,
CmdId.kstep_motor_enable,
enable ? 1 : 0
);
this.a8kCanBusService.callcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kstep_motor_enable,
enable ? 1 : 0
);
this.a8kCanBusService.callcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kstep_motor_enable,
enable ? 1 : 0
);
this.a8kCanBusService.callcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kmini_servo_enable,
enable ? 1 : 0
);
this.a8kCanBusService.callcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_enable,
enable ? 1 : 0
);
@ -121,7 +121,7 @@ public class SamplesPreProcessModuleCtrlService {
public AppErrorCode takeTube(String tubeType,boolean judgeCapExist) throws HardwareException, InterruptedException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kstep_motor_easy_move_to,
params.getHorizontalMotor_takeCapPos(),
params.getActionOvertime()
@ -133,7 +133,7 @@ public class SamplesPreProcessModuleCtrlService {
motorUdTubeTaskPos = params.getZMotor_HighBloodTakeCapHeight();
}
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
motorUdTubeTaskPos,
params.getActionOvertime()
@ -141,17 +141,17 @@ public class SamplesPreProcessModuleCtrlService {
if ( judgeCapExist ) {
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kmini_servo_rotate_with_torque,
params.getGripperServo_takeCapTorque(),
params.getActionOvertime()
);
this.a8kCanBusService.callcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_stop
);
var pos = this.a8kCanBusService.callcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_read_pos
);
if ( pos.getContentI32(0) > params.getGripperServo_hatDeterminesPosThres() ) {
@ -160,49 +160,49 @@ public class SamplesPreProcessModuleCtrlService {
}
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_rotate_with_torque,
params.getGripperServo_takeCapTorque(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
0,
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kmini_servo_move_to,
params.getHorizontalMotor_takePushCapPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
params.getZMotor_placeShakeHeight(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kstep_motor_easy_move_to,
params.getGripperServo_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
0,
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kstep_motor_easy_move_to,
params.getHorizontalMotor_standbyPos(),
params.getActionOvertime()
@ -226,14 +226,14 @@ public class SamplesPreProcessModuleCtrlService {
public AppErrorCode takeTubeCap( String tubeType ) throws HardwareException, InterruptedException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kstep_motor_easy_move_to,
params.getHorizontalMotor_takePushCapPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kstep_motor_easy_move_to,
params.getGripperServo_standbyPos(),
params.getActionOvertime()
@ -245,28 +245,28 @@ public class SamplesPreProcessModuleCtrlService {
motorUdTakeCapPos = params.getZMotor_HighBloodTakeCapHeight();
}
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
motorUdTakeCapPos,
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kstep_motor_easy_move_to,
params.getGripperServo_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
0,
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kstep_motor_easy_move_to,
params.getHorizontalMotor_standbyPos(),
params.getActionOvertime()
@ -280,14 +280,14 @@ public class SamplesPreProcessModuleCtrlService {
public void pushBackTubeCapAndTakeBakTube(String tubeType) throws HardwareException, InterruptedException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kstep_motor_easy_move_to,
params.getHorizontalMotor_takePushCapPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kstep_motor_easy_move_to,
params.getGripperServo_standbyPos(),
params.getActionOvertime()
@ -299,28 +299,28 @@ public class SamplesPreProcessModuleCtrlService {
motorUdTakeCapPos = params.getZMotor_HighBloodTakeCapHeight();
}
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
motorUdTakeCapPos,
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kstep_motor_easy_move_to,
params.getGripperServo_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
0,
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kstep_motor_easy_move_to,
params.getHorizontalMotor_standbyPos(),
params.getActionOvertime()
@ -344,7 +344,7 @@ public class SamplesPreProcessModuleCtrlService {
var startPos = standByPos - shakeDegree/2;
var endPos = standByPos + shakeDegree/2;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModShakeM,
ModId.ShakeModShakeM,
CmdId.kstep_motor_easy_reciprocating_motion,
startPos,
endPos,
@ -358,14 +358,14 @@ public class SamplesPreProcessModuleCtrlService {
*/
public void openAerosolFan() throws HardwareException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callcmd(ModuleId.WbTubeFanMod, CmdId.kfan_controler_set_speed, params.getAerosolFanLevel());
this.a8kCanBusService.callcmd(ModId.WbTubeFanMod, CmdId.kfan_controler_set_speed, params.getAerosolFanLevel());
}
/**
* 关闭气溶胶风扇
*/
public void closeAerosolFan() throws HardwareException {
this.a8kCanBusService.callcmd(ModuleId.WbTubeFanMod, CmdId.kfan_controler_set_speed, 0);
this.a8kCanBusService.callcmd(ModId.WbTubeFanMod, CmdId.kfan_controler_set_speed, 0);
}
/**
@ -374,28 +374,28 @@ public class SamplesPreProcessModuleCtrlService {
public void moduleResetWhenPowerOn() throws HardwareException, InterruptedException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_move_to,
params.getTubeClampMotor_standbyPos()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kmini_servo_move_to,
params.getHorizontalMotor_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModShakeM,
ModId.ShakeModShakeM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
@ -407,46 +407,46 @@ public class SamplesPreProcessModuleCtrlService {
public void moduleRuntimeReset() throws HardwareException, InterruptedException {
var params = this.samplesPreProcessModuleCtrlParamsService;
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperSV,
ModId.ShakeModGripperSV,
CmdId.kmini_servo_move_to,
params.getTubeClampMotor_standbyPos()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to,
0,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperZM,
ModId.ShakeModGripperZM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModGripperYM,
ModId.ShakeModGripperYM,
CmdId.kmini_servo_move_to,
params.getHorizontalMotor_standbyPos(),
params.getActionOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kstep_motor_easy_move_to,
0,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModClampingM,
ModId.ShakeModClampingM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModShakeM,
ModId.ShakeModShakeM,
CmdId.kstep_motor_easy_move_to,
0,
params.getMoveToZeroOvertime()
);
this.a8kCanBusService.callblockcmd(
ModuleId.ShakeModShakeM,
ModId.ShakeModShakeM,
CmdId.kstep_motor_easy_move_to_zero,
params.getMoveToZeroOvertime()
);

Loading…
Cancel
Save