refactor(schedule): 优化堆垛机任务调度逻辑
- 使用静态导入统一任务状态码常量 - 替换硬编码设备地址为动态获取PLC写入地址 - 修改任务号判断条件从0改为1000以上 - 更新设备映射关系适配新PLC点位配置 - 简化出入库作业下发逻辑减少冗余代码 - 重构读取PLC数据方法命名提高可读性 - 新增楼层2设备点位配置支持新硬件布局
This commit is contained in:
@@ -49,13 +49,11 @@ public class PlcSsjRead implements Runnable {
|
||||
while (isRun) {
|
||||
try {
|
||||
if (IsConnect()) {
|
||||
int step = 20;
|
||||
int baseOffset = 0;
|
||||
for (String ssjCode : deviceSsjMap.keySet()) {
|
||||
DeviceSsj ssjDevice = deviceSsjMap.get(ssjCode);
|
||||
switch (ssjDevice.getType()) {
|
||||
case "1":
|
||||
readPlcLineSsj(ssjDevice);
|
||||
readPlcSmSsj(ssjDevice);
|
||||
break;
|
||||
case "2":
|
||||
readPlcInOutSsj(ssjDevice);
|
||||
@@ -140,7 +138,7 @@ public class PlcSsjRead implements Runnable {
|
||||
*
|
||||
* @param ssjDevice
|
||||
*/
|
||||
private void readPlcLineSsj(DeviceSsj ssjDevice) {
|
||||
private void readPlcSmSsj(DeviceSsj ssjDevice) {
|
||||
OperateResultExOne<byte[]> read2 = readWriteNet.Read(ssjDevice.getPlcDbReadAddress(), Short.parseShort("220"));
|
||||
String ddsx1 = "0";
|
||||
if (read2.IsSuccess) {
|
||||
@@ -156,12 +154,18 @@ public class PlcSsjRead implements Runnable {
|
||||
case "G1005":
|
||||
trayCodeReadAddress = "DB502.0";
|
||||
break;
|
||||
case "L2012":
|
||||
case "L2004":
|
||||
trayCodeReadAddress = "DB503.0";
|
||||
break;
|
||||
case "L2013":
|
||||
case "L2006":
|
||||
trayCodeReadAddress = "DB504.0";
|
||||
break;
|
||||
case "L1001":
|
||||
trayCodeReadAddress = "DB506.0";
|
||||
break;
|
||||
case "L1003":
|
||||
trayCodeReadAddress = "DB505.0";
|
||||
break;
|
||||
}
|
||||
OperateResultExOne<byte[]> trayCodeRead = readWriteNet.Read(trayCodeReadAddress, Short.parseShort("220"));
|
||||
if (trayCodeRead.IsSuccess){
|
||||
|
||||
Reference in New Issue
Block a user