专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »VB教程 » vbodbc连接数据库:利用ODBC访问WINCC的历史数据库-vb教程 »正文

vbodbc连接数据库:利用ODBC访问WINCC的历史数据库-vb教程

来源: 发布时间:星期四, 2009年2月12日 浏览:332次 评论:0


利用ODBC访问WINCC历史数据库

WINCC作为个工控软件Software有着工控软件Software系列特征:能显示实时数据历史数据生成实时数据曲线和历史数据曲线并能生成报表然而WINCC和其它工控软件Software包有区别地方:它数据是保存在标准及功能强大Sybase SQL Anywhere数据库中,所以我们可以像访问数据库通过ODBC直接访问WINCC历史数据库

、 通过Sybase Central 4.0访问显示数据

Wincc 在安装时就把Sysbase数据引擎和Sybase Central 4.0同安装到系统中你可以在Program Files\\Sybase\\Shared\\ 中找到Sybase Central 4.0 你可在在其目录下\\java\\中发现 scjview.exe功能相当于SQL server 企业管理器你可以通过其查看你在WinCC中归档数据

使用思路方法:

1) 运行WINCC这时WINCC会在ODBC中添加两条数据源:

CC_FY_02-10-16_10:40:18

CC_FY_02-10-16_10:40:18R

其中CC_FY_02-10-16_10:40:18R 是可以通过 Sybase Central 4.0 及别些工具不用用户名和密码读取这就是我们WinCC历史数据库

注意:这两条ODBC名不是成不变它是结构如下

CC_FY_02-10-16_10:40:18R

CC: 固有指明是WinCC生成ODBC

FY : 项目名这是我这个WinCC项目名称

02-10-16:最后次修改日期

10:40:18:最后次修改时间

R: 表示是运行库

2)、运行scjview.exe点击Adaptive Server AnyWhere 7 按右键选择Connect将会弹出Connect配置界面

在Identication页面选中ODBC SOURCE NAME 点BROWSE则会列出所有对Sybase数据引擎ODBC名选择CC_FY_02-10-16_10:40:18R点击“OK“、“OK“即可

这时在Adaptive Server AnyWhere 7下面会出现你计算机名并已连通了你WINCC历史数据库

好了我们现在可以查看WinCC历史数据了

展开:Adaptive Server AnyWhere 7(DBA)

展开:TABLE

我们现在可以看到数据库表名和表结构了:

表名:PDE#HQZ#GAS_PRE 组成方式如下

PDE:固有

HQZ:归档名称

GAS_PRE:变量名

表结构:有 3个字段:T, V, F

T:时间

V:值

F:标志

由于没有可靠资料可查其F名值表示含义就不得而知不过在我使用中我将F值8392705作为个合法值在WINCC处理中没有出过错但别FLAG值含义只能问西门子公司了

2、 利用VB编写访问WINCC历史数据库

上面已明确描述了WINCC历史数据库结构组成和表结构那么我们就可以通过编程访问WINCC历史数据库如其它通过ODBC访问数据如下面小例子

在VB中先引用ADO组件并声明ADO变量

Private cn As ADODB.Connection

Private rs As ADODB.Record

Const dsn = “CC_FY_02-10-16_10:40:18R”

Private sub insertData(nowValue as double)

Dim nowtime as

Nowtime =now

cn.Open dsn, \"\", \"\"

sqlstr=” insert o PDE#HQZ#GAS_PRE(T,V,F) Values(‘”+ Nowtime +”’,”+ nowValue +”, 8392705) ”



cn.Execute sqlstr

cn.close

End sub

prefix = o ns = \"urn:schemas-microsoft-com:office:office\" />

只处理了数据插入其它读出就更为简单和其它ADO访问是这里就不多说了



3、 结语

能通过ODBC访问WINCC历史数据给我们提供了更多了解决办法特别是在企业信息化平台上使用非实时数据方面可以人为给WINCC添加正确历史数据使WINCC功能更为强大

由于ODBC名和项目修改时间有关所以在项目频繁变化时请不要使用这个功能

WinCC在启动时自动添加ODBC名在关闭时自动删除所以在WINCC关闭后不能再通过ODBC访问ODBC


0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: