Graph数据波形显示控件的功能介绍

来源:互联网 发布:java数组的定义 编辑:程序博客网 时间:2024/06/01 15:43

 Graph数据波形显示控件的功能介绍

   本文中的数据波形显示控件Graph采用ActiveX技术开发,用于显示仪器采集进来的数据,在计算机中屏幕上进行波形连续滚动显示,实现虚拟示波器的功能,非常适合应用在工业控制中数据的图形化显示。

  Graph控件可在各种编程环境中使用,包括Visual Basic、Visual C++、Delphi、Excel和Word。在同一个软件界面上可以包括多个波形界面,无需重复编写代码。Graph控件的注册见本人的博客的另一篇文章《ActiveX控件的使用方法》。下面介绍Graph控件的功能。 

1、用户鼠标右键点击Graph控件,会出现图1中所示的快捷菜单,各菜单项的功能见表1。

图1 Graph图形显示控件

  图1为采用数据波形显示控件Graph开发出来的软件的界面。

表1 Graph控件快捷菜单功能表

菜单项

子菜单项

功能

显示坐标

显示X坐标

显示鼠标所处点的X坐标,通过单击鼠标左键实现测量线的拾取,放下功能。

显示Y坐标

显示鼠标所处点的Y坐标,通过单击鼠标左键实现测量线的拾取,放下功能。

关闭显示

关闭坐标显示

游标测量

水平测量

进行X轴的游标测量,通过单击鼠标左键实现游标的拾取,放下功能。

垂直测量

进行Y轴的游标测量,通过单击鼠标左键实现游标的拾取,放下功能。

关闭游标

关闭游标测量

Y轴显示

范围

自动调整

自动调整刻度,Y方向满屏显示采集进来的数据

自定义

自主设置显示范围和跟踪阈值

显示模式

固定长度

屏幕中每个象素点显示一个数据

压缩模式

X方向满屏显示采集进来的数据

坐标转换

X轴坐标转换

X轴乘以一个系数Kx,转换成另一个单位

Y轴坐标转换

Y轴乘以一个系数Ky,转换成另一个单位

显示网络

——

标记菜单,显示/不显示网格

显示坐标轴单位

——

标记菜单,显示/不显示坐标轴单位

曲线移动

X方向移动

X方向移动图形

Y方向移动

Y方向移动图形

清除数据

——

清除前面采集进来的数据

粗线条显示

——

标记菜单,用粗/细线条画图形

线条颜色

 

选择线条颜色,选项有红、绿、蓝、黑

 

  跟踪阈值:当最新采集进来的数dt(n)与前一时刻采集进来的数dt(n-1)的差小于跟踪阈值时,Graph控件将屏幕中最大值Max和最小值Min的平均值(Max+Min)/2画在屏幕中央;当dt(n)与dt(n-1)的差大于跟踪阈值时,则将最新采集进来的数dt(n)画在屏幕中央。比如跟踪阈值设为5,若当前采集的值与上一时刻采集的值的差在5以上,则Graph控件自动将当前采集的值画在屏幕中央;否则Graph控件将屏幕中最大值和最小值的平均值(Max+Min)/2画在屏幕中央。此项功能满足了自动跟踪当前值的需要。跟踪阈值的设置根据实际需要来定。

  坐标转换:(1) X轴乘以一个系数Kx,转换成另一个单位。如Graph控件每0.5秒收到一个数据,则Kx设成0.5。此时“显示X坐标”、“X方向游标测量”、“显示坐标单位”功能将按转换成秒的单位显示。(1) Y轴乘以一个系数Ky,转换成另一个单位。如Graph控件接收的数据的原始单位为伏特(V),则Ky设成1000。此时“显示Y坐标”、“Y方向游标测量”、“显示坐标单位”功能将按转换成毫伏(mV)的单位显示。

  除快捷菜单中提供的功能外,Graph控件还可通过滚动鼠标滚轮进行图形的放大、缩小,平移等功能。

2、Graph控件提供给软件开发人员的接口

  (1) AddPoint函数,将一个数据加入到Graph控件的显示队列;(2) SaveSetting函数,保存Graph控件当前的设置值,这样下次启动程序时的设置值还是上次所设置的参数。需要指定保存的文件名,如“1.txt”。强烈建议在程序关闭时使用此函数;(3) LoadSetting函数,从文件中装载设置的参数。需要指定文件名,如“1.txt”,强烈建议在启动程序时使用此函数。

  比如在工程中添加了一个Graph控件对象m_ctrlGraph1,则可通过m_ctrlGraph1.AddPoint(a)往Graph控件添加数据并显示出来,参数a为浮点型的数。在程序启动时调用m_ctrlGraph1.LoadSetting("1.txt")函数,在程序退出时调用m_ctrlGraph1.SaveSetting("1.txt")函数,以确保每次程序启动时的参数与上一次使用时相一致,从而实现参数的持久性。1.txt为保存参数的文件的名称,注意LoadSetting和SaveSetting中的文件名必须一致。

  注意事项:同一个控件的SaveSetting和LoadSetting中的文件名必须一致,如都为“1.txt”。若一个程序工程中含多个Graph控件,则SaveSetting和LoadSetting中的文件必须有差别,如第一个Graph控件m_ctrlGraph1启动和关闭程序时采用m_ctrlGraph1.LoadSetting(“1.txt”)、m_ctrlGraph1.SaveSetting(“1.txt”),则第二个Graph控件m_ctrlGraph2启动和关闭程序时采用m_ctrlGraph2.LoadSetting(“2.txt”)、m_ctrlGraph2.SaveSetting(“2.txt”)。

  

  Graph控件的下载在本人的“资源”里面。如有问题或有需要改进的地方,可与本人联系,E-Mail:fanghb1984@163.comQQ:275185019,本人将免费进行修改!

         欢迎交流!