免费发布

西门子S7-300 和S7-400 集成PN 口的S7 通信

更新:2024-11-02 08:00 发布者IP:120.237.217.245 浏览:0次
供应商:
广东湘恒智能科技有限公司 商铺
企业认证
所在地
惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房(仅限办公)
联系电话
13510737515
联系人
董海波
手机号
13185520415
让卖家联系我
13185520415

详细

1. S7 通信简介

S7 通信是S7 系列PLC 基于MPI、PROFIBUS、ETHERNET 网络的一种优化的通信协议,主要用于S7300/400PLC 之间的通信。SIMATIC S7- PN CPU 包含一个集成的PROFINET 接口,该接口除了具有 PROFINET I/O 功能,还可以进行基于以太网的S7 通信。SIMATIC S7- PN CPU 支持无确认数据交换、确认数据交换和单边访问功能。功能块的调用如图1、图2 所示。

图片

图片

要通过 S7-PN CPU 的 集成PROFINET 接口实现S7 通信,需要在硬件组态中建立连

接。

2. 硬件及网络组态

CPU 采用两个315-2PN/DP,使用以太网进行通信。在STEP7 中创建一个新项目,项目名称为PN S7。插入两个S7-300 站,在硬件组态中,分别插入CPU 315-2 PN/DP。如图3 所示。


图片

新建以太网,打开“NetPro”设置网络参数,选中CPU,在连接列表中建立新的连接。

如图4 所示。

图片

然后双击该连接,设置连接属性。在“General”属性中块参数ID = 1,这个参数即是下面程序中的参数“ID”。在SIMATIC 315PN-1 中激活“Establish an active connection”,作为Client 端,SIMATIC 315PN-2 作为Server 端。


3. 软件编程

3.1. 无确认数据交换

SFB/FB 8 "USEND" 向类型为“URCV”的远程伙伴SFB/FB 发送数据。执行发送过程而不需要和SFB/FB 伙伴进行协调。也就是说,在进行数据传送时不需要伙伴SFB/FB 进行确认。

S7-300:在REQ 的上升沿处发送数据。在REQ 的每个上升沿处传送参数R_ID、ID 和SD_1。在每个作业结束之后,可以给R_ID、ID 和SD_1 参数分配新数值。

S7-400:在控制输入REQ 的上升沿处发送数据。通过参数SD_1 到SD_4 来指向要发送的数据,但并非都需要用到所有四个发送参数。然而,必须确保参数SD_1 到SD_4/SD_1 和RD_1 到RD_4/RD_1 (在相应通讯伙伴SFB/FB "URCV" 上)所定义的区域在以下几个方面保持一致:

• 编号

• 长度

• 数据类型

参数R_ID 必须在两个SFB 中完全相同。如果传送成功完成,则通过状态参数DONE 来表示,此时其逻辑数值为1。

SFB/FB 9 "URCV" 从类型为“USEND”的远程伙伴SFB/FB 中异步接收数据,并

把接收到的数据复制到组态的接收区域内。

当程序块准备好接收数据时,EN_R 输入处的逻辑值为1。可以通过EN_R=0 来取消一个已激活的作业。

S7-300:在EN_R 的每个上升沿处应用参数R_ID、ID 和RD_1。在每个作业结束之后,可以给R_ID、ID 和RD_1 参数分配新数值。

S7-400:通过参数RD_1 到RD_4 来指向接收数据区。

必须确保参数RD_i/RD_1 和SD_i/SD_1 (在相应通讯伙伴SFB/FB "USEND"

上)所定义的区域在以下几个方面保持一致:

• 编号

• 长度

• 数据类型。

通过NDR 状态参数逻辑数值为1 来指示已经成功完成复制处理过程。参数R_ID 必须在两个SFB/FB 上完全相同。

打开SIMATIC 315PN-1 的OB1,在OB1 中依次调用FB8,FB9 如图5、图6 所示:




同样,在SIMATIC 315PN-2 的OB1 中,调用FB8/FB9。通信双方的“R_ID”均设为0。将SIMATIC 315PN-1 的MB100-MB109 赋值B#16#02,在SIMATIC 315PN-2 中,将FB9的“EN_R”置1,然后在SIMATIC 315PN-1 中,将FB8 中“REQ”设置上升沿信号,此时SIMATIC 315PN-2 的MB110-MB119 接收到B#16#02。如图7 所示。


3.2. 确认数据交换

SFB/FB 12 "BSEND" 向类型为“BRCV”的远程伙伴SFB/FB 发送数据。通过这种类型的数据传送,更多的数据可以在通讯伙伴之间传输,超过任何其它用于组态的S7 连接的通讯SFB/FB 所能传输的数据量,通过集成PN 口的S7-400 和S7-300 是65534字节。


要发送的数据区是分段的。各个分段单独发送给通讯伙伴。通讯伙伴在接收到最后一个分段时对此分段进行确认,该过程与相应SFB/FB "BRCV" 的调用无关。在调用块之后,当在控制输入REQ 上有上升沿时,发送作业被激活。发送用户存储区中的数据与处理用户程序是异步执行的。

由SD_1 指定起始地址和要发送数据的最大长度。可以通过LEN 来确定数据域的作业指定长度。在这种情况下,LEN 替换SD_1 的长度区域。参数R_ID 必须在相应的两个SFB/FB 上完全相同。如果在控制输入R 处有上升沿,则当前数据传送将被取消。如果传送成功完成,则通过将状态参数DONE 的数值设置为1 来进行指示。如果状态参数DONE 或ERROR 的数值为1,则在前一个发送处理结束之前,不能处理新的发送作业。

SFB/FB 13 "BRCV" 接收来自类型为“BSEND”的远程伙伴SFB/FB 的数据。在收到每个数据段后,向伙伴SFB/FB 发送一个确认帧,同时更新LEN 参数。在块调用完毕,并且在控制输入EN_R 数值为1 之后,块准备接收数据。可以通过EN_R=0 来取消一个已激活的作业。

由RD_1 指定起始地址和接收区的最大长度。由LEN 指示已接收数据域的长度。

从用户存储区中接收数据与处理用户程序是异步执行的。参数R_ID 必须在相应的两个SFB/FB 上完全相同。通过状态参数NDR 的数值为1 来指示所有数据段的无错接收。接收到的数据保持不变,直到通过EN_R=1 来重新调用SFB/FB 13 为止。如果在数据的异步接收期间调用块,则将引发一个警告,该警告通过STATUS 参数输出;如果当控制输入EN_R数值为0 时进行调用,则接收将被终止,并且SFB/FB 将返回到它的初始状态。

打开SIMATIC 315PN-1 的OB1,在OB1 中依次调用FB12,FB13 如图9、图10 所示:

同样,在SIMATIC 315PN-2 的OB1 中,调用FB12/FB13。通信双方的R_ID 设为0,LEN设为10,将SIMATIC 315PN-1 的MB120-MB129 赋值B#16#04,在SIMATIC 315PN-2中,将FB13 的“EN_R”置1,然后在SIMATIC 315PN-1 中,将FB12 中“REQ”设置上升沿信号,此时SIMATIC 315PN-2 的MB130-MB139 接收到B#16#04。如图11 所示

3.3. 单边访问

可以通过SFB/FB 14 "GET",从远程CPU 中读取数据。

S7-300:在REQ 的上升沿处读取数据。在REQ 的每个上升沿处传送参数ID、ADDR_1和RD_1。在每个作业结束之后,可以分配新数值给ID、ADDR_1 和RD_1 参数。

S7-400:在控制输入REQ 的上升沿处启动SFB。在此过程中,将要读取的区域的相关指针(ADDR_i)发送到伙伴CPU。远程伙伴返回此数据。在下一个SFB/FB 调用处,已接收的数据被复制到组态的接收区(RD_i)中。必须要quebaotongguo参数ADDR_i 和RD_i 定义的区域在长度和数据类型方面要相互匹配。

通过状态参数NDR 数值为1 来指示此作业已完成。只有在前一个作业已经完成之后,才能重新激活读作业。远程CPU 可以处于RUN 或STOP 工作状态。如果正在读取数据时发生访问故障,或如果数据类型检查过程中出错,则出错和警告信息将通过ERROR 和STATUS 输出表示。

通过使用SFB/FB 15 "PUT",可以将数据写入到远程CPU。

S7-300:在REQ 的上升沿处发送数据。在REQ 的每个上升沿处传送参数ID、ADDR_1和SD_1。在每个作业结束之后,可以给ID、ADDR_1 和SD_1 参数分配新数值。

S7-400:在控制输入REQ 的上升沿处启动SFB。在此过程中,将指向要写入数据的区域(ADDR_i)的指针和数据(SD_i)发送到伙伴CPU。 远程伙伴将所需要的数据保存在随数据一起提供的地址下面,并返回一个执行确认。必须要quebaotongguo参数ADDR_i 和SD_i 定义的区域在编号、长度和数据类型方面相互匹配。

如果没有产生任何错误,则在下一个SFB/FB 调用时,通过状态参数DONE 来指示,其数值为1。只有在最后一个作业完成之后,才能再次激活写作业。远程CPU 可以处于RUN或STOP 模式。如果正在写入数据时发生访问故障,或如果执行检查过程中出错,则出错和警告信息将通过ERROR 和STATUS 输出表示。

打开SIMATIC 315PN-1 的OB1,在OB1 中依次调用FB14,FB15 如图13、图14 所示:

同样,在SIMATIC 315PN-2 的OB1 中,调用FB14/FB15。将SIMATIC 315PN-2 的MB140-MB149 赋值B#16#06,在SIMATIC 315PN-1 中,将FB14 的“REQ”置上升沿信号,此时SIMATIC 315PN-1 的MB150-MB159 接收到B#16#06。如图15 所示。

4. 常见问题

• 两个S7-300PN CPU 之间建立S7 连接可有哪些通信方式?

答:可以有确认连接、非确认连接、单边通信

• 使用FB8/9 时,数据已发送,程序块没有错误显示,但是没收到任何数据?

答:发送区与接收缓冲区长度不一致。

• 使用FB12/13 时,发送区与接收缓冲区长度是否必须一致?

答:发送区的大小只要不超过接收缓冲区就可以。

• FB12 发送数据时,发送数据的长度由哪个参数决定?

答:发送长度由 LEN 决定。但发送数据的起始地址和最大长度由SD_1 决定。



关于广东湘恒智能科技有限公司商铺首页 | 更多产品 | 更多新闻 | 联系方式 | 黄页介绍
主要经营:西门子PLC 变频器 伺服电机 人机界面 触摸屏 线缆 DP接头

广东湘恒智能科技有限公司主要从事工业自动化产品的集成,销售与维修。致力于为您提供在机械、化工、水泥、电力、环保等领域的电气及自动化技术的完整解决方案,包括自动化产品及系统、工程项目执行及管理、主要过程控制领域技术支持,以及专业的售后服务、培训等。

公司本着“以人矢志创新、追求卓越”的工作方针,致力于工业自动化控制领域的产品开发、工程配套和系统集成、销售,拥有丰富的自动为本、科技先导、化产品的应用和实践经验以及雄厚的技术力量,尤其以 PLC复杂控制系统、传动技术应用、伺服控制系统、数控备品备件、人机界面及网络/软件应用为公司的技术特长,

内容声明:顺企网为第三方交易平台及互联网信息服务提供者,顺企网所展示的信息内容系由广东湘恒智能科技有限公司经营者发布,其真实性、准确性和合法性均由店铺经营者负责。顺企网提醒您购买前注意谨慎核实,如您对信息有任何疑问的,请在购买前通过电话与商家沟通确认顺企网存在海量企业商铺和供求信息,如您发现店铺内有任何违法/侵权信息,请立即向顺企网举报并提供有效线索。
免责声明:本站信息由企业注册和来自工商局网站, 本站完全免费,交易请核实资质,谨防诈骗,如有侵权请联系我们   法律声明  联系顺企网
ICP备案: 粤B2-20160116 / 粤ICP备12079258号 / 互联网药品信息服务资格证:(粤)-经营性-2016-0009 / 粤公网安备 44030702000007号
© 11467.com 顺企网版权所有 发布批发采购信息、查询企业黄页,上顺企网