如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?

指导:
在PCS 7 中,一个 AS 块 (功能块,FB) 的数据/消息缺省的情况下显示在一个面板上。然而可能有这样的需求:其它AS 块的数据/报警也要显示在这个面板上的。n

条目28733797 描述了一个例子应用,展示了不同的解决方案。
本条目详细描述了一个解决方案:将多个 AS 块组合到一个块中。这种情况下,一个实例块的所有数据都将传送到 OS。面板的模板画面也经过了扩展,以显示附加 AS 块的数据。在这里,属性 "MULTI_INSTANCE" 的缺省值 "no" 仍然保持。n

应用例子:
数据块 "MOT_IMEAS" (块类型 "MEAS_MON")和块 "MOT" (块类型 "MOTOR") 将要在一个新的面板中一起显示。n

如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
Fig. 01n

下面表格描述了将下面数据显示在 "MOTOR" 类型的面板中所需的组态步骤:n

  • 一个 I/O 域被添加到了"标准"视图("Standard" view) 来显示电机的实际电流值。n
  • 添加了一个 "Current" 视图,用于显示和输入电流监控的限值。n
  • 添加 "Trend" 视图来显示在WinCC Online Trend Control中显示电机电流的趋势。

关于如何在 "Message" 视图中显示消息,可以在条目 28737155 中找到。
n

No. 步骤
1 组合块
在该步骤中,您将 "MOTOR""MEAS_MON" 组合成一个新的 AS块。这些块的所有输入/输出管脚都连到了这个新块的接口。过程如下: n

  • 在 master data library 中创建一个新的 CFC
    在 PCS 7 项目中创建一个新的 CFC。您可以给该Chart指定将要创建的块的名字。n
  • 在该 CFC 中插入块 "MOTOR"和 "MEAS_MON"
    在该 CFC 中插入块 "MOTOR" (FB66)和 "MEAS_MON" (FB65) 。不要做任何的连接。

    注意:
    在该步会将块 "MOTOR"和 "MEAS_MON" 插入到 master data library 的block文件夹。

  • 定义Chart 的输入/输出管脚,连接 "MOTOR" 块
    创建 CFC 的输入输出引脚,以便稍后将 "MOTOR" 块所有的引脚连到这个将要创建块的接口(interface)上。
    n
    • 正在 CFC 菜单中选择条目 "View > Chart Inputs/Outputs"。n
    • 切换到主数据库 ( master data library ) S7 program 下的 block 文件夹。打开 "MOTOR" (FB66) 块。
      注意:
      你会看到一条消息说该块已被保护。点击确认。n
    • 在左上角的导航窗口中 "Chart I/Os for MOTMEAS"中,选择条目 "Interface > IN"。现在,在右边窗口 "Contents Of: EnvironmentInterfaceIN" 中,显示了 "MOTOR" 块的所有输入参数。选择所有的输入参数并将它们拷贝到Windows剪切板: n
      • 使用鼠标左击选择第一个输入参数 (IN parameter),在该例中是 "OOS"。n
      • 下拉滚动条到输入参数的最后。n
      • 按下并保持 Shift 键并单击最后一个输入参数,该例中是 "USTATUS"。n
      • 选择菜单命令 "Edit > Copy"。
    • 切换到前面创建的 CFC,并在左上角的 "Chart I/Os for MOTMEAS" 中,选择条目 "Interface > IN"。n
    • 然后在右边的窗口中选择菜单命令 "Edit > Paste"。

      注意:
      所有原始 "MOTOR" 块的输入参数 (包括属性 attributes) 被传输到新创建块的接口。

    • 用同样的方法创建"MOTOR" 块的 "OUT"和 "IN_OUT"参数。
  • 为连接"MOTOR" 块定义 chart 的输入/输出接口
    为了连接 "MOTOR" 所有的接口到将要创建的块的接口,创建所有chart 的连接。

    注意: n

    • 和前面创建 "MOTOR" 块的 Chart 连接一样。n
    • 在您使用 "Copy"和 "Paste" 之前,请先在 "IN","OUT"和 "IN_OUT" 参数的最后一行创建一个空行(dummy line)。您可以将 "MEAS_MON" 块的参数粘贴到这一空行之后。使用此方法,在创建了chart连接之后,您能够快速得建立chart 连接到块参数的对应。n
    • 当您在 chart 中为 "MEAS_MON" 块插入连接时,已存在的 Chart 的连接名被添加了序号,以保证这些连接是唯一的。n
    • 你应该重命名所有要分配到 "MEAS_MON" 块的 chart 参数连接,所以这里他们都以一个统一的字符串开始。于是您不需要这些连接名末尾的数字了。在这个例子中,前缀 "MEAS_" 用于"MEAS_MON"块的连接名。
  • 连接Chart的 inputs/outputs 到块参数
    连接块 "MOTOR"和 "MEAS_MON" 的所有引脚到Chart 相应的接口。下图显示了一个概图,图中块 "MOTOR"和 "MEAS_MON" 在 CFC 中各占了一个页面。 n

    注意:

    • Chart 输入输出接口中不是以字符串 "MEAS_" 打头的连接到块 "MOTOR"上相同名字的引脚。n
    • Chart 输入输出接口中以字符串 "MEAS_" 开头的,连接到 "MEAS_MON"块相应的引脚上。n
    • "MEAS_MON" 块的一些连接,例如,块的通用连接 ("OOS","RUNUPCYC")或 BATCH 参数("BA_EN","OCCUPIED", "BA_ID", "BA_NA", "STEP_NO"),可以连接直接连接到 "MOTOR" 块相对应的 Chart 的接口。

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 02

  • 将 CFC 编译成 block type
    以block type 编译 CFC: n
    • 切换到之前创建的 CFC。n
    • 选择菜单命令 "Chart > Compile > Chart as Block Type...".
      窗口 "Compile chart as block type" 被打开。n
    • I在 "General" 标签中,您需要定义块号,如果需要还需定义符号名和其它的一些属性。

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 03

    • 在 "Attributes" 标签中指定 Block 块的属性 n
      • "S7_m_c = true"n
      • "S7_alarm_ui = 1"

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 04n

    • 切换到 "General" 标签并点击 "OK" 按钮。这将以 block type 编译 CFC。

      注意:
      在编译过程中,一些警告会弹出:一些chart 连接并没有被连接。忽略这些警告。

      编译成功后,一个新的块就放在了主数据库的 block 文件夹中。

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 05

  • 组态消息 n
    • 切换主数据库到组件视图n
    • 切换到 block文件夹n
    • 右击 "MOTMEAS" 块,在弹出对话框中选择命令 "Special Object Properties"。对话框 "PCS7 Message Configuration" 打开。
      在该对话框中,您可以组态该块所包含"ALARM_8P" 块的消息触发信号对应的消息类型和事件。

      注意: n

      • 您可以从"MOTOR" 块(MSG_EVID)的"PCS7 Message Configuration "MOTOR" (FB66)" 对话框中得到消息组态。n
      • 同样组态文本块 "Origin", "OS area"和 "Batch ID"

        如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
        Fig. 06

2拷贝块到控制器程序中
拷贝刚才创建的块到控制器的S7 program 中的 block 文件夹中
3更新 block type
在第一次使用 "MOTMEAS" 块,或之后更改了块的接口或属性,您都必须导入/更新块类型。
4在 CFC 中使用块类型
现在您可以在 CFC 中插入该块。 n

如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
Fig. 07

5创建块图标
在该步中您创建这个新生成的 Block type 的相应的块图标。您可以存储这个块图标在模板 "@PCS7Typicals.PDL" 中。关于 "Block icon和 template pictures" 的详细信息可参考条目 26697820。 n

  • 打开模板画面 "@PCS7Typicals.PDL"
    在画面编辑器中打开模板画面 "@PCS7Typicals.PDL"。如果不存在,那么创建一个新的画面并起名为"@PCS7Typicals.PDL。n
  • 打开模板画面 "@@PCS7Typicals.PDL"
    在画面编辑器中打开模板画面 "@@PCS7Typicals.PDL"。该画面包含了 PCS 7 标准库的所有块图标。n
  • 拷贝插入 "MOTOR" 块图标
    拷贝 "MOTOR" 块的一个合适的图标块到剪切板。切换到模板画面 "@PCS7Typicals.PDL" 并在那里粘贴。

    如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
    Fig. 08

  • 该白 "MOTOR" 块图标
    在该步,您改变刚才拷贝过来的 "MOTOR" 块的块图标,以便适用于新创建的 "MOTMEAS"块。 这里您需要改变块设置和静态文本: n
    • 改变标识块的静态文本为 "MOTMEAS"。n
    • 您可以改变用户自定义块(块图标) 的对象类型。右击该块选择菜单命令 "Configuration Dialog..."。在 "Object type" 域,替换字符串 "@MOTOR/1" 为"@MOTMEAS/1"。在该组态对话框中,点击其它的域使块类型的改变生效。点击 "OK" 关闭组态对话框。n
    • 选择块图标打开 "Object Properties"对话框。n
    • 改变属性 "Properties > Object name"为 "MOTMEAS1".n
    • 改变属性 "Properties > General > type" 为"@MOTMEAS/1".n
    • 改变属性 "Properties > General > Server name""PCS7 MOTMEAS Control".

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 09

    该用户块已有的动态应该被保持了下来,您可以简单地添加电流监控超限消息到组显示。在"MOTOR"块的组显示中缺省只显示的组值包括消息类型 "AS Process Control Error" 如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?和 "AS Process Control Fault" 如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?。此外,还有一个消息锁定("Measuring point Disabled")图标 如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?。条目 29024668 中介绍了如何在组显示中组态消息类型 "Alarm High" 如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据? 和"Warning High" 如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?

  • 保存模板画面 "@PCS7Typicals.PDL"
    保存模板画面 "@PCS7Typicals.PDL" 并关闭画面编辑器。
6 编译并下载 AS/OS
编译并下载AS 和OS。
7 为面板拷贝模板画面
在该步中,为新创建的块 "MOTMEAS" 创建面板。在这里,您可以拷贝并改变"MOTOR" 块的模板画面。过程如下: n

  • 找到模板画面 n
    • 在图形编辑器中执行菜单命令 "File > Open"。弹出了 "Open"对话框。n
    • 在 "Open" 对话框中,您在 "File name" 输入域输入字符串 "@*MOTOR*.pdl"。n
    • 点击打开按钮,所有"MOTOR" 块类型相关的模板画面显示出来。

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 10

      在该例中,存在如下的模板画面: n

      • "@pg_motor.pdl"
        (用于Group display 的主要的模板画面)n
      • "@pl_motor.pdl"
        (用于 loop display 的主要的模板画面)n
      • "@pg_motor_overview.pdl"
        (包含组显示和确认按钮的模板画面)n
      • "@pg_motor_viewlist.pdl"
        (包含面板不同视图的模板画面)n
      • "@pg_motor_maintenance.pdl"
        (包含面板 "Maintenance" 视图的模板画面)n
      • "@PG_MOTOR_STANDARD.pdl"
        (包含面板 "Standard" 视图的模板画面)n
      • "@PG_MOTOR_CURRENT.pdl"
        (包含面板 "Current" 视图的模板画面;
        这个视图在缺省情况下没有。在条目 28733493 中已经被创建。)
  • 复制这些模板画面
    复制这些画面。文件名字使用同样的,不过您要用 "motmeas" 替换掉改变字符串 "motor"

    注意:
    通过拷贝模板画面"@pg_meas_standard.pdl"来创建模板画面"@PG_MOTMEAS_CURRENT.pdl" 。

    如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
    Fig. 11

8改变面板的模板画面 n

  • 您必须在基本画面 "@pg_motmeas.pdl"和 "@pl_motmeas.pdl" 中做如下的修改: n
    • 对象 "@Faceplate"
      打开"@Faceplate" 对象设置属性 "Texts > FirstView""@PG_MOTMEAS_STANDARD"。
    • 对象 "BlockType"
      在 "BlockType" 对象中您设置属性 "Output/Input > OutputValue""MOTMEAS"。
    • 对象 "Viewlist"
      在 "Viewlist" 对象中您设置属性 "Miscellaneous > Picture Name""@PG_MOTMEAS_VIEWLIST.pdl"。
    • 对象 "BlockType"
      在 "BlockType" 对象中您设置属性 "OutputValue""MOTMEAS"。
    • 对象 "TrendFunctions"
      在对象 "TrendFunctions"中设置如下属性: n
      • "StandardTrend""2"
      • "ReturnPath"".MEAS_U:CO_DKGREEN,.MEAS_U_AH:CO_RED,
        .MEAS_U_WH:CO_YELLOW"

      这种方式下,电机电流 (绿色) 并同它的限制值 (红色和黄色) 显示在趋势视图中。

  • 您必须在模板画面 "@PG_MOTMEAS_STANDARD.pdl" 中做如下的改变: n
    • 将画面高度增加至 254像素。n
    • 增加一个 I/O 域来显示电机的电流。
      使用直接变量连接来将该 I/O 的属性 "OutputValue"动态化。使用字符串 ".MEAS_U" 作为变量标签。n
    • 插入两个静态文本用于表示附加的显示。该例子中,使用静态文本 "Current" 用于显示物理量和静态文本 "A" 用于显示单位。

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 12
      n

      另外一种解决方案:
      您也可以使用在 CFC 中参数化这些用于显示物理量和单位的静态文本。此时,您打开参数对话框 "Properties -Input/Output",例如"MEAS_U",在域 "Identifier"和 "Unit" 中输入所需的文本。

      • 显示单位的静态文本可以以一个直接变量连接动态化 (变量: ".MEAS_U#unit")。n
      • 用于标识的静态文本 "Current" 可以使用直接变量连接动态化 (变量:".MEAS_U#shortcut")。
  • 您必须在模板画面 "@PG_MOTMEAS_CURRENT.pdl" 中做如下的更改: n
    • 在模板画面 "@PG_MOTMEAS_CURRENT.pdl" 中您必须在所有直接变量连接的变量名前面输入前缀 "MEAS_"。为了完成这一操作,您可以在画面编辑器中使用功能 "Edit > Linking > Tag Coections..." 。

      如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
      Fig. 13

      在条目28733493 中详细描述了重新分配变量连接 ("Reassign") 这一过程。

9组态面板视图
使用 " WinCC Faceplate Designer" 来组态 "MOTMEAS" 的面板视图。您可以在如下找到关于 "WinCC Faceplate Designer" 的更多帮助: n

  • 在手册 "PCS 7 Programming Instructions for Blocks" 中n
  • 在编程和操作手册 "PCS 7 Faceplates" 中n
  • 条目 22539815 包含了关于面板中的模板画面的详细描述 n
  • 条目 28733493 中, 第 4 点,给出了使用面板编辑器生成模板画面的详细指导。

警告!

  • 当使用面板编辑器生成模板画面时,如果模板画面已存在,会弹出一个对话框。您可以选择覆盖这些模板画面或者保留它们。注意不要不小心覆盖了您已经修改过的模板画面。n
  • 生成的模板画面的大小和面板编辑器中的设定是一致的。即使您选择不覆盖那些已存在的模板画面,画面的大小也会被改编成面板编辑器中设置的大小。所以随后您还需要更改这些大小。

下图显示了使用 WinCC 面板编辑器生成模板画面。

如何组合多个 AS 块,并在 PCS 7 面板上显示所有这些块的数据?
Fig. 14

10在运行下测试面板。

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

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

相关推荐

发表回复

登录后才能评论