From b80cd13530648af00f57627baab806d49ae2d1d2 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期六, 10 十月 2020 15:54:17 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/enums/CrnTaskModeType.java | 1 +
src/main/java/com/zy/core/thread/MelsecCrnThread.java | 30 ++++++++++++++++++++++++++++++
src/main/java/com/zy/core/model/command/CrnCommand.java | 25 +++++++++++++++++++++++++
3 files changed, 56 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/core/enums/CrnTaskModeType.java b/src/main/java/com/zy/core/enums/CrnTaskModeType.java
index c34a8d2..9f8af09 100644
--- a/src/main/java/com/zy/core/enums/CrnTaskModeType.java
+++ b/src/main/java/com/zy/core/enums/CrnTaskModeType.java
@@ -9,6 +9,7 @@
SITE_MOVE(4), // 绔欎綅绉昏浆
GO_ORIGIN(5), // 鍥炲師鐐�
OFFSET_MOVE(7), // 鍧愭爣绉昏
+ TIMING(90), // 鏍℃椂
;
public Integer id;
diff --git a/src/main/java/com/zy/core/model/command/CrnCommand.java b/src/main/java/com/zy/core/model/command/CrnCommand.java
index a43172b..1d951f6 100644
--- a/src/main/java/com/zy/core/model/command/CrnCommand.java
+++ b/src/main/java/com/zy/core/model/command/CrnCommand.java
@@ -4,6 +4,9 @@
import com.zy.core.enums.CrnTaskModeType;
import lombok.Data;
+import java.util.Calendar;
+import java.util.Date;
+
/**
* 鍫嗗灈鏈哄懡浠ゆ姤鏂�
* Created by vincent on 2020/8/11
@@ -68,4 +71,26 @@
this.taskMode = CrnTaskModeType.get(type).id.shortValue();
}
+ public static void main(String[] args) {
+ Date date = new Date();
+ Calendar cal = Calendar.getInstance();
+ cal.setTime(date);
+
+ System.out.println(cal.get(Calendar.YEAR));
+ //榛樿浠�0-11
+ System.out.println(cal.get(Calendar.MONTH)+1);
+ System.out.println(cal.get(Calendar.DATE));
+ int hour = cal.get(Calendar.HOUR_OF_DAY);
+ System.out.println("鏃�");
+ System.out.println(hour);
+ int minute = cal.get(Calendar.MINUTE);
+ System.out.println("鍒�");
+ System.out.println(minute);
+ int second = cal.get(Calendar.SECOND);
+ System.out.println("绉�");
+ System.out.println(second);
+ int mm = cal.get(Calendar.DAY_OF_WEEK) - 1; // 鏄熸湡锛�0(鏃�)锝�6(鍏�)
+ System.out.println("绀兼嫓");
+ System.out.println(mm);
+ }
}
diff --git a/src/main/java/com/zy/core/thread/MelsecCrnThread.java b/src/main/java/com/zy/core/thread/MelsecCrnThread.java
index 6be3bb5..9990237 100644
--- a/src/main/java/com/zy/core/thread/MelsecCrnThread.java
+++ b/src/main/java/com/zy/core/thread/MelsecCrnThread.java
@@ -23,6 +23,7 @@
import lombok.extern.slf4j.Slf4j;
import java.text.MessageFormat;
+import java.util.Calendar;
import java.util.Date;
/**
@@ -112,6 +113,35 @@
OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆戝爢鍨涙満plc杩炴帴澶辫触锛侊紒锛� ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
log.error("鍫嗗灈鏈簆lc杩炴帴澶辫触锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}] ", slave.getId(), slave.getIp(), slave.getPort());
}
+ // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+ /**
+ * array[1] = command.getSourcePosY(); // 鍒�
+ * array[2] = command.getSourcePosZ(); // 灞�
+ * array[3] = command.getSourcePosX(); // 鎺�
+ * array[4] = command.getDestinationPosY(); // 鍒�
+ * array[5] = command.getDestinationPosZ(); // 灞�
+ * array[6] = command.getDestinationPosX(); // 鎺�
+ * array[7] = command.getTaskNo();
+ */
+ Date date = new Date();
+ Calendar cal = Calendar.getInstance();
+ cal.setTime(date);
+ CrnCommand crnCommand = new CrnCommand();
+ crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙�
+ crnCommand.setTaskMode(CrnTaskModeType.TIMING); // 浠诲姟妯″紡: 璁剧疆鏃堕棿
+ crnCommand.setSourcePosY((short) cal.get(Calendar.YEAR)); // 骞达細1980锝�2079
+ crnCommand.setSourcePosZ((short) (cal.get(Calendar.MONTH)+1)); // 鏈堬細1锝�12
+ crnCommand.setSourcePosX((short) cal.get(Calendar.DATE)); // 鏃ワ細1锝�31
+ crnCommand.setDestinationPosY((short) cal.get(Calendar.HOUR_OF_DAY)); // 鏃讹細0锝�23
+ crnCommand.setDestinationPosZ((short) cal.get(Calendar.MINUTE)); // 鍒嗭細0锝�59
+ crnCommand.setDestinationPosX((short) cal.get(Calendar.SECOND)); // 绉掞細0锝�59
+ crnCommand.setTaskNo((short) (cal.get(Calendar.DAY_OF_WEEK) - 1)); // 鏄熸湡锛�0(鏃�)锝�6(鍏�)
+ crnCommand.setTaskSend((short) 1);
+ crnCommand.setAckFinish((short) 0);
+ if (write(crnCommand)) {
+ log.info("鍫嗗灈鏈簆lc鏍″鏃堕棿鎴愬姛 ===>> [id:{}] [ip:{}] [port:{}] ", slave.getId(), slave.getIp(), slave.getPort());
+ }
+
melsecMcNet.ConnectClose();
return result;
}
--
Gitblit v1.9.1