西门子模块6ES72531AA220XA0

发布时间:2017-11-01

西门子模块6ES72531AA220XA0

西门子模块6ES72531AA220XA0

西门子模块6ES72531AA220XA0

上海朕锌电气设备有限公司

 联系人(田工)

 电话:   微信同步

 地址:上海市金山区枫泾镇

 传真:

 座机:


line;background-color:#FFFFFF;">

如何在STEP 7 (TIA Portal)中配置访问共享的设备及模块内部共享输入/输出(MSI/MSO)功能?

line;background-color:#FFFFFF;"> 文档: 西门子工程师本文档!
line;background-color:#FFFFFF;">
  • 文献
  •  
  • 涉及产品
通过模块内部共享输入/输出(MSI/MSO)功能,输入或输出模块可以将其输入或输出数据多提供给4个IO控制器。

以下手册中介绍了模块共享输入/输出(MSI/MSO)的基本信息。                                                                         SIMATIC PROFINET PROFINET with STEP 7 V13.

条目 ID 102325771包含了支持MSI/MSO功能的IO设备的概览。

这篇文档介绍了如何在STEP 7 (TIA Portal)中配置访问共享的设备及模块内部共享输入/输出功能。可以在两个不同的项目里或同一个项目里来配置IO 控制器。
在这个例子里,一个S7-1500 CPU和一个S7-300 CPU作为IO控制器来访问作为共享设备的ET200SP的输入和输出数据。
一个输入模块和一个输出模块插到ET200SP的插槽中,S7-1500CPU将会读取输入和写入输出,S7-300CPU将会读取输入和输出。
  

图. 1

在同一个项目下的配置

按照以下步骤在同一个项目下配置两个CPU

  1. STEP 7 (TIA Portal)里创建一个新项目。
  2. 项目里添加一个 S7-1500 CPU 和一个 S7-300 CPU
  3. 为 S7-1500 CPU 和一个 S7-300 CPU 组态不同的IP地址,它们必须在同一个IP子网中。
  4. 在“设备和网络”编辑器中打开网络视图,从硬件目录中拖放ET200SP相应的接口模块(IM)。
  5. 在“设备和网络”编辑器中打开ET200SP的设备视图,从硬件目录中拖放输入输出模块至ET200SP的相应插槽中。
  6. ET200SP的设备视图中,选中输出模块,巡视窗口列出了输出模块的属性。
  7. 在“常规”选项下找到“模块参数>DQ组态”。
  8. Shared Device 的模块副本(MSO)下的模块副本选择“一个输出副本作为输入”
       

    图. 2
      

  9. 在 ET200SP 的设备视图中,选中输入模块,巡视窗口列出了输入模块的属性。
  10. 在“常规”选项下找到“模块参数>DI组态”。
  11. Shared Device 的模块副本(MSI)下的模块副本选择“一个输入副本作为输入”。
       

    图. 3
      

  12. 在“设备和网络”编辑器中打开网络视图,复制ET200SP站点然后粘贴成另一个 ET200 SP 站点。
  13. 分配一个 ET200 SP 设备给 S7-1500 CPU,分配另一个 ET200 SP 站点给S7-300 CPU
  14. 为每个 ET200 SP 站点配置相同的IP地址。
       

    图. 4
      

  15. 在 ET200 SP 的设备视图中选中接口模块(IM,巡视窗口列出了接口模块的属性。
  16. 找到“PROFINET接口[X1]>以太网地址”。
  17. 取消勾选“自动生成PROFINET设备名称”功能,之后可以收到编辑PROFINET设备名称,为每个ET200 SP 编辑相同的设备名称。
       

    图. 5
      
  18. 在分配给 S7-1500 的接口模块的属性中,打开“常规”选项找到“模块参数>Shared Device
  19. 定义IO控制器对哪个模块(基本模块)和哪个副本(MSI/MSO模块)有访问权限。
    在例子里S7-1500CPU会被设置为输出,也就是说S7-1500PLC1)可以访问输出模块的输出,因此对于S7-1500来说输出模块是一个基本模块。因此对于S7-1500来说输入模块是一个MSI模块。
    提供给S7-300 (PLC_2)数据的模块或它们的副本不会分配给其他的IO控制器,不要将接口模块分配给任何的IO控制器。
       

    图. 6
       
  20. 在分配给 S7-300 CPU 的接口模块属性中,打开“常规”选项卡,找到“模块参数>Shared Device”。
  21. 定义IO控制器对哪个模块(基本模块)和哪个副本(MSI/MSO模块)有访问权限。
    在例子里S7-300CPU管理输出模块的输出副本,也就是说S7-300PLC2)可以访问输出模块的输出副本,因此对于S7-300来说输出模块是一个MSO模块。
    S7-300PLC2)访问输入模块的输入,因此对于S7-300来说输入模块是一个基本模块。
    提供给S7-1500 (PLC_1)数据的模块或它们的副本不会分配给其他的IO控制器,
    不要将接口模块分配给任何的IO控制器。
       

    图. 7
      

  22. 在“设备和网络”编辑器中打开分配给S7-1500的 ET200 SP 的设备视图,这里可以修改基本模块和MSI/MSO模块的IO地址。
       

    图. 8
      

  23. 在“设备和网络”编辑器中打开分配给S7-300ET200SP的设备视图,这里可以修改基本模块和MSI/MSO模块的IO地址。
       

    图. 9
      

  24. 在任一 ET200SP 的设备视图中右键单击接口模块,为了将已经配置的设备名称分配给ET200SP,在弹出的菜单中选择“分配设备名称”。
       

    图. 10
      

  25. 在项目树中选择 S7-1500 CPU,将组态下载到S7-1500 CPU,在工具栏中点击“下载到设备”按钮。
       

    图. 11
      

  26. 将组态下载到S7-300CPU

在两个不同项目下的配置

按照以下步骤在两个不同的项目下配置两个CPU

  1. STEP 7 (TIA Portal)里创建一个新项目。
  2. 项目里添加一个S7-1500 CPU
  3. 在“设备和网络”编辑器中打开网络视图,从硬件目录中拖放 ET200SP 相应的接口模块(IM)。
  4. 在“设备和网络”编辑器中打开ET200SP的设备视图,从硬件目录中拖放输入输出模块至 ET200SP的相应插槽中。
  5. ET200SP分配给S7-1500CPU。
       

    图. 12
      

  6. 在 ET200SP 的设备视图中,选中输出模块,巡视窗口列出了输出模块的属性。
  7. 在“常规”选项下找到“模块参数>DQ组态”。Shared Device 的模块副本(MSO)下的模块副本选择“一个输出副本作为输入”。
       

    图. 13
      

  8. 在 ET200SP 的设备视图中,选中输入模块,巡视窗口列出了输入模块的属性。
  9. “常规”选项下找到“模块参数>DI组态”。
  10. Shared Device 的模块副本(MSI)下的模块副本选择“一个输入副本作为输入”。
       

    图. 14
      

  11. 在接口模块属性中,打开“常规”选项卡,找到“模块参数>Shared Device”。
  12. 定义IO控制器对哪个模块(基本模块)和哪个副本(MSI/MSO模块)有访问权限。
    在例子里 S7-1500CPU 会被设置为输出,也就是说S7-1500可以访问输出模块的输出,因此对于S7-1500来说输出模块是一个基本模块。
    S7-1500访问输入模块的输入副本,因此对于S7-1500来说输入模块是一个MSI模块。
    提供给S7-300数据的模块或它们的副本不会分配给其他的IO控制器
    不要将接口模块分配给任何的IO控制器
       

    图. 15
       
  13. STEP 7 (TIA Portal)里再创建一个新项目。
  14. 项目里添加一个S7-300CPU
  15. 在“设备和网络”编辑器中打开网络视图,从硬件目录中拖放ET200SP相应的接口模块(IM)。
  16. 在“设备和网络”编辑器中打开ET200SP的设备视图,从硬件目录中拖放输入输出模块至ET200SP的相应插槽中。
  17. ET200SP分配给S7-300CPU
       

    图. 16
      

  18. 按照上述步骤5的描述创建共享设备输出模块(MSO)的副本。
  19. 按照上述步骤6的描述创建共享设备输入模块(MSI)的副本。
  20. 在接口模块属性中,打开“常规”选项卡,找到“模块参数>Shared Device”。
  21. 定义IO控制器对哪个模块(基本模块)和哪个副本(MSI/MSO模块)有访问权限。
    在例子里S7-300 CPU管理输出模块的输出副本,也就是说 S7-300 可以访问输出模块的输出副本,因此对于 S7-300 来说输出模块是一个MSO模块。
    S7-300访问输入模块的输入,因此对于S7-300来说输入模块是一个基本模块。
    提供给S7-1500数据的模块或它们的副本不会分配给其他的IO控制器,
    不要将接口模块分配给任何的IO控制器。
      

    图. 17
      

  22. 在每个项目下都可以在设备视图下修改基本模块和MSI/MSO模块的IO地址。
       

    图. 18
      

  23. 在每个项目下为ET200SP分配相同的设备名称,ET200SP的设备视图中选中接口模块(IM,巡视窗口列出了接口模块的属性。
  24. 找到“PROFINET接口[X1]>以太网地址”。取消勾选“自动生成PROFINET设备名称”功能。
       

    图. 19
      

  25. 在两个项目中的任一个下的设备视图中,右键单击接口模块,为了将已经配置的设备名称分配给ET200SP,在弹出的菜单中选择“分配设备名称”。
       
line;background-color:#FFFFFF;">

在STEP 7 (TIA Portal) 中对于优化数据存储和标准类型访问要注意些什么?

line;background-color:#FFFFFF;"> 文档: 西门子工程师本文档!
line;background-color:#FFFFFF;">
  • 文献
  •  
  • 涉及产品
描述 本条目内容是关于在 STEP 7 V5.x 和 STEP 7 (TIA Portal) 中块的不同访问方式。

利用优化的数据存储,可以获得S7-1200/1500运行程序的佳性能。

STEP 7 V5.x 方式
用户可以按照SIMATIC规则,给块中声明的变量分配地址。 该数据按系统显示并以SIMATIC格式存储在CPU存储区中。

TIA Portal 方式

STEP 7 (TIA Portal) 中的块有不同的访问方式:

  • 标准块访问:(S7-300 / S7-400 and S7-1200 / S7-1500)                                                                                   标准块访问数据结构属于混合型。数据元素既有符号名又有地址偏移量。                               
  • 优化块访问:(S7-1200 / S7-1500)                                                                                                                     优化块访问没有明确的结构。数据元素只有符号名,没有地址偏移量。

下表说明了标准块访问和优化块访问的差别。
 

  标准块访问 优化块访问
CPU 模块 S7-1200/1500, 兼容 S7-300/400 仅用于 S7-1200/1500
数据存储 用户可以根据声明自定义优化的数据结构或任意数据结构。 由系统管理和优化,可以设置任意的结构类型而不用固定的存储地址。
性能 S7-1200/1500的高性能访问取决于数据的声明 数据访问是尽可能的快,因为数据的存储是由系统优化的,与声明无关。
错误敏感性 当修改声明表后,地址访问可能导致不一致 (例如从 HMI 访问或间接寻址) 不会,因为访问通常是符号访问。声明改变不会导致访问出错,因为HMI访问也是符号的。
保持性 块级别 变量级别

表 01 
 

说明
标准块在访问方式上更灵活但也更容易出错。优化块只允行类型安全的访问并提供的性能。建议尽量不要混合使用标准块和优化块,系统会自动的在不同访问方式之间切换数据模型,但这会消耗资源。两种数据格式之间的切换需要存储空间和长的转换时间。


访问方式 标准块访问 优化块访问
符号
索引 (域)
片段访问
AT 指令
地址
间接 (ANY指针)
间接 (Pointer - Variant指针) 是  仅限于符号方式
无初始化下载 是(对于S7-1200 V4.0以上)

表 02


更改块的访问方式

在块创建时访问方式被自动设置。不同CPU的默认访问方式:

  1. S7-1200/ S7-1500  预置的默认访问方式为“优化块访问”。
  2. S7-300/ S7-400  预置的默认访问方式为“标准块访问”,并且不能修改。

从S7-300/ S7-400 系列的CPU,复制或者移植块至S7-1200 / S7-1500系列的CPU,块的访问方式不会自动变更。移植后块的访问方式需要逐个人为修改。

例如,按下述步骤修改“标准”到“优化”块访问:

  1. 在项目导航中打开 "程序块" 文件夹。
  2. 右键单击功能块
  3. 在弹出菜单中选择“属性...” .
  4. 在"属性" 选项中使能 "优化的块访问" 功能.

    图. 01  
  5. 然后在弹出的小窗口“更改块访问”中点击“确认”。

     图2
  6. 点击“确认” ,关闭属性窗口。
  7. 保存、编译,然后下载项目到CPU。                                                                                        

这样就设置了对临时变量的优化访问。接口参数(Input, Output, InOut) 和静态变量,在“保持性”这一列中的属性为“非保持”。



图3


保持性设置

保持性的设置方式取决于块的访问方式:

  1. 标准型块,只能对所有的变量统一进行设置,不支持单独对某个变量进行保持性设置。
  2. 优化的块,支持单独对变量进行设置保持性

如果块的访问方式修改后,变量的保持性属性仍然是“在IDB中设置”,使用下拉菜单修改所有这些变量并编译程序。


line;background-color:#FFFFFF;">

通过网关S7 端口组态工具 (S7-PCT) 如何参数化IO Link 的主站和设备?

line;background-color:#FFFFFF;">
  • 文献
  •  
  • 涉及产品
本条目介绍了如何通过 S7-PCT 参数化 IO Link 主站和在网关的设备。

通过 S7-PCT 可以参数化 ET200 的 IO Link 主站,同时可以使用 IODD 来参数化连接 IO Link 的设备。
不同系列的网关设备都可以支持。本条目重点阐述了通过网关设备在组态 IO 主站、设备中哪些系统是可以支持的,哪些系统是不可以的。

下表给出了在S7-PCT和IO-Link主站之间可能网络的概述。

 

网络连接PC / IO-Link主站 IO-Link 主站 IO-Link主站通过 PROFIBUS
PC通过以太网连接 连接可能1) 连接可能2)
PC 通过 PROFIBUS连接 连接不可能 连接可能

1 如果PC和IO-Link主站在同一网络中。

2 如果CPU/CP支持“数据记录路由”功能。

常规
如果以单机模式启动 S7-PCT,那么没有可以支持的网关。这种情况下,不得不通过 IO Link 直接连接 PC 。
当启动 STEP 7 时,无论 IO Link 通过何种方式(通过 GSD/OM/HSP/MDD)集成在项目中,都不影响路由的功能。

说明与图示
以下图片列举了 ET 200S 带 4SI IO Link (6ES7138-4GA50-0AB0) 模块作分布式 IO 站点。这些图片同样适用于被S7-PCT支持的的IO-Link主站。被S7-PCT支持的IO-Link主站的列表在条目ID:32469496中。 

符号:
 可以访问
 不可以访问
 数据记录路由

带有 这种字母的设备必须支持“ 数据记录路由” 功能。条目号 7000978 中列举了可以使用该种功能的设备。

S7-1500 系列举例
以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。

图 01


图 02


图 03


图 04


图 05

S7-400 系列举例
以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。

图 06


图 07


图 08


图 09

S7-300 系列举例
以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。

图 10


图 11

1) 在项目中需要分配一个 PG/PC 站(适用于 STEP 7 < V12 )。


图 12


图 13

IM CPU 系列举例
以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。

图 14

WinAC 系列举例
以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。

图 15

1) 在项目中需要分配一个 PG/PC 站(适用于 STEP 7 < V12 )。

S7-1200系列举例

以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。


图. 16

图. 17
 

SINUMERIK系列举例

以下截屏显示的是 STEP 7 通过 S7-PCT 可以连接的 IO Link 系列。


图. 18

图. 19

图. 20

图. 21

图. 22
line;background-color:#FFFFFF;">

PLCSIM仿真S7-400之间的S7通讯

line;background-color:#FFFFFF;"> 文档: 西门子工程师本文档!
line;background-color:#FFFFFF;">
  • 文献
  •  
  • 涉及产品

1. 概述
S7-PLCSIM V5.4 SP3与其他版本的S7-PLCSIM相比,增加了仿真CPU之间相互通信及在状态栏显示CPU所有可访问接口等功能。本文通过模拟两个S7- 400PLC之间基于TCP/IP的S7通讯,介绍如何使用S7-PLCSIM V5.4 SP3的仿真功能。


2. 软件环境

2.1 STEP7 V5.4 SP3
用于编写PLC程序,此软件需要从西门子购买,本文档中所有的程序代码均使用Step7 V5.4 SP3编写。
2.2 S7-PLCSIM V5.4 SP3
PLC仿真软件,一般操作可参考《S7-PLCSIM使用入门》
http://www.ad.siemens.com.cn/download/docMessage.aspx?ID=2760&loginID=&srno=&sendtime=

更新功能信息及升级软件包可从以下链接地址下载 36068796


3. 硬件组态
新建一个项目在SIMATIC Manager中插入两个S7-400站,打开HW Config界面进行硬件组态,站点配置如下图:


图 1 -1#站点硬件组态

图1表示1#站点,包含电源和CPU 414-3PN/DP,IP地址192.168.0.1;

 


图 2-2#站点硬件组态

图2表示2#站点,包括电源,CPU412-2DP以及CP443-1通讯模块,IP地址192.168.0.2


4. 网络组态
打开Netpro可以看到如图3所示的网络结构图


图 3-网络结构图

建立两个站点之间的S7连接,单击CPU414-3PN/DP,单击鼠标右键,选择“Insert New Connection”, 如图4


图 4-插入新连接

在“Insert New Connection”对话框选择通讯方CPU(Partner),选择连接类型S7 connection(默认选择),如图5


图 5-设置连接类型及通讯对象

点击“OK”按钮进入“S7 connection ”属性对话框设置如图6,在连接路径“Connection Path”中可以看到通讯双方CPU及通讯接口地址。


图 6-设置通讯接口

点击“OK”按钮,在网络结构图下方列表中生成S7连接如图7,编译保存完成网络组态。


图 7-完成配置S7连接
 

5. STEP7编程
S7-400使用标准库系统功能块中的SFB8/9/12/13/14/15,具体信息可参考
《用于S7-300/400系统和标准功能的系统软件》1214574

本例程在414-3PN/DP的OB1中调用SFB12,412-2DP的OB1中调用SFB13实现两个PLC之间的S7通讯,通讯长度10个字节,如图8。


图 8-调用S7通讯功能块
 

6. PLCSIM仿真调试

6.1 启动仿真
在STEP7中启动PLCSIM进入仿真模式。
• STEP7 SIMATIC Manager菜单栏Options->Simulate Modules如图9


图 9-菜单栏启动仿真器PLCSIM

• STEP7 SIMATIC Manager工具栏单击 图标,如图10


图 10-工具栏菜单栏启动仿真器PLCSIM

启动后显示CPU仿真界面S7-PLCSIM1如图11


图 11-仿真器

6.2 下载项目

6.2.1. 选择通讯接口
下载项目前先选择正确的PG/PC接口,本例程仿真基于TCP/IP的S7通讯,所以选择PLCSIM(TCP/IP),如图12。


图 12-设置PG/PC interface

6.2.2. 下载1#站点
选择下载1#站点BLOCK到PLCSIM1中如图13


图 13-下载1#站点

下载完成后如图14在标题栏显示当前模拟的1#站点CPU414-3PN/DP,状态栏显示CPU可用的接口类型及地址;


图 14-1#站点仿真器

6.2.3. 下载2#站点
在下载2#站点到PLCSIM前,需要再打开一个新的PLCSIM2进程如图15


图 15-新建仿真器

然后重复下载1#站点的操作步骤,下载2#站点到PLCSIM2,如图16


图 16-2#站点仿真器

6.3 通讯调试
将两个下载到PLCSIM中的站点CPU切换到RUN-P模式,打开Netpro查看激活的连接状态,可以看到连接已经建立,如图17


图 17-S7连接状态

如图18,在两个站点BLOCK中各建一个变量表,1#站点监控发送缓冲区MB0~MB9,在MW20中设置发送长度10,I0.0由0变1产生上升沿时将数据发送给2#站点;2#站点监控接收缓冲区MB0~MB9。

line;background-color:#FFFFFF;">

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

line;background-color:#FFFFFF;"> 文档: 西门子工程师本文档!
line;background-color:#FFFFFF;">
  • 文献
  •  
  • 涉及产品

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-400

S7-300
描述 简要描述
SFB 8 FB 8 用于发送 无确认的快速数据交换,发送数据后无对方接收确认。
SFB 9 FB 9 用于接收
SFB 12 FB 12 用于发送 确认数据交换,发送数据后有对方接收确认。
SFB 13 FB 13 用于接收
SFB 14 FB 14 读数据 单边编程读访问。
SFB 15 FB 15 写数据 单边编程写访问。

表1

 


图1

 


图2

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


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


图3

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


图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所示:


图5

 

程序中的参数说明见表2

参数 描述 数据类型 存储区 描述
REQ INPUT BOOL  I、Q、M、D、L 上升沿触发工作
ID INPUT WORD M、D、常数 连接ID
R_ID INPUT  DWORD I、Q、M、D、L、常数 连接号,相同连接号的功能块互相对应发送/接收数据
DONE OUTPUT BOOL  I、Q、M、D、L 为1时,发送完成
ERROR OUTPUT BOOL I、Q、M、D、L 为1时,有故障发生
STATUS OUTPUT WORD I、Q、M、D、L 状态代码
S7-300:
SD_1
S7-400:
SD_i
(1 ≤ i ≤ 4)
 IN_OUT ANY M、D、T、Z I、Q、M、D、T、C 发送数据区

 表2 FB8参数说明

 


图6

 

程序中的参数说明见表3

参数 参数 数据类型 存储区 描述
EN_R INPUT BOOL I、Q、M、D、L、常数 为1时,准备接收
ID INPUT WORD M、D、常数 连接ID
R_ID INPUT DWORD  I、Q、M、D、L、常数 连接号,相同连接号的功能块互相对应发送/接收数据
NDR OUTPUT BOOL  I、Q、M、D、L 为1时,接收完成
ERROR OUTPUT BOOL I、Q、M、D、L 为1时,有故障发生
STATUS OUTPUT WORD I、Q、M、D、L 状态代码
S7-300:
RD_1
S7-400:
RD_i
(1 ≤ i ≤ 4)
IN_OUT ANY M、D、T、Z I、Q、M、D、T、Z 接收数据区

 表3 FB9参数说明


同样,在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所示。


图7

同理,将SIMATIC 315PN-2 的MB100-MB109赋值为B#16#03,SIMATIC 315PN-1的MB110-MB119接收到B#16#03。如图8所示。


图8

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所示:


图9

 

程序中的参数说明见表4

参数 描述 数据类型 存储区 描述
REQ INPUT BOOL  I、Q、M、D、L 上升沿触发工作
R INPUT BOOL I、Q、M、D、L、常数 复位,终止数据交换
ID INPUT WORD M、D、常数 连接ID
R_ID INPUT DWORD I、Q、M、D、L、常数 连接号,相同连接号的功能块互相对应发送/接收数据
DONE OUTPUT BOOL I、Q、M、D、L 为1时,发送完成
ERROR OUTPUT BOOL I、Q、M、D、L 为1时,有故障发生
STATUS OUTPUT WORD I、Q、M、D、L 状态代码
SD_1 IN_OUT ANY S7-300:M、DS7-400:I、Q、M、D、T、Z 发送数据区
LEN  IN_OUT WORD I、Q、M、D、L 发送数据的长度

表4 FB12参数说明

 


图10

 

程序中的参数说明见表5

参数 描述 数据类型 存储区 描述
EN_R  INPUT BOOL I、Q、M、D、L、常数 为1时,准备接收
ID INPUT  WORD M、D、常数 连接ID
R_ID INPUT DWORD I、Q、M、D、L、常数  连接号,相同连接号的功能块互相对应发送/接收数据
NDR OUTPUT  BOOL I、Q、M、D、L 为1时,接收完成
ERROR OUTPUT BOOL I、Q、M、D、L 为1时,有故障发生
STATUS OUTPUT WORD  I、Q、M、D、L 状态代码
RD_1 IN_OUT ANY S7-300:M、DS7-400:I、 Q、M、D、T、C 接收数据区
LEN  IN_OUT WORD  I、Q、M、D、L 接收到的数据长度

表5 FB13参数说明

同样,在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所示。


图11

同理,将SIMATIC 315PN-2 的MB120-MB129赋值为B#16#05,SIMATIC 315PN-1的MB130-MB139接收到B#16#05。如图12所示。


图12


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)中。必须要参数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。 远程伙伴将所需要的数据保存在随数据一起提供的地址下面,并返回一个执行确认。必须要参数ADDR_i和SD_i定义的区域在编号、长度和数据类型方面相互匹配。
如果没有产生任何错误,则在下一个SFB/FB调用时,通过状态参数DONE来指示,其数值为1。只有在后一个作业完成之后,才能再次激活写作业。远程CPU可以处于RUN或STOP模式。如果正在写入数据时发生访问故障,或如果执行检查过程中出错,则出错和警告信息将通过ERROR和STATUS输出表示。
打开SIMATIC 315PN-1的OB1,在OB1中依次调用FB14,FB15如图13、图14所示:


图13

 

参数 描述 数据类型 存储区 描述
REQ  INPUT BOOL I、Q、M、D、L 上升沿触发调用功能块
ID  INPUT  WORD M、D、常数 地址参数ID
ERROR OUTPUT BOOL  I、Q、M、D、L 接收到新数据
STATUS OUTPUT WORD I、Q、M、D、L 故障代码
S7-300:
ADDR_1
S7-400:
ADDR_i
(1 ≤ i ≤ 4)
IN_OUT ANY M、D 
I、Q、M、D、
T、C
从通信对方的数据地址中读取数据
S7-300:
RD_1
S7-400:
RD_i
(1 ≤ i ≤ 4)
IN_OUT ANY S7-300:M、D
S7-400 I、Q、
M、D、T、C
本站接收数据地址

表6 FB14参数说明

 


图14

 

参数 描述 数据类型 存储区 描述
REQ  INPUT BOOL  I、Q、M、D、L 上升沿触发调用功能块
ID INPUT WORD M、D、常数 地址参数
DONE OUTPUT BOOL  I、Q、M、D、L 为1时,发送完成
ERROR OUTPUT BOOL I、Q、M、D、L 为1时,有故障发生
STATUS OUTPUT WORD I、Q、M、D、L 故障代码
S7-300:
ADDR_1
S7-400:
ADDR_i
(1 ≤ i ≤ 4)
IN_OUT ANY M、D
I、Q、M、D、
T、C
通信对方的数据接收地址
S7-300:
SD_1
S7-400:
SD_i
(1 ≤ i ≤ 4)
IN_OUT ANY S7-300:M、D
S7-400 I、Q、
M、D、T、C
本站发送数据地址

表7 FB15参数说明

 

同样,在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所示。


图15

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


图16

将SIMATIC 315PN-1的MB170-MB179赋值B#16#07,将FB15的“REQ”置上升沿信号,此时SIMATIC 315PN-2的MB160-MB169接收到B#16#07。如图17所示。


图17

将SIMATIC 315PN-2的MB170-MB179赋值B#16#11,将FB15的“REQ”置上升沿信号,此时SIMATIC 315PN-1的MB160-MB169接收到B#16#11。如图18所示。

西门子模块6ES72531AA220XA0

西门子模块6ES72531AA220XA0

西门子模块6ES72531AA220XA0

上一篇: 8940 日本日置HIOKI ...
下一篇:HSNH1300-54W1Z 工...