Shun 2 anos atrás
pai
commit
1b0561b8c5
1 arquivos alterados com 71 adições e 1 exclusões
  1. 71 1
      src/YSAI.DAQ/YSAI.Test.Console/Program.cs

+ 71 - 1
src/YSAI.DAQ/YSAI.Test.Console/Program.cs

@@ -1,4 +1,74 @@
-//WsServiceOperate wsServiceOperate = WsServiceOperate.Instance(new WsServiceData.Basics 
+
+
+//对象实例
+using S7.Net;
+using System.Collections.Concurrent;
+using YSAI.Core.data;
+using YSAI.Core.@enum;
+using YSAI.S7.client;
+using YSAI.Unility;
+
+S7ClientOperate s7ClientOperate = S7ClientOperate.Instance(new S7ClientData.Basics()
+{
+    Ip = "192.168.2.20",
+    Port = 102,
+    Rack = 0,
+    Slot = 1,
+    S7CpuType = CpuType.S71200,
+    ChangeOut = false,
+    HandleInterval=1,
+    SN = Guid.NewGuid().ToString()
+}); ;
+
+//打开
+OperateResult operateResult = s7ClientOperate.On();
+Console.WriteLine(operateResult.Message);
+
+//点位地址
+Address address = new Address();
+address.SN = Guid.NewGuid().ToString();
+address.CreationTime = DateTime.Now.ToLocalTime();
+address.AddressArray = new List<AddressDetails>();
+address.AddressArray.Add(new AddressDetails()
+{
+    AddressName = "DB71.DBD4",
+    AddressDataType = YSAI.Core.@enum.DataType.String,
+    AddressType = AddressType.Reality
+});
+
+//读取
+operateResult = s7ClientOperate.Read(address);
+Console.WriteLine(operateResult.Message);
+if (operateResult.State)
+{
+    foreach (var item in operateResult.RData as ConcurrentDictionary<string, AddressValue>)
+    {
+        Console.WriteLine(item.Key);
+        Console.WriteLine(item.Value.Value);
+    }
+}
+
+//订阅
+s7ClientOperate.OnEvent += S7ClientOperate_OnEvent;
+s7ClientOperate.Subscribe(address);
+
+while (true)
+{
+   string value= Console.ReadLine();
+    //写入
+    ConcurrentDictionary<string, string> keyValuePairs = new ConcurrentDictionary<string, string>();
+    keyValuePairs.TryAdd("DB71.DBD4", value);
+    operateResult = s7ClientOperate.Write(keyValuePairs);
+    Console.WriteLine(operateResult.Message);
+}
+
+void S7ClientOperate_OnEvent(object? sender, EventResult e)
+{
+    Console.WriteLine(e.ToJson());
+}
+
+
+//WsServiceOperate wsServiceOperate = WsServiceOperate.Instance(new WsServiceData.Basics 
 //{
 //    Ip = "127.0.0.1",
 //    Port=8886