【工控技术】如何在 WinCC (TIA Portal) PC 运行系统中用脚本将信息存储成文件?

描述

TIA Portal 提供了不同的系统函数,可以将归档数据和配方数据永久地存储在移动媒介和网络驱动器中。 如果希望存储过程数据和项目数据以备日后上传,那么需要使用 Visual Basic 脚本。本文负责解释如何编写存储过程数据的脚本以及如何在 WinCC (TIA Portal) 高级版 PC 运行系统中使用这些脚本。

说明
在如下例子中,过程变量“Material”,“Pressure”和“Temperature”被写入到特殊 命名“FileName”的文件中,并且以“MaterialFromFile”,“PressureFromFile”和 “TemperatureFromFile”读出。

1. 在 TIA Portal 中创建一个已组态了 WinCC RT Advanced 的 SIMATIC PC Station 的项目。

2. 在 WinCC RT 的变量表中创建需要存储和读出的过程变量。(如:“Material”,“Pressure”和“Temperature”,同时创建 “MaterialFromFile”,“PressureFromFile”和“TemperatureFromFile”)。原则上,这些变量可以是 任何类型。除此之外,创建一个名为“FileName”的变量,数据类型为“WString”。它将包含在文件的路径和名称中。确保在路径中有足够的可使 用的空间。

图. 01

3. 组态两个脚本“Write_data_to_file”和“Read_data_from_file”。(也可在本文下方直接拷贝这些脚本)。

图. 02

图. 03

4. 在合适的事件中链接执行这两个脚本,例如按钮的点击事件。


图. 04

脚本“Write_data_to_file”每一次被调用,一条“数据记录”会以一个新行的形式附在已经存在的文件中。脚本“Read_data_from_file”从特定的文件中读取所有的数据记录并且复制它们的最后一个值,然后写入到合适的工程变量。

这两个脚本将按照如下方式进行工作。

1. 创建文件系统对象,意为连接到 PC 的文件系统。

2. 创建或打开包含存储值的文件。

3. 值的写入或读取。

4. 关闭这些文件,与文件系统断开连接。

为了适应系统环境,在 36 行
(“Write_data_to_file”)

ts.WriteLine(Material & ";" & Pressure & ";" & Temperature)

和 28 行及如下
(“Read_data_from_file”)

MaterialFromFile = field(0)
PressureFromFile = field(1)
TemperatureFromFile = field(2)

可根据需要存储和读取的变量,替换指定变量的名称。可以指定希望存储和读取任意多的变量。确保当存储和读取时,在每一次执行时用分隔符分开变量(本例:“;”,行 36 和 26 )。

例程的功能
以下功能在提供的例程中完成:在如下的三个输入 / 输出域(“Current values:”)关联要存储变量的过程值(“Material”,“Pressure”和“Temperature”)。底部指定了要使用的文件的路 径。点击按钮“Write to disk”调用脚本“Write_data_to_file”并且写入数据记录到文件中。点击按钮“Read from disk”调用脚本“Read_data_from_file”并且从文件中读取所有的数据记录,进而在条目“Values on file:”中显示这些数据记录的最后一个写入值。


图. 05