组态王教学-趋势曲线
- 格式:doc
- 大小:329.00 KB
- 文档页数:10
第五讲趋势曲线在本课程您将:➢了解实时趋势曲线和历史趋势曲线的作用➢掌握实时趋势曲线的使用方法➢掌握历史趋势曲线的使用方法趋势曲线的作用趋势曲线用来反应数据变量随时间的变化情况。
趋势曲线有两种:实时趋势曲线和历史趋势曲线。
这两种曲线外形都类似于坐标纸,X轴代表时间,Y轴代表变量的量程百分比。
所不同的是,在您的画面程序运行时,实时趋势曲线随时间变化自动卷动,以快速反应变量的新变化,但是不能时间轴“回卷”,不能查阅变量的历史数据;历史趋势曲线可以完成历史数据的查看工作,但它不会自动卷动(如果实际需要自动卷动可以通过编程实现),而需要通过带有命令语言的功能按钮来辅助实现查阅功能。
在同一个实时趋势曲线中最多可同时显示四个变量的变化情况,在同一个历史趋势曲线口中最多可同时显示十六个变量的变化情况。
首先让我们先来了解一下实时趋势曲线的使用。
实时趋势曲线将“反应罐压力”的变量值在实时趋势曲线中显示出来。
激活Touchmak程序,选择菜单“文件\新画面”,建立一个新画面。
画面名称:“实时趋势曲线”在工具箱中选用“实时趋势曲线”工具,然后在画面上绘制趋势曲线,如下图:双击此实时趋势曲线对象,弹出“实时趋势曲线”对话框,对话框设置如下图:曲线1:\\本站点\反应罐压力X、Y方向的主次分割线的数目和属性您可以任意设置。
单击“标识定义”配置页,对话框设置如下:可以对时间轴和数值轴进行任意设置。
注:如果需要Y轴标识实际工程值,可以在标识定义内不选择标识Y轴,然后在曲线Y轴用字符按比例标出。
单击“确定”,关闭此对话框。
保存后激活运行系统Touchview,画面运行效果如下:历史趋势曲线组态王目前有三种历史趋势曲线,工具箱上的、图库内的以及新增的一种KVHTrend曲线控件。
第三种控件是组态王以Active X控件形式提供的绘制历史曲线和ODBC数据库曲线的功能性工具。
通过该控件,不但可以实现历史曲线的绘制,还可以实现ODBC数据库中数据记录的曲线绘制,而且在运行状态下,可以实现在线动态增加/删除曲线、曲线图表的无级缩放、曲线的动态比较、.曲线的打印等。
组态王历史趋势控件使⽤详解KVHTrend控件使⽤⽅法KVHTrend曲线控件是组态王以Active X控件形式提供的绘制历史曲线和ODBC数据库曲线的功能性⼯具。
通过该控件,不但可以实现历史曲线的绘制,还可以实现ODBC数据库中数据记录的曲线绘制,⽽且在运⾏状态下,可以实现在线动态增加/删除曲线、曲线图表的⽆级缩放、曲线的动态⽐较、.曲线的打印等。
该曲线控件最多可以绘制16条曲线。
1、创建历史曲线控件:在组态王开发系统中新建画⾯,在⼯具箱中单击“插⼊通⽤控件”或选择菜单“编辑”下的“插⼊通⽤控件”命令,弹出“插⼊控件”对话框,在列表中选择“历史趋势曲线”,单击“确定”按钮,对话框⾃动消失,⿏标箭头变为⼩“⼗”字型,在画⾯上选择控件的左上⾓,按下⿏标左键并拖动,画⾯上显⽰出⼀个虚线的矩形框,该矩形框为创建后的曲线的外框。
当达到所需⼤⼩时,松开⿏标左键,则历史曲线控件创建成功,画⾯上显⽰出该曲线,如图1所⽰。
图1 历史曲线控件2、设置控件固有属性:控件创建完成后,在控件上单击右键,在弹出的快捷菜单中选择“控件属性”命令,弹出历史曲线控件的固有属性对话框,如图2所⽰。
北京亚控科技发展有限公司北京亚控科技发展有限公司控件固有属性含有两个属性页:曲线、坐标系。
下⾯详细介绍每个属性页中的含义。
2、1 曲线属性页如图2所⽰,曲线属性页中下半部分为定义在绘制曲线时,历史数据的来源,可以选择组态王的历史数据库或其它数据库为数据源。
曲线属性页中上半部分“曲线”是定义曲线图表初始状态的曲线变量、绘制曲线的⽅式、是否进⾏曲线⽐较等:列表框:显⽰已经添加的变量的名称及绘制⽅式定义等。
“增加”按钮:增加变量到曲线图表,并定义曲线绘制⽅式。
单击该按钮,弹出如图3所⽰的对话框。
图2 历史曲线控件固有属性图3 增加曲线l变量名称:在“变量名称”⽂本框中输⼊要添加的变量的名称,或在左侧的列表框中选择,该列表框中列出了本⼯程中所有定义了历史记录属性的变量,单击⿏标选择,则选中的变量名称⾃动添加到“变量名称”⽂本框中。
第七章趋势曲线本章内容定义变量的记录属性趋势曲线趋势曲线方法概述趋势曲线是用来反应变量随时间的变化情况,趋势曲线有两种:实时趋势曲线和历史趋势曲线。
KingSCADA提供的趋势曲线既可以显示实时趋势曲线又可以显示某一时间段的历史趋势曲线,并且提供了丰富的控件方法和控件事件,使趋势曲线的查询显得更加灵活、方便。
第一节定义变量的记录属性要想查询变量的历史趋势曲线,就需要定义变量的记录属性。
在KingSCADA工程设计器中双击“liquid_level”变量,弹出变量属性对话框,选择“历史”选项卡,设置变量的记录属性,如图8-1所示:图8-1记录属性设置对话框当“liquid_level”值变化时,系统自动保存该数值。
注意:如果配置保存到KingHistorian中,由于KingIOServer也可以保存数据到工业库,注意不要重复保存,选择其一即可。
第二节趋势曲线图素趋势曲线的展示是通过趋势曲线图素来实现的,图素的使用方法如下:第一步:在KingSCADA画面编辑器中打开已建立好的画面:趋势曲线。
第二步:在图形编辑器中,执行“对象”菜单→“扩展图素”→“趋势曲线”命令或者单击工具箱中的图标→鼠标移到画面中,光标呈‘+’状,按住鼠标左键并拖动绘出一趋势曲线窗口,如图8-2所示:图8-2趋势曲线窗口同时弹出窗口属性对话框,对话框设置如图8-3所示:图8-3曲线窗口属性对话框其他属性可根据需要设置。
第三步:选中图8-2曲线窗口→单击鼠标右键→在弹出的菜单中执行“编辑”命令→鼠标单击标题栏(位于曲线窗口的上面)→弹出标题栏属性对话框,对话框设置如下:图8-4标题栏属性设置第四步:选中图8-2曲线窗口→单击鼠标右键→在弹出的菜单中执行“编辑”命令→鼠标单击网格区(位于曲线窗口中间)选中此区域→在该区域中单击鼠标右键→在弹出的右键菜单中执行“添加曲线”命令→选中添加的曲线后同时弹出曲线属性对话框,如图8-5所示:图8-5曲线属性对话框在DataSource属性中连接“liquid_level”变量,曲线颜色设置为:绿色。
趋势曲线常见问题解答北京亚控科技发展有限公司2 0 10年0 1月1. 实时趋势曲线 ........................................................ 1..1.1我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢?...................................................... 1.1.2使用组态王实时趋势曲线控件时,控件属性设置没有问题,但为何看不到曲线?........................................................... 1..1.3在组态王画面上添加一实时趋势曲线控件,如何修改控件的背景颜色? ................................................................... 1..2. 历史趋势曲线 ........................................................ 1.2.1在组态王的历史趋势曲线中看不到曲线为何? (1)2.2使用组态王的历史趋势曲线控件时,如何实现自动更新控件右侧时间为系统的当前时间?................................................... 1.2.3使用组态王历史趋势曲线控件查询时,在查询不存在的历史数据时,组态王是如何处理的?................................................. 2.2.4在历史趋势曲线控件中增加变量时,为何无法选择变量? (2)2.5使用组态王提供的历史趋势曲线控件读取数据库中的数据为何显示不出曲线?.............................................................. 2..2.6使用组态王历史趋势曲线控件,查询出来的趋势曲线比实际的历史数据要提前8个小时?................................................... 2.2.7在组态王运行环境中,能否改变历史趋势曲线控件连接的曲线? (3)2.8组态王提供的历史曲线控件中曲线形式能否画成阶梯式的而不是斜线式的?................................................................ 3..2.9通过组态王提供的历史趋势曲线控件查询Access数据库中的数据,"时间字段"的下拉框中为何没有任何选项? (3)2.10我想通过指定一个变量的名称来删除历史曲线控件中此变量对应的曲线,在组态王中应如何实现? (3)2.11我有100多个设备,每个设备有10几个参数,我想通过改变设备号,在一个历史趋势曲线里查询不同设备的各个参数的历史曲线? (3)2.12使用组态王的历史趋势曲线控件时,选择变量时能否显示变量描述?............................................................................................................................... 4.2.13使用组态王的历史趋势曲线控件时,怎样对曲线进行删除操作? (4)2.14使用组态王的历史趋势曲线控件时,能否通过拖动游标上的直线来拖动游标,而不是只能拖动游标下的小三角块? (5)2.15使用组态王的历史趋势曲线控件时,该控件提供了时间轴(X轴)纵向的游标,有没有数据轴(丫轴)横向的游标? (5)2.16组态王的历史趋势曲线控件有没有曲线叠加的功能? (5)2.17使用组态王的历史趋势曲线控件,通过ODBC数据源绘制关系数据库数据曲线时,能否只绘制符合条件的数据曲线? (6)2.18使用组态王的历史趋势曲线控件,当我改变时间轴起始时间和结束时间时,为什么历史曲线有时候能绘制出曲线,有时又没有曲线? (7)1. 实时趋势曲线1.1我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢?早期版本的组态王中的实时曲线控件都只提供的百分比量程, 软在6.52版本的组态王件中对实时曲线控件进行了修改,提供了变量实际量程的选项。
常见问题解答北京亚控科技发展有限公司2010年01月目录1. 实时趋势曲线 (1)1.1 我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢? (1)1.2 使用组态王实时趋势曲线控件时,控件属性设置没有问题,但为何看不到曲线? (1)1.3 在组态王画面上添加一实时趋势曲线控件,如何修改控件的背景颜色? (1)2. 历史趋势曲线 (1)2.1 在组态王的历史趋势曲线中看不到曲线为何? (1)2.2 使用组态王的历史趋势曲线控件时,如何实现自动更新控件右侧时间为系统的当前时间? (1)2.3 使用组态王历史趋势曲线控件查询时,在查询不存在的历史数据时,组态王是如何处理的? (2)2.4 在历史趋势曲线控件中增加变量时,为何无法选择变量? (2)2.5 使用组态王提供的历史趋势曲线控件读取数据库中的数据为何显示不出曲线? (2)2.6 使用组态王历史趋势曲线控件,查询出来的趋势曲线比实际的历史数据要提前8个小时? (2)2.7 在组态王运行环境中,能否改变历史趋势曲线控件连接的曲线? (3)2.8 组态王提供的历史曲线控件中曲线形式能否画成阶梯式的而不是斜线式的? (3)2.9 通过组态王提供的历史趋势曲线控件查询Access数据库中的数据,"时间字段"的下拉框中为何没有任何选项? (3)2.10 我想通过指定一个变量的名称来删除历史曲线控件中此变量对应的曲线,在组态王中应如何实现? (3)2.11 我有100多个设备,每个设备有10几个参数,我想通过改变设备号,在一个历史趋势曲线里查询不同设备的各个参数的历史曲线? (3)2.12 使用组态王的历史趋势曲线控件时,选择变量时能否显示变量描述? (4)2.13 使用组态王的历史趋势曲线控件时,怎样对曲线进行删除操作? (4)2.14 使用组态王的历史趋势曲线控件时,能否通过拖动游标上的直线来拖动游标,而不是只能拖动游标下的小三角块? (5)2.15 使用组态王的历史趋势曲线控件时,该控件提供了时间轴(X轴)纵向的游标,有没有数据轴(Y轴)横向的游标? (5)2.16 组态王的历史趋势曲线控件有没有曲线叠加的功能? (5)2.17 使用组态王的历史趋势曲线控件,通过ODBC数据源绘制关系数据库数据曲线时,能否只绘制符合条件的数据曲线? (6)2.18 使用组态王的历史趋势曲线控件,当我改变时间轴起始时间和结束时间时,为什么历史曲线有时候能绘制出曲线,有时又没有曲线? (7)1. 实时趋势曲线1.1我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢?早期版本的组态王中的实时曲线控件都只提供的百分比量程,在6.52版本的组态王软件中对实时曲线控件进行了修改,提供了变量实际量程的选项。
第七章趋势曲线本章内容定义变量的记录属性趋势曲线趋势曲线方法概述趋势曲线是用来反应变量随时间的变化情况,趋势曲线有两种:实时趋势曲线和历史趋势曲线。
KingSCADA提供的趋势曲线既可以显示实时趋势曲线又可以显示某一时间段的历史趋势曲线,并且提供了丰富的控件方法和控件事件,使趋势曲线的查询显得更加灵活、方便。
第一节定义变量的记录属性要想查询变量的历史趋势曲线,就需要定义变量的记录属性。
在KingSCADA工程设计器中双击“liquid_level”变量,弹出变量属性对话框,选择“历史”选项卡,设置变量的记录属性,如图8-1所示:图8-1记录属性设置对话框当“liquid_level”值变化时,系统自动保存该数值。
注意:如果配置保存到KingHistorian中,由于KingIOServer也可以保存数据到工业库,注意不要重复保存,选择其一即可。
第二节趋势曲线图素趋势曲线的展示是通过趋势曲线图素来实现的,图素的使用方法如下:第一步:在KingSCADA画面编辑器中打开已建立好的画面:趋势曲线。
第二步:在图形编辑器中,执行“对象”菜单→“扩展图素”→“趋势曲线”命令或者单击工具箱中的图标→鼠标移到画面中,光标呈‘+’状,按住鼠标左键并拖动绘出一趋势曲线窗口,如图8-2所示:图8-2趋势曲线窗口同时弹出窗口属性对话框,对话框设置如图8-3所示:图8-3曲线窗口属性对话框其他属性可根据需要设置。
第三步:选中图8-2曲线窗口→单击鼠标右键→在弹出的菜单中执行“编辑”命令→鼠标单击标题栏(位于曲线窗口的上面)→弹出标题栏属性对话框,对话框设置如下:图8-4标题栏属性设置第四步:选中图8-2曲线窗口→单击鼠标右键→在弹出的菜单中执行“编辑”命令→鼠标单击网格区(位于曲线窗口中间)选中此区域→在该区域中单击鼠标右键→在弹出的右键菜单中执行“添加曲线”命令→选中添加的曲线后同时弹出曲线属性对话框,如图8-5所示:图8-5曲线属性对话框在DataSource属性中连接“liquid_level”变量,曲线颜色设置为:绿色。
常见问题解答北京亚控科技发展有限公司2010年01月目录1. 实时趋势曲线 (1)1.1 我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢? (1)1.2 使用组态王实时趋势曲线控件时,控件属性设置没有问题,但为何看不到曲线? (1)1.3 在组态王画面上添加一实时趋势曲线控件,如何修改控件的背景颜色? (1)2. 历史趋势曲线 (1)2.1 在组态王的历史趋势曲线中看不到曲线为何? (1)2.2 使用组态王的历史趋势曲线控件时,如何实现自动更新控件右侧时间为系统的当前时间? (1)2.3 使用组态王历史趋势曲线控件查询时,在查询不存在的历史数据时,组态王是如何处理的? (2)2.4 在历史趋势曲线控件中增加变量时,为何无法选择变量? (2)2.5 使用组态王提供的历史趋势曲线控件读取数据库中的数据为何显示不出曲线? (2)2.6 使用组态王历史趋势曲线控件,查询出来的趋势曲线比实际的历史数据要提前8个小时? (2)2.7 在组态王运行环境中,能否改变历史趋势曲线控件连接的曲线? (3)2.8 组态王提供的历史曲线控件中曲线形式能否画成阶梯式的而不是斜线式的? (3)2.9 通过组态王提供的历史趋势曲线控件查询Access数据库中的数据,"时间字段"的下拉框中为何没有任何选项? (3)2.10 我想通过指定一个变量的名称来删除历史曲线控件中此变量对应的曲线,在组态王中应如何实现? (3)2.11 我有100多个设备,每个设备有10几个参数,我想通过改变设备号,在一个历史趋势曲线里查询不同设备的各个参数的历史曲线? (3)2.12 使用组态王的历史趋势曲线控件时,选择变量时能否显示变量描述? (4)2.13 使用组态王的历史趋势曲线控件时,怎样对曲线进行删除操作? (4)2.14 使用组态王的历史趋势曲线控件时,能否通过拖动游标上的直线来拖动游标,而不是只能拖动游标下的小三角块? (5)2.15 使用组态王的历史趋势曲线控件时,该控件提供了时间轴(X轴)纵向的游标,有没有数据轴(Y轴)横向的游标? (5)2.16 组态王的历史趋势曲线控件有没有曲线叠加的功能? (5)2.17 使用组态王的历史趋势曲线控件,通过ODBC数据源绘制关系数据库数据曲线时,能否只绘制符合条件的数据曲线? (6)2.18 使用组态王的历史趋势曲线控件,当我改变时间轴起始时间和结束时间时,为什么历史曲线有时候能绘制出曲线,有时又没有曲线? (7)1. 实时趋势曲线1.1我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢?早期版本的组态王中的实时曲线控件都只提供的百分比量程,在6.52版本的组态王软件中对实时曲线控件进行了修改,提供了变量实际量程的选项。
组态王历史趋势曲线控件组态王历史趋势曲线控件使用配置参考文档北京亚控科技发展有限公司技术部目录一、功能概述 (3)一、功能概述 (3)二、工程实例 (3)三、操作步骤: (3)1、历史趋势曲线控件的特点: (3)2、创建新的工程: (4)2.1) 定义设备: (4)2.2) 定义变量: (4)2.3) 创建趋势曲线: (6)2.4) 添加曲线变量: (6)3、切换到运行系统: (8)4、控件的属性、方法: (9)2.1) 控件的属性与方法: (9)2.2) 属性方法的使用举例: (17)四、注意事项 (23)图表图一定义变量压力 (5)图二定义变量流量 (5)图三记录和安全区属性 (7)图四历史趋势曲线 (7)图五历史趋势曲线 (8)图六运行系统 (9)图七画面属性 (18)图八画面命令语言编辑框 (19)图九控件属性 (20)图十画面命令语言 (21)图十一运行画面 (21)图十一控件方法的使用 (22)图十二运行画面 (23)一、功能概述常规需求:很多工业现场都会要求显示采集量的趋势曲线,包括实时曲线、历史曲线。
组态王中的趋势曲线的实现方法:1、利用组态王的“工具箱”中的“实时曲线”、“历史曲线”实现。
2、利用组态王的“插入通用控件”中的“历史趋势曲线”实现。
第一种实现方法的优点在于可以进行WEB的发布,实现通过IE浏览器进行浏览。
缺点为支持的曲线笔比较少,许多功能的实现需要通过组态王的函数来实现,使用相对要麻烦。
第二种实现方法的优点在于支持同时绘制16条曲线,功能比较完善,可以在系统运行时动态增加、删除、隐藏曲线,还可以修改曲线属性,实现无级缩放,曲线打印等等。
许多功能都不需要通过编写脚本的方法实现,使用比较方便。
缺点在于无法进行WEB的发布。
二、工程实例以一个简单的例程来说明“历史趋势曲线控件”的使用。
三、操作步骤:1、历史趋势曲线控件的特点:KVHTrend曲线控件是组态王以Active X控件形式提供的绘制历史曲线和ODBC数据库曲线的功能性工具。
第六讲趋势曲线第一节概述趋势曲线的作用趋势曲线用来反应变量随时间的变化情况。
趋势曲线有两种:实时趋势曲线和历史趋势曲线。
实时趋势曲线定义过程如下:1、新建一画面,名称为:实时趋势曲线画面。
2、选择工具箱中的工具,在画面上输入文字:实时趋势曲线。
3、选择工具箱中的工具,在画面上绘制一实时趋势曲线窗口,如图6-1所示。
图6-14、“实时趋势曲线”对象,弹出“实时趋势曲线”设置窗口,如图6-2所示。
图6-2实时趋势曲线设置窗口分为两个属性页:曲线定义属性页、标识定义属性页。
曲线定义属性页:在此属性页中您不仅可以设置曲线窗口的显示风格,还可以设置趋势曲线中所要显示的变量。
单击“曲线1”编辑框后的按钮,在弹出的“选择变量名”对话框中选择变量\\local\原料油液位,曲线颜色设置为:红色。
标识定义属性页:在此属性页中您可以设置数值轴和时间轴的显示风格。
,如图6-3所示。
图6-3设置如下:标识X轴——时间轴:有效标识Y轴——数据轴:有效起始值:0最大值:100时间轴:时、分、秒有效更新频率:1秒时间长度:20秒设置完毕后单击“确定”按钮关闭对话框。
5、单击“文件”菜单中的“全部存”命令,保存您所作的设置。
6、单击“文件”菜单中的“切换到VIEW”命令,进入运行系统,通过运行界面中“画面”菜单中的“打开”命令将“实时趋势曲线画面”打开后可看到连接变量的实时趋势曲线,如图6-4所示。
图6-4第二节历史趋势曲线历史趋势曲线简介组态王的历史趋势曲线以Active X控件形式提供的取组态王数据库中的数据绘制历史曲线和取ODBC 数据库中的数据绘制曲线的工具。
通过该控件,不但可以实现历史曲线的绘制,还可以实现ODBC数据库中数据记录的曲线绘制,而且在运行状态下,可以实现在线动态增加/删除/隐藏曲线、曲线图表的无级缩放、曲线的动态比较、曲线的打印等。
该曲线控件最多可以绘制16条曲线。
设置变量的记录属性对于要以历史趋势曲线形式显示的变量,必须设置变量的记录属性,设置过程如下:1、在工程浏览窗口左侧的“工程目录显示区”中选择“数据库”中的“数据词典”选项,在“数据词典”中选择变量\\local\原料油液位,双击此变量,在弹出的“定义变量”对话框中单击“记录和安全区”属性页,如图6-5所示。
组态王历史趋势曲线控件使用配置参考文档北京亚控科技发展有限公司技术部目录一、功能概述 (3)一、功能概述 (3)二、工程实例 (3)三、操作步骤: (3)1、历史趋势曲线控件的特点: (3)2、创建新的工程: (4)2.1) 定义设备: (4)2.2) 定义变量: (4)2.3) 创建趋势曲线: (5)2.4) 添加曲线变量: (5)3、切换到运行系统: (7)4、控件的属性、方法: (8)2.1) 控件的属性与方法: (8)2.2) 属性方法的使用举例: (14)四、注意事项 (19)图表图一定义变量压力 (4)图二定义变量流量 (5)图三记录和安全区属性 (6)图四历史趋势曲线 (6)图五历史趋势曲线 (7)图六运行系统 (8)图七画面属性 (15)图八画面命令语言编辑框 (16)图九控件属性 (16)图十画面命令语言 (17)图十一运行画面 (17)图十一控件方法的使用 (18)图十二运行画面 (19)一、功能概述常规需求:很多工业现场都会要求显示采集量的趋势曲线,包括实时曲线、历史曲线。
组态王中的趋势曲线的实现方法:1、利用组态王的“工具箱”中的“实时曲线”、“历史曲线”实现。
2、利用组态王的“插入通用控件”中的“历史趋势曲线”实现。
第一种实现方法的优点在于可以进行WEB的发布,实现通过IE浏览器进行浏览。
缺点为支持的曲线笔比较少,许多功能的实现需要通过组态王的函数来实现,使用相对要麻烦。
第二种实现方法的优点在于支持同时绘制16条曲线,功能比较完善,可以在系统运行时动态增加、删除、隐藏曲线,还可以修改曲线属性,实现无级缩放,曲线打印等等。
许多功能都不需要通过编写脚本的方法实现,使用比较方便。
缺点在于无法进行WEB的发布。
二、工程实例以一个简单的例程来说明“历史趋势曲线控件”的使用。
三、操作步骤:1、历史趋势曲线控件的特点:KVHTrend曲线控件是组态王以Active X控件形式提供的绘制历史曲线和ODBC数据库曲线的功能性工具。
历史趋势曲线1,功能概述常规需求:很多工业现场都会要求显示采集量的趋势曲线,包括实时曲线、历史曲线。
组态王中的趋势曲线的实现方法:1)利用组态王的“工具箱”中的“实时曲线”、“历史曲线”实现。
2)利用组态王的“插入通用控件”中的“历史趋势曲线”实现。
第一种实现方法的优点在于可以进行WEB的发布,实现通过IE浏览器进行浏览。
缺点为支持的曲线笔比较少,许多功能的实现需要通过组态王的函数来实现,使用相对要麻烦。
第二种实现方法的优点在于支持同时绘制16条曲线,功能比较完善,可以在系统运行时动态增加、删除、隐藏曲线,还可以修改曲线属性,实现无级缩放,曲线打印等等。
许多功能都不需要通过编写脚本的方法实现,使用比较方便。
缺点在于无法进WEB 的发布。
工程实例以一个简单的例程来说明“历史趋势曲线控件”的使用。
操作步骤1.1创建新工程打开组态王工程管理器,创建一个新工程。
1.2定义设备进入工程浏览器,在设备处新建设备,我们在本例中定义一个仿真PLC的设备,设备列表为“PLC-亚控-仿真PLC-串口”,设备名称为“PLC1”。
此仿真PLC可以做为虚拟设备与组态王进行通讯。
仿真PLC主要有如下的寄存器:自动加1寄存器INCREA,自动减1寄存器DECREA,随机寄存器RADOM,常量寄存器STATIC,常量字符串寄存器STRING,CommErr寄存器。
具体的寄存器的使用请参考组态王IO驱动帮助。
1.3定义变量在数据词典中新建两个IO变量,变量名称分别为“压力”、“流量”,变量类型为IO实数,连接的设备为前面定义的仿真PLC设备“PLC1”,寄存器分别为INCREA100,DECREA100,数据类型为short,读写属性为“只读”。
这样压力变量就会从0开始自动加1,其变化范围是0到100,流量变量从100开始自动减1,其变化范围是0到100。
变量基本属性定义画面如下图一、图二所示:图一定义变量压力图二定义变量流量在记录和安全区属性选项卡中我们定义压力和流量变量的数据记录属性,如图三所示,选择“数据变化”记录,变化灵敏度设置为0。
组态王显示数据并绘制曲线1.工程建立与通讯配置1。
1 建立工程在组态王中,建立工程非常简单,启动软件,在工程管理中新建就可以了。
您所建立的每一个应用称为一个工程.每个工程必须在一个独立的目录下,不同的工程不能共用一个目录.在每一个工程的路径下,生成了一些重要的数据文件,这些数据文件不允许直接修改的。
1.2 通讯配置通讯口设置:在组态王KingView设备栏中选择通信设备,单片机选择COM1或COM2口。
根据自己的通讯口地址建立或选取相应的串口。
组态王把那些需要与之交换数据的设备或程序都作为外部设备。
只有在定义了外部设备之后,组态王才能通过I/O变量和它们交换数据。
为方便定义外部设备,组态王设计了“设备配置向导”引导你一步步完成设备的连接,使用仿真PLC和组态王通信,仿真PLC可以模拟PLC为组态王提供数据,假设仿真PLC连接在计算机的COM1口.在组态王工程浏览器的左侧选中“COM1",在右侧双击“新建",运行“设备配置向导”。
选择“PLC”的“莫迪康-—》modbusRTU——》COM"项,单击“下一步";为外部设备取一个名称,输入“PLC1”,单击“下一步”;为设备选择连接串口,假设为COM1,单击“下一步”;填写设备地址,假设为1,单击“下一步";请检查各项设置是否正确,确认无误后,单击“完成".设备定义完成后,你可以在工程浏览器的右侧看到新建的外部设备“PLC1”。
在定义数据库变量时,你只要把I/O变量连接到这台设备上,它就可以和组态王交换数据了.接着配置COM1口通讯参数,参数为1位起始位,8位数据位,1位结束位,0位奇偶校验位,波特率为4800bps.然后定义I/O变量,右边变量模块中选中它,点击新建变量,如图1所示。
图1 定义I/O变量图这里注意的是寄存器是指要与组态王定义的变量进行连接通讯的寄存器变量名,该寄存器与工程人员指定的链接设备有关。
组态王曲线打印
在组态王中打印曲线,可以使用以下两种方法:
方法一:利用组态王的“工具箱”中的“实时曲线”和“历史曲线”功能。
这种方法可以进行WEB发布,通过IE浏览器进行浏览,但支持的曲线笔比较少,许多功能的实现需要通过组态王的函数来实现,使用相对要麻烦。
方法二:利用组态王的“插入通用控件”中的“历史趋势曲线”功能。
这种方法支持同时绘制16条曲线,功能比较完善,可以在系统运行时动态增加、删除、隐藏曲线。
在实现曲线打印功能时,根据需求和具体情境选择适合的方法,或者将这两种方法结合起来使用。
如有疑问,可以请教相关从业人员,获取更有针对性的指导。
趋势曲线常见问题解答北京亚控科技发展有限公司2010年01月目录1. 实时趋势曲线 (1)1.1 我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢? (1)1.2 使用组态王实时趋势曲线控件时,控件属性设置没有问题,但为何看不到曲线? (1)1.3 在组态王画面上添加一实时趋势曲线控件,如何修改控件的背景颜色? (1)2. 历史趋势曲线 (1)2.1 在组态王的历史趋势曲线中看不到曲线为何? (1)2.2 使用组态王的历史趋势曲线控件时,如何实现自动更新控件右侧时间为系统的当前时间? (1)2.3 使用组态王历史趋势曲线控件查询时,在查询不存在的历史数据时,组态王是如何处理的? (2)2.4 在历史趋势曲线控件中增加变量时,为何无法选择变量? (2)2.5 使用组态王提供的历史趋势曲线控件读取数据库中的数据为何显示不出曲线? (2)2.6 使用组态王历史趋势曲线控件,查询出来的趋势曲线比实际的历史数据要提前8个小时? (2)2.7 在组态王运行环境中,能否改变历史趋势曲线控件连接的曲线? (3)2.8 组态王提供的历史曲线控件中曲线形式能否画成阶梯式的而不是斜线式的? (3)2.9 通过组态王提供的历史趋势曲线控件查询Access数据库中的数据,"时间字段"的下拉框中为何没有任何选项? (3)2.10 我想通过指定一个变量的名称来删除历史曲线控件中此变量对应的曲线,在组态王中应如何实现? (3)2.11 我有100多个设备,每个设备有10几个参数,我想通过改变设备号,在一个历史趋势曲线里查询不同设备的各个参数的历史曲线? (3)2.12 使用组态王的历史趋势曲线控件时,选择变量时能否显示变量描述? (4)2.13 使用组态王的历史趋势曲线控件时,怎样对曲线进行删除操作? (4)2.14 使用组态王的历史趋势曲线控件时,能否通过拖动游标上的直线来拖动游标,而不是只能拖动游标下的小三角块? (5)2.15 使用组态王的历史趋势曲线控件时,该控件提供了时间轴(X轴)纵向的游标,有没有数据轴(Y轴)横向的游标? (5)2.16 组态王的历史趋势曲线控件有没有曲线叠加的功能? (5)2.17 使用组态王的历史趋势曲线控件,通过ODBC数据源绘制关系数据库数据曲线时,能否只绘制符合条件的数据曲线? (6)2.18 使用组态王的历史趋势曲线控件,当我改变时间轴起始时间和结束时间时,为什么历史曲线有时候能绘制出曲线,有时又没有曲线? (7)1. 实时趋势曲线1.1我发现组态王的实时曲线控件只能显示百分比量程,请问能否显示工程的实际量程呢?早期版本的组态王中的实时曲线控件都只提供的百分比量程,在6.52版本的组态王软件中对实时曲线控件进行了修改,提供了变量实际量程的选项。
1.2使用组态王实时趋势曲线控件时,控件属性设置没有问题,但为何看不到曲线?因为组态王的实时趋势曲线控件是以百分比显示曲线的,当设置的变量的量程过大,而实际采集的数据很小时,占整个量程的百分比非常小,近似于0%了,所以会感觉没有曲线显示,可以适当地修改变量的量程范围。
1.3在组态王画面上添加一实时趋势曲线控件,如何修改控件的背景颜色?选中控件,单击工具箱中的调色板图标,在弹出的调色板中选择“填充色”(调色板第一行,默认是“填充色”),然后再选择预修改的颜色即可。
2. 历史趋势曲线2.1在组态王的历史趋势曲线中看不到曲线为何?请检查如下设置是否正确:1)在组态王数据词典中定义变量时是否设置了变量的记录属性;2)变量的量程设置过大,而实际采集的数据很小,占整个量程的百分比非常小,近似于0%了,所以感觉没有曲线显示;3)计算机的系统时间被修改了,历史数据存储有误,导致曲线无法显示;2.2使用组态王的历史趋势曲线控件时,如何实现自动更新控件右侧时间为系统的当前时间?组态王提供的HTupdateTocurrentTime()函数,在组态王画面命令语言-->存在时输入如下脚本语言:历史趋势曲线.HTUpdateToCurrentTime();使用此方法也可以实现将历史趋势曲线控件作为实时趋势曲线控件来使用。
2.3使用组态王历史趋势曲线控件查询时,在查询不存在的历史数据时,组态王是如何处理的?可由用户自己选择绘制的方式,设置如下:选中历史趋势曲线控件点击鼠标右键-->在弹出的右键菜单中执行“控件属性”命令-->在弹出的历史趋势曲线属性对话框中选择“曲线”选项卡单击“增加...”按钮-->在增加曲线对话框中选择变量,并设置无效数据绘制方法,有三种方式供用户选择:虚线、不画线、实线。
2.4在历史趋势曲线控件中增加变量时,为何无法选择变量?这是因为在数据词典中定义变量时,没有设置变量的记录属性,将变量的记录属性设置完成后,即可在历史趋势曲线控件中选择变量。
2.5使用组态王提供的历史趋势曲线控件读取数据库中的数据为何显示不出曲线?请检查如下设置是否正确:1)数据库表格中的日期和时间必须写在一个字段中且字段类型必须设置为日期时间类型;2)数据库表格中必须定义一个以“毫秒”为字段名称的字段,且字段类型设置为数字类型。
2.6使用组态王历史趋势曲线控件,查询出来的趋势曲线比实际的历史数据要提前8个小时?此问题是因为计算机中的时区有问题造成的,解决方法如下:1)进入本机A注册表,删除[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones]目录下的所有文件;2)进入另外一台正常的计算机B注册表中,将[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones]目录下的文件导出到一个*.reg文件中;3)将导出的*.reg文件导入到本机A注册表中,即可解决历史数据查询错误的问题;2.7在组态王运行环境中,能否改变历史趋势曲线控件连接的曲线?可以,使用控件的ChangeCurveVarName方法来实现,调用格式:曲线控件.ChangeCurveVarName(1,"\\本站点\数据项1");2.8组态王提供的历史曲线控件中曲线形式能否画成阶梯式的而不是斜线式的?可以。
在控件属性-->增加曲线对话框中将曲线的绘制方式设置成:阶梯即可。
2.9通过组态王提供的历史趋势曲线控件查询Access数据库中的数据,"时间字段"的下拉框中为何没有任何选项?这个字段的数据类型要求是日期/时间类型的,因为在Access数据库中的字段没有日期/时间类型的,在数据库中定义一个此类型的字段即可。
2.10我想通过指定一个变量的名称来删除历史曲线控件中此变量对应的曲线,在组态王中应如何实现?组态王6.53 2008版本历史曲线控件新增了GetIdFromVarName方法,通过此方法和CurveRemove方法结合即可实现上述功能,使用方法如下:LONG GetIDFromVarName( LPCTSTR VarName);参数: VarName,即曲线下方列表中显示的变量名称,作为参数传入时,直接写入变量名称即可,不需要\\local\\或者\\本站点\\的前缀。
返回值:LONG型,成功获得返回对应的ID,否则返回-1。
这个参数可以传给CurveRemove用以删除指定ID的曲线。
调用方法如下:long F;F=Ctrl5.GetIdFromVarName("仿真变量");Ctrl5.CurveRemove(F);需要更新文件。
2.11我有100多个设备,每个设备有10几个参数,我想通过改变设备号,在一个历史趋势曲线里查询不同设备的各个参数的历史曲线?可以用下面的控件方法来实现:Void ChangeCurveVarName(LONG 1Index,STRING szNewName);功能:改变历史曲线所连接的变量,该变量数据来自组态王历史库。
参数:1Index:曲线索引号szNewName:变量名例如:定义变量V1,m为历史曲线控件名称,定义按钮弹起时m.ChangeCurveVarName(1, "\\本站点\v1");把第一条曲线连接的变量改成V1。
2.12使用组态王的历史趋势曲线控件时,选择变量时能否显示变量描述?可以,在组态王6.53最新版(开发版65.30.2003.17246,运行版65.30.2003.17369),历史趋势曲线控件,增加了组态王历史库变量描述列,增加曲线时,变量名称后面的括号中显示变量描述。
之前的版本不能显示变量描述。
2.13使用组态王的历史趋势曲线控件时,怎样对曲线进行删除操作?1)在控件属性里删除曲线。
2)通过控件方法来实现对曲线进行删除操作。
控件方法:CurveRemove(LONG nIndex)功能:删除某个变量的曲线参数: nIndex ,曲线索引号2.14使用组态王的历史趋势曲线控件时,能否通过拖动游标上的直线来拖动游标,而不是只能拖动游标下的小三角块?可以,在组态王6.53最新版(开发版65.30.2003.17246,运行版65.30.2003.17369)提供的历史趋势曲线控件加了这个功能,之前的版本没有此功能。
2.15使用组态王的历史趋势曲线控件时,该控件提供了时间轴(X轴)纵向的游标,有没有数据轴(Y轴)横向的游标?有,在组态王6.53最新版(开发版65.30.2003.17246,运行版65.30.2003.17369)提供的历史趋势曲线控件加了这个功能,之前的版本没有此功能。
移动历史趋势曲线画面上时间轴游标,在游标上的直线旁边会显示一些对应的数据轴的值,同理,移动数据轴上的游标,在其直线旁边会显示某条曲线上不同点对应的时间值。
如图所示:2.16组态王的历史趋势曲线控件有没有曲线叠加的功能?有,在组态王6.53最新版(开发版65.30.2003.17246,运行版65.30.2003.17369)提供的历史趋势曲线控件加了这个功能,之前的版本没有此功能。
可以在命令语言上通过调用属性或方法实现对变量的选择,将被选定的曲线进行累加并绘制出一条新的曲线。
控件方法:SetCurveSumFlag,如下图所示:SetCurveSumFlag(STRING strAttrName,BOOL bSet)功能:对某一曲线进行叠加与否的设置参数strAttrName:定义曲线变量的名字例如"\\本站点\datafloat2"参数bSet:为1表示曲线叠加,为0为不叠加SetCurveSumEnd(LONG nType)功能:对曲线进行叠加设置后,调用此函数才能生效。