This commit is contained in:
2023-02-19 14:49:57 +08:00
15 changed files with 74 additions and 58 deletions

View File

@@ -129,9 +129,13 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
if (mode == 2) {
logServer.deviceExecuteLog(this.device_code, "", "", "信号复位前requireSuccess" + requireSucess);
this.setRequireSucess(false);
this.setNow_steps_type(0);
message = null;
logServer.deviceExecuteLog(this.device_code, "", "", "信号复位后requireSuccess" + requireSucess);
// if (move == 0 && task == 0 && action == 0 && this.getNow_steps_type() != 0){
// logServer.deviceExecuteLog(this.device_code, "", "", "当前执行步骤复位前:" + this.getNow_steps_type());
// this.setNow_steps_type(0);
// logServer.deviceExecuteLog(this.device_code, "", "", "当前执行步骤复位后:" + this.getNow_steps_type());
// }
message = null;
}
logServer.deviceItemValue(this.device_code, "mode", String.valueOf(mode));
logServer.deviceExecuteLog(this.device_code, "", "", "信号mode" + last_mode + "->" + mode);
@@ -201,7 +205,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
this.writing("to_command", "2");
this.setNow_steps_type(3);
} else {
logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为下发电气信号now_steps_type=2");
//logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为下发电气信号now_steps_type=2");
}
} else {
if (this.getNow_steps_type() == 2) {
@@ -215,7 +219,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
if (action != 1) {
feedMessage = feedMessage + "允许取放(action)信号未允许取放,";
}
if (move != 1){
if (move != 1) {
feedMessage = feedMessage + "取货位光电信号move不应该为无货状态,";
}
if (error1 != 0) {
@@ -228,7 +232,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
this.writing("to_command", "2");
this.setNow_steps_type(3);
} else {
logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为下发电气信号now_steps_type=2\")");
//logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为下发电气信号now_steps_type=2\")");
}
}
}
@@ -265,7 +269,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
this.writing("to_command", "3");
this.setNow_steps_type(4);
} else {
logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为允许取货now_steps_type=3");
//logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为允许取货now_steps_type=3");
}
}
} else {
@@ -307,7 +311,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
this.setNow_steps_type(5);
} else {
feedMessage = "未反馈电气信号原因:当前步骤不为允许放货now_steps_type=4";
logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为允许放货now_steps_type=4");
//logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为允许放货now_steps_type=4");
}
} else {
if (this.getNow_steps_type() == 4) {
@@ -329,22 +333,14 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
}
}
}
} else if (nextDevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){
photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) device.getDeviceDriver();
if (photoelectricInspectionSiteDeviceDriver.getMove() == 0){
if (this.getNow_steps_type() == 4) {
this.writing("to_command", "4");
this.setNow_steps_type(5);
} else {
logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为允许放货now_steps_type=4");
}
} else {
if (this.getNow_steps_type() == 4) {
this.writing("to_command", "4");
this.setNow_steps_type(5);
} else {
if (this.getNow_steps_type() == 4) {
if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){
feedMessage = "烘箱对接位有货不允许放货!";
}
}
//logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为允许放货now_steps_type=4");
}
}
} else {
if (this.getNow_steps_type() == 4) {
@@ -403,7 +399,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
this.setNow_steps_type(0);
feedMessage = "";
} else {
logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为放货完成now_steps_type=5");
//logServer.deviceExecuteLog(this.device_code, "", "", "未反馈电气信号原因:当前步骤不为放货完成now_steps_type=5");
}
// this.writing("to_onset", "0");
// this.writing("to_target", "0");
@@ -429,6 +425,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
}
} catch (Exception var17) {
var17.printStackTrace();
feedMessage = var17.getMessage();
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "读取信号值时出现异常:" + var17.getMessage());
}
@@ -456,10 +453,12 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
//行架机械手申请任务
if (mode == 2 && move == 0 && task == 0 && !requireSucess) {
applyTask();
notCreateInstMessage = "";
notCreateTaskMessage = "";
feedMessage = "";
boolean res = applyTask();
if (res){
notCreateInstMessage = "";
notCreateTaskMessage = "";
feedMessage = "";
}
} else {
if (mode == 2) {
//if (!requireSucess) {
@@ -533,31 +532,31 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
PhotoelectricInspectionSiteDeviceDriver photoelectricInspectionSiteDeviceDriver;
HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver;
if (startdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){
if (startdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver) {
photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) startdevice.getDeviceDriver();
if (photoelectricInspectionSiteDeviceDriver.getMove() != 1){
if (photoelectricInspectionSiteDeviceDriver.getMove() != 1) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->取货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "无货,无法下发指令!";
return false;
}
}
if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){
if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startdevice.getDeviceDriver();
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0){
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->取货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "无货,无法下发指令!";
return false;
}
}
if (nextdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){
if (nextdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver) {
photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) nextdevice.getDeviceDriver();
if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){
if (photoelectricInspectionSiteDeviceDriver.getMove() != 0) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "有货,无法下发指令!";
return false;
}
}
if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){
if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextdevice.getDeviceDriver();
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1){
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "有货,无法下发指令!";
return false;
}
@@ -604,31 +603,31 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
Device startdevice = deviceAppService.findDeviceByCode(task.getStart_device_code());
PhotoelectricInspectionSiteDeviceDriver photoelectricInspectionSiteDeviceDriver;
HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver;
if (startdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){
if (startdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver) {
photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) startdevice.getDeviceDriver();
if (photoelectricInspectionSiteDeviceDriver.getMove() != 1){
if (photoelectricInspectionSiteDeviceDriver.getMove() != 1) {
notCreateInstMessage = "就绪任务未创建指令原因->取货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "光电无货,无法生成指令!";
return false;
}
}
if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){
if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startdevice.getDeviceDriver();
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0){
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0) {
notCreateInstMessage = "就绪任务未创建指令原因->取货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "光电无货,无法生成指令!";
return false;
}
}
if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){
if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextdevice.getDeviceDriver();
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1){
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1) {
notCreateInstMessage = "就绪任务未创建指令原因->放货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "光电有货,无法生成指令!";
return false;
}
}
if (nextdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){
if (nextdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver) {
photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) nextdevice.getDeviceDriver();
if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){
if (photoelectricInspectionSiteDeviceDriver.getMove() != 0) {
notCreateInstMessage = "就绪任务未创建指令原因->放货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "光电有货,无法生成指令!";
return false;
}

View File

@@ -46,7 +46,7 @@ public class ItemProtocol {
public static List<ItemDto> getReadableItemDtos() {
ArrayList list = new ArrayList();
list.add(new ItemDto(item_move, "光电开关信号", "DB600.B2"));
list.add(new ItemDto(item_move, "光电开关信号", "DB5.B10"));
return list;
}

View File

@@ -134,6 +134,7 @@ public class PhotoelectricInspectionSiteDeviceDriver extends AbstractOpcDeviceDr
}
} catch (Exception var17) {
var17.printStackTrace();
return;
}

View File

@@ -226,6 +226,7 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme
}
} catch (Exception var17) {
var17.printStackTrace();
inst_message = var17.getMessage();
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "读取信号值时出现异常:" + var17.getMessage());
}

View File

@@ -203,6 +203,7 @@ public class SiemensConveyorCkkDeviceDriver extends AbstractOpcDeviceDriver impl
}
} catch (Exception var17) {
var17.printStackTrace();
inst_message = var17.getMessage();
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "读取信号值时出现异常:" + var17.getMessage());
}

View File

@@ -211,6 +211,7 @@ public class SiemensConveyorLabelingDeviceDriver extends AbstractOpcDeviceDriver
}
} catch (Exception var17) {
var17.printStackTrace();
inst_message = var17.getMessage();
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "读取信号值时出现异常:" + var17.getMessage());
// return;

View File

@@ -146,6 +146,7 @@ public class SiemensOneFloorAGVConveyorDeviceDriver extends AbstractOpcDeviceDri
to_command = this.itemProtocol.getTo_command();
} catch (Exception var17) {
var17.printStackTrace();
inst_message = var17.getMessage();
logServer.deviceExecuteLog(this.getDevice_code(), "", "", "读取信号值时出现异常:" + var17.getMessage());
}

View File

@@ -163,10 +163,14 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
if (mode == 2) {
logServer.deviceExecuteLog(device_code, "", "", "开始请求标记复位`此时请求标记值为:" + requireSucess);
requireSucess = false;
this.setNow_steps_type1(0);
this.setNow_steps_type2(0);
this.setNow_steps_type3(0);
logServer.deviceExecuteLog(device_code, "", "", "请求标记复位成功`此时请求标记值为:" + requireSucess);
// if (task1 == 0 && task2 == 0 && type == 0) {
// logServer.deviceExecuteLog(device_code, "", "", "开始复位当前执行步骤");
// this.setNow_steps_type1(0);
// this.setNow_steps_type2(0);
// this.setNow_steps_type3(0);
// logServer.deviceExecuteLog(device_code, "", "", "复位当前执行步骤成功");
// }
}
logServer.deviceItemValue(this.device_code, "mode", String.valueOf(mode));
logServer.deviceExecuteLog(this.device_code, "", "", "信号mode" + last_mode + "->" + mode);
@@ -638,6 +642,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
} catch (Exception var17) {
var17.printStackTrace();
feedMessage = var17.getMessage();
logServer.deviceExecuteLog(this.device_code, "", "", "读取信号值时出现异常:" + var17.getMessage());
}
@@ -681,10 +686,12 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
}
}
//没有生成异常取放货工位的任务 就生成正常关联取放货工位的任务
instruction_require();
feedMessage = "";
notCreateInstMessage = "";
notCreateTaskMessage = "";
boolean res = instruction_require();
if (res) {
feedMessage = "";
notCreateInstMessage = "";
notCreateTaskMessage = "";
}
} else {
if (!requireSucess) {

View File

@@ -96,6 +96,7 @@ import plug_pull_device_site from '@/views/acs/device/driver/plug_pull_device_si
import siemens_conveyor_labeling from '@/views/acs/device/driver/siemens_conveyor_labeling'
import siemens_conveyor_ckk from '@/views/acs/device/driver/siemens_conveyor_ckk'
import siemens_onefloor_agv_conveyor from '@/views/acs/device/driver/siemens_onefloor_agv_conveyor'
import photoelectric_inspection_site from '@/views/acs/device/driver/photoelectric_inspection_site'
export default {
name: 'DeviceConfig',
@@ -122,7 +123,8 @@ export default {
plug_pull_device_site,
siemens_conveyor_labeling,
siemens_conveyor_ckk,
siemens_onefloor_agv_conveyor
siemens_onefloor_agv_conveyor,
photoelectric_inspection_site
},
dicts: ['device_type'],
mixins: [crud],

View File

@@ -104,6 +104,7 @@
<span v-if="scope.row.instruction_status=='0' ">就绪</span>
<span v-if="scope.row.instruction_status=='1' ">执行中</span>
<span v-if="scope.row.instruction_status=='2' ">完成</span>
<span v-if="scope.row.instruction_status=='3' ">取消</span>
</template>
</el-table-column>
<el-table-column prop="start_point_code" label="起点" />

View File

@@ -237,6 +237,7 @@
<span v-if="scope.row.task_status=='0' ">就绪</span>
<span v-if="scope.row.task_status=='1' ">执行中</span>
<span v-if="scope.row.task_status=='2' ">完成</span>
<span v-if="scope.row.task_status=='3' ">取消</span>
</template>
</el-table-column>
<el-table-column prop="priority" label="任务优先级" />

View File

@@ -820,7 +820,7 @@
sa.row_num,
sa.placement_type
ORDER BY
sa.block_num DESC
sa.block_num ASC
ENDSELECT
ENDQUERY
ENDIF

View File

@@ -242,7 +242,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
throw new BadRequestException(row.getString("turnin_struct_code") + "仓位数据异常,找不到对应点位!");
}
//判断是否已生成过了任务,无未生成则插入任务
JSONObject task = wo_Task.query("is_delete = '0' and task_status='01' and point_code1='" + jo.getString("start_point_code") + "'").uniqueResult(0);
JSONObject task = wo_Task.query("is_delete = '0' and task_status='04' and point_code1='" + jo.getString("start_point_code") + "'").uniqueResult(0);
if (task != null) {
jo.put("task_id", task.getString("task_id"));
} else {
@@ -254,6 +254,7 @@ public class HandMoveStorServiceImpl implements HandMoveStorService {
task.put("task_id", task_id);
task.put("task_code", task_code);
task.put("task_type", "010505");
task.put("acs_task_type", "7");
task.put("task_status", TaskStatusEnum.START_AND_POINT.getCode());
task.put("point_code1", jo.getString("start_point_code"));
task.put("point_code2", point.getString("point_code"));

View File

@@ -21,7 +21,7 @@ import java.util.HashMap;
import java.util.List;
public class HandMoveStorAcsTask extends AbstractAcsTask {
private final String THIS_CLASS = EmptyVehicleTask.class.getName();
private final String THIS_CLASS = HandMoveStorAcsTask.class.getName();
@Override
public List<AcsTaskDto> addTask() {
@@ -152,8 +152,9 @@ public class HandMoveStorAcsTask extends AbstractAcsTask {
@Override
public void cancel(String task_id) {
JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("task_id = '"+task_id+"'").uniqueResult(0);
if (!task_jo.getString("task_status").equals(TaskStatusEnum.START_AND_POINT)){
throw new BadRequestException("只能对未生成状态的任务进行删除!");
int task_status = task_jo.getIntValue("task_status");
if (task_status > Integer.valueOf(TaskStatusEnum.START_AND_POINT.getCode())) {
throw new BadRequestException("任务已下发,不能取消!");
}
this.updateTaskStatus(task_jo, "0");
}

View File

@@ -281,8 +281,7 @@
1 = 1
AND mst.bill_status = '10'
AND dtl.work_status = '01'
AND dtl.is_issued = '0'
AND task.task_status = '01'
AND task.task_status = '04'
AND mst.is_delete = '0'
AND task.is_delete = '0'
OPTION 输入.moveinv_id <> ""