西门子 PLC TCP 通信协议

flexmanager PLC 通信协议
http://www.flexem.cn/Index.html

PLC与PC网络通信实验

https://blog.csdn.net/loblab/article/details/97789663

Python版的Snap7

http://snap7.sourceforge.net/
Python版的Snap7

图:PLC通信指令

和PC的通信,一种方式是使用OPC server,但它是基于OLE/COM的,只能用于Windows。有些软件比如LabView提供了和西门子PLC通信的支持。跨平台的开源的方案,有一个是Snap7。我们可以先试试这个。另外可以尝试最原始的TCP协议。

Snap7
Snap7是针对西门子S7协议的。PLC不需任何配置就是S7的server,而我们只需要利用Snap7 lib,就可以让PC作为S7 client,读/写服务器端的数据块。

结语
从PLC的众多网络通信方式中,本文试验了简单易行并且跨平台的两种方式,用来和PC通信。

使用基于S7协议的Snap7库,在读写PLC时大约耗时9ms.
使用开放式的TCP协议,PLC向PC发送数据最快不到3ms.
考虑到S7-1200只是百兆网络,这个速度应该是不错的,可以满足大部分需要

工控协议 | 西门子S7协议学习分享

https://www.sohu.com/a/207043694_354899

其实很简单,想要用s7协议进行通信:只需要2步!

1.发送COTP包请求连接。Plc回应一个COTP包,告诉客户端,确认连接。

2.确认连接,完啦。

那么,我们该如何分析这两步操作呢?自问自答一下,肯定是用wireshark抓取包啦。肯定又有人说啦,我们没有s7的plc啊,怎么抓包?(然后用这个做过度,引出下文的……)

好啦,我们先解决这一步,其实很简单(类似把大象装冰箱里分几步…)

1)下载snap7 1.4.2,连接:

https://sourceforge.net/projects/snap7/files/

2)安装一个虚拟机,win7 即可。

3)把snap7中rich-demos里的serverdemo.exe和snap7.dll复制到虚拟机中,然后打开serverdemo.exe,输入ip地址,点击start即可。

4)实体机打开clientdemo.exe即可。

5)利用wireshark进行抓包分析,捕获的网卡为:VMnet8。

捕获的数据如下截图:

S7通信协议之你不知道的事儿

https://zhuanlan.zhihu.com/p/146087427?from_voters_page=true
S7协议的一次性读取长度是根据PDU计算出来的,这个PDU的值是来自于PLC本身,不同型号的CPU,它的PDU是不一样的,大家可以通过KepServer结合PLC来测试,如果手头没有PLC,可以关注本公众号的一篇文章《手把手教你搭建西门子PLC仿真环境》。

plc 仿真

西门子PLC通讯-仿真环境搭建
一、说明

如果手头没有西门子PLC,但又需要测试软件与PLC通讯,可以采用这种仿真方法。

二、TIA V15 + PLCSIM + NETTOPLCISM

三、TIA V15 + PLCSIM Advaced

https://mp.weixin.qq.com/s/2J1H0fL7SiBJMlb281-4Zg

基于S7-PLCSIM Advanced搭建S7通信仿真环境

https://zhuanlan.zhihu.com/p/145257192?from_voters_page=true
写在前面:

之前有专门讲过一期如何搭建西门子PLC的S7通信仿真环境,感兴趣的可以点击查看:戳↓

1.基于TIA搭建西门子PLC仿真环境及通信方案-联合出品

2.手把手教你搭建西门子PLC仿真环境

那种方式是基于TIA + PLCSIM +NetToPLCSIM实现功能,涉及到的软件有点多,而且只能模拟S7通信,对于其他的通信,就不适用了。那么,有没有一种方式,可以用最少的软件,仿真出最多的通信呢?答案是有的,今天来给大家分享一个软件及其使用方法,即S7-PLCSIM Advanced,S7-PLCSIM Advanced是SIEMENS推出的一款高功能仿真器,它的显著特点是除了可以仿真一般的PLC逻辑控制程序外还可以仿真通信,功能是非常强大的,今天主要讲述如何基于S7-PLCSIM Advanced搭建S7通信仿真环境。

1.PLCSIM-Advanced安装

对于该软件的获取,大家可以去西门子相关网站下载,也可以直接关注喜科堂上位机官方公众号-dotNet工控上位机,然后发送关键词PLCSIM-Advanced,即可下载使用。

PLCSIM-Advanced的安装也比较简单,基本上是一路NEXT即可,但是主要的是PLCSIM-Advanced会依赖WinPcap软件,所以大家可以提前安装好WinPcap,即使不提前安装,安装过程中也会提示你安装的。

安装完成后,电脑中会额外多出一个虚拟网卡,名称为Siemens PLCSIM Virtual Ethernet Adapter,如下图:

PLCSIM Advanced是SIEMENS推出的一款高功能仿真器,它的显著特点是除了可以仿真一般的PLC逻辑控制程序外还可以仿真通信,功能还是比较强大的。下图是PLCSIM Advanced和PLCSIM的功能比较。
https://www.cnblogs.com/hwlib/p/12563728.html

下载:

https://support.industry.siemens.com/cs/document/109772889/trial-download%3A-simatic-s7-plcsim-advanced-v3-0?dti=0&dl=en&lc=zh-CN

https://support.industry.siemens.com/cs/document/109776014/updates-for-s7-plcsim-advanced-v3-0?dti=0&lc=en-WW

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值