介绍如何在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脚本。
- 如何通过精智面板打开 Word,Excel 或 PDF 格式的文档 2024-11-23
- HMI在项目界面中给设备做OS更新 2024-11-23
- WinCC PRO V16与S7-300/400以太网仿真通信(集成) 2024-11-23
- Smart屏项目启动运行/仿真 2024-11-23
- WinCC V7.4SP1与PLCSIM Advanced仿真的S7-1500通信 2024-11-23
- S7-1500运动控制仿真 2024-11-23
- 精智面板PN/IE 方式下载 2024-11-23
- HMI与S7-1200/1500PLC时间同步功能 2024-11-23
- 通过 OPC UA 与 SIMATIC HMI 系统 2024-11-23
- SINAMICS CF卡功能 2024-11-23