上海工智达电气技术有限公司
主营产品: 西门子PLC HMI 工业软件 电线电缆 变频器 伺服数控系统
在WinCC中如何使用VBS读取变量归档数据到EXCEL
发布时间:2024-11-23

介绍如何在WinCC项目中使用VBS脚本读取变量归档值,并把获取的数据保存成新的Excel文件。文中示例代码仅适用于以juedui时间间隔方式访问。

2软件环境
Windows XP SP3中文版、WinCC7.0 SP2 ASIA、Microsoft office Excel 2007

3访问原理
WinCC变量归档数据是以压缩的形式存储在数据库中,需要通过 WinCC连通性软件包提供的OLE-DB接口才能够解压并读取这些数据。关于WinCC连通性软件包的详细信息请参考连接:37436159

当使用 OLE-DB方式访问数据库时关键需要注意连接字符串的写法和查询语句的格式。连接字符串格式为“Provider=WinCCOLEDBProvider.1; Catalog= ***; Data Source= ***;”,其中Catalog为WinCC运行数据库的名称, 当修改项目名称或在其它计算机上打开原项目时, Catalog会发生变化。建议使用WinCC内部变量 “@DatasourceNameRT” 获得当前项目的Catalog。Data Source 为服务器名称,格式为“

3.1 查询语句格式
数据的查询语句的格式要求如下:
8 字节长 ValueID 的请求:
TAG_LLVID:R,


图1 ValueID和ValueName的对应关系

3.2几种常用的查询需求和语句

1)juedui时间间隔

2)相对时间间隔

请注意,查询不能包含任何空格。习惯上,执行juedui时间查询时需要将查询的时间条件转换成UTC (协调世界时)时间。执行相对时间查询时请一定要注意相对时间的格式。建议使用MsgBox或者HMIRuntime.Trace等方式输出数值以检查格式是否正确。

3.3 查询结果
查询结果作为记录集返回。过程值归档的记录集结构如下表所示:


表1记录集结构

注意,WinCC的归档数据是使用UTC(协调世界时)时间保存的。因此在对数据进行查询和显示时,需要对时间进行适当的转换。

4组态介绍(以juedui时间间隔为例)

4.1准备工作

1)创建变量
其中:NewTag用于创建过程值归档,strBeginTime 和strEndTime用于存储查询条件。sVal是时间间隔参数。如下图所示:


图2 变量

2) 创建过程值归档
创建归档周期为一分钟的过程值归档。如下图所示:


图3 归档配置

3)创建Excel模板
在特定的路径下预先创建一个Excel文件作为模板,这样可以很好的控制输出格式。本例中在D:\WinCCWriteExcel下创建一个名称为abc.xlsx的Excel文件。如下图所示:


图4 Excel模板

4.2组态查询界面
画面上新建三个输入/输出域,分别用于输入开始时间、结束时间和间隔时间。按钮中执行用于访问变量归档数据的VBS脚本。


展开全文
拨打电话 微信咨询 发送询价