S7-1500系列ModBusTCP通讯

这篇具有很好参考价值的文章主要介绍了S7-1500系列ModBusTCP通讯。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、通信本质(信道&协议)

(一) 信道(传输媒介)

(二) 协议(编码和解码的约定)

二、ModBus通讯格式

ModBus是串行通信,设备之间通过少量数据信号线(一般是8根以下)、地线及控制信号线,按数据位形式一位一位地传输数据的通信方式。需要约定号编码和解码的方式。

(一) 波特率

一秒钟传送的位数,也就是通讯速率;比如波特率为9600,即,一秒种可以传送9600个位数

(二) 校验方式

奇校验或偶校验或无校验,目的是判断传输过程中是否有错误!它只是用于判断一个字符(比如八个位或是七个位组成一个字符)传输是否有错误。但是它并不能完全能够判断传输是否有错。比如偶校验,在检验送八个“11111111”时,如果到达接收方,由于干扰而变成了“10111101”,“1”的个数仍然是偶数,接收方就判断不出来传送的字符已经错误!目前多用无校验

(三) 起始位

在发送有效数据前,无需配置,会自动产生1bit 逻辑“0”的低电平的起始位,表示串口数据传输开始,之后开始发送有效数据。

(四) 数据位

数据位,决定了通信过程中传输的有效数据位数,数据位通常有5、6、7 、8 bit,需要根据需要进行相应的配置,通常选择8位字长。

(五) 停止位

停止位,停止位是一帧数据结束的标志,可以是1bit、1.5bit或者2bit逻辑“1” 高电平,需要根据自己需求配置,一般配置1bit停止位。

三、通讯过程

Modbus是主从方式通信,也就是说,不能同步进行通信,总线上每次只有一个数据进行传输,即主机发送,从机应答,主机不发送,总线上就没有数据通信。

主站发送数据:

s7 1500协议说明,自动化,学习,笔记

从站回复数据

s7 1500协议说明,自动化,学习,笔记

四、西门子S7-1500系列仿真通讯测试

(一) PLCSIM Advance模拟PLC作为ModbusTCP服务器与MThings模拟的主站进行通讯

ModBus协议主站主动找从站读写数据,客户端主动找服务端读写数据,所以一般主站作为客户端,从站作为服务器。

1. 使用PLCSIM Advance 仿真1500PLC如下图

s7 1500协议说明,自动化,学习,笔记

2. 创建PLC项目,并添加硬件设置CPU的以太网IP

下载时有可能遇到如下问题:

s7 1500协议说明,自动化,学习,笔记

解决方法如下:

①对硬件配置重新编译后下载

②如果上述方法不行,则window网络连接中检查PLCSIM虚拟网卡的IP和实际网卡的IP是否一直,需改为一致后重新下载

plc启动可能会失败,如下:

s7 1500协议说明,自动化,学习,笔记

解决方法如下:①项目属性-保护-块编译时支持仿真

s7 1500协议说明,自动化,学习,笔记

②设备视图中配置CPU如下(允许PUT/GET通信访问)

s7 1500协议说明,自动化,学习,笔记

3. 在 ob1 主程序中添加通讯程序

①创建DB块,用来存储通讯的数据(需要取消优化的块访问后重新编译)

s7 1500协议说明,自动化,学习,笔记

重新编译后DB块如下:

s7 1500协议说明,自动化,学习,笔记

②在ob1中添加功能块如下:创建DB块存储连接信息,数据格式为TCON_IP_v4,程序如下:

s7 1500协议说明,自动化,学习,笔记

③配置连接信息

s7 1500协议说明,自动化,学习,笔记

④完成上述配置后即可下载程序,在线后如下:

s7 1500协议说明,自动化,学习,笔记

STATUS为7002,说明程序正常,等待连接中……

4. 仿真一个ModBus主机完成和PLC的通讯

①通过Mthings配置端口连接信息(IP地址与仿真的PLC IP地址保持一致)

s7 1500协议说明,自动化,学习,笔记

②创建虚拟主机

s7 1500协议说明,自动化,学习,笔记

③选择寄存器和数据长度

s7 1500协议说明,自动化,学习,笔记

④测试PLC的④数据可以直接被虚拟的ModBus主机读取

s7 1500协议说明,自动化,学习,笔记

⑤测试虚拟的ModBus主机可以将数据写入到PLC中

s7 1500协议说明,自动化,学习,笔记

(二) PLCSIM Advance仿真两个PLC完成ModBusTCP通讯

1. 使用PLCSIM Advance仿真两个PLC,IP在同一网段,如下图

s7 1500协议说明,自动化,学习,笔记

2. 博途创建项目组态硬件,配置对应的IP地址

s7 1500协议说明,自动化,学习,笔记

使用仿真需要设置如下:

①整个项目-属性-保护-块编译时支持仿真

s7 1500协议说明,自动化,学习,笔记

②两个硬件分别设置 属性-常规-防护与安全-连接机制-允许来自远程对象的PUT/GET通信访问

s7 1500协议说明,自动化,学习,笔记

3. 服务端程序编写

  1. 创建ModBus-TCP连接的数据块,数据格式TCON_IP_v4

s7 1500协议说明,自动化,学习,笔记

  1. 创建存储数据交换的数据块(该数据块需要在属性中取消勾选优化的块访问后重新编译)

    s7 1500协议说明,自动化,学习,笔记

  2. 编写程序如下

    s7 1500协议说明,自动化,学习,笔记

4. 客户端程序编写

  1. 创建ModBus-TCP连接的数据块,数据格式TCON_IP_v4

    s7 1500协议说明,自动化,学习,笔记

    • client 需要是主动连接,ActiveEstablished需要是1
    • client 需要是填写目标设备的ip地址(modbus网关或仪表的ip地址)
    • RemotePort 即为modbus网关或仪表的端口
  1. 创建存储数据交换的数据块(该数据块需要在属性中取消勾选优化的块访问后重新编译)

    s7 1500协议说明,自动化,学习,笔记

  2. 编写程序如下

    s7 1500协议说明,自动化,学习,笔记

5. 测试仿真

  1. 在MB_CLIENT为写模式时(MB_MODE=1),PLC2写入数据 PLC1的数据会跟随变化。
  2. 在MB_CLIENT为读模式时(MB_MODE=0),PLC1更改数据PLC2读到的数据会跟随变化。

(三) 实体PLC作为客户端与仿真ModBus仪表通讯

1. 创建项目,添加硬件分配地址如下:

s7 1500协议说明,自动化,学习,笔记

2. 编写程序

  1. 添加两个DB块分别用来存储通讯信息和通讯数据,如下图

s7 1500协议说明,自动化,学习,笔记

s7 1500协议说明,自动化,学习,笔记

  1. 编写轮询程序(因为对时效性要求不高,所有用时序轮询)
    ①先写一个方波,利用方波生成循环计数

    s7 1500协议说明,自动化,学习,笔记

②再轮询,通过改变站地址,获取不同站地址仪表上的数据

s7 1500协议说明,自动化,学习,笔记

③最后将不同仪表上读取的数据保存在不同的地址上

s7 1500协议说明,自动化,学习,笔记

3. 连接PLC调试测试测验

  1. 检查PLC的ip地址,并连接PLC,完成装载和启动

s7 1500协议说明,自动化,学习,笔记

  1. 在MThings中添加虚拟从站,并设置不同的从站地址

    s7 1500协议说明,自动化,学习,笔记

  2. 数据验证正常。

s7 1500协议说明,自动化,学习,笔记

s7 1500协议说明,自动化,学习,笔记文章来源地址https://www.toymoban.com/news/detail-770577.html

到了这里,关于S7-1500系列ModBusTCP通讯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于西门子S7-200smart作为客户端的modbustcp通讯

    具体PLC实施及排配和上位机modbustcp对应地址关系 1.启动按钮—I0.0 -------modbus地址:2000 2.停止按钮—I0.1 -------modbus地址:2001 3.急停按钮—I0.2 -------modbus地址:2002 4.进料感应器—I0.3 -------modbus地址:2010 5.出料感应器—I0.4 -------modbus地址:2015 6.电机运行—Q0.0 -------modbus地址:2

    2024年02月03日
    浏览(72)
  • 西门子S7-1200建立ModbusTCP通讯数据交互实例(从站+主站)

    协议:Modbus TCP 设备类型:S7-1200 CPU 1215C 组态软件:TIA Portal V17 测试工具:Modbus Slave Modbus Poll 插入CPU设备,并分配IP地址 PLC_1:192.168.2.11 记录PLC网卡硬件标识符,默认为64 新建一个DB块(DB_ConnPara_1),在DB块中创建一个\\\"TCON_IP_v4\\\"类型的变量,修改其参数值如下: 新建一个DB块

    2024年03月08日
    浏览(67)
  • 西门子S7-1200F或1500F系列安全PLC的组态步骤和基础编程(一)

    第一部分:组态配置 具体步骤可参考以下内容 : 如下图所示,新建一个项目后,添加一个安全型PLC,这里以1516F-3 PN/DP为例进行说明, 如下图所示,添加CPU完成后,可以看到左侧的项目树中比普通的PLC多了几个选项和模块, 如下图所示,我们选中该CPU后进入属性画面,在“

    2024年02月06日
    浏览(85)
  • C#与西门子PLC通讯——手搓S7通讯协议

    本文将尝试从源码角度,使用Tcp/Ip的方式直接与西门子PLC进行交互通讯。 往期博客参考 C#与西门子PLC通讯——新手快速入门 C#与西门子PLC通讯——熟手快速入门 建议先看一下这两篇,了解预设背景。 知其然,知其所以然。 这篇文章,我们就尝试重复造一个轮子。通过对通讯

    2024年02月04日
    浏览(45)
  • 西门子S7-1500作为智能设备共享功能

    本章节介绍了共享设备的功能,优势,使用要求,使用规则,如何将智能设备作为共享设备,实现一个智能设备同时与2个IO控制器进行通信的示例,以及常见问题。 一、共享设备功能概述 信号模块可以被不同的IO控制器访问的IO设备被称为\\\"共享设备\\\",智能设备也可以作为共

    2024年02月22日
    浏览(49)
  • Siemens S7-1500TCPU 运动机构系统功能简介

    目录 引言: 1.0 术语定义 2.0 基本知识 2.1 运动系统工艺对象 2.2 坐标系与标架 3.0 运动机构系统类型 3.1 直角坐标型 3.2 轮腿型 3.3 平面关节型 3.4 关节型 3.5 并联型 3.6 圆柱坐标型 3.7 三轴型 4.0 运动系统的运动 4.1 运动类型 4.1.1 线性运动 4.1.2 圆周运动 5.0 区域监视

    2024年04月29日
    浏览(64)
  • S7-1500 通过 TIA15, S7-PLCSIM Advanced V4.0 仿真PLC 与 KEPServerEX 6 建立server 建立连接

    S7-1500 通过 TIA15,S7-PLCSIM Advanced V4.0 仿真PLC 与KEPServerEX 6 建立server 建立连接 软件硬件环境 : PLC , 使用 S7-PLCSIMAdvanced V4.0 仿真器 客户端访问: KEPServerEX 6.5 作为 客户端 读取 PLC 变量 步骤1:建立S7-1500 仿真环境,如下图 打开S7-PLCSIM Advanced V4.0 软件 切换开关到虚拟网卡模式,

    2024年02月05日
    浏览(50)
  • S7-1200PLC 作为MODBUSTCP服务器通信(多客户端访问)

    S7-1200PLC作为MODBUSTCP服务器端通信编程应用,详细内容请查看下面文章链接: ModbusTcp通信(S7-1200PLC作为服务器端)-CSDN博客 文章浏览阅读239次。S7-200Smart plc作为ModbusTcp服务器端的通信S7-200SMART PLC ModbusTCP通信(ModbusTcp服务器)_s7-200 modbustcp-CSDN博客文章浏览阅读2.3k次。 https://rxxw-con

    2024年02月01日
    浏览(50)
  • 西门子S7-1500与FANUC机器人进行EtherNetIP通信的具体方法示例

    具体方法可参考以下内容: 以下示例中TIA博途的版本为V17,本例中PLC做主站,机器人做从站 一、 西门子PLC一侧的组态设置和编程 首先,我们需要到下载所需的EtherNetIP通信库文件,大家可自行百度获取或者从以下链接获取: 西门子EtherNetIP Scanner通信库文件V17版本 打开博途软

    2024年02月09日
    浏览(154)
  • 使用IOT-Tree Server连接西门子PLC S7-300/1200/1500

    IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了接入、数据组织管理、控制逻辑和人机交互多个方面的功能。从版本0.99开始,IOT-Tree Server新增了西门子以太网驱动,能够通过以太网的方式直接访问S7-300/1200/1500. S7-200 smart好像也支持

    2024年02月03日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包