更新
This commit is contained in:
@@ -20,7 +20,7 @@ public enum DriverTypeEnum {
|
|||||||
|
|
||||||
SPECIAL_SITE(6, "standard_special_inspect_site", "专机设备交互站点", "conveyor"),
|
SPECIAL_SITE(6, "standard_special_inspect_site", "专机设备交互站点", "conveyor"),
|
||||||
|
|
||||||
MANIPULATOR_SITE(7, "standard_manipulator_inspect_site", "区域管制设备交互站点", "conveyor"),
|
MANIPULATOR_SITE(7, "standard_manipulator_inspect_site", "洛耐院-接料位", "conveyor"),
|
||||||
|
|
||||||
NON_LINE_MANIPULATOR_SITE(8, "non_line_manipulator_inspect_site", "区域管制设备交互站点-无PLC", "conveyor"),
|
NON_LINE_MANIPULATOR_SITE(8, "non_line_manipulator_inspect_site", "区域管制设备交互站点-无PLC", "conveyor"),
|
||||||
|
|
||||||
|
|||||||
@@ -12,14 +12,8 @@ import java.util.List;
|
|||||||
public class ItemProtocol {
|
public class ItemProtocol {
|
||||||
public static String item_heartbeat = "heartbeat";
|
public static String item_heartbeat = "heartbeat";
|
||||||
public static String item_mode = "mode";
|
public static String item_mode = "mode";
|
||||||
public static String item_move = "move";
|
|
||||||
public static String item_action = "action";
|
public static String item_action = "action";
|
||||||
public static String item_ioaction = "ioaction";
|
|
||||||
public static String item_error = "error";
|
|
||||||
public static String item_task = "task";
|
|
||||||
public static String item_to_command = "to_command";
|
public static String item_to_command = "to_command";
|
||||||
public static String item_to_target = "to_target";
|
|
||||||
public static String item_to_task = "to_task";
|
|
||||||
|
|
||||||
|
|
||||||
Boolean isonline;
|
Boolean isonline;
|
||||||
@@ -38,38 +32,14 @@ public class ItemProtocol {
|
|||||||
return this.getOpcIntegerValue(item_mode);
|
return this.getOpcIntegerValue(item_mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMove() {
|
|
||||||
return this.getOpcIntegerValue(item_move);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getAction() {
|
public int getAction() {
|
||||||
return this.getOpcIntegerValue(item_action);
|
return this.getOpcIntegerValue(item_action);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getIoAction() {
|
|
||||||
return this.getOpcIntegerValue(item_ioaction);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getError() {
|
|
||||||
return this.getOpcIntegerValue(item_error);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getTask() {
|
|
||||||
return this.getOpcIntegerValue(item_task);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getToCommand() {
|
public int getToCommand() {
|
||||||
return this.getOpcIntegerValue(item_to_command);
|
return this.getOpcIntegerValue(item_to_command);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getToTarget() {
|
|
||||||
return this.getOpcIntegerValue(item_to_target);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getToTask() {
|
|
||||||
return this.getOpcIntegerValue(item_to_task);
|
|
||||||
}
|
|
||||||
|
|
||||||
//是否有货
|
//是否有货
|
||||||
public int hasGoods(int move) {
|
public int hasGoods(int move) {
|
||||||
return move;
|
return move;
|
||||||
@@ -92,20 +62,14 @@ public class ItemProtocol {
|
|||||||
public static List<ItemDto> getReadableItemDtos() {
|
public static List<ItemDto> getReadableItemDtos() {
|
||||||
ArrayList list = new ArrayList();
|
ArrayList list = new ArrayList();
|
||||||
list.add(new ItemDto(item_heartbeat, "心跳", "DB600.B0"));
|
list.add(new ItemDto(item_heartbeat, "心跳", "DB600.B0"));
|
||||||
list.add(new ItemDto(item_mode, "工作状态", "DB600.B2", Boolean.valueOf(true)));
|
list.add(new ItemDto(item_mode, "工作状态", "DB600.B1", Boolean.valueOf(true)));
|
||||||
list.add(new ItemDto(item_move, "光电开关信号", "DB600.B3"));
|
list.add(new ItemDto(item_action, "取放信号", "DB600.B2"));
|
||||||
list.add(new ItemDto(item_action, "取放信号", "DB600.B4"));
|
|
||||||
list.add(new ItemDto(item_ioaction, "进出信号", "DB600.B5"));
|
|
||||||
list.add(new ItemDto(item_error, "报警信号", "DB600.B7"));
|
|
||||||
list.add(new ItemDto(item_task, "任务号", "DB600.D10"));
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<ItemDto> getWriteableItemDtos() {
|
public static List<ItemDto> getWriteableItemDtos() {
|
||||||
ArrayList list = new ArrayList();
|
ArrayList list = new ArrayList();
|
||||||
list.add(new ItemDto(item_to_command, "作业命令", "DB601.W2", Boolean.valueOf(true)));
|
list.add(new ItemDto(item_to_command, "作业命令", "DB601.W2", Boolean.valueOf(true)));
|
||||||
list.add(new ItemDto(item_to_target, "目标站", "DB601.W4"));
|
|
||||||
list.add(new ItemDto(item_to_task, "任务号", "DB601.D8"));
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -24,12 +24,12 @@ public class StandardManipulatorInspectSiteDefination implements OpcDeviceDriver
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getDriverName() {
|
public String getDriverName() {
|
||||||
return "标准版-区域管制设备-检测站点";
|
return "标准版-洛耐院下料位";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getDriverDescription() {
|
public String getDriverDescription() {
|
||||||
return "标准版-区域管制设备-检测站点";
|
return "标准版-洛耐院下料位";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -52,19 +52,7 @@ public class StandardManipulatorInspectSiteDefination implements OpcDeviceDriver
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<ItemDto> getReadableItemDtos() {
|
public List<ItemDto> getReadableItemDtos() {
|
||||||
return getReadableItemDtos2();
|
return ItemProtocol.getReadableItemDtos();
|
||||||
}
|
|
||||||
|
|
||||||
public static List<ItemDto> getReadableItemDtos2() {
|
|
||||||
List<ItemDto> list = new ArrayList();
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_heartbeat, "心跳", "DB600.B0"));
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_mode, "工作状态", "DB600.B2", true));
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_move, "光电开关信号", "DB600.B3"));
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_action, "取放信号", "DB600.B4"));
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_ioaction, "进出信号", "DB600.B5"));
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_error, "报警信号", "DB600.B7"));
|
|
||||||
list.add(new ItemDto(ItemProtocol.item_task, "任务号", "DB600.D10"));
|
|
||||||
return list;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -129,11 +129,6 @@ public class StandardManipulatorInspectSiteDeviceDriver extends AbstractOpcDevic
|
|||||||
String device_code = this.getDeviceCode();
|
String device_code = this.getDeviceCode();
|
||||||
|
|
||||||
mode = this.itemProtocol.getMode();
|
mode = this.itemProtocol.getMode();
|
||||||
error = this.itemProtocol.getError();
|
|
||||||
move = this.itemProtocol.getMove();
|
|
||||||
task = this.itemProtocol.getTask();
|
|
||||||
hasGoods = this.itemProtocol.getMove();
|
|
||||||
io_action = this.itemProtocol.getIoAction();
|
|
||||||
actoin = this.itemProtocol.getAction();
|
actoin = this.itemProtocol.getAction();
|
||||||
|
|
||||||
if (mode != last_mode) {
|
if (mode != last_mode) {
|
||||||
@@ -141,17 +136,6 @@ public class StandardManipulatorInspectSiteDeviceDriver extends AbstractOpcDevic
|
|||||||
this.execute_log.setResource(this.devicecode, this.device.getDevice_name());
|
this.execute_log.setResource(this.devicecode, this.device.getDevice_name());
|
||||||
this.execute_log.log("设备:" + device_code + ",last_mode -> mode:" + last_mode + "->" + mode);
|
this.execute_log.log("设备:" + device_code + ",last_mode -> mode:" + last_mode + "->" + mode);
|
||||||
}
|
}
|
||||||
if (move != last_move) {
|
|
||||||
this.execute_log.setResource(this.devicecode, this.device.getDevice_name());
|
|
||||||
this.execute_log.log("设备:" + device_code + ",last_move -> move:" + last_mode + "->" + move);
|
|
||||||
if (move == 0) {
|
|
||||||
thingToNothing();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (error != last_error) {
|
|
||||||
this.execute_log.setResource(this.devicecode, this.device.getDevice_name());
|
|
||||||
this.execute_log.log("设备:" + device_code + ",last_error -> error:" + last_error + "->" + error);
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception var17) {
|
} catch (Exception var17) {
|
||||||
return;
|
return;
|
||||||
@@ -447,10 +431,6 @@ public class StandardManipulatorInspectSiteDeviceDriver extends AbstractOpcDevic
|
|||||||
public void executing(int command, Instruction instruction, String appendMessage) {
|
public void executing(int command, Instruction instruction, String appendMessage) {
|
||||||
String to_command = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
String to_command = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
||||||
+ "." + ItemProtocol.item_to_command;
|
+ "." + ItemProtocol.item_to_command;
|
||||||
String to_target = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
|
||||||
+ "." + ItemProtocol.item_to_target;
|
|
||||||
String to_task = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
|
||||||
+ "." + ItemProtocol.item_to_task;
|
|
||||||
if (appendMessage == null) {
|
if (appendMessage == null) {
|
||||||
appendMessage = "";
|
appendMessage = "";
|
||||||
}
|
}
|
||||||
@@ -461,7 +441,6 @@ public class StandardManipulatorInspectSiteDeviceDriver extends AbstractOpcDevic
|
|||||||
Server server = ReadUtil.getServer(opcservcerid);
|
Server server = ReadUtil.getServer(opcservcerid);
|
||||||
Map<String, Object> itemMap = new HashMap<String, Object>();
|
Map<String, Object> itemMap = new HashMap<String, Object>();
|
||||||
itemMap.put(to_command, 1);
|
itemMap.put(to_command, 1);
|
||||||
itemMap.put(to_task, instruction_num);
|
|
||||||
ReadUtil.write(itemMap, server);
|
ReadUtil.write(itemMap, server);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -521,20 +500,11 @@ public class StandardManipulatorInspectSiteDeviceDriver extends AbstractOpcDevic
|
|||||||
public void writing(int type, int command) {
|
public void writing(int type, int command) {
|
||||||
String to_command = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
String to_command = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
||||||
+ "." + ItemProtocol.item_to_command;
|
+ "." + ItemProtocol.item_to_command;
|
||||||
String to_target = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
|
||||||
+ "." + ItemProtocol.item_to_target;
|
|
||||||
String to_task = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
|
||||||
+ "." + ItemProtocol.item_to_task;
|
|
||||||
String opcservcerid = this.getDevice().getOpc_server_id();
|
String opcservcerid = this.getDevice().getOpc_server_id();
|
||||||
Server server = ReadUtil.getServer(opcservcerid);
|
Server server = ReadUtil.getServer(opcservcerid);
|
||||||
Map<String, Object> itemMap = new HashMap<String, Object>();
|
Map<String, Object> itemMap = new HashMap<String, Object>();
|
||||||
if (type == 1) {
|
if (type == 1) {
|
||||||
itemMap.put(to_command, command);
|
itemMap.put(to_command, command);
|
||||||
} else if (type == 2) {
|
|
||||||
itemMap.put(to_target, command);
|
|
||||||
|
|
||||||
} else if (type == 3) {
|
|
||||||
itemMap.put(to_task, command);
|
|
||||||
}
|
}
|
||||||
ReadUtil.write(itemMap, server);
|
ReadUtil.write(itemMap, server);
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ import org.nl.acs.device_driver.RouteableDeviceDriver;
|
|||||||
import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
|
import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
|
||||||
import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
|
import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
|
||||||
import org.nl.acs.device_driver.standard_emptypallet_site.StandardEmptyPalletSiteDeviceDriver;
|
import org.nl.acs.device_driver.standard_emptypallet_site.StandardEmptyPalletSiteDeviceDriver;
|
||||||
|
import org.nl.acs.device_driver.standard_inspect_site.StandardInspectSiteDeviceDriver;
|
||||||
|
import org.nl.acs.device_driver.standard_manipulator_inspect_site.StandardManipulatorInspectSiteDeviceDriver;
|
||||||
import org.nl.acs.instruction.service.InstructionService;
|
import org.nl.acs.instruction.service.InstructionService;
|
||||||
import org.nl.acs.instruction.service.dto.Instruction;
|
import org.nl.acs.instruction.service.dto.Instruction;
|
||||||
import org.nl.acs.opc.Device;
|
import org.nl.acs.opc.Device;
|
||||||
@@ -180,17 +182,32 @@ public class StandardRGVDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (flag) {
|
if (task > 0) {
|
||||||
//取货完成
|
//inst_message
|
||||||
case 1:
|
inst = instructionService.findByCodeFromCache(String.valueOf(task));
|
||||||
writing(2);
|
if (inst != null) {
|
||||||
return;
|
if (StrUtil.equals(inst.getInstruction_status(), "0")) {
|
||||||
//放货完成
|
inst.setInstruction_status("1");
|
||||||
case 2:
|
instructionService.update(inst);
|
||||||
writing(3);
|
}
|
||||||
return;
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ( action == 4 && move == 0 && task > 0) {
|
||||||
|
//inst_message
|
||||||
|
inst = instructionService.findByCodeFromCache(String.valueOf(task));
|
||||||
|
if (inst != null) {
|
||||||
|
if (StrUtil.equals(inst.getInstruction_status(), "1")) {
|
||||||
|
finish_instruction(inst);
|
||||||
|
writing("to_command","0");
|
||||||
|
writing("to_onset","0");
|
||||||
|
writing("to_target","0");
|
||||||
|
writing("to_task","0");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
last_mode = mode;
|
last_mode = mode;
|
||||||
last_error = error;
|
last_error = error;
|
||||||
last_move = move;
|
last_move = move;
|
||||||
@@ -224,6 +241,11 @@ public class StandardRGVDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
public void set_last_container_type_desc(String type) {
|
public void set_last_container_type_desc(String type) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public synchronized boolean finish_instruction(Instruction inst) throws Exception {
|
||||||
|
instructionService.finish(inst);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public boolean exe_business() {
|
public boolean exe_business() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -306,6 +328,18 @@ public class StandardRGVDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
this.execute_log.log("设备:{},下发作业命令:{},起始站{},目标站:{},任务号:{}", device_code, to_command,to_onset ,to_target, to_task);
|
this.execute_log.log("设备:{},下发作业命令:{},起始站{},目标站:{},任务号:{}", device_code, to_command,to_onset ,to_target, to_task);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void writing(String param, String value) {
|
||||||
|
|
||||||
|
String to_param = this.getDevice().getOpc_server_code() + "." + this.getDevice().getOpc_plc_code() + "." + this.getDevice().getDevice_code()
|
||||||
|
+ "." + param;
|
||||||
|
String opcservcerid = this.getDevice().getOpc_server_id();
|
||||||
|
Server server = ReadUtil.getServer(opcservcerid);
|
||||||
|
Map<String, Object> itemMap = new HashMap<String, Object>();
|
||||||
|
itemMap.put(to_param, value);
|
||||||
|
|
||||||
|
ReadUtil.write(itemMap, server);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 请求指令
|
* 请求指令
|
||||||
*/
|
*/
|
||||||
@@ -334,8 +368,17 @@ public class StandardRGVDeviceDriver extends AbstractOpcDeviceDriver implements
|
|||||||
String priority = task.getPriority();
|
String priority = task.getPriority();
|
||||||
String start_point_code = task.getStart_point_code();
|
String start_point_code = task.getStart_point_code();
|
||||||
String start_device_code = task.getStart_device_code();
|
String start_device_code = task.getStart_device_code();
|
||||||
String route_plan_code = task.getRoute_plan_code();
|
|
||||||
|
|
||||||
|
Device startdevice = appService.findDeviceByCode(start_device_code);
|
||||||
|
|
||||||
|
StandardManipulatorInspectSiteDeviceDriver standardManipulatorInspectSiteDeviceDriver;
|
||||||
|
if (startdevice.getDeviceDriver() instanceof StandardManipulatorInspectSiteDeviceDriver) {
|
||||||
|
standardManipulatorInspectSiteDeviceDriver = (StandardManipulatorInspectSiteDeviceDriver) startdevice.getDeviceDriver();
|
||||||
|
if(standardManipulatorInspectSiteDeviceDriver.getMode() !=2 && standardManipulatorInspectSiteDeviceDriver.getActoin() !=0){
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String route_plan_code = task.getRoute_plan_code();
|
||||||
Instruction instdto = new Instruction();
|
Instruction instdto = new Instruction();
|
||||||
instdto.setInstruction_id(IdUtil.simpleUUID());
|
instdto.setInstruction_id(IdUtil.simpleUUID());
|
||||||
instdto.setRoute_plan_code(route_plan_code);
|
instdto.setRoute_plan_code(route_plan_code);
|
||||||
|
|||||||
Reference in New Issue
Block a user