一、通讯协议:
1、S7协议
S7协议是西门子公司为其S7系列可编程逻辑控制器(PLC)开发的一种通信协议。S7协议主要用于西门子S7系列PLC之间的通信,也可用于PLC与其他设备(如人机界面HMI、变频器、传感器等)之间的通信。通过S7协议,可以实现数据的读取、写入、传输和处理等功能,从而实现设备之间的互联互通。
S7COMM
--私有协议,非公开
--功能强大,大部分功能都能完成
--通信模式:主从(客/服,单边通信)、伙伴(双边通信,PLC->PLC)
2、modbus协议
3、请求流程
WireShark监控通信过程,S7.NET库测试使用
-(1)建立TCP连接(三次握手)Socket.Connect
-(2)发送访问请求COTP
-(3)交换通信信息Setup Communication
-(4)执行相关操作….
4、S7COMM-COTP报文
二、使用博图仿真软件,在电脑上模拟通讯过程
具体流程
1、安装博图软件:下载链接:百度网盘
2、打开TIA Portal V16软件:
创建新项目
添加新设备(可以选择控制器plc 1200系列 1217c)
必要设置包括:
连接机制:勾选 “允许来自远程对象的 PUTGET通信访问”
数据块:DB模块的属性需要取消勾选“优化的块访问”
设置IP地址:
启动仿真:前提是已安装仿真软件
仿真软件下载地址:
选中设备后,点击下载==> 下载完成后点击 “装载”
选中 “启动模块”后 点击 “完成”
此时 仿真软件已经可以正常“RUN”
下载:NetTolPLCsim软件
下载链接:
需以管理员身份运行程序
点击“Add”后
Network IP Address选择和pc的IP一致
Plcsim IP Address地址选择与plc 的IP一致
点击 “start server” 点击开启服务 后 可以查看的对应的ip地址和状态Running
打开VS 引入S7协议的依赖:S7netplus
创建对象,传入plc的型号,和ip地址,根据Siemens软件提供的信息填入对应参数
plc仿真连接成功