Browse Source

板夹加载时增加板夹舱盖开关检查

master
sige 2 years ago
parent
commit
08388efbfe
  1. 10
      src/main/java/com/dreamworks/boditech/controller/DeviceController.java
  2. 1
      src/main/java/com/dreamworks/boditech/driver/Device.java
  3. 11
      src/main/java/com/dreamworks/boditech/driver/actuator/ActModuleTestCardBoxCase.java
  4. 1
      src/main/java/com/dreamworks/boditech/driver/actuator/ActuatorModule.java
  5. 7
      src/main/java/com/dreamworks/boditech/driver/task/TaskTestCardLoad.java
  6. 2
      src/main/resources/application-dev.yml

10
src/main/java/com/dreamworks/boditech/controller/DeviceController.java

@ -15,6 +15,7 @@ import jakarta.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.ArrayList;
@ -29,8 +30,13 @@ public class DeviceController extends BaseController {
@ResponseBody
@PostMapping("/api/device/test-card-load")
public ApiResponse testCardLoad() {
// this.deviceService.testCardLoad();
public ApiResponse testCardLoad(@RequestHeader("IS-FS-READY") String isFsReady ) {
// @TODO : 删除该标记
if ( "NO".equals(isFsReady) ) {
return this.success();
}
this.deviceService.testCardLoad();
return this.success();
}

1
src/main/java/com/dreamworks/boditech/driver/Device.java

@ -83,6 +83,7 @@ public class Device {
this.appendActuator(new ActMotor(ActuatorModule.TEST_CARD_FEED_MOTOR, this));
this.appendActuator(new ActMotor(ActuatorModule.TEST_CARD_BOX_MOTOR, this));
this.appendActuator(new ActCodeScanner(ActuatorModule.ARM_Z_SCANNER, this));
this.appendActuator(new ActModuleTestCardBoxCase(ActuatorModule.TEST_CARD_BOX_CASE, this));
}
// append actuator

11
src/main/java/com/dreamworks/boditech/driver/actuator/ActModuleTestCardBoxCase.java

@ -0,0 +1,11 @@
package com.dreamworks.boditech.driver.actuator;
import com.dreamworks.boditech.driver.Device;
public class ActModuleTestCardBoxCase extends ActuatorBase {
// io : is case cover closed
public static final Integer IO_CASE_COVER_CLOSED = 1;
// constructor
public ActModuleTestCardBoxCase(Integer mid, Device device) {
super(mid, device);
}
}

1
src/main/java/com/dreamworks/boditech/driver/actuator/ActuatorModule.java

@ -20,6 +20,7 @@ public class ActuatorModule {
public static Integer ANALYSIS_PUSH_MOTOR = 92;
public static Integer ANALYSIS_SCAN_MOTOR = 91;
public static Integer ANALYSIS_SCAN_SCANNER = 93;
public static Integer TEST_CARD_BOX_CASE = 20;
public static Integer MODULE_STATUS_IDLE = 0;
public static Integer MODULE_STATUS_BUSY = 1;

7
src/main/java/com/dreamworks/boditech/driver/task/TaskTestCardLoad.java

@ -2,6 +2,7 @@ package com.dreamworks.boditech.driver.task;
import com.dreamworks.boditech.driver.Device;
import com.dreamworks.boditech.driver.actuator.ActArmXY;
import com.dreamworks.boditech.driver.actuator.ActCodeScanner;
import com.dreamworks.boditech.driver.actuator.ActModuleTestCardBoxCase;
import com.dreamworks.boditech.driver.actuator.ActuatorModule;
public class TaskTestCardLoad extends TaskBase {
@Override
@ -10,7 +11,11 @@ public class TaskTestCardLoad extends TaskBase {
ActArmXY armXY = (ActArmXY)device.getActuator(ActuatorModule.ARM_XY);
ActCodeScanner codeScanner = (ActCodeScanner)device.getActuator(ActuatorModule.ARM_Z_SCANNER);
// @TODO 需要检查板夹仓是否盖上
// 检查试卡盒仓盖是否关闭
ActModuleTestCardBoxCase testCardBoxCase = (ActModuleTestCardBoxCase)device.getActuator(ActuatorModule.TEST_CARD_BOX_CASE);
if ( 1 == testCardBoxCase.readIO(ActModuleTestCardBoxCase.IO_CASE_COVER_CLOSED) ) {
throw new RuntimeException("TEST_CARD_BOX_CASE_COVER_NOT_CLOSED");
}
Integer scanStartX = device.getLocationByName("testCardScanStart.x");
Integer scanStartY = device.getLocationByName("testCardScanStart.y");

2
src/main/resources/application-dev.yml

@ -8,7 +8,7 @@ spring:
app:
device:
debug : true
connectionType : WebSocket # SerialPort, WebSocket
connectionType : SerialPort # SerialPort, WebSocket
path : COM3
baudrate : 921600
wsuri : ws://192.168.8.10:19005

Loading…
Cancel
Save