上位机与西门子通讯

本文介绍了在全自动项目中如何实现上位机与西门子PLC的通讯,涉及到PLC型号选择、上位机编程语言及通信库的使用。在通讯实操部分,详细讲解了Bool量的读写以及多字节变量的操作,强调了PUT/GET访问权限设置和DB块的访问限制。通讯库支持M区和DB区数据的读写,但DB块的优化访问设置会影响第三方访问。通过二进制转换,实现了对单个或多个Bool位的精确操作,并概述了多字节变量的读写方法。
摘要由CSDN通过智能技术生成

最近做的两个全自动项目,均是上位机与西门子PLC的通讯,进行数据的读取以及 写入。

工具

(1)PLC型号

1214 DC/DC/DC。其实,后面用到的通信库,支持西门子很多型号的PLC,由于没有亲测过,因此不作说明。

(2)上位机语言

VB,由于是在原来软件基础上增加全自动流程,因此采用VB语言。C#其实很香。

(3)PLC通信库:

我采用的是Sanp7.dll的通信库。这个在网上可以下载到。还有很多其他的通信库,可在网上自行下载。
该通讯库是通过绝对地址进行数据访问的,即采用**地址偏移量**,**数据长度**来进行访问。

通讯实操

该通信库可以进行M区的数据读写以及DB数据的读写。这里介绍的是DB全局变量的读写。
具体的PLC创建DB区数据的过程就不进行叙述。但是下面一点需要特别注意:
(1)在CPU属性>防护与安全>连接机制中勾选允许PUT/GET访问。
(2)默认创建的DB块的属性中,优化的块访问 是默认勾选的。这会导致第三方无法访问该数据块,因此需要取消勾选。取消勾选后会导致该数据块的变量无法单独保持,只能是全部保持或者是全部不保持。典型的鱼与熊掌,不可兼得!
**注:**变量不保持的话,PLC断电重启的话&#

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值