C#上位机开发入门(6)-通信(上)

[复制链接]
查看29552 | 回复0 | 2024-12-24 17:42:48 | 显示全部楼层 |阅读模式
C#上位机的很重要部分就是和现场PLC或者仪表进行通信。目前市场占有率最高的PLC是西门子的S7系列。所以在通信部分我们以西门子的S7-1500为例进行介绍。采用S7-1500的原因是通信程序可以采用仿真器来进行测试,其效果和物理PLC没有区别。因为使用的是S7协议,这些通信程序同样也可以用于S7-200/200Smart/300/400/1200系列PLC。

使用C#开发的上位机和S7系列PLC通信有好几种可用的类库,有收费的,也有开源免费的。我们其实没必要每种都测试一遍,选择稳定可靠的一款即可。根据我们长期的工程经验,Sharp7是质量过得去的一款基于S7协议的通信类库。本例中我们也将使用它来演示和PLC的数据交换。

1

准备PLC项目

新建一个TIA项目,插入一个1500PLC。首先设置IP地址。



再切换到“防护与安全”,勾选“允许来自远程的PUT/GET通信访问”。



最后添加一个DB块,在其属性中去掉“优化的块访问”选项。



DB块结构参见下图所示。



2

下载PLC项目

有条件的话可以使用物理PLC。没条件的话使用PLCSIM Advanced也是一样的。运行PLCSIM Advanced,添加一个PLC。IP地址和我们在TIA项目中的PLC地址一致。



下载程序到PLCSIM Advanced中。DB块中的几个变量手动随便设置一个初始值。



3

VS项目

创建一个名为“PLCTest”的项目。



从左边工具箱中拖2个TextBox控件和2个Button控件到窗体上,并调整好大小和位置。



选中上图中的第一个TextBox控件,在属性窗口中设置Name为“txtIPAddress”。从名称可以看出来,这个TextBox控件是用于设置IP地址的。



修改了名称后,在后面编写代码时,我们要访问这个控件就使用“txtIPAddress”即可。然后再选中上图中的第二个TextBox控件,在属性窗口中设置Name为“txtValue”。用同样的方法修改上面的两个按钮控件名称分别为“btnConnect”和“btnReadData”。

再选中控件“txtIPAddress”,就是第一个TextBox控件。在它的属性Text中输入“192.168.0.12”。这个就是我们在PLC项目中设置的PLC地址。



再用同样的方法设置两个按钮的Text属性值分别为“连接”和“读取”。完成后的窗体如下图所示。



HwLib(慧兰博)技术团队专注于高端自动化技术,如果您对我们的技术教程感兴趣的话,可以X宝上搜索店铺“hwlib”或者“慧兰博”




关于HwLib(慧兰博)技术团队的更多信息:www.hwlib.com.cn

HwLib(慧兰博)技术团队技术资料:

https://www.jianguoyun.com/p/DR20ZAEQq_K3CBivk5kD

或者

https://pan.baidu.com/s/1wXJYgFf-FIUVNbC7IHdxEg?pwd=1234

提取码:1234


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则