当前位置:龙泉人才网 - 职业人才 -

通讯测试(C)

  • 职业人才
  • 2024-02-27 12:00
  • 龙泉小编

一、测试结果

通讯测试(C)

二、测试条件

① VS 2022社区版,安装其中的 “.NET桌面开发” 即可 ;

通讯测试(C)

通讯测试(C)

安装完成后,下载S7.net组件(若没有NuGet包,先从 “扩展—管理扩展” 中搜索并下载NuGet工具):

通讯测试(C)

② S7-200 Smart PLC(S7-200/1200/1500等均可)

③ S7.net使用说明:S7.Net中文说明书(使用手册) 中文PDF版 电子书 下载-脚本之家

三、测试程序

① 界面设计:

通讯测试(C)

新建 “Windows窗体应用程序” 项目;

从 “工具箱” 中添加相应的控件;

在 “属性” 中修改各控件的属性;

在 “事件” 中选择各控件关联的事件;

通讯测试(C)

② 程序代码:

using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; using S7.Net; //S7.net开源库 using static System.Windows.Forms.VisualStyles.VisualStyleElement; namespace WindowsFormsApplication4 //命名空间 { public partial class Form1 : Form //自动生成 { public Form1() //构造窗体,自动生成 { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) //窗体加载时触发事件 { } Plc plc1 = new Plc(CpuType.S71200, "192.168.2.1", 0, 1); //创建PLC实例,注意200 smart使用S7-1200类型,机架0、槽号1 private void button1_Click(object sender, EventArgs e) { plc1.Open(); //按钮1,连接PLC } private void button2_Click(object sender, EventArgs e) { plc1.Close(); //按钮2,断开连接 } private void timer1_Tick(object sender, EventArgs e) //周期触发组件,在属性中设置周期,这里设置了100ms { if (plc1.IsConnected) //检查PLC的连接状态 { textBox1.Text = "已连接"; //文本框1显示连接状态 textBox2.Text = ((ushort)plc1.Read("DB1.DBW0")).ToString(); //读无符号字 textBox3.Text = ((ushort)plc1.Read("DB1.DBW2")).ConvertToShort().ToString(); //读整数 textBox4.Text = ((uint)plc1.Read("DB1.DBD4")).ConvertToFloat().ToString(); //读实数 label7.Text = ((ushort)plc1.Read("DB1.DBW8")).ToString(); } else { textBox1.Text = "未连接"; } } private void textBox5_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { plc1.Write("DB1.DBW8", Convert.ToUInt16(textBox5.Text)); //键盘Enter按下,将文本框5中输入的数据写入PLC } } } }

其中,PLC地址、机架、槽号的相关定义:

详细资料:https://snap7.sourceforge.net/

四、其他

本文只完成了单个数据的基本读写,不包含多字节/复杂结构的读写、异常错误处理、断线重连等功能,仅供参考。

更多例程(含多种语言的各种应用):https://sourceforge.net/projects/snap7/files/

参考:C#用S7.NET与SMART通信测试-技术论坛-工业支持中心-西门子中国

免责声明:本文内容来源于网络或用户投稿,龙泉人才网仅提供信息存储空间服务,不承担相关法律责任。若收录文章侵犯到您的权益/违法违规的内容,可请联系我们删除。
https://www.lqrc.cn/a/zhiye/103091.html

  • 关注微信
上一篇:润和软件(IT)
下一篇:暂无

猜你喜欢

微信公众号