如何创建消息文本中含有固定部分和可变部分的消息?

操作指导:
本条目内容描述了在运行期组态一种消息的方法,这种消息的文本中含有固定部分和可变部分。所述方法适用于消息程序“Bit message procedure”和“Analog Alarm”。所述方法原则上只对有时间顺序的消息程序有效。n

应用样例:
这方面的一个典型例子为通过报警消息显示过程值的超限违规。在消息中,除了实际的消息文本“Alarm High”之外,还将显示当前过程值、限定值和相关的测量单位。在报警记录编辑器(Alarm Logging editor)中组态消息时,指定文本的固定部分“Alarm High”。其它的信息(过程值、限定值和测量单位)由 WinCC 变量的值提供。每个 WinCC 变量被分配到消息的一个过程值模块(process value block)。WinCC 报警控制(WinCC Alarm Control)提供的功能可以在运行期使用过程值模块(process value block)将 WinCC 变量的内容显示在消息行中。
n

序号 描述
1 在 Alarm Control 中使用过程值模块(process value block)显示过程值
WinCC 报警控制(WinCC Alarm Control)提供的功能可以使用独立的过程值模块(process value block)将 WinCC 变量的内容显示在消息中。请按如下步骤操作: n

  • 创建过程变量并赋值
    在 Tag Management 中创建下列 WinCC 变量用于本例: n
    • TI4711_ANALOG_fVal (32 位浮点数 IEEE 754)
      该变量包含当前过程值。它通常是一个外部变量,即其取值来自于控制器。n
    • TI4711_ANALOG_fHL (32 位浮点数 IEEE 754)
      该变量包括受监视的过程值的限定值。它通常是一个外部变量,因为在大多数应用程序中,由控制器对限定值进行监视。在本例中,该值被传送到界面上只用于显示。n
    • TI4711_ANALOG_byMsgEvent (无符号 8 位数值)
      该数值包含的内容表明是否触发了超限违规。例如,当超过限定值时,控制器可以置位该变量中的指定位。以下情况适用于本样例程序:发生超限违规时,该变量的 Bit 0 被置位,否则 Bit 0 被复位。n
    • TI4711_ANALOG_szUnit (文本变量 8 位字符集)
      该内部变量包括测量用的计量单位。在 Tag Management 中,可以将计量单位简单地赋予变量的起始值(Start value)。在本例中,我们将字符串“C”指定为起始值(Start value)。

    如何创建消息文本中含有固定部分和可变部分的消息?
    ( 3 KB )
    图 01
    n

  • 定义过程值模块(process value block)的全局属性
    在“Alarm Logging”编辑器中,在条目“Message blocks > Process value blocks”下参数化所用过程块的属性。在这里,应当确保过程块的“Length”是足够的。可以为过程块指定有意义的名称,以便在运行期在 Alarm Control 中将它们显示为 Column Title (列标题)。
    以下过程值模块(process value block)用于本例中: n
    • Prozesswert_1 (fVal):
      过程值模块 Prozesswert_1 用于在发生超限违规时显示当前过程值。n
    • Prozesswert_2 (fHL):
      过程值模块 Prozesswert_2 用于显示限定值。n
    • Prozesswert_3 (szUnit):
      过程值模块 Prozesswert_3 用于显示过程值的测量单位。

    如何创建消息文本中含有固定部分和可变部分的消息?
    ( 34 KB )
    图 02
    n

  • 将 WinCC 变量分配到过程值模块
    在“Alarm Logging”编辑器中,将待显示的 WinCC 变量分配到消息的过程值模块。 n

    如何创建消息文本中含有固定部分和可变部分的消息?
    ( 32 KB )
    图 03
    n

  • 参数化 WinCC Alarm Control n
    • 在 Graphic Designer 中打开包含用来显示消息的 Alarm Control 的画面。n
    • 双击控件打开“WinCC Alarm Control Properties”对话框。n
    • 切换到“Message lists”标签页。在“Existing Message Blocks”列表中向下拖动滚动条并添加用于“Selected message blocks”的过程值模块。

      如何创建消息文本中含有固定部分和可变部分的消息?
      ( 29 KB )
      图 04
      n

    • 点击“OK”确认设置。n
    • 保存图片。

消息在运行期的显示画面类似于以下图片:n

如何创建消息文本中含有固定部分和可变部分的消息?
( 12 KB )
图 05n

下面列出了本方法的一些属性,这些属性可能不利于在运行期进行显示。n

  • 使用该方法,您不能够设置浮点数的数据格式(例如小数位数)。n
  • 过程值模块的属性适用于 WinCC 项目的所有消息。总共有 10 个可用的过程值模块。使用该方法,很快就会出现过程值模块不够用的情况,因为通常不同的块类型(测量点类型)也有需要分别显示的过程值。n
  • 可能出现不同的消息(例如不同块类型的消息)也使用不同的过程值模块进行显示的情况。虽然也显示了非相关过程值模块列,但是内容是空的。n
  • 在某种情况下,用户必须拖动滚动条显示过程值模块,因为控件的显示宽度不够大。
2 在 Alarm Control 中使用用户文本块显示过程值
该方法使用过程值模块将 WinCC 变量的内容显示在消息中。但是,在 Alarm Control 中过程值模块并不显示在独立的列中,而是共同直接显示在用户文本块中。
这样可以避免上述显示方法中的不利情况。

通过消息文本中的专用格式语句将过程值模块整合到用户文本块中。格式语句的结构类似于“C”语言中的“printf”语句。例如用户文本块中的语句“@1%f@”将导致在该位置将与过程值模块 Prozesswertblock_1 相连的 WinCC 变量的值显示为一个浮点数。组态消息文本时,Alarm Logging 编辑器提供“Insert Process Value”选择对话框以创建格式语句并将其插入文本块。

如何创建消息文本中含有固定部分和可变部分的消息?
( 15 KB )
图 06

注意事项:

  • 请注意,使用“Insert Process Value”对话框只能向一个用户文本块插入新的格式语句。不可以编辑现有的格式语句。点击“OK”按钮总是重新插入格式字符串。
  • 在调用对话框之前,在文本块中添加格式字符串的位置与光标位置无关。添加格式字符串的位置由输入域“Position”预设置。预设置的位置值为“0”(文本块的开头)。日常使用中,添加格式字符时保持该设置(Position=0)是个简便的做法,因为计算准确的期望位置是件费力的事情。添加完成后您可以将格式字符串移到期望的位置。
  • “Insert Process Value”对话框中提供了大量的设置项。重要的一点是需确保对话框中为“Type”选择的数据类型与待显示的过程值(WinCC 变量)的数据类型相匹配。只有这样才能在运行期显示正确的过程值。

可通过 WinCC Information System 中的以下路径获得关于该主题的详细描述:

  • "Working with WinCC > Setting up a Message System > Configuring the Message System > Working with Single Messages > How to Specify the Message the Message Texts of a Single Message"。
  • "Working with WinCC > Setting up a Message System > Configuring the Message System > Working with Single Messages > How to Insert Process Values in User Text Blocks"。
  • 条目号为 25158897 的文章中对格式语句的结构做了详细描述。

下图显示了除消息文本“Alarm High”之外在用户文本块 Anwendertextblock_2 显示过程值、限定值和测量单位所需的格式语句。

如何创建消息文本中含有固定部分和可变部分的消息?
( 20 KB )
图 07

下图显示了运行期消息的显示。

如何创建消息文本中含有固定部分和可变部分的消息?
( 11 KB )
图 08

3使用 WinCC 选件“Open Development Kit”(ODK)的功能生成消息
WinCC 选件“Open Development Kit”(ODK)允许用户在事先配置有消息文本的前提下在运行期生成消息。这可以使用户将 WinCC 变量的内容显示在消息文本中。相关的实例请参阅条目号 218555 和条目号 24325381 下的文章。

条目号为 9652128 的文档中包含 “Open Development Kit” 的最新联系选项。

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

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

相关推荐

发表回复

登录后才能评论