admin管理员组

文章数量:1794759

简单的APP与PLC通讯

简单的APP与PLC通讯

手机APP与PLC连接

可以用这种方式就行简单的APP与PLC连接,无需使用服务器之类的,只需在电脑上运行此程序,就可以用手机调试软件来搭建,简单方便; 安装Smobiler 可在vs中找到smobiler来创建项目 然后简单的搭建一个画面 开始写简单的PLC通讯代码,利用HslCommunication这个DLL开发起来就简单了。具体操作如代码; `using System; using System.Collections.Generic; using System.Linq; using System.Text; using Smobiler.Core; using Smobiler.Core.Controls; using HslCommunication.Profinet.Omron; using HslCommunication;

namespace SmobilerApplication1 { partial class SmobilerForm1 : Smobiler.Core.Controls.MobileForm { public SmobilerForm1() : base() { InitializeComponent(); } //实例化PLC private OmronFinsNet omronFinsNet = new OmronFinsNet(); /// /// 连接PLC /// /// private void ConnPLC(string ip) { omronFinsNet.IpAddress = ip; omronFinsNet.Port = 9600; OperateResult connect = omronFinsNet.ConnectServer(); if (connect.IsSuccess) { MessageBox.Show(“PLC连接成功”); } else { MessageBox.Show(“PLC连接失败”); } }

private string ReadData(string type, string address) { string Value = ""; switch (type) { case "Bool": Value = omronFinsNet.ReadBool(address).Content.ToString(); break; case "Short": Value = omronFinsNet.ReadInt16(address).Content.ToString(); break; case "Ushort": Value = omronFinsNet.ReadUInt16(address).Content.ToString(); break; case "Int": Value = omronFinsNet.ReadUInt32(address).Content.ToString(); break; case "UInt": Value = omronFinsNet.ReadUInt32(address).Content.ToString(); break; case "Float": Value = omronFinsNet.ReadFloat(address).Content.ToString(); break; case "Double": Value = omronFinsNet.ReadDouble(address).Content.ToString(); break; case "Long": Value = omronFinsNet.ReadInt64(address).Content.ToString(); break; case "ULong": Value = omronFinsNet.ReadUInt64(address).Content.ToString(); break; } return Value; } private void Write(string type, string address, string value) { switch (type) { case "Bool": if (value == "0") { omronFinsNet.Write(address, false); } if (value == "1") { omronFinsNet.Write(address, true); } break; case "Short": omronFinsNet.Write(address, short.Parse(value)); break; case "UShort": omronFinsNet.Write(address, ushort.Parse(value)); break; case "Int": omronFinsNet.Write(address, Int32.Parse(value)); break; case "UInt": omronFinsNet.Write(address, UInt32.Parse(value)); break; case "Long": omronFinsNet.Write(address, Int64.Parse(value)); break; case "ULong": omronFinsNet.Write(address, UInt64.Parse(value)); break; case "Float": omronFinsNet.Write(address, value); break; } } private void btn_conn_Press(object sender, EventArgs e) { ConnPLC(txt_IP.Text); } private void button2_Press(object sender, EventArgs e) { txt_ReadValue.Text= ReadData(txt_Type.Text, txt_Address.Text); } private void button3_Press(object sender, EventArgs e) { Write(txt_Type.Text, txt_Address.Text, txt_WriteValue.Text); } }

}` 然后做测试,手机下载Smobiler 保证手机与电脑在同一局域网中,嫂扫描二维码; 若没有PLC可以用HslCommunication这个调试软件来进行测试; 打开手机APP,连接PLC,可以测试读写PLC数据; 简单的PLC数据读写就可以了,可以用此方法进行扩展;

本文标签: 通讯简单appplc