intouch_Historian_Server使用指南
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Historian Server使用指南
本使用说明主要包括以下三个方面:
一、 Historian Server 一般使用说明
二、 将数据存入Historian
三、 常用Historian数据库操作
一、Historian Server 一般使用说明
1、安装完成后的历史数据库管理界面集成在SMC中,点击“开始/程序/wonderware/System Management Console”可以打开SMC。
备注:在较早的版本中,Historian Server的名称为:IndustrialSQL Server,只是名称的区别。
2、展开历史数据库,如下界面参数分别表示:
TANGMING:表示历史数据库安装所在的计算机名称;
Management Console:历史数据库管理台;
♦Status:主要用于启动/停止历史数据库;
♦Data Acquisition:查看历史数据库存储数据的状态;
♦Clients:当前连接到历史数据库的客户端;
♦History Blocks:历史数据块存放的路径。
Configuration Editor:配置环境。
♦System Configuration:系统配置模块;
♦Public Groups:公共数据点分组,系统默认;
♦Private Groups:私有数据点分组,可以自定义将数据点分组。
3、在Status上点击右键,选择Start启动历史数据库。
4、弹出如下对话框,输入相应的计算机用户名和密码,点击“确定”。
Domain:域名称,若用户未使用“域”,则不需要填写;
Login Name:计算机用户名(推荐使用具有Administrator权限的用户);
Password:计算机用户名相应的密码。
5、启动成功后,点击Status按钮可看到右侧运行状态面板全部变为绿色:
6、点击“Data Acquisition”可以看到右侧的面板,绿色表示正在存储该主题的数据,红色表示未存储。
二、将数据存入Historian Server
在未使用Wonderware系统平台时,数据存入Historian可以通过两种方式:
将I/O Server或DA Server数据中需要存储的数据加入Historian;
将InTouch中的标记批量导入Historian。
将I/O Server或DA Server数据中需要存储的数据加入Historian
本处举例将名为simulate的I/O Server中的某个数据点存入Historian。
1、点击Configuration Editor/System Configuration/Data Acquisition/IDAS。
点击右键,选择New I/O Server。
2、弹出如下界面,进行如下配置,完成后点击Finish。
I/O Server Location:IO Server或DA Server运行的计算机名或IP;
I/O Server Type:选择相应的IO Server或DA Server名称。
如本例使用了名为simulate的IO Server。
若实际使用了某个DA Server,则在下拉列表中选择相应的DA Server名称,如:“DASMBTCP”;
Protocol Type:默认为Suitelink即可。
3、新添加的IO Server出现在IDAS下面。
4、在新添加的IO Server上点击右键,选择New Topic。
5、弹出如下面板,并进行相应配置:
Topic Name:I/O Server中的Topic名称或DA Server中的Device Group名称;
TimeOut:历史数据库获取数据的超时时间,若历史数据库超过timeout设定的时间未收到数据则自动重新连接;
Enable Late data:允许延迟的数据,可以根据需要决定是否勾选。
6、完成后点击Finish,新增的Topic出现在列表中。
7、在新增的Topic上点击右键,选择New Analog。
8、弹出如下窗口,在Tag Name处输入自定义的名称,点击下一步。
9、进行如下配置:
Description:输入该标记的描述;
Engineering Unit:工程单位;
Min/Max Value:最大最小工程值范围。
10、其他选项可以默认,点击Next,出现如下界面,并进行相应配置:
Acquisition Type、I/O Server、Topic Name已经由之前的配置自动生成,无需修改;
Item Name:输入实际引用的IO Server或DA Server中的变量名称。
Raw Type:选择相应的数据类型;
11、点击Next,出现如下面板,并进行配置,若没有特殊的存储要求,可以直接默认该面板的配置:
Storage Method:
♦Not stored:不存储;
♦Cyclic:周期存储,对于模拟量,一般比较适合采用周期存储;
♦Delta:值变化存储,对于离散量,一般比较适合采用值变化存储;
♦Forced:强制存储。
Deadband:
♦Time and Value:时间和值的死区设置;
♦Swinging door:“旋转门”的死区设置。
12、新增的标记出现在Topic的列表中。
13、配置完成后,在IDAS上点击右键,选择Commit Pending Changes,弹出窗口点击Commit按钮。
14、回到Management Console下,点击Data Acquisition,右侧面板出现新增加的数据存储Topic等信息,若I/O Server或DA Server处于运行状态且历史数据库与I/O Server或DA Server连接正常,则显示为绿色,表示正在接收数据。
其中:
Tags:表示相应Topic下有多少个标记正在被存储到Historian;
Status:Receiving表示正在接收,Disconnect表示未连接成功。
将InTouch中的标记批量导入Historian
本处举例将名为“test”的InTouch监控程序中的标记批量存入Historian。
1、点击Configuration Editor/System Configuration/Data Acquisition/IDAS。
点击右键,选择Import Tags。
2、弹出如下向导面板,点击Next,在出现的面板中点击Add。
3、出现选择InTouch应用程序路径的窗口,找到保存InTouch程序的路径,选中tagname.x文件,点击打开按钮。
备注:本处举例查找名为“test”的InTouch监控程序。
4、弹出如下窗口,点击是。
5、出现如下界面,点击Next。
6、选择“Bypass Uniqueness String”项,并点击Next。
7、在该界面选择需要导入到历史数据库的标记。
All:将该监控程序中所有标记导入到数据库中进行存储;
Plant I/O:将该监控程序中所有I/O类型标记导入到数据库中进行存储;
Memory:将该监控程序中所有内存类型标记导入到数据库中进行存储;
System:将该监控程序中所有系统标记导入到数据库中进行存储。
备注:本处举例存储指定IO类型标记。
8、点击“Topic”按钮,出现Topic选择界面,选择完成后,点击OK按钮。
Available:可用的Topic;
To Be Imported:会被导入到数据库进行存储的Topic。
9、点击Next,进入Topic存储策略选择模式。
Use Cyclic Storage For All Topics:全部Topic采用周期存储方式;
Use Delta Storage For All Topics:全部Topic采用值变化存储方式;
Use Forced Storage For All Topics:全部Topic采用强制存储方式;
Per Topic Storage Selection:自定义Topic的存储方式。
备注:对于点数规模较大,模拟量较多的Topic,建议采用周期存储方式;离散量较多的Topic,建议采用值变化的存储方式。
若点击规模较小,则可以默认系统的存储策略。
10、设置完成后点击Next按钮,并点击Finish。
则进入如下界面,表示将配置的信息同步到历史数据库的配置中。
完成后,提示导入成功,点击OK。
12、鼠标选中IDAS,并按F5刷新。
则可以看见,该监控程序中的两个Topic及Topic下的标记均被导入。
13、在IDAS上点击右键,选择Commit Pending Changes以提交配置。
14、回到Management Console下,点击Data Acquisition,右侧面板出现新增加的数据存储Topic等信息,若I/O Server或DA Server处于运行状态且历史数据库与I/O Server或DA Server连接正常,则显示为绿色,表示正在接收数据。
三、常用Historian Server数据库操作
常用的数据库操作主要是数据库的数据交互,本例将举例说明将历史数据库的数据如何与其他关系型数据库进行交互,以及如何向实时历史数据中插入数据。
备注:Historian Server Client客户端工具包含了查询功能和自动生成相应的SQL语句功能,所以比较简便的做法是使用客户端查询工具将数据按照需求查询好,然后直接利用生成的SQL语句来操作。
本文举例说明将一个标记名为L1的部分历史数据存入指定的关系型数据库。
1、打开历史数据库查询客户端工具,查询标记名为L1的历史数据。
2、点击上图SQL按钮,可以看到自动生成的查询L1的SQL语句。
备注:Historian Server使用的数据库名称为Runtime,为系统默认且不可更改。
3、打开SQL Server。
建立名为“my”的数据库,并在该数据库下建立名为tab1的表。
4、按照需求设计该表,本例建立如下简单的字段:
5、完成表结构建立后,可以使用SQL语句进行数据插入操作。
新建一个Query,输入如下SQL语句:use runtime
SET NOCOUNT ON
DECLARE @StartDate DateTime
DECLARE @EndDate DateTime
SET @StartDate =DateAdd(mi,-5,GetDate())
SET @EndDate =GetDate()
SET NOCOUNT OFF
insert my.dbo.tab1
SELECT TagName,DateTime,Value, vValue
FROM History
WHERE TagName IN('l1')
AND wwRetrievalMode ='Cyclic'
AND wwCycleCount = 5
AND wwVersion ='Latest'
AND DateTime>= @StartDate
AND DateTime<= @EndDate
6、打开tab1表,可以看到数据已经被成功插入。
7、若需要向远程的SQL Server插入数据,则对SQL语句稍作修改即可。
比如:向名为hxq的计算机中的数据库“WWALMDB”中的tab3表中。
相应的SQL语句为:
use runtime
SET NOCOUNT ON
DECLARE @StartDate DateTime
DECLARE @EndDate DateTime
SET @StartDate =DateAdd(mi,-5,GetDate())
SET @EndDate =GetDate()
SET NOCOUNT OFF
insert openrowset( 'SQLOLEDB', 'hxq'; 'sa'; 'sa',WWALMDB.dbo.tab3)
SELECT TagName,DateTime,Value, vValue
FROM History
WHERE TagName IN('l1')
AND wwRetrievalMode ='Cyclic'
AND wwCycleCount = 5
AND wwVersion ='Latest'
AND DateTime>= @StartDate
AND DateTime<= @EndDate
8、在进行远程数据库操作时,若提示数据库远程查询未开启,则可以使用如下通用语句开启计算机的远程查询功能:
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
通过Historian Server的事件功能,自动按照一定条件向关系型数据库中的某张表进行数据写入
9、选择Configuration Editor/system configuration/Tag Configuration/Event Tags,点击右键并选择New tag。
10、输入任意标记名称,点击Next。
11、输入描述,其他选项默认,点击Next。
12、出现如下面板,由于是周期性的插入数据,所以在Detector Type中选择“Schedule“,其他选项默认,点击Next。
13、出现如下面板,选择每小时的第25分钟进行数据插入。
14、点击Next,出现满足周期性条件时的动作类型。
在Action Type处选择Generic SQL,表示按照周期进行SQL操作。
15、将相应的SQL语句复制到Action Query中。
点击Finish。
16、当时间为每小时的第25分钟时,数据则会自动进行插入,打开Tab1可以看到数据已经成功插入。
向实时历史数据库中插入数据
插入数据的格式请参照如下SQL格式(主要是匹配Historian 的表结构),以下语句插入标记名为L1在'2011-04-02 16:19:10'时刻的值为55。
use runtime
INSERT INTO INSQL.Runtime.dbo.History (DateTime, TagName, Value, QualityDetail,wwVersion) VALUES ('2011-04-02 16:19:10', 'l1', '55','55','latest')
备注:由于历史数据库是面向工业高速实时数据捕获,所以一般情况下,我们不推荐使用Insert语句对Historian Server进行操作,若由于生产管理需要,必须插入数据,则要求插入数据量不能太大,频率不能太高,并适当的优化SQL语句。