12 changed files with 192 additions and 19 deletions
-
BINdoc/A5000plus说明书_200922.pdf
-
76src/main/java/com/dreamworks/boditech/controller/DeviceController.java
-
9src/main/java/com/dreamworks/boditech/driver/consumable/CsmTestCardBox.java
-
18src/main/java/com/dreamworks/boditech/driver/consumable/CsmTestCardManager.java
-
47src/main/java/com/dreamworks/boditech/driver/task/TaskLoad.java
-
2src/main/java/com/dreamworks/boditech/entity/IdChip.java
-
2src/main/java/com/dreamworks/boditech/entity/Project.java
-
2src/main/java/com/dreamworks/boditech/mapper/IdChipMapper.java
-
12src/main/java/com/dreamworks/boditech/service/DeviceService.java
-
41src/main/java/com/dreamworks/boditech/service/ProjectService.java
-
1src/main/resources/application-dev.yml
-
1src/main/resources/application-test.yml
@ -0,0 +1,47 @@ |
|||||
|
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 TaskLoad extends TaskBase { |
||||
|
@Override |
||||
|
public void execute(Executor executor) { |
||||
|
Device device = executor.getDevice(); |
||||
|
ActArmXY armXY = (ActArmXY)device.getActuator(ActuatorModule.ARM_XY); |
||||
|
|
||||
|
try { |
||||
|
this.testCardLoad(executor); |
||||
|
} catch (RuntimeException e) { |
||||
|
armXY.reset(); |
||||
|
throw e; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
// load test card |
||||
|
private void testCardLoad(Executor executor) { |
||||
|
Device device = executor.getDevice(); |
||||
|
ActArmXY armXY = (ActArmXY)device.getActuator(ActuatorModule.ARM_XY); |
||||
|
ActCodeScanner codeScanner = (ActCodeScanner)device.getActuator(ActuatorModule.ARM_Z_SCANNER); |
||||
|
|
||||
|
// 检查试卡盒仓盖是否关闭 |
||||
|
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"); |
||||
|
Integer scanDistance = device.getLocationByName("testCardBoxScanDistance"); |
||||
|
for ( int i=0; i<6; i++ ) { |
||||
|
armXY.moveTo(scanStartX, scanStartY + i * scanDistance); |
||||
|
String code = codeScanner.scan(500); |
||||
|
if ( "".equals(code) ) { |
||||
|
continue ; |
||||
|
} |
||||
|
device.testCards.appendByBoxCode(i, code); |
||||
|
} |
||||
|
|
||||
|
armXY.reset(); |
||||
|
} |
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue