杰控组态手册11.历史数据
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
11.历史数据
编号 内容 页号
11.1 设置历史数据库 11-1
11.2 存储历史数据 11-3
11.3 定义历史曲线查询方案 11-3
11.4 查询历史曲线 11-4
11.5 查询历史数据 11-7
11.1设置历史数据库
系统的历史数据存储在数据库中,对应的数据源为FameView DocData Source;
系统可使用的数据源类型为Access、SQL Serve;
Access数据库文件为DocData.mdb, SQL Server数据库文件为DocData.mdf;
数据表的名称必须为DocData;
数据库文件缺省存放于系统的根目录下,也可以通过修改数据源,把数据库文件存放于本地或远程计算机的任何地方;
如果历史数据存储量较小,可以使用Access数据库,不需要另外安装其他软件;
建议使用SQL Server作为历史数据库,但必须在本地计算机上安装SQL Server 2000或MSDE; 缺省的历史数据库类型根据本地计算机安装环境决定:
在安装组态系统时,将优先检测是否安装有SQL Server数据库;
如果检测到SQL Server或MSDE存在,则将数据源类型设置为SQL Server;
如果检测到SQL Server或MSDE不存在,否则将数据源类型设置为Microsoft Access;
也可以手动修改数据源类型:
选择“我的系统->设置”功能;
执行<4.存储数据库类型>任务,出现下面的对话框:
可以在Access和SQL Server数据类型之间进行切换;
如果选择SQL Server数据库,要设定其占用的最大内存,缺省值为128MB;
因为Access数据库不支持自动收缩,所以选择Access作为历史数据库类型时,为防止数据库空间膨胀,应把数据库设置为定长数据库,即选择“历史数据”功能,执行<1.历史数据库属性>任务,出现下面对话框:
计算需要存储的历史数据最大记录数n;选择“使用定长数据库”,并使最大记录数量=n;
定长数据库的空间不会发生变化,最大记录数为n,存储数据时,先从开始记录存储,当存够n 条记录时,再回到开始记录;
定长数据库的内容不能被删除;
定长数据库也适用于SQL Server数据库;
选用MSDE作为数据库,但数据库的文件尺寸不能超出2G; 选用SQL Server作为数据库,但数据库的文件尺寸最好不要超出10G;为防止数据库达到危险边界,应设定数据库的文件尺寸, ,即选择“历史数据”功能,执行<1.历史数据库属性>任务,出现下面对话框:
如果使用MSDE数据库,建议的最大文件容量为1500MB,即1.5GB;
如果使用SQL Server数据库,建议的最大文件容量为10000MB,即10GB;
经测试,MSDE/SQL Server数据库,1M文件尺寸可存储8000条记录;
如果文件尺寸达到设定值,即使存档没有到期,也会提前删除某些记录,来保障文件尺寸;
如果没有选择定长数据库,则系统会每隔1小时,检查并删除历史数据库中的过时数据;
经验证明,历史记录的数量小于1000万条,能保障系统的正常运行;
选择<运行数据库>功能,执行
启动系统后,TEST1存档变量把VA.%RAND的数值每隔1分钟存储到数据源FameView DocData Source 定义的数据库中;
建议所有的存档变量,在1小时内的存储数据不要超出30000条;
11.3 定义历史数据查询方案
通过定义查询方案可以把多个存档变量进行分组查询;
选择“历史数据”功能,执行<2.历史数据查询方案>任务,出现下面对话框:
通过以上对话框,可以把存档数据进行分组;
通过历史数据,在画面中添加“曲线查询”按钮组件:
通过组态对话框定义可查询曲线:
为了查询方便,可预先设定好10条查询曲线变量;
用鼠标双击表格的某一行,可以出现变量选择对话框,来选择一个存档变量(DOC);
选中某行,按“Del”键,可以删除设定的存档变量;
运行时执行按钮即可查询:
执行<选择>按钮,能够出现选择菜单:
选择查询时间,出现下面对话框;
(1) 通过<起始时间>、<长度>设置曲线的查询范围;
(2) 通过<分辨率>设置曲线的显示精度;
(3) 通过<参考曲线>可以显示某变量在不同时间段的2条比较曲线;
(4) 如果在<超时时间>规定的时间范围内没有查询到曲线,则返回;
(5) 如果选择<百分比显示>,则多条曲线按照0-100%的百分比进行曲线显示,否则按照最大\
小值进行显示;
选择曲线变量, 出现下面对话框,选择需要显示的变量:
选择查询方案, 出现下面对话框,通过查询方案,选择需要显示的变量:
曲线被成功查询后,便会显示出来,否则不进行显示;
可以通过翻页按钮,进行前移、后移曲线,移动的时间间距为设定曲线的长度;
通过脚本函数可预设查询变量:
设定要查询的存档变量:SetDocVar
ObjName,Var1,Var2,Var3,Var4,Var5,Var6,Var7,Var8,Var9,Var10
ObjName为按钮组件的名称;Var1-10为要查询的10个变量;
例:DocCurveBtnXObj.SetDocVar "AAA","1#温度","","","","","","","","",""
通过脚本函数可预查询参数:
设置存档曲线查询窗口的缺省值,SetWindow ObjName,r,g,b,时间长度,分辨率,b1,b2,b3;
ObjName为按钮组件的名称,r、g、b为窗口的背景颜色;时间长度以分钟为单位,分辨率以秒为单位,b1控制是否方波显示(0/1),b2控制是否显示网格(0/1),b3中的低4位控制是否使用<
曲线定义、打印曲线、数据浏览、数据分析>按钮
例:DocCurveBtnXObj.SetWindow "AAA",192,192,192,10,10,1,1,&H0F
通过脚本函数可预曲线颜色:
改变某条曲线的颜色,SetCurveColor ObjName,n,r,g,b;
ObjName为组件的名称,n为曲线的序号,取值1-10,101-110,分别代表曲线和附加曲线颜色,(r,g,b)为曲线颜色;
例:DocCurveBtnObj.SetCurveColor "AAA",1,255,0,0
通过脚本函数可预曲线量程:
强制曲线的量程范围,SetCurveRange ObjName,MinValue,MaxValue;
ObjName为组件的名称;MinValue,MaxValue分别为最大最小值;
例:DocCurveBtnObj.SetCurveRange "AAA",-100,1000
通过脚本函数可预曲线量程方式:
设置y轴显示为百分比,SetPercentDisplay ObjName,n;
ObjName为组件的名称,n=1显示为百分比,n=0显示为绝对值;
例:DocCurveBtnObj.SetPercentDisplay "AAA",1
如不希望通过执行按钮来查询数据曲线,而希望通过其他事件来执行查询;按照下列步骤来实现:
(1)给数据曲线查询按钮组件命名:选中组件,点击右键,弹出菜单,选择执行“对象属性”中的“脚
本名称”,给对象命名,例如BTNOBJ;
(2)隐藏数据曲线查询按钮组件:选中组件,点击右键,弹出菜单,选择执行“隐藏对象”,使组件在
运行画面显示时不可见:
(3)编写脚本,然后被其他事件触发,例如在图标按钮中选择脚本执行,脚本内容如下:
DocCurveBtnXObj.ShowWindow "BTNOBJ"