粮油仪器网致力打造专业粮油仪器信息平台,本页面详细介绍微型图框在虚拟仪器中的效用探究详细信息!

微型图框在虚拟仪器中的效用探究

来源: http://www.grainyq.com  类别:实用技术  更新时间:2012-07-04  阅读
【本资讯由中国粮油仪器网提供】

1图片框坐标概述

2数字存储示波器的波形重建

首先确定波形在屏幕显示范围,即X向像素点×Y向像素点,再把图片框划分为8行10列,共有80个小格,其中电压区域在上面的40格为正,下面40格为负。图片框的X轴表示时基,Y轴表示电压值。图片框的Y方向像素值固定,图片框的X电压值用Picture.ScaleWidth=存储深度值/n设置,选择不同的存储深度有不同的X轴长度,n依需要定:n=1显示全部存储深度的数据波形;n=2则显示1/2存储深度的数据波形,且时基随Picture.

ScaleWidth值变化。则依Picture.Scale Width变化,存储深度范围可设置观看任意长度数据,加上滚动条控件的移动可观察前后的数据。在重新设置存储深度后须重新设置图片框的X轴长度。

灵敏度是数字存储示波器能显示的最大电压值。对同一个输入信号,屏幕上的波形幅值随灵敏度的增加而变低,随灵敏度的降低而增高。要正确重建波形,须正确计算图片框Y轴方向的电压值和计算X轴的时间显示值,Y轴反映输入信号的幅值,X轴时间数字反映输入信号的周期。先用灵敏度和Y方向上的最大像素值计算出1V电压对应的像素值,再计算A/D转换的电压值,两值相乘则为电压对应的像素值。计算电压对应的像素值代码:ChKK=(Ymax/2)/ChSensitivi ty Ymax为图片框Y轴最大像素值;ChSensitivity为设置电压灵敏度;ChKK―1V对应的像素值。

图片框坐标左上角为0,垂直向下Y轴增加,水平向右X轴增加,0V水平线在图片框的中间,正电压在0V水平线上方,而负电压在下方。因此,ChPixel(i)=ChPixel(i)(-1),绘制图形代码如下:For i=1 To DataLegth-1 Picture.Line ((i-1), Y0+ChPixel(i-1+MoveValue))-(i, Y0 + ChPixel(i +MoveValue)), HFF00 Next i //DataLegth―存储深度,Y0―0V的Y轴中心位置//MoveValue―滚动条移动位置值X轴显示值是数字存储示波器的时基,与采样频率、存储深度有关,即:TimeValue=(1/采样频率)×(存储深度值/n)/10 TimeValue是每个小格的时间,因图片框划分成8行10列,所以需除以10.

3任意波形发生器的自定义波形输出

任意波形发生器可输出标准波形和自定义波形。选择自定义波形时,用户采用鼠标绘图方式绘制所需波形,而图形绘制是在图片框中进行,在程序可视化界面上放置图片框,其大小可任意,然后用D/A的分辨率定义该图片框的高度:Picture.ScaleHeight=D/A分辨率用任意波形发生器要求的一个周期的数据个数定义该图片框宽度:Picture.ScaleWidth=数据个数图片框的坐标是左上角为0,垂直向下Y轴增加,水平向右X轴增加。程序通过MouseDown、MouseUp、MouseMove事件对鼠标位置及状态的变化作出响应,图片框的MouseDown、MouseUp、MouseMove事件返回鼠标当前位置的坐标值X、Y.

在MouseDown与MouseUp事件里通知应用程序开始绘图与停止绘图。按下鼠标按钮触发MouseDown事件,记录鼠标的X、Y位置作为起始位置;按住鼠标在图片框上拖动指针时,不断触发MouseMove事件,该事件与Line方法结合把鼠标移动的轨迹画线并把鼠标的X、Y坐标存入以X为序的数组中,数组存的Y值是输出到D/A的二进制值。由于鼠标经图片框的每个像素时,并不产生MouseMove事件,在X不连续的地方,则需要线性插值:Picture.Line (OldX, OldY)-(X, Y), QBColor(0)XPos(X)=X: YPos(X)=Y DiffX=X-OldX If (diffX >= 2) Then //开始插值Dd=(Y-OldY)/diffX For i=OldX+1 To X-1 XPos(i)=i YPos(i)=YPos(OldX)+dd (i-OldX)Next i End If //插值结束OldX=X: OldY=Y释放鼠标按钮触发MouseUp事件,结束绘图。

此时可将Ypos(i)值以产生波形输出。如用户不满意需修改,则在绘好的图形上在需修改的位置按下鼠标按钮,拖动鼠标,程序将当前鼠标位置存入先前数组,替换原来位置的值,释放鼠标时,程序用保存的数组重新绘制图形,并将数组的值输出。

4结语

采用VB图片框的ScaleWidth、ScalHeight自定义刻度属性,可灵活、直观地进行程序设计。将其应用于虚拟仪器程序,可缩短程序的开发时间。http://www.grainyq.com

中国粮油仪器网】部分文章转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,且不承担此类作品侵权行为的直接责任及连带责任。如其他媒体、网站或个人从本网下载使用,自负版权等法律责任。如涉及作品内容、版权和其它问题,请在30日内与本网联系。
最近更新仪器
推荐仪器
相关新闻
热门产品