如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?


n

说明:
在这个条目中将用示例来示范如何实现按时间顺序排序消息。在示例中使用软件WinCC V6.0 SP1 and STEP 7 V5.3。 通过 MPI 通讯。n

为实现"CPU Messaging" 功能,需要在安装WinCC时选择 AS-OS-Engineering选项。安装此选项并不需要专门的授权。此AS-OS Engineering 选项是在 "Communication"安装选项下。n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 01n

注意:
应该先安装STEP 7 然后安装 WINCC。这是将 AS-OS Engineering 正确集成到 STEP 7 中的唯一方法。n

概要:
按时间顺序排序消息意味着消息从 PLC 发送到 WINCC 站。这些消息会从 PLC 得到时间戳。因此不需要通过WINCC站轮询PLC。 这也就意味着减少了总线负载。在 STEP 7 中有两种类型的消息:n

  1. Symbol-related alarms(与符号相关的报警)n
  2. Block-related alarms (与块相关的报警)

与符号相关的报警只能被用在支持 S7 PMCS7-400 CPU 中, 此消息对于程序来说是异步触发的。n

与块相关的报警在STEP 7 程序运行调用系统报警块时被同步触发。此报警在STEP 7 程序中一调用系统报警块就被发送。系统报警块在System Function Blocks 目录下 Standard library 中。

报警过程中的详细信息, 在STEP 7 在线帮助中可以获取报警类型和系统报警块的信息。MPI被作为通讯总线使用。n

以下表格描述了组态与符号相关报警的过程。对于项目范围(表 01)和 CPU 范围 (表 02) 的报警号的分配过程是不同的。n

在项目范围(面向项目)分配报警号后,与符号相关报警的组态
表01 描述了在 STEP 7 中组态项目范围报警号分配的过程。关于组态 CPU 范围报警号分配的过程,请跳过表 01 直接看表 02。

序号. 组态项目范围报警号分配的过程
1 打开SIMATIC Manager并创建一个新的 STEP 7 项目。然后配置硬件组态,其CPU必须支持 "S7-PMC"。 在硬件组态或NetPro里用MPI网络连接CPU。保存并编译硬件组态。
2 在SIMATIC Manager下通过 "Tools > Setting > Tab: Alarm numbers" 可以激活此功能: n

  • "Always assign project-related unique alarm numbers"

点击OK确认。n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 02
2

3在SIMATIC Manager中打开符号表并创建一个 BOOL 类型变量,命名为 " Symbol_Marker " 地址为 "M100.0"。 如图 03 可以选择以下视图: " 列 R, O, M, C, CC " 。 n

可以通过在" Symbol_Marker " 标签的列中点击右键,弹出"Special Object Properties > Message...". 菜单中选择"Message Configuration" 对话框。n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 03

4在"Message Configuration" 对话框中选择 "SCAN-Attribute"标签,并且输入扫描间隔时间。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 04

5通过点击"New Device"按钮,可以指定需要显示消息的设备。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 05

6在此对话框中选择WinCC 作为显示设备并分配名称,如 "WinCCStation"。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 06n

点击"OK"确认。

7在左边选项"Symbol_Marker" 标签可以在右边对WinCC 站的显示进行组态。在 "Text" 表中可以输入消息文本并显示在 WinCC上。 (例如 "Symbol_Marker is true " ) 。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 07

8在SIMATIC Manager中 "Tools > Settings > Tab: General" 选上此复选框: n

  • "Save with SDB generation".
9

可以通过在 " Symbol_Marker " 标签的列中点击右键,弹出 "Special Object Properties > Operator Control and Monitoring..."。菜单中选择 " Message Configuration " 对话框。为了使"Symbol_Marker" 能够被监控,必须通过复选框选上 "Operator Control and Monitoring" 来激活此功能,并点击 " OK " 确认。

10保存符号表。为了消息能在WINCC中显示,必须将其传送到操作系统。在表 3 中有此条目的相关描述。 n

可以检查 S7 程序中块文件夹中自动生成的 SDB 是否在工作。双击 "System Data"。根据循环扫描所选择的系统数据块 301, 305或 313 已经被插入(作者: SIEMENS)。如果在CPU中有不同的循环扫描,一个SDB在每次循环扫描被创建。

11CPU 为按时间排序消息提供了大量的系统功能。关于组态系统消息选择系统功能的描述请参见条目 ID 841294。在此例中"与块相关的消息"通过功能块 SFB34 (ALARM_8)来提供。组态过程是一样的。 n

在 STEP 7 中增加一个功能块,例如 FB1, 并且拷贝系统功能块 SFB34 到此项目中。可以通过 "File > Open > Library"打开标准库,SFB34 在目录"System Function Blocks"中。

12打开功能块 FB1。可以按照以下的方法让 FB1 能支持消息。 进入 IN 标签: n

  • 名称: "Message_ID" 数据类型: DWORD。

创建一个实例块 FB 数据类型为 "SFB34", 如:n

  • 名称:"Alarm type"数据类型: ALARM_8
13 右键点击"Message_ID" 标签并在弹出菜单选择"Object Properties" 打开。选择 "Attributes"标签打开其属性: n

  1. "S7_server"的值为 "alarm_archiv"n
  2. "S7_m_c"的值为 "true".

注意:
在右键的下拉菜单中会显示属性的正确的值。点击OK确认。 "Message_ID" 标签变绿。

14为了连结此标签,可在 LAD/STL/FBD 编辑器中调用实例 FB "Alarm type"。在 FB 中用的"Message_ID"参数化 "EV_ID" 管脚。 n

使用功能块SFB34可以组态8个消息"SIG_1.....SIG_8" ,可以为每个消息指派一个触发器。用M10.0和 M10.1参数化 SIG_1 and SIG_2。n

通过设置 ID 把数据通道指派给消息。WinCC 的数据通道总是 EEEE hex. 保存功能块 FB1 然后关闭。

15在STEP 7 项目的块文件夹中右键点击FB 1 功能块,在弹出菜单中选择"Special Object Properties > Message...",可以打开"Message Configuration" 对话框,可以点击 "New Device" button弹出 "Add Display Device" 对话框。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 08

16选择WinCC 作为显示设备并分配一个符号名 (如 "WinCCStation")。点击 OK 关闭对话框。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 09

17在功能块FB1 中需要给两个通道(SIG_1和 SIG_2)分别分配标签 (M10.0和 M10.1)。在 "Text" 表中为标签输入消息文本。在此例中消息文本是 "Message Chael 1"和 "Message Chael 2"。点击OK确认保存。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 10

18在WinCC 中继续组态步骤请参见表表 3 (可以跳过表 2)。

表 01 n

在CPU 范围(面向 CPU )分配报警号后,与符号相关报警的组态
表02 描述了在 STEP 7 中组态 CPU 范围分配报警号的过程。关于组态项目范围报警号分配的过程,请参见表 01。n

序号. 组态 CPU 范围报警号分配的过程
1 打开SIMATIC Manager并创建一个新的 STEP 7 项目。然后创建硬件组态,其CPU必须支持 "S7-PMC"。 在硬件组态或NetPro里用MPI网络连接 CPU。保存并编译硬件组态。
2 在SIMATIC Manager下通过 "Tools > Setting > Tab: Alarm numbers" 可以激活此功能: n

  • "Always assign project-related unique alarm numbers"

点击OK确认。n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 11

3在SIMATIC Manager中打开符号表并创建一个 BOOL 类型标签,命名为 " Symbol_Marker " 地址为 "M100.0"。 如图 03 可以选择以下视图: " 列 R, O, M, C, CC " 。 n

可以通过在 " Symbol_Marker " 标签的列中点击右键,弹出"Special Object Properties > Message...". 菜单中选择"Message Configuration" 对话框。n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 12

4在对话框"Message Configuration" 中可以输入消息文本,如 "Symbol_Marker is true" 并点击 "More>>" 按钮。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 13

5"Alarm - above" 在此例中被作为一个消息类被定义。在 "SCAN attributes" 标签中可以选择监视时间并点击 OK 确认关闭此对话框。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 14

6在SIMATIC Manager中 "Tools > Settings > Tab: General" 选上此复选框: n

  • "Save with SDB generation".
7 可以通过在 " Symbol_Marker " 标签的列中点击右键,弹出 "Special Object Properties > Operator Control and Monitoring..."。菜单中选择 " Message Configuration " 对话框。为了使"Symbol_Marker" 能够被监控,必须通过复选框选上 "Operator Control and Monitoring" 来激活此功能,并点击 " OK " 确认。
8 保存符号表。为了消息能在WINCC中显示,必须将其传送到操作系统。在表 3 中有此条目的相关描述。 n

可以检查 S7 程序中块文件夹中自动生成的 SDB 是否在工作。双击 "System Data"。 根据循环扫描所选择的系统数据块 301, 305或 313 已经被插入(作者: SIEMENS)。如果在CPU中有不同的循环扫描,一个SDB在每次循环扫描被创建。

9CPU 为chronological messaging 提供了大量的系统功能。关于组态系统消息选择系统功能的描述请参见条目 ID 841294.。在此例中"与块相关的消息"通过功能块 SFB34 (ALARM_8)来提供。组态过程本质上是一样的。 n

在 STEP 7 中增加一个功能块,例如 FB1, 并且拷贝系统功能块 SFB34 到此项目中。可以通过 "File > Open > Library"打开标准库,SFB34 在目录"System Function Blocks"中。

10

打开功能块 FB1。可以按照以下的方法让 FB1 能支持消息。 进入 IN 标签:n

  • 名称: "Message_ID" 数据类型: DWORD。

创建一个实例块 FB 数据类型为 "SFB34", 如:n

  • 名称:"Alarm type"数据类型: ALARM_8
11 右键点击"Message_ID" 标签并在弹出菜单选择"Object Properties" 打开。选择 "Attributes"标签打开其属性: n

  1. "S7_server"的值为 "alarm_archiv"n
  2. "S7_m_c"的值为 "true".

注意:
在右键的下拉菜单中会显示属性的正确的值。点击OK确认。 "Message_ID" 标签变绿。

12为了连结此标签,可在 LAD/STL/FBD 编辑器中调用实例 FB "Alarm type"。在 FB 中用的"Message_ID"参数化 "EV_ID" 管脚。 n

使用功能块SFB34可以组态8个消息"SIG_1.....SIG_8" ,可以为每个消息指派一个触发器。用M10.0和 M10.1参数化 SIG_1 和SIG_2。n

通过设置 ID 把数据通道指派给消息。WinCC 的数据通道总是 EEEE hex. 保存功能块 FB1 然后关闭。

13在STEP 7 项目的块文件夹中右键点击FB 1 功能块,在弹出菜单中选择"Special Object Properties > Message...",可以打开"Message Configuration" 对话框。 n

在功能块 FB1 中需要给两个通道(SIG_1和 SIG_2)分别分配标签 (M10.0和 M10.1)。在 "Text" 表中为标签输入消息文本。在此例中消息文本是 "Message Chael 1"和 "Message Chael 2"。点击OK确认保存。n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 15

14在WinCC 中继续组态步骤请参见表表 3。

表 02 n

表03 描述了在 WINCC 中组态与符号相关报警的过程。

序号. 在 WinCC 中组态与符号相关的报警消息
1

在STEP 7项目中打开OB1并调用FB1,背景数据块DB1会自动生成。ID会自动分配给输入参数“Message_ID”。n

注意:
不能手动改变 ID 号!n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 16n

保存 OB1 然后关闭。n

注意:
如果在符号表中输入标记并选择 "Operation and monitoring" 选项,符号可以更好地被传送给OS。在当时是有用的,但对于将来在WINCC程序中并不需要。

2为了确保组态消息在 WINCC侧被识别,必须传送标签和消息给 OS 。通过目录"Tools > OS > Compile..." 添加一个 OS 给项目并触发传送过程。点击 "Next" 跳过屏幕并选择想要传送的程序。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 17

3在对话框中"Select network coection" 检查是否组态了正确的连接。可以通过点击 "Coection..." 按钮打开 "Select network coection" 对话框。 n

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 18

4选择编辑data 和编辑 scope。如果是第一次编辑选择 "Entire OS"。当再次编辑此项目可以选择 "Changes"。检查此选项的选择并编译消息。此过程将被完成并无任何错误。

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 19

注意:
对于一个比较大的项目,会花费大量的传送时间。

5在SIMATIC Manager中打开 OS 项目 ("Right-click > Open object")。启动WinCC 。在启动列表里选择 "Alarm Logging Runtime"。右键点击打开计算机属性。选择 "Object Properties" 并切换到"Startup"标签。在此激活 "Alarm Logging Runtime"。

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 20

6在 OS 编辑期间创建一个命名为 "S7-Program(1)" 的 MPI 连接。在变量表里定义此标签并编译。路径在标签管理器下的 "SIMATIC S7 PROTOCOL SUITE > MPI > S7-Program(1)"。

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 21

7在Graphics Designer 中可以创建一个画面命名为 "Start.pdl" 并打开它。在画面中创建 WinCC "Alarm Control" 。路径在 "Object Palette > Smart Objects > Control".

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 22

8选择WinCC Alarm Control 作为控制器。插入控制器后可以双击打开其属性 。可以添加一些信息。如果需要,也可以创建一些关键字和IO域用来方便的测试报警。保存此画面。

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息?
图. 23

表 03

至此报警组态完成。无论何时,如果要改变报警组态,都需要在OS中编译并下载到CPU和HMI设备中。这是唯一确保CPU中的程序与HMI系统中的组态相匹配的方法

下载:
以下附件包含了带有以上组态描述的 STEP 7 项目和 WINCC 组态。使用此程序可以通过按键很方便的接通和断开消息。 为了使用WinCC 项目,计算机名必须被修改。

如何在STEP7 V5.2 和更高版本及WinCCV6.0中实现按时间排序消息? Winccme.zip ( 1581 KB )

复制“Winccme.exe”文件到一个独立路径下然后双击打开文件,STEP 7项目自动解压缩,然后可以进行编辑出来。

关键字:
消息组态

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc337071.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论