From acf9d7b001514b3586166cbd0609e9d836ada792 Mon Sep 17 00:00:00 2001 From: lu <123456> Date: 星期三, 23 七月 2025 16:24:49 +0800 Subject: [PATCH] bug --- DevApp/Gs.DevApp/XtraForm1.cs | 126 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 110 insertions(+), 16 deletions(-) diff --git a/DevApp/Gs.DevApp/XtraForm1.cs b/DevApp/Gs.DevApp/XtraForm1.cs index ad5953f..bc9910d 100644 --- a/DevApp/Gs.DevApp/XtraForm1.cs +++ b/DevApp/Gs.DevApp/XtraForm1.cs @@ -1,5 +1,10 @@ -锘縰sing DevExpress.Utils; +锘縰sing Newtonsoft.Json.Linq; +using NModbus; using System; +using System.Data; +using System.IO; +using System.Net.Sockets; +using System.Text; namespace Gs.DevApp { @@ -11,23 +16,112 @@ } - private void simpleButton1_Click(object sender, EventArgs e) + private void simpleButton2_Click(object sender, EventArgs e) { - //toastNotificationsManager1 = new ToastNotificationsManager(); - //VanishingMessage vm = new VanishingMessage(System.Drawing.Color.OrangeRed, "鎿嶄綔鎴愭槬鏍戞毊浜戦《鎴存"); - //vm.Show(); - ToolTipControllerShowEventArgs aa = new ToolTipControllerShowEventArgs(); - aa.AllowHtmlText = DefaultBoolean.True; - aa.Title = "璇︽儏"; //HTML, 绮椾綋 - aa.ToolTip = "浣犲ソ鐖变綘鐨勫厠鏍煎媰"; //鏂 - aa.ShowBeak = true; - aa.Rounded = true; ////鍦嗚 - aa.RoundRadius = 7; //鍦嗚鐜� - aa.ToolTipType = ToolTipType.SuperTip; //瓒呯骇鏍峰紡锛屽彲澶氳鎴栨樉绀哄浘鏍� - aa.ToolTipType = ToolTipType.Standard;//鏍囧噯鏍峰紡锛屽彲鏄剧ず楦熷槾銆� - aa.IconType = ToolTipIconType.Information; //娑堟伅鍥炬爣 - aa.IconSize = ToolTipIconSize.Small; //澶у浘鏍� + string strCsl1 = ""; + string strSw1 = ""; + string strCsl2 = ""; + string strSw2 = ""; + string strCsl3 = ""; + string strSw3 = ""; + string strCsl4 = ""; + string strSw4 = ""; + string strCsl5 = ""; + string strSw5 = ""; + string SJJG = ""; + try//姘存鍙栨暟锛屽悗闈㈣ˉ鍏� + { + System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder(); + System.Text.StringBuilder sbFj = new System.Text.StringBuilder(); + string hx = "\r\n"; + string hostname = "192.168.60.51"; + ModbusFactory modbusFactory = new ModbusFactory(); + IModbusMaster master = modbusFactory.CreateMaster(new TcpClient(hostname, 502)); + master.Transport.ReadTimeout = 10000; + master.Transport.Retries = 10000; + //鍙傛暟(鍒嗗埆涓轰粠绔欏湴鍧�,璧峰鍦板潃,闀垮害) + byte slaveAddress = byte.Parse(txt_slaveAddress.SelectedText.Trim()); + ushort numberOfPoints = ushort.Parse("1"); + float fsw = 0; + + //妯″紡1鍑烘按閲� + ushort[] csl1 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(32.ToString()), numberOfPoints); + strCsl1 = csl1[0].ToString(); + sbFj.Append("妯″紡1鍑烘按閲�:" + strCsl1 + hx); + //妯″紡1姘存俯 + ushort[] sw1 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(31.ToString()), numberOfPoints); + strSw1 = (float.Parse(sw1[0].ToString()) / 10).ToString(); + sbFj.Append("妯″紡1姘存俯:" + strSw1 + hx); + //妯″紡2鍑烘按閲� + ushort[] csl2 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(34.ToString()), numberOfPoints); + strCsl2 = csl2[0].ToString(); + sbFj.Append("妯″紡2鍑烘按閲�:" + strCsl2 + hx); + //妯″紡2姘存俯 + ushort[] sw2 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(33.ToString()), numberOfPoints); + strSw2 = (float.Parse(sw2[0].ToString()) / 10).ToString(); + sbFj.Append("妯″紡2姘存俯:" + strSw2 + hx); + //妯″紡3鍑烘按閲� + ushort[] csl3 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(36.ToString()), numberOfPoints); + strCsl3 = csl3[0].ToString(); + sbFj.Append("妯″紡3鍑烘按閲�:" + strCsl3 + hx); + //妯″紡3姘存俯 + ushort[] sw3 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(35.ToString()), numberOfPoints); + strSw3 = (float.Parse(sw3[0].ToString()) / 10).ToString(); + sbFj.Append("妯″紡3姘存俯:" + strSw3 + hx); + //妯″紡4鍑烘按閲� + ushort[] csl4 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(38.ToString()), numberOfPoints); + strCsl4 = csl4[0].ToString(); + sbFj.Append("妯″紡4鍑烘按閲�:" + strCsl4 + hx); + //妯″紡4姘存俯 + ushort[] sw4 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(37.ToString()), numberOfPoints); + strSw4 = (float.Parse(sw4[0].ToString()) / 10).ToString(); + sbFj.Append("妯″紡4姘存俯:" + strSw4 + hx); + //妯″紡5鍑烘按閲� + ushort[] csl5 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(40.ToString()), numberOfPoints); + strCsl5 = csl5[0].ToString(); + sbFj.Append("妯″紡5鍑烘按閲�:" + strCsl5 + hx); + //妯″紡5姘存俯 + ushort[] sw5 = master.ReadHoldingRegisters(slaveAddress, ushort.Parse(39.ToString()), numberOfPoints); + strSw5 = (float.Parse(sw5[0].ToString()) / 10).ToString(); + sbFj.Append("妯″紡5姘存俯:" + strSw5 + hx); + //缁撴灉 + bool[] sjjg = master.ReadCoils(slaveAddress, ushort.Parse(77.ToString()), numberOfPoints); + SJJG = sjjg[0].ToString(); + sbFj.Append("缁撴灉:" + SJJG + hx); + /////////////////// + + // 3. 璇诲彇浠庣珯璁惧鐨勫瘎瀛樺櫒short锛堟棤绗﹀彿鐭暣鍨嬶級鏄竴绉嶆暟鎹被鍨嬶紝鐢ㄤ簬琛ㄧず16浣嶆棤绗﹀彿鏁存暟锛屽叾鍙栧�艰寖鍥翠粠0鍒�65,535 + ushort startAddress = 0; // 瀵勫瓨鍣ㄨ捣濮嬪湴鍧� + ushort numRegisters = ushort.Parse(txtGs.Text.Trim()); // 璇诲彇 10 涓瘎瀛樺櫒 + try + { + // 璇诲彇淇濇寔瀵勫瓨鍣紙浠庣珯鍦板潃涓� 1锛� + // 鍙傛暟(鍒嗗埆涓轰粠绔欏湴鍧�,璧峰鍦板潃,闀垮害) + ushort[] registers = master.ReadHoldingRegisters(1, startAddress, numRegisters); + // 杈撳嚭缁撴灉 + Console.WriteLine("璇诲彇鍒扮殑瀵勫瓨鍣ㄥ�硷細"); + stringBuilder.Append("鎬诲瓧鑺備覆锛�"); + foreach (var register in registers) + { + Console.WriteLine(register); + stringBuilder.Append(register); + } + stringBuilder.Append(hx + "瑙f瀽缁撴灉锛�" + hx); + stringBuilder.Append(sbFj); + richTextBox1.Text = stringBuilder.ToString(); + } + catch (Exception ex) + { + Console.WriteLine($"璇诲彇閿欒: {ex.Message}"); + } + } + catch (Exception ex) + { + //VisiblePanel(txtDQBarCode.EditValue.ToString(), ex.Message, "NG", Color.Yellow); + //txtGWM.EditValue = ""; + return; + } } } } \ No newline at end of file -- Gitblit v1.9.3