一种显示波形的软件滤波方法

文档序号:6444588阅读:357来源:国知局
专利名称:一种显示波形的软件滤波方法
技术领域
本发明涉及医疗器械领域,尤其涉及一种显示波形的软件滤波方法。
背景技术
在目前的医疗设备诸如呼吸机、麻醉机等中,为了使用户界面更加清晰易读,相关的重要监测数据越来越多的使用图形来显示。在现有技术中,不乏对图形和曲线进行精确计算和输出的算法,但是,针对医疗设备安全、稳定和实时的特殊要求,相关的算法大多采用昂贵的高级板卡,或者普通MCU (Micro Control Unit,中文名称为微控制单元,又称单片微型计算机)的硬件AD转换后通过简单的滤波就直接使用的方法,如若仍然达不到要求,则需要对相关的硬件电路进行先期滤波,以期达到更好的效果。但是,硬件滤波往往带来时间和相位上的延迟,采用的是一种用时间来换显示效果的方法。同时,硬件滤波对硬件的稳定性形成隐患,也增加了实际的成本,这些隐患和成本都通过产品的销售最终转移到了医患人员的身上,从长远来看,不利于我国医疗事业的发展。

发明内容
为了克服硬件滤波带来的成本和隐患以及延迟,本发明提供了一种显示波形的软件滤波方法。本发明是通过以下技术方案实现的:本发明公开了一种显示波形的软件滤波方法,包括如下步骤:S1.利用MCU采集数据,并对采集数据进行ADC转换;S2.将转换后的数据,按照实际压力值和AD值的对应关系进行计算,得到实际的压力值,并将其存入缓存中;S3.对进入缓存的压力值进行个数计数,进而计算求得一个平均压力值P ;S4.根据平均压力值和每个点所对应的实际压力值,计算得到压力数值在液晶屏上的显示高度H;S5.根据实际输出显示的曲线高度是当前曲线高度和上一条曲线高度的平均值,计算得出实际输出显示的曲线高度。进一步,步骤S3具体是:根据液晶屏的分辨率和在液晶屏上显示的曲线的长度以及系统时钟,确定在一定的时间t内显示横坐标内的可以显示的点的个数,进而计算出每一个点所代表的时间tl ;根据MCU的AD采集的时间和周期,计算出在时间tl内系统采集到的压力数据的个数为M,将实际的压力值存入缓存中,并对进入缓存的压力值进行个数计数,计算求得一个平均压力值P。进一步,其中,步骤S3和步骤S4之间还包括步骤:S31.如果平均压力值P为正压,则直接使用压力数值;如果平均压力值P为负压,则对平均压力值P采用按以下算法计算:负压Pl =平均压力值P I OxSOOO0进一步,步骤S4具体是:根据液晶屏纵坐标显示的点数以及可以显示的峰值压力值,得出每个点所对应的实际压力值=峰值压力值/液晶屏纵坐标显示的点数,压力数值在液晶屏上显示的高度H =平均压力值/每个点所对应的实际压力值。进一步,其中,步骤S4和步骤S5之间还包括步骤:S41.在液晶屏显示实际的曲线高度前,对正压的曲线直接进行下一步的计算;对于负压的曲线,先对负压Pl和0X7FFF进行与运算,即负压曲线高度Hl =负压数据A&&0X7FFF,然后再进行下一步的计算。进一步,步骤S5具体是:对参与计算的曲线高度进行如下算法:实际输出显示的曲线高度h =(前一个曲线高度A+当前曲线高度B)/2 ;其中,前一个曲线的高度A为曲线高度H或Hl的前一个曲线高度,当前曲线高度B为曲线高度H或Hl的当前曲线高度。通过本发明压力曲线得到了很好的滤波,在满足实时性的基础上,有效过滤了杂波,图形曲线没有延迟等失真现象发生,而且提高了显示波形的精确度和稳定性,过滤掉了常见的杂波,同时较好的保持了波形不失真,提高的系统的可靠性。


图1是本发明实施例一种显示波形的滤波方法流程图。
具体实施例方式为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。本实施例仅以10位精度的MCU的AD转换,以及压力数据滤波为例。附图1是本发明实施例一种显示波形的滤波方法流程图,如图所示,首先,对MCU采集到的数据进行ADC (即模拟/数字转换器)转换,对转换后的数据,按照实际压力值和AD值的对应关系进行计算,进而得到实际的压力值。设置一个缓存。根据液晶屏的分辨率和在液晶屏上显示的曲线的长度以及系统时钟,可以确定在一定的时间t内显示横坐标内的可以显示的点的个数,进而可以计算出每一个点所代表的时间tl。根据MCU的AD采集的时间和周期,可以计算出在时间tl内系统可以采集到的压力数据的个数为M,将实际的压力值存入缓存中。对进入缓存的压力值进行个数计数,如缓冲数据等于M,则对M个数据进行平均,计算求得出一个平均压力值P。在这里,为了使实际显示的压力数据相位与实际的压力数据相对应,与普通方法有所区别的是没有采用普通的置标志位的方法,而是采用了以下方法:对于O轴以上的平均压力值P(即正压),直接使用压力数值;对于O轴以下的平均压力值P(即负压),对平均压力值P采用按以下算法计算:负压Pl =平均压力值P 10x8000。根据液晶屏纵坐标显示的点数以及可以显示的峰值压力值,可以得出每个点所对应的实际压力值=峰值压力值/液晶屏纵坐标显示的点数。所以,压力数值在液晶屏上显示的高度H =平均压力值/每个点所对应的实际压力值。在液晶屏显示实际的曲线高度前,对正压的曲线直接进行下一步的计算;对于负压的曲线,先对负压Pl和0X7FFF进行“与”运算,即负压曲线高度Hl =负压数据A&&0X7FFF,然后再进行下一步的计算。接下来,对参与计算的曲线高度(H和Hl)进行如下算法:实际输出显示的曲线高度h =(前一个曲线高度A+当前曲线高度B)/2 ;其中,前一个曲线的高度A为曲线高度H或Hl的前一个曲线高度,当前曲线高度B为曲线高度H或Hl的当前曲线高度。也就是说,实际显示的曲线高度是当前曲线高度和上一条曲线高度的平均值。本发明的关键点在于组合滤波的方式和顺序。方案不限于压力数据的处理,对于流速等数据的处理也可以采用,同时,对硬件的AD采集精度和系统时钟也不做限制,可以根据实际情况进行组合。通过以上技术方案的实施,压力曲线得到了很好的滤波,在满足实时性的基础上,有效过滤了杂波,图形曲线没有延迟等失真现象发生,降低了成本的同时,提高的系统的可靠性。上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式
,上述的具体实施方式
仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
权利要求
1.一种显示波形的软件滤波方法,其特征在于,包括如下步骤: 51.利用MCU采集数据,并对采集数据进行ADC转换; 52.将转换后的数据,按照实际压力值和AD值的对应关系进行计算,得到实际的压力值,并将其存入缓存中; 53.对进入缓存的压力值进行个数计数,进而计算求得一个平均压力值P; 54.根据平均压力值和每个点所对应的实际压力值,计算得到压力数值在液晶屏上的显不闻度H ; 55.根据实际输出显示的曲线高度是当前曲线高度和上一条曲线高度的平均值,计算得出实际输出显示的曲线高度。
2.根据权利要求1所述的显示波形的软件滤波方法,其特征在于,步骤S3具体是:根据液晶屏的分辨率和在液晶屏上显示的曲线的长度以及系统时钟,确定在一定的时间t内显示横坐标内的可以显示的点的个数,进而计算出每一个点所代表的时间tl ;根据MCU的AD采集的时间和周期,计算出在时间tl内系统采集到的压力数据的个数为M,将实际的压力值存入缓存中,并对进入缓存的压力值进行个数计数,计算求得一个平均压力值P。
3.根据权利要求1所述的显示波形的软件滤波方法,其特征在于,其中,步骤S3和步骤S4之间还包括步骤: S31.如果平均压力值P为正压,则直接使用压力数值;如果平均压力值P为负压,则对平均压力值P采用按以下算法计算:负压Pl =平均压力值P I OxSOOO0
4.根据权利要求1所述的显示波形的软件滤波方法,其特征在于,步骤S4具体是:根据液晶屏纵坐标显示的点数以及可以显示的峰值压力值,得出每个点所对应的实际压力值=峰值压力值/液晶屏纵坐标显示的点数,压力数值在液晶屏上显示的高度H =平均压力值/每个点所对应的实际压力值。
5.根据权利要求1所述的显示波形的软件滤波方法,其特征在于,其中,步骤S4和步骤S5之间还包括步骤: S41.在液晶屏显示实际的曲线高度前,对正压的曲线直接进行下一步的计算;对于负压的曲线,先对负压Pl和0X7FFF进行与运算,即负压曲线高度Hl =负压数据A&&0X7FFF,然后再进行下一步的计算。
6.根据权利要求1至5之一所述的显示波形的软件滤波方法,其特征在于,步骤S5具体是:对参与计算的曲线高度进行如下算法:实际输出显示的曲线高度h =(前一个曲线高度A+当前曲线高度B)/2 ;其中,前一个曲线的高度A为曲线高度H或Hl的前一个曲线高度,当前曲线高度B为曲线高度H或Hl的当前曲线高度。
全文摘要
本发明公开了一种显示波形的软件滤波方法,包括S1.利用MCU采集数据,并对采集数据进行ADC转换;S2.将转换后的数据,按照实际压力值和AD值的对应关系进行计算,得到实际的压力值,并将其存入缓存中;S3.对进入缓存的压力值进行个数计数,进而计算求得一个平均压力值P;S4.根据平均压力值和每个点所对应的实际压力值,计算得到压力数值在液晶屏上的显示高度H;S5.计算得出实际输出显示的曲线高度。通过本发明压力曲线得到了很好的滤波,在满足实时性的基础上,有效过滤了杂波,图形曲线没有延迟等失真现象发生,而且提高了显示波形的精确度和稳定性,同时较好的保持了波形不失真,提高的系统的可靠性。
文档编号G06F19/00GK103186706SQ20111045624
公开日2013年7月3日 申请日期2011年12月30日 优先权日2011年12月30日
发明者刘建军 申请人:北京谊安医疗系统股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1