refactor(schedule): 优化堆垛机任务调度逻辑

- 使用静态导入统一任务状态码常量
- 替换硬编码设备地址为动态获取PLC写入地址
- 修改任务号判断条件从0改为1000以上
- 更新设备映射关系适配新PLC点位配置
- 简化出入库作业下发逻辑减少冗余代码
- 重构读取PLC数据方法命名提高可读性
- 新增楼层2设备点位配置支持新硬件布局
This commit is contained in:
liuhanqing
2025-12-12 14:24:41 +08:00
parent 4cb4625992
commit 0ea3fdcd48
6 changed files with 35 additions and 45 deletions

View File

@@ -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){