simatic hmiftp.gongkong.com/uploadfile/datum/2009-4/... ·  · 2009-04-13provider ole db provider...

32
Siemens SUKUNZHE simatic hmi WinCC数据库

Upload: hoangnguyet

Post on 17-Mar-2018

303 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Siemens

SUKUNZHE

simatic hmiWinCC数据库

Page 2: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

WinCC 系统工作方式

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 3: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

Microsoft SQL Server 2000-高性能的实时数据库

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 4: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

数据库文件在WINDOWS管理器中的位置

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 5: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

数据存储方式

1

B2

A3

Page 6: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

1-11WinCC Server

Central WinCCArchive Server

Gen

erat

or

Re m

ote

OPC

Ser

ver

Remote FactoryDatabases

WinCC Channels

Data sources:

Up to 11 lower-level WinCC servers

Any remote OPC serverOPC DA 1.0A and 2.0(e.g. MES applications)

Remote databasesOLE DB / ODBC

WinCC channelsWinCC Data Manager via channel DLL

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 7: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

Every server can function as a client at the same time (server-server communication)

Create package on server A

Load package on server B

Configure additional curves on server B

Server A

Server B

WinCC 数据库的结构

WinCC 数据库的访问

DTS

Historian

Page 8: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

SQL SERVER 2000 Enterprise Manager 查看数据库

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 9: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

SQL SERVER 2000 Enterprise Manager 查看数据库

Important tables

System tablesSysusers

WinCC tablesTagLogging RT

Archive

TagCompressedTagUncompressed

AlarmLogging RTAlgCSDataDeu

MsArcLong

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 10: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

直接访问数据库的方法

直接访问数据库的方法如下:使用ADO/OLEDB使用WinCC/OLEDB接口可以访问压缩归档的数据.可使用 Microsoft ADO/OLE DB访问非压缩归档的数据

使用OPCOPC (OLE for Process Control) provides interfaces for communication with process automation systems. Using the OPC interface, the units and applications from different manufacturers can be linked to each other in a uniform way. 使用C-API/ODKUsing the "WinCC Open Development Kit" option, open programming interfaces can be used to access WinCC data and functions

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 11: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

ConnectivityPack 内容

WinCC 数据库的结构

ConnectivityPack

WinCC OLE/DB

OPC HDA

OPC A&E

OPC XML DA

Archive Connector

WinCC DataConnector

Historian

WinCC 数据库的访问

DTS

Page 12: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

使用WinCC OLE DB访问本地WinCC运行数据库

WinCC 数据库的结构

Historian

WinCC 数据库的访问

在wincc station 上需要安装WinCC Basic SystemWinCC Option Connectivity Pack

DTS

Page 13: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

使用WinCC OLE DB远程访问WinCC运行数据库

需要软件在WinCC station上需要安装下列授权

WinCC Basic SystemWinCC Option

Connectivity PackConnectivity Pack 客户机可以有下列情况:

WinCC Runtime 运行在客户机上.

客户机上没有WinCC 软件, 那么, Connectivity Pack Client 和一个WinCC client access licence 需要安装在客户机

上。

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 14: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

使用WinCC OLE DB访问本地WinCC归档数据库

WinCC 数据库的结构

Historian

WinCC 数据库的访问 所需软件

WinCC station 需要安装下列软件: WinCC Basic SystemWinCC Basic System授权WinCC Option Connectivity Pack授权

DTS

Page 15: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

使用WinCC OLE DB远程访问WinCC归档数据库

所需软件长期归档服务器需要安装以下软件:

Connectivity Pack Server

WinCC Option Connectivity Pack 的授权

Connectivity Pack Client可以有下列情况:WinCC Runtime 运行在客户机上。. 客户机上没有安装 WinCC 软件。那么, 客户机上需要安

装Connectivity Pack Client 和a WinCC client access licence (CAL).

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 16: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

访问本地WinCC UserArchiv

WinCC 数据库的结构

Historian

WinCC 数据库的访问

WinCC station 需要下列安装: •WinCC Basic system•License for WinCC Basic System•License for WinCC Option Connectivity Pack

DTS

Page 17: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

远程访问WinCC UserArchiv

WinCC server 需要下列安装:

•WinCC Basic system •License for WinCC Basic System•License for WinCC Connectivity Pack

Connectivity Pack Client可以有下列情况:WinCC Basic, Web Navigator Server, Dat@Monitor Server or Connectivity Pack Server 存在的话,不用安装ConnectivityPack

客户机上没有安装 WinCC 软件。那么, 客户机上需要安装Connectivity Pack Client 和a WinCC client access licence(CAL).

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 18: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

利用ADO/WinCC OLE DB访问数据库的语法

1.与数据库建立连接

连接字符串的结构是:

"Provider = Name of the OLE DB Provider; Catalog = Database Name;Data Source = Server Name"

参数 描述

provider OLE DB provider 的名称:WinCCOLEDBProvider

catalog Wincc 数据库的名称对于wincc 运行数据库,用数据库的名称末尾加一个“R”:<DatabaseName_R>.如果你是用wincc archive connector 连接交换出的wincc归档,就是用他们的符号名称。

Data source 服务器名称如果是本地机:\WinCC远程机:ComputerName\WinCC

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 19: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

举例

读写过程值和消息归档 :Set conn = CreateObject("ADODB.Connection")conn.open"Provider=WinCCOLEDBProvider.1;Catalog=CC_OpenArch_03_05_27_14_11_46R;Data Source=.\WinCC"

读写用户归档:Set conn = CreateObject("ADODB.Connection")conn.open "Provider=SQLOLEDB.1; Integrated Security=SSPI; Persist Security Info=false; Initial Catalog=CC_OpenArch_03_05_27_14_11_46R; Data Source=.\WinCC"

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 20: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

利用ADO/WinCC OLE DB访问数据库的语法

2.查询过程值归档语法

TAG:R, <ValueID oderValueName>,<TimeBegin>,<TimeEnd>[,<SQL_clause>] [,<TimeStep>]

WinCC 数据库的结构

参数 描述

ValueID 数据库表中的ValueID

ValueName “ArchiveName\ValueName”格式的ValueName值ValueName必须用单引号

TimeBegin 起始时间格式YYYY-MM-DD hh.mm.ss.mmm

TimeEnd 终止时间格式YYYY-MM-DD hh.mm.ss.mmm

Historian

WinCC 数据库的访问

DTS

Page 21: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

SQL_Clause

Filter criterion in SQL syntax:

[WHERE search_condition] [ORDER BY {order_expression [ASC|DESC] } ] Criterion "ORDER BY" may only be used with a stated sort order "{order_expression [ASC|DESC] }" ! Example: The following query returns all values of the tags "ValueName_1" and "ValueName_2" which are below 50 or above 100."TAG:R,('ValueName_1';'ValueName_2'),<TimeBegin>,<TimeEnd>, WHERE Value > 100 OR Value < 50"

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 22: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

参数说明

TimeStep Values in the stated time interval are summarized, beginning with the starting time <TimeBegin>.

Format: 'TIMESTEP=x,y' x = Interval in secondsy = Aggregation typeDepending on aggregation type, the result of an interval is returned for this interval.The following values are permitted as aggregation type.

•Without interpolation: If no values exist within the interval, no interval result is returned.1 (FIRST): First value2 (LAST): Last value 3 (MIN): Minimum value 4 (MAX): Maximum value 5 (AVG): Average value6 (SUM): Sum7 (COUNT): Value count•With interpolation: An interval result is returned for each interval. Linear interpolation is used. No extrapolation is done. 257 (FIRST_INTERPOLATED): First value258 (FIRST_INTERPOLATED): Last value259 (MIN_INTERPOLATED): Minimum value260 (MAX_INTERPOLATED): Maximum value261 (AVG_INTERPOLATED): Average value262 (SUM_INTERPOLATED): Sum263 (COUNT_INTERPOLATED): Value count

Example: For TIMESTEP=60,257, an interpolated value is returned for each 60-second interval. "TAG:R,1,'2004-07-09 09:03:00.000','0000-00-00 00:10:00.000','TIMESTEP=60,257'"

Page 23: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

利用ADO/WinCC OLE DB访问数据库的语法

3查询报警信息归档语法

ALARMVIEW:SELECT * FROM <ViewName>[WHERE <Condition>...., optional]

WinCC 数据库的结构

参数 描述

ViewName 数据库表的名称。数据表由期望的语言来指定AlgViewDeu: 德语消息归档数据AlgViewEnu: 英语消息归档数据AlgViewEsp: 西班牙语消息归档数据AlgViewFra: 法语消息归档数据AlgViewIta: 意大利语消息归档数据

Condition 过滤条件,e.g.:DateTime>'2003-06-01' AND DateTime<'2003-07-01'DateTime>'2003-06-01 17:30:00'MsgNr = 5MsgNr in (4, 5)State = 2用时间过滤,只能用绝对时间

Historian

WinCC 数据库的访问

DTS

Page 24: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

查询用户归档语法

4查询用户归档语法

Reading of Values

SELECT * FROM UA#<ArchiveName>[WHERE <Condition>...., optional]

Writing of Values

UPDATE UA#<ArchiveName>.<Column_n> = <Value> [WHERE <Condition>...., optional]

Inserting a Data Set

INSERT INTO UA#<ArchiveName> (ID,<Column_1>,<Column_2>,<Column_n>) VALUES (<ID_Value>, Value_1,Value_2,Value_n)

Deleting a Data Set

DELETE FROM UA#<ArchiveName> WHERE ID = <ID_Number>

WinCC 数据库的结构

WinCC 数据库的访问

DTS

Historian

Page 25: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

参数说明

WinCC 数据库的结构 Parameter Description

ArchiveName Name of user archive.

Condition Filter Criterion, e.g.:LastAccess>'2004-06-01' AND LastAccess<'2004-07-01'DateTime>'2004-06-01 17:30:00'ID = 5ID > 3

Historian

WinCC 数据库的访问

DTS

Page 26: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

DTS

数据转换服务DTS(Data Transformation Services)是MS SQL SERVER集成的一个非常有用的工具.他提供了图形化和可编程的界面. 主要功能是数据能够从各种数据源中抽取出来, 并导出到其他一些格式的文件中,例如EXCEL 表单,文本文件.也就是说, 数据可以从多个分布数据源中抽取出来, 并把他传输合并到一个或多个目标文件中去.

当你使用DTS时,你可以用WinCC OLE-DB Provider来访问WinCC的数据库.数据查询在DTS中所谓的Package中定义.DTS中的Package同样可以绑定到他的脚本, 这样一来, 可以实现时间控制的查询和数据传输.

WinCC 数据库的结构

WinCC 数据库的访问

DTS

Historian

Page 27: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

第一步

SQL Server Enterprise Manager”, 在”SQL Server Group”下选择一个SQL Server.右击相关联的子目录”Data Transformation Service”, 从弹出式菜单中选择”New Package”.”DTS Package”对话框打开

第二步

从”Connection”菜单中选择菜单项”Other Connection…”.对话框”Connection Properties”打开.在”Data Source”项目中, 选择”WinCC OLE `DB Provider for Archives”, 单击”Properties”按钮.”Data Link Properties “打开.在”Data Source”项中,输入”.\WinCC”作为数据源.”Location”保持空白.在”Enter the initial catalog to use:”中, 输入目标运行数据库名称, 例如” CC_ProjName_04_07_14_11_10_01R”或"CC_ExternalBrowsing".

WinCC 数据库的结构

WinCC 数据库的访问

DTS

Historian

下面我们就举一个例子来说明怎样使用DTS功能来把数据库的数据导入到文本文件中.

DTS组态步骤

Page 28: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

DTS组态步骤

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 29: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

DTS组态步骤

第三步

在”DTS Package”对话框中的”Connection”菜单中,选择菜单项”Text File(Destination)”.在”File Name”中, 输入将要导入数据的文本文件的名字.单击”Properties”按钮, 可以选择导出数据的具体格式.单击”OK”关闭对话框.”DTS Package”对话框显示两个符号代表数据源和数据目的地

第四步

在”DTS Package”对话框中,单击背景防止选择任何一个图标符号.在”Task”菜单中,选择”Transform Data Task”.鼠标发生变化, 显示附加文本.首先单击符号”WinCCOLE DB Provider for Archives”指定数据源,接着单击文本文件的符号”Text File(Destination)”指定传输的目的地.由此,”DTS Package”对话框中源和目的地之间显示一个箭头.

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 30: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

DTS组态步骤

WinCC 数据库的结构

第五步

双击箭头,打开”Transform Data Task Properties”对话框.在”Source”标签页,激活选项”SQL Query”.输入查询条件. 例如, 查询"Tag:R,1,'0000-00-00 00:00:00.000','0000-00-00 00:10:00.000' “,读取ValueID”1”的前10分钟的归档值.切换到”Destination”标签,使用”Execute”按钮,退出”Define Columns”,不进行任何输入.切换到”Transformations”标签页,输入名称,例如”DTSTransformation_1”.在这一页的”Source”和”Destination”的输入会用箭头连接起来. 单击”OK”关闭对话框

Historian

WinCC 数据库的访问

DTS

Page 31: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

DTS组态步骤

WinCC 数据库的结构

Historian

WinCC 数据库的访问

DTS

Page 32: simatic hmiftp.gongkong.com/UploadFile/datum/2009-4/... ·  · 2009-04-13provider OLE DB provider 的名称:WinCCOLEDBProvider catalog Wincc ... 利用ADO/WinCC OLE DB访问数据库的语法

Your Success is Our Goal

DTS组态步骤

WinCC 数据库的结构 第六步.

保存刚才新创建的DTS Package, 单击”Execute”按钮执行Package.数据会以指定的格式存储在文本文件中Historian

WinCC 数据库的访问

DTS