- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在VB下设计开发实时的数据采集曲线09822.doc
在VB下设计开发实时的数据采集曲线
1. 引言
在笔者参与过的开发的机组轴瓦控制系统中,要求能够实时采集轴瓦转动速度值,并能根据实时采集到的数据绘制出V在10分钟内变化的短期趋势图和一日内变化的长期趋势图,以便观测轴瓦转动的趋势情况,查看控制效果。该系统在VB6.0环境下进行开发,开始时采用了VB包含的Activex控件技术绘制曲线,在效果不理想的情况下,笔者利用VB绘画函数,最终成功实现了实时数据采集曲线的绘制与显示。笔者将以轴瓦实时采集速度值V的短期趋势图为例,谈一下实时采集曲线的设计与实现过程。
2. 绘图控件的选择
系统开发初期,采用VB内所含的Activex控件技术来解决实时采集曲线的绘制问题。VB控件中提供了外部Activex控件Mschart来给该应用程序添加图表功能,用它能创建包括条形、饼形、线形等不同类型的三维图表。利用该控件,可对表中的所有项目进行完全控制,例如标题、图表、脚注、轴、数据点系列等等,甚至还能旋转图表,为每一元素加上背景、设置光源,把它们放在想要的地方。
本系统中需要实时测量轴瓦速度V的实际值,并根据实时更新的短期速度数据数组、长期速度数据数组分别绘制短期趋势曲线图与长期趋势曲线图,这两个趋势图均是速度值(Y轴)和时间(X轴)的关系曲线,并随着时间变动实时更新,以便观测。
短期趋势图的绘制,由于测量10分钟内的数据,每一秒测量一次,因此每10分钟内都有600个数据,为绘制曲线,还要赋予一个初值,所以速度短期数据定义为长度为601的数组。将数据初始化后,利用Mschart控件得到如下图所示的短期趋势模拟图。
该图的静态显示外观比较理想,但是每秒一次的数据更新使屏幕每秒钟都会引起由于重绘带来的闪烁,这大大降低了图形界面的可视性与美观性。由此可见,Mschart控件不太适用于绘制实时数据采集系统的相关曲线。为了解决这个难题,笔者尝试利用了VB提供的绘画函数等简单易用的多媒体实现技术,并取得了非常好的效果,以下是我们的实现步骤。
3. 绘图函数的使用
在计算机应用中、图形程序设计通常是一种比较复杂的劳动,在以前的传统语言如C语言,绘制图形是一件非常麻烦的事,在真正开始绘图前需要做大量的工作。但是在VB6.0中,绘图却变得十分轻松,它的基本图形包括点、直线、矩形、圆和椭圆。使用绘图函数绘制的图形既可以将窗体作为容器,也可以将VB中的控件Picturebox作为容器。在实时采集数据曲线中只需用到直线的绘制方法,在VB中画直线是通过line函数来实现的,它的语法为:
object.Line[Step1](x1,y1)[Step2](x2,y2),[color],[B],[F]
其中,可选项Step1设置起点坐标相对于当前图形位置图标的偏移量;(x1,y1) 指定直线的起点坐标或矩形的左上角坐标;可选项Step2设置终点坐标相对于当前图形位置图标的偏移量;(x2,y2)指定直线的终点坐标或矩形的右下角坐标;color是指绘画所用的RGB颜色,可以被忽略。在绘制直线时,line函数的B和F都不选。
4. 实时采集数据曲线的绘制
绘制实时采集数据曲线是为了实时观测,以便掌握实时采集数据变动的趋势,使曲线显示效果最佳。绘制曲线前要将需要的绘图范围及坐标轴的尺寸刻度设定好,然后根据速度测量结果及采集时间绘制实时测量曲线。
4.1 坐标轴与网格设置
新建Form,将属性name设为frmchart,在窗体上添加控件Picturebox作为趋势图的显示容器,同时,为降低绘图复杂性,并能控制图片背景,我们添加了一个Shape控件并选取该控件的矩形作为绘图范围,以该矩形的下边线为横坐标,左边线为纵坐标。由于速度范围5mm/s,控制时间为10分钟,因此我们利用控件将左边线分为5格,每格代表速度最大测量范围的1/5,即1mm/s,将下边线分为10格,每格代表1分钟。
4.2 实时采集数据曲线绘制
图2 短期趋势示意图
在做好上述步骤的基础上,笔者利用Picturebox的Line方法得到了如图2所示的较为理想的实时曲线绘制效果。
4.3 程序实现代码
绘制实时采集数据曲线的程序源代码如下:
Dim x0, y0, h, w
Dim I as integer
x0 = Shape1.LeftO:P
y0 = Shape1.Top + Shape1.Height
h = Shape1.Height / 1
w = Shape1.Width / 300
Picture1.ForeColor = QBColor(1)
Picture1.Cls
Y1 = Shape1.Height
For I=0 to 600
Picture1.Line (x0 + i * w, y0 - dqsj(i) * h)-(x0 +
您可能关注的文档
- 动脉硬化的成因,防治,及食疗.doc
- 动脉硬化的成因与治疗.doc
- 动脉粥样硬化性重度颈动脉狭窄的支架置入研究手册.doc
- 动脉血气实例分析——简易、快速三步诊断法.doc
- 励磁系统在电力中的作用.doc
- 励磁系统常见故障处理.doc
- 劳动与技术五、-.doc
- 勃起功能障碍的诊断.x.docx
- 勃起功能障碍药物治疗的注意事项.x.docx
- 化妆品中过氧化氢的检测方法.doc
- 2023-2024学年湖南省湘西州高一下期末数学试卷附答案解析.docx
- 2023-2024学年四川省凉山州高一下期末数学试卷附答案解析.docx
- 2023-2024学年山东省日照市高一下期末数学试卷附答案解析.docx
- 2023-2024学年河北省张家口市高一下期末数学试卷附答案解析.docx
- 2023-2024学年山东省枣庄市高一下期末数学试卷附答案解析.docx
- 2023-2024学年四川省成都市高一下期末数学试卷附答案解析.docx
- 2023-2024学年四川省成都七中高一下期末数学试卷附答案解析.docx
- 2023-2024学年陕西省咸阳市高一下期末数学试卷附答案解析.docx
- 2023-2024学年山东省泰安市高一下期末数学试卷附答案解析.docx
- 黑龙江省哈尔滨市九中2024-2025年4月考试高二语文试卷.docx
文档评论(0)