波形判断的vb程序,求代码

波形判断的vb程序,求代码,第1张

1 波形渐变的过程是正常的; 则采用移动平均值来计算即可

2 波形上升沿和下降沿要求过滤,即要识别出上升沿和下降沿并对其不作为不良处理;可以在 移动平均值中因为突变而给过滤掉了.

3 波形中间的尖峰波谷是不良位置;也在移动平均值中能够区分出来了

4 整个程序处理时间不到1s,整个波形采集的数据大概为60000个,即64K,对于电帆谨脑来说,数据量带轿盯不算很多,足够时间来做复杂处理.

5.如果能识别出有不良存在,并且能有办法在图上做出标示的最佳; 判断到不良值时候,改用其它颜色画移动平均值即可.

移动平均值计算公式:

dim i=30 '平均值个数,可以随意更改

dim j=3 '波动范围

dim k=0

dim pv=0 平均值

dim data(i) '前若干个基础数据

for k=0 to i

pv+=data(k)

next

pv=pv/i+1

dim data2 '新蠢和数据

if data2>pv+j or data2<pv-j

'不良数据

else

pv=pv/i+data2

endif

'接受新数据,重新上面的判断

A:使用示波器保存

1.首先添加一个clock时间控件,输出时间t到一个示波器里。修改该示波拦困器参数,进入到data history,删除limit data,勾选save data to workspace,变丛乱量名t,格式array。

2.仿照上面示波器参数设置,修改你所要显示的示波器。设变量名为x

3.在MATLAB主界面(或新建一个m文件)输入:plot(t,x)

(ps:有时候t可能不止一列,需要选择一下,如:plot(t(:,1),x))

4.整理图像,选edit下copy figure,粘贴入word中。

B:使用to workspace保存

参照上面的方法,添加to workspace控件,修改变量名,修改格式为array,最简郑念后打印输出

我以前做过类似的东西,但与你的稍有区别,不过也是要显示类似波形晌稿梁的曲线。我大体说说思路吧。

1.首先你要选好一个能够显示波形的控件,我当时使用的是delphi,所以用了里面一个chart控件,你可以参考下面的网站http://www.steema.com。在c++builder里面也是有控件的,你找找看,会有绘制图表的控件的。学会使用这个图表控件。

2.数据的载入。程序开始运行时,通过file读取函数从本地读取txt文敬亏件,读出后宴运保存到内存中。

3.绘图。将读入内存中的数据传递给图表控件(可能需要对格式进行一些调整),这样就能显示出波形了。

4.滤波。巴特沃兹滤波算法你可以从通讯教材或者网上搜索到现成的代码,基本上不需要你自己编写。点击滤波按钮后,将你之前读入内存的数据进行滤波处理,然后将处理后的数据传递给图表控件,就能显示出滤波后的波形了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12328814.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存