From 0cca5518f5babea276e37a922b930e25a4bd46eb Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期四, 24 七月 2025 17:26:55 +0800 Subject: [PATCH] 优化数据库事务帮助类 , 查询/日志生成类 --- device/S7Helper.cs | 56 +++++++++++++++++++++++++++++--------------------------- 1 files changed, 29 insertions(+), 27 deletions(-) diff --git a/device/S7Helper.cs b/device/S7Helper.cs index 9d176d9..7f54794 100644 --- a/device/S7Helper.cs +++ b/device/S7Helper.cs @@ -1,4 +1,6 @@ 锘縰sing HH.WCS.Mobox3.DSZSH.api; +using HH.WCS.Mobox3.DSZSH.util; + using Newtonsoft.Json.Linq; using S7.Net; using S7.Net.Types; @@ -18,7 +20,7 @@ /// </summary> public class S7Helper { - public static Dictionary<string, Plc> ip_Plc = new Dictionary<string, Plc>();//鍐呭瓨锛岃繛鎺ヤ笂鐨凱LC閫氳瀵硅薄 + public static Dictionary<string, Plc> ip_Plc = new Dictionary<string, Plc>();//鍐呭瓨,杩炴帴涓婄殑PLC閫氳瀵硅薄 public S7Helper(string ip, short rack, short slot) { @@ -93,12 +95,12 @@ } /// <summary> - /// 鎵归噺璇诲彇鎴栧崟鐙鍙朌B鍧楁暟鎹紙8浣峛yte锛夛紝骞惰浆鎹㈡垚瀛楃涓插舰寮�+ /// 鎵归噺璇诲彇鎴栧崟鐙鍙朌B鍧楁暟鎹�(8浣峛yte) ,骞惰浆鎹㈡垚瀛楃涓插舰寮� /// </summary> /// <param name="deviceIp">plc璁惧閫氳鍦板潃</param> /// <param name="dbNo">DB鍧楀彿</param> - /// <param name="startByteAdr">璧峰byte鍦板潃锛屾渶灏忓�0锛�=8浣�1涓狟lock</param> - /// <param name="count">璇诲彇鐨勪釜鏁帮紝1涓�8浣嶅崄鍏繘鍒舵暟</param> + /// <param name="startByteAdr">璧峰byte鍦板潃,鏈�皬鍊�,1=8浣�1涓狟lock</param> + /// <param name="count">璇诲彇鐨勪釜鏁�1涓�8浣嶅崄鍏繘鍒舵暟</param> /// <returns></returns> public static string ReadString(string deviceIp, int dbNo, int startByteAdr, int count) { @@ -111,15 +113,15 @@ if (plc.IsConnected) { var data = plc.ReadBytes(DataType.DataBlock, dbNo, startByteAdr, count); - result = System.Text.Encoding.UTF8.GetString(data).TrimEnd('\0').TrimEnd('\n').TrimEnd('\r'); ;//姝ゆ柟娉曞彲浠ユ妸byte鏁扮粍杞崲鎴愬瓧绗︿覆锛屼絾鏄細閫犳垚\0\u缁撴潫绗︿笉鏄剧ず锛岄渶瑕佷笅浣嶆満姝g‘鐨勬暟鎹�+ result = System.Text.Encoding.UTF8.GetString(data).TrimEnd('\0').TrimEnd('\n').TrimEnd('\r'); ;//姝ゆ柟娉曞彲浠ユ妸byte鏁扮粍杞崲鎴愬瓧绗︿覆,浣嗘槸浼氶�鎴怽0\u缁撴潫绗︿笉鏄剧ず,闇�涓嬩綅鏈烘纭殑鏁版嵁 if (result == string.Empty) { - Link(plc);//璁惧鍙戦�鐨勬暟鎹负绌猴紝閲嶈繛 + Link(plc);//璁惧鍙戦�鐨勬暟鎹负绌�閲嶈繛 } } else { - Link(plc);//璁惧鏈繛鎺ワ紝閲嶈繛 + Link(plc);//璁惧鏈繛鎺�閲嶈繛 } } else @@ -136,11 +138,11 @@ } /// <summary> - /// 鎵归噺鍐欏叆鎴栧崟鐙啓鍏B鍧楁暟鎹紙8浣峛yte锛夛紝浠ュ瓧绗︿覆杞崲byte褰㈠紡鍐欏叆 + /// 鎵归噺鍐欏叆鎴栧崟鐙啓鍏B鍧楁暟鎹�(8浣峛yte) ,浠ュ瓧绗︿覆杞崲byte褰㈠紡鍐欏叆 /// </summary> /// <param name="deviceIp">plc璁惧閫氳鍦板潃</param> /// <param name="dbNo">DB鍧楀彿</param> - /// <param name="startByteAdr">璧峰byte鍦板潃锛屾渶灏忓�0锛�=8浣�1涓狟lock</param> + /// <param name="startByteAdr">璧峰byte鍦板潃,鏈�皬鍊�,1=8浣�1涓狟lock</param> /// <param name="data">瑕佸啓鍏ョ殑鏁版嵁</param> /// <returns></returns> public static bool WriteString(string deviceIp, int dbNo, int startByteAdr, string data) @@ -165,7 +167,7 @@ } else { - Link(plc);//璁惧鏈繛鎺ワ紝閲嶈繛 + Link(plc);//璁惧鏈繛鎺�閲嶈繛 } } else @@ -182,12 +184,12 @@ } /// <summary> - /// 鎵归噺璇诲彇鎴栧崟鐙鍙朌B鍧楁暟鎹紙8浣峛yte锛�+ /// 鎵归噺璇诲彇鎴栧崟鐙鍙朌B鍧楁暟鎹�(8浣峛yte) /// </summary> /// <param name="deviceIp">plc璁惧閫氳鍦板潃</param> /// <param name="dbNo">DB鍧楀彿</param> - /// <param name="startByteAdr">璧峰byte鍦板潃锛屾渶灏忓�0锛�=8浣�1涓狟lock</param> - /// <param name="count">璇诲彇鐨勪釜鏁帮紝1涓�8浣嶅崄鍏繘鍒舵暟</param> + /// <param name="startByteAdr">璧峰byte鍦板潃,鏈�皬鍊�,1=8浣�1涓狟lock</param> + /// <param name="count">璇诲彇鐨勪釜鏁�1涓�8浣嶅崄鍏繘鍒舵暟</param> /// <returns></returns> public static byte[] ReadBytes(string deviceIp, int dbNo, int startByteAdr, int count) { @@ -203,12 +205,12 @@ if (result.Length == 0) { - Link(plc);//璁惧鍙戦�鐨勬暟鎹负绌猴紝閲嶈繛 + Link(plc);//璁惧鍙戦�鐨勬暟鎹负绌�閲嶈繛 } } else { - Link(plc);//璁惧鏈繛鎺ワ紝閲嶈繛 + Link(plc);//璁惧鏈繛鎺�閲嶈繛 } } else @@ -225,11 +227,11 @@ } /// <summary> - /// 鎵归噺鍐欏叆鎴栧崟鐙啓鍏B鍧楁暟鎹紙8浣峛yte锛�+ /// 鎵归噺鍐欏叆鎴栧崟鐙啓鍏B鍧楁暟鎹�(8浣峛yte) /// </summary> /// <param name="deviceIp">plc璁惧閫氳鍦板潃</param> /// <param name="dbNo">DB鍧楀彿</param> - /// <param name="startByteAdr">璧峰byte鍦板潃锛屾渶灏忓�0锛�=8浣�1涓狟lock</param> + /// <param name="startByteAdr">璧峰byte鍦板潃,鏈�皬鍊�,1=8浣�1涓狟lock</param> /// <param name="data">瑕佸啓鍏ョ殑鏁版嵁</param> /// <returns></returns> public static bool WriteBytes(string deviceIp, int dbNo, int startByteAdr, byte[] data) @@ -253,7 +255,7 @@ } else { - Link(plc);//璁惧鏈繛鎺ワ紝閲嶈繛 + Link(plc);//璁惧鏈繛鎺�閲嶈繛 } } else @@ -270,11 +272,11 @@ } /// <summary> - /// 鎵归噺璇诲彇鎴栧崟鐙鍙朌B鍧楁暟鎹紙1浣峛it锛�+ /// 鎵归噺璇诲彇鎴栧崟鐙鍙朌B鍧楁暟鎹�(1浣峛it) /// </summary> /// <param name="deviceIp">plc璁惧閫氳鍦板潃</param> /// <param name="dbNo">DB鍧楀彿</param> - /// <param name="startByteAdr">璧峰byte鍦板潃锛屾渶灏忓�0锛�=8浣�1涓狟lock</param> + /// <param name="startByteAdr">璧峰byte鍦板潃,鏈�皬鍊�,1=8浣�1涓狟lock</param> /// <param name="count">瑕佽鍙栧灏戜綅</param> /// <param name="bitAdr">浠庣鍑犱綅寮�璇诲彇</param> /// <returns></returns> @@ -299,12 +301,12 @@ } if (result.Length == 0) { - Link(plc);//璁惧鍙戦�鐨勬暟鎹负绌猴紝閲嶈繛 + Link(plc);//璁惧鍙戦�鐨勬暟鎹负绌�閲嶈繛 } } else { - Link(plc);//璁惧鏈繛鎺ワ紝閲嶈繛 + Link(plc);//璁惧鏈繛鎺�閲嶈繛 } } else @@ -321,12 +323,12 @@ } /// <summary> - /// 鎵归噺鍐欏叆鎴栧崟鐙啓鍏B鍧楁暟鎹紙1浣峛it锛�+ /// 鎵归噺鍐欏叆鎴栧崟鐙啓鍏B鍧楁暟鎹�(1浣峛it) /// </summary> /// <param name="deviceIp">plc璁惧閫氳鍦板潃</param> /// <param name="dbNo">DB鍧楀彿</param> - /// <param name="startByteAdr">璧峰byte鍦板潃锛屾渶灏忓�0锛�=8浣�1涓狟lock</param> - /// <param name="biteAdr">璧峰bit鍦板潃锛屼粠绗嚑浣嶅紑濮嬪啓k</param> + /// <param name="startByteAdr">璧峰byte鍦板潃,鏈�皬鍊�,1=8浣�1涓狟lock</param> + /// <param name="biteAdr">璧峰bit鍦板潃,浠庣鍑犱綅寮�鍐檏</param> /// <param name="bitValue">瑕佸啓鍏ョ殑鏁版嵁</param> /// <returns></returns> public static bool WriteBits(string deviceIp, int dbNo, int startByteAdr, byte biteAdr, BitArray bitValue) @@ -353,7 +355,7 @@ } else { - Link(plc);//璁惧鏈繛鎺ワ紝閲嶈繛 + Link(plc);//璁惧鏈繛鎺�閲嶈繛 } } else @@ -409,7 +411,7 @@ } /// <summary> - /// 閫氳繃S7鍗忚杩炴帴涓嬩綅鏈烘椂闇�鐨刴odel锛屽簲璇ユ斁鍦╩odel灞傦紝杩欓噷鎴戞噿浜�+ /// 閫氳繃S7鍗忚杩炴帴涓嬩綅鏈烘椂闇�鐨刴odel,搴旇鏀惧湪model灞�杩欓噷鎴戞噿浜� /// </summary> public class S7ConfigModel { -- Gitblit v1.9.1