Browse Source

update

tags/v0
zhaohe 4 months ago
parent
commit
87c7830ba4
  1. 15
      src/main/java/a8k/app/service/mainctrl/mainflowctrl/action/AC20ProcessCompletedPlate.java
  2. 56
      src/main/java/a8k/app/service/mainctrl/mainflowctrl/base/PublicAreaResource.java
  3. 45
      src/main/resources/db/zapp_sub_module_reg_initial_value.csv

15
src/main/java/a8k/app/service/mainctrl/mainflowctrl/action/AC20ProcessCompletedPlate.java

@ -21,6 +21,7 @@ import org.springframework.stereotype.Component;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* 孵育完成的反应板处理 * 孵育完成的反应板处理
* 条件: * 条件:
@ -63,28 +64,24 @@ public class AC20ProcessCompletedPlate extends A8kActionTask {
&& optScanModuleStateMgrService.isEmpty(); && optScanModuleStateMgrService.isEmpty();
} }
IncubationSubTank toBeProcesstank;
@Override public List<AppError> doAction() { @Override public List<AppError> doAction() {
IncubationSubTank tank = getToBeProcessedTank();
if (tank == null) {
return new ArrayList<>();
IncubationSubTank toBeProcesstank = getToBeProcessedTank();
if (toBeProcesstank == null) {
return ZList.of();
} }
try { try {
doEjectPlate(tank);
doEjectPlate(toBeProcesstank);
} catch (AppException e) { } catch (AppException e) {
logger.error("处理已孵育完的反应板失败", e); logger.error("处理已孵育完的反应板失败", e);
return ZList.of(e.getError()); return ZList.of(e.getError());
} }
toBeProcesstank = tank;
// 修改状态 // 修改状态
ProjectTaskContext cxt = projectContextMgrService.findCxt(toBeProcesstank.getSampleId(), toBeProcesstank.projId); ProjectTaskContext cxt = projectContextMgrService.findCxt(toBeProcesstank.getSampleId(), toBeProcesstank.projId);
optScanModuleStateMgrService.changeOptScanModuleStateToPlateIsReady(ProjInfoUtils.buildProjBrefInfo(cxt), cxt.getSampleInfo()); optScanModuleStateMgrService.changeOptScanModuleStateToPlateIsReady(ProjInfoUtils.buildProjBrefInfo(cxt), cxt.getSampleInfo());
optScanModuleStateMgrService.syncProjInfo(cxt.getProjBuildinInfo(), cxt.getProjExtInfoCard()); optScanModuleStateMgrService.syncProjInfo(cxt.getProjBuildinInfo(), cxt.getProjExtInfoCard());
incubationPlateStateMgrService.resetIncubatorPos(toBeProcesstank.getPos()); incubationPlateStateMgrService.resetIncubatorPos(toBeProcesstank.getPos());
return new ArrayList<>();
return ZList.of();
} }
// //

56
src/main/java/a8k/app/service/mainctrl/mainflowctrl/base/PublicAreaResource.java

@ -1,56 +0,0 @@
package a8k.app.service.mainctrl.mainflowctrl.base;
import lombok.extern.slf4j.Slf4j;
import java.util.List;
@Slf4j
public class PublicAreaResource implements AutoCloseable {
// HbotArea, //HBOT
// TubeSampleProcessAndTubeChannelArea, //样本取样位,试管通道
// PlateBoxArea, //板夹仓
// IncubationPlateArea, //孵育盘
// OptScanArea,
static public PublicAreaResource HbotArea = new PublicAreaResource("HbotArea");
static public PublicAreaResource TubeSampleProcessAndTubeChannelArea = new PublicAreaResource("TubeSampleProcessAndTubeChannelArea");
static public PublicAreaResource PlateBoxArea = new PublicAreaResource("PlateBoxArea");
static public PublicAreaResource IncubationPlateArea = new PublicAreaResource("IncubationPlateArea");
static public PublicAreaResource OptScanArea = new PublicAreaResource("OptScanArea");
static public List<PublicAreaResource> _values = List.of(HbotArea, TubeSampleProcessAndTubeChannelArea, PlateBoxArea, IncubationPlateArea, OptScanArea);
; //光学扫描区
public String name;
public Boolean rent = false;
public String rentedBy;
static public List<PublicAreaResource> values() {
return _values;
}
synchronized @Override public void close() {
log.info("{} release {}", rentedBy, name);
rent = false;
rentedBy = null;
}
synchronized public void setRent(String rentedBy) {
log.info("{} rent {}", rentedBy, name);
this.rentedBy = rentedBy;
this.rent = true;
}
synchronized public Boolean isRent() {
return rent;
}
//
private PublicAreaResource(String name) {
this.name = name;
}
public String toString() {
return String.format("|%s(%s),by:%s|", name, rent, rentedBy);
}
}

45
src/main/resources/db/zapp_sub_module_reg_initial_value.csv

@ -1,6 +1,6 @@
id,mid,regIndex,regInitVal id,mid,regIndex,regInitVal
1,HbotM,kreg_xyrobot_robot_type,0 1,HbotM,kreg_xyrobot_robot_type,0
2,HbotM,kreg_xyrobot_one_circle_pulse,7200
2,HbotM,kreg_xyrobot_one_circle_pulse,72000
3,HbotM,kreg_xyrobot_one_circle_pulse_denominator,10 3,HbotM,kreg_xyrobot_one_circle_pulse_denominator,10
4,HbotM,kreg_xyrobot_ihold,10 4,HbotM,kreg_xyrobot_ihold,10
5,HbotM,kreg_xyrobot_irun,31 5,HbotM,kreg_xyrobot_irun,31
@ -18,15 +18,15 @@ id,mid,regIndex,regInitVal
17,HbotM,kreg_xyrobot_enable_enc,1 17,HbotM,kreg_xyrobot_enable_enc,1
18,HbotM,kreg_xyrobot_x_shaft,0 18,HbotM,kreg_xyrobot_x_shaft,0
19,HbotM,kreg_xyrobot_y_shaft,1 19,HbotM,kreg_xyrobot_y_shaft,1
20,HbotM,kreg_xyrobot_min_x,-100
21,HbotM,kreg_xyrobot_min_y,-100
22,HbotM,kreg_xyrobot_max_x,5714
23,HbotM,kreg_xyrobot_max_y,4158
20,HbotM,kreg_xyrobot_min_x,-2000
21,HbotM,kreg_xyrobot_min_y,-2000
22,HbotM,kreg_xyrobot_max_x,58140
23,HbotM,kreg_xyrobot_max_y,42580
24,HbotM,kreg_xyrobot_run_to_zero_speed,60 24,HbotM,kreg_xyrobot_run_to_zero_speed,60
25,HbotM,kreg_xyrobot_look_zero_edge_speed,10 25,HbotM,kreg_xyrobot_look_zero_edge_speed,10
26,HbotM,kreg_xyrobot_shift_x,0 26,HbotM,kreg_xyrobot_shift_x,0
27,HbotM,kreg_xyrobot_shift_y,0 27,HbotM,kreg_xyrobot_shift_y,0
28,HbotM,kreg_xyrobot_pos_devi_tolerance,5
28,HbotM,kreg_xyrobot_pos_devi_tolerance,50
29,HbotM,kreg_xyrobot_io_trigger_append_distance,10 29,HbotM,kreg_xyrobot_io_trigger_append_distance,10
30,HbotM,kreg_xyrobot_default_velocity,800 30,HbotM,kreg_xyrobot_default_velocity,800
31,PlatesBoxYM,kreg_step_motor_shaft,1 31,PlatesBoxYM,kreg_step_motor_shaft,1
@ -164,12 +164,12 @@ id,mid,regIndex,regInitVal
163,ShakeModShakeM,kreg_step_motor_dzero_pos,0 163,ShakeModShakeM,kreg_step_motor_dzero_pos,0
164,ShakeModShakeM,kret_step_motor_pos_devi_tolerance,5 164,ShakeModShakeM,kret_step_motor_pos_devi_tolerance,5
165,ShakeModShakeM,kret_step_motor_io_trigger_append_distance,10 165,ShakeModShakeM,kret_step_motor_io_trigger_append_distance,10
166,ShakeModGripperYSV,kreg_mini_servo_pos,114
166,ShakeModGripperYSV,kreg_mini_servo_pos,115
167,ShakeModGripperYSV,kreg_mini_servo_limit_velocity,10000 167,ShakeModGripperYSV,kreg_mini_servo_limit_velocity,10000
168,ShakeModGripperYSV,kreg_mini_servo_limit_torque,500 168,ShakeModGripperYSV,kreg_mini_servo_limit_torque,500
169,ShakeModGripperYSV,kreg_mini_servo_protective_torque,800 169,ShakeModGripperYSV,kreg_mini_servo_protective_torque,800
170,ShakeModGripperYSV,kreg_mini_servo_target_pos_tolerance,15 170,ShakeModGripperYSV,kreg_mini_servo_target_pos_tolerance,15
171,ShakeModGripperSV,kreg_mini_servo_pos,1503
171,ShakeModGripperSV,kreg_mini_servo_pos,1589
172,ShakeModGripperSV,kreg_mini_servo_limit_velocity,10000 172,ShakeModGripperSV,kreg_mini_servo_limit_velocity,10000
173,ShakeModGripperSV,kreg_mini_servo_limit_torque,500 173,ShakeModGripperSV,kreg_mini_servo_limit_torque,500
174,ShakeModGripperSV,kreg_mini_servo_protective_torque,800 174,ShakeModGripperSV,kreg_mini_servo_protective_torque,800
@ -179,19 +179,19 @@ id,mid,regIndex,regInitVal
178,ShakeModTubeScanerClampingSV,kreg_mini_servo_limit_torque,300 178,ShakeModTubeScanerClampingSV,kreg_mini_servo_limit_torque,300
179,ShakeModTubeScanerClampingSV,kreg_mini_servo_protective_torque,800 179,ShakeModTubeScanerClampingSV,kreg_mini_servo_protective_torque,800
180,ShakeModTubeScanerClampingSV,kreg_mini_servo_target_pos_tolerance,15 180,ShakeModTubeScanerClampingSV,kreg_mini_servo_target_pos_tolerance,15
181,ShakeModTubeScanerRotateSV,kreg_mini_servo_pos,2540
181,ShakeModTubeScanerRotateSV,kreg_mini_servo_pos,2669
182,ShakeModTubeScanerRotateSV,kreg_mini_servo_limit_velocity,10000 182,ShakeModTubeScanerRotateSV,kreg_mini_servo_limit_velocity,10000
183,ShakeModTubeScanerRotateSV,kreg_mini_servo_limit_torque,300 183,ShakeModTubeScanerRotateSV,kreg_mini_servo_limit_torque,300
184,ShakeModTubeScanerRotateSV,kreg_mini_servo_protective_torque,800 184,ShakeModTubeScanerRotateSV,kreg_mini_servo_protective_torque,800
185,ShakeModTubeScanerRotateSV,kreg_mini_servo_target_pos_tolerance,15 185,ShakeModTubeScanerRotateSV,kreg_mini_servo_target_pos_tolerance,15
186,ShakeModLiftingSV,kreg_mini_servo_pos,639
186,ShakeModLiftingSV,kreg_mini_servo_pos,650
187,ShakeModLiftingSV,kreg_mini_servo_limit_velocity,800 187,ShakeModLiftingSV,kreg_mini_servo_limit_velocity,800
188,ShakeModLiftingSV,kreg_mini_servo_limit_torque,100 188,ShakeModLiftingSV,kreg_mini_servo_limit_torque,100
189,ShakeModLiftingSV,kreg_mini_servo_protective_torque,800 189,ShakeModLiftingSV,kreg_mini_servo_protective_torque,800
190,ShakeModLiftingSV,kreg_mini_servo_target_pos_tolerance,30 190,ShakeModLiftingSV,kreg_mini_servo_target_pos_tolerance,30
191,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_target,250 191,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_target,250
192,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_nowoutput,0 192,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_nowoutput,0
193,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_feedbackval,259
193,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_feedbackval,240
194,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_kp,6000 194,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_kp,6000
195,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_ki,100 195,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_ki,100
196,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_kd,0 196,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_kd,0
@ -202,7 +202,7 @@ id,mid,regIndex,regInitVal
201,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_compute_interval,9000 201,PlatesBoxTCM,kreg_water_cooling_tmp_controler_pid_compute_interval,9000
202,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_target,250 202,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_target,250
203,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_nowoutput,0 203,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_nowoutput,0
204,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_feedbackval,256
204,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_feedbackval,240
205,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_kp,6000 205,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_kp,6000
206,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_ki,100 206,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_ki,100
207,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_kd,0 207,IncubatorTCM,kreg_water_cooling_tmp_controler_pid_kd,0
@ -319,30 +319,24 @@ id,mid,regIndex,regInitVal
318,IncubatorRotateCtrlM,kreg_step_motor_dzero_pos,0 318,IncubatorRotateCtrlM,kreg_step_motor_dzero_pos,0
319,IncubatorRotateCtrlM,kret_step_motor_pos_devi_tolerance,30 319,IncubatorRotateCtrlM,kret_step_motor_pos_devi_tolerance,30
320,IncubatorRotateCtrlM,kret_step_motor_io_trigger_append_distance,10 320,IncubatorRotateCtrlM,kret_step_motor_io_trigger_append_distance,10
321,PipetteMod,kreg_pipette_pos_nl,0
322,PipetteMod,kreg_pipette_capactitance_val,4
323,PipetteMod,kreg_pipette_tip_state,0
324,PipetteMod,kreg_pipette_zm_pos,0
325,PipetteMod,kreg_pipette_zm_is_enable,0
326,PipetteMod,kreg_pipette_zm_dpos,0
327,PipetteMod,kreg_pipette_zm_shaft,0 327,PipetteMod,kreg_pipette_zm_shaft,0
328,PipetteMod,kreg_pipette_zm_one_circle_pulse,20 328,PipetteMod,kreg_pipette_zm_one_circle_pulse,20
329,PipetteMod,kreg_pipette_zm_one_circle_pulse_denominator,1 329,PipetteMod,kreg_pipette_zm_one_circle_pulse_denominator,1
330,PipetteMod,kreg_pipette_zm_default_velocity,1500
330,PipetteMod,kreg_pipette_zm_default_velocity,2000
331,PipetteMod,kreg_pipette_zm_ihold,8 331,PipetteMod,kreg_pipette_zm_ihold,8
332,PipetteMod,kreg_pipette_zm_irun,8
332,PipetteMod,kreg_pipette_zm_irun,20
333,PipetteMod,kreg_pipette_zm_iholddelay,10 333,PipetteMod,kreg_pipette_zm_iholddelay,10
334,PipetteMod,kreg_pipette_zm_iglobalscaler,0 334,PipetteMod,kreg_pipette_zm_iglobalscaler,0
335,PipetteMod,kreg_pipette_zm_run_to_zero_speed,1500
335,PipetteMod,kreg_pipette_zm_run_to_zero_speed,800
336,PipetteMod,kreg_pipette_zm_look_zero_edge_speed,100 336,PipetteMod,kreg_pipette_zm_look_zero_edge_speed,100
337,PipetteMod,kreg_pipette_zm_max_d,0 337,PipetteMod,kreg_pipette_zm_max_d,0
338,PipetteMod,kreg_pipette_zm_min_d,0 338,PipetteMod,kreg_pipette_zm_min_d,0
339,PipetteMod,kreg_pipette_zm_vstart,100 339,PipetteMod,kreg_pipette_zm_vstart,100
340,PipetteMod,kreg_pipette_zm_a1,50
341,PipetteMod,kreg_pipette_zm_amax,300
340,PipetteMod,kreg_pipette_zm_a1,100
341,PipetteMod,kreg_pipette_zm_amax,1200
342,PipetteMod,kreg_pipette_zm_v1,300 342,PipetteMod,kreg_pipette_zm_v1,300
343,PipetteMod,kreg_pipette_zm_dmax,300 343,PipetteMod,kreg_pipette_zm_dmax,300
344,PipetteMod,kreg_pipette_zm_d1,50
344,PipetteMod,kreg_pipette_zm_d1,100
345,PipetteMod,kreg_pipette_zm_vstop,100 345,PipetteMod,kreg_pipette_zm_vstop,100
346,PipetteMod,kreg_pipette_zm_tzerowait,0 346,PipetteMod,kreg_pipette_zm_tzerowait,0
347,PipetteMod,kreg_pipette_zm_enc_resolution,0 347,PipetteMod,kreg_pipette_zm_enc_resolution,0
@ -417,3 +411,6 @@ id,mid,regIndex,regInitVal
416,OptMod,kreg_a8k_opt_scan_d1,300 416,OptMod,kreg_a8k_opt_scan_d1,300
417,OptMod,kreg_a8k_opt_scan_vstop,400 417,OptMod,kreg_a8k_opt_scan_vstop,400
418,OptMod,kreg_a8k_opt_scan_tzerowait,0 418,OptMod,kreg_a8k_opt_scan_tzerowait,0
419,PipetteMod,kreg_pipette_zm_pos_devi_tolerance,0
420,PipetteMod,kreg_pipette_zm_io_trigger_append_distance,0
421,PipetteMod,kreg_pipette_zm_mres,2
Loading…
Cancel
Save