一种基于FPGA的脉搏波信号发生器及方法.pdf

上传人:b*** 文档编号:8073412 上传时间:2019-12-25 格式:PDF 页数:28 大小:7.40MB
返回 下载 相关 举报
摘要
申请专利号:

CN201310034203.8

申请日:

20130129

公开号:

CN103054564B

公开日:

20141001

当前法律状态:

有效性:

有效

法律详情:

IPC分类号:

A61B5/02

主分类号:

A61B5/02

申请人:

东北大学

发明人:

徐礼胜,王昊,王璐,宋丹,陈珏丽,伏全海

地址:

110819 辽宁省沈阳市和平区文化路3号巷11号

优先权:

CN201310034203A

专利代理机构:

沈阳东大知识产权代理有限公司

代理人:

梁焱

PDF下载: PDF下载
内容摘要

一种基于FPGA的脉搏波信号发生器,包括LCD显示器、示波器、FPGA、触摸屏、电源、AD转换装置和DA转换装置;DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输入端连接FPGA,AD转换装置输出端连接触摸屏,LCD显示器连接FPGA,电源连接LCD显示器。本发明方法采用两种方式产生脉搏波波形,一种方式是通过高斯函数-Cosine函数结合的方式,分段拟合脉搏波得到最后的完整波形,省去了整个波形所浪费的存储空间,具有专一性;另一种方式是采用弹性腔模型模拟血管情况,模拟出两个血管弹性腔,通过参数的改变,可以产生低阻力,中阻力,高阻力,超高阻力四种情况下的脉搏波波形。两种方式均能在信号数据未知的前提下,由用户设定得到准确脉搏波波形输出。

权利要求书

1.一种基于FPGA的脉搏波信号发生器,包括触摸屏、LCD显示器、示波器、FPGA、电源、AD转换装置和DA转换装置;所述电源用于为LCD显示器、触摸屏、AD转换装置和DA转换装置供电;所述AD转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标数字值传输至FPGA;所述DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至示波器;所述FPGA用于产生脉搏波信号并将其传输至LCD显示器或示波器进行脉搏波波形显示;                                                                              所述DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输出端连接FPGA,AD转换装置输入端连接触摸屏,LCD显示器连接FPGA,电源连接LCD显示器;其特征在于:所述FPGA设置有波形选择模块、特征点选取模块、波形拟合模块、噪声叠加及信噪比设定模块、基线漂移模块、触摸屏去抖动模块和血管弹性腔仿真模块;所述波形选择模块用于提供可选的输出波形类型并选择;所述特征点选取模块用于对波形选择模块选择的波形进行特征点选取;                               所述波形拟合模块用于利用高斯-cosine函数将特征点选取模块选取的特征点拟合成波形;所述血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管弹性腔内血液流动状态产生波形;所述噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿真模块产生的波形叠加噪声信号并设定信噪比;所述基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移;所述触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。 2.采用权利要求1所述的基于FPGA的脉搏波信号发生器进行脉搏波信号发生的方法,其特征在于:包括如下步骤:步骤1:点击触摸屏的四个边界点,得到该四个边界点的坐标值并保存,根据四个边界点的坐标值、触摸屏长度和触摸屏宽度得到任意一点坐标值,完成触摸屏坐标校正;步骤2:选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动,所述波形产生方式包括波形拟合和血管弹性仿真:若选择波形拟合,则执行步骤3,若选择血管弹性仿真,则执行步骤6;步骤3:选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动,所述输出波形类型包括I型滑脉、II型滑脉、I型弦脉、II型弦脉和III型弦脉;步骤4:根据选择的输出波形类型,选取特征点并去除由点击触摸屏引起的触摸屏抖动;步骤5:依次连接两个相邻的特征点,利用高斯函数-cosine函数结合的方法,分段拟合波形,若干分段波形整合得到脉搏波波形,并去除由点击触摸屏引起的触摸屏抖动,然后执行步骤7;步骤6:采用弹性腔模型将人体主动脉模拟成两个血管弹性腔,其中一个血管弹性腔表征主动脉弓,另一个血管弹性腔表征腹主动脉,通过两个血管弹性腔仿真出该血管弹性腔内血液流动状态形成波形,选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏抖动,血管弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、腹主动脉的血管弹性腔的集总顺应性、 连接两个血管弹性腔的血柱及外周阻力;步骤7:在波形中叠加噪声信号并设定信噪比,并去除由点击触摸屏引起的触摸屏抖动;步骤8:对加入噪声信号并设定信噪比后的波形设定基线漂移,得到噪声和基线漂移的脉搏波波形;步骤9:将脉搏波波形通过LCD显示器或示波器显示。 3.根据权利要求2所述的脉搏波信号发生的方法,其特征在于:步骤4中所述的根据选择的输出波形类型选取特征点,是根据所选择的波形,在每个周期中,选取幅值最大的点、斜率值最大的点、初始点、结束点、拐点和驻点作为特征点。 4.根据权利要求2所述的脉搏波信号发生的方法,其特征在于:所述去除由点击触摸屏引起的触摸屏抖动,具体方法是:点击触摸屏一点并保存其坐标,再次点击该点并保存其坐标,分别比较两次点击得到的点的横坐标绝对值之差和纵坐标的绝对值之差,若横坐标绝对值之差或纵坐标的绝对值之差大于5,则视为触摸屏存在干扰,第二次点击的坐标无效,若横坐标绝对值之差或纵坐标的绝对值之差小于5,则视为触摸屏无干扰,第二次点击的坐标有效,此时将第二次点击的有效坐标与第一次点击所保存的坐标的横纵坐标对应相加并取平均值,得到该点坐标结果。 5.根据权利要求2所述的脉搏波信号发生的方法,其特征在于:步骤7所述的噪声信号包括50Hz工频噪声,高斯白噪声和均匀分布的噪声。

说明书

技术领域

本发明属于信号发生器技术领域,具体涉及一种基于FPGA的脉搏波信号发生器及方法。

背景技术

如《基于C8051F020单片机的脉搏波信号发生器的设计》论文所述,李洋等人设计了一 种脉搏波信号发生器,能够发出代替人体实际脉搏波的信号,将其发送至各类脉搏波信号检 测仪器中,以求调试和检查这类仪器的性能指标。但是该项设计中,信号发生器需要与上位 机相连,由于需要存储整个波形数据,所以大容量的Flash芯片才能达到要求。发生器只是单 纯地将上位机中的已存在的波形数据通过液晶屏和示波器显示出来,添加一些功能模块,这 都是在已经获得脉搏波数据的前提下,才能完成的。若没有波形数据,信号发生器也达不到 显示波形的目的。

又如专利号为200720103587.1的实用新型专利“数字式脉搏波信号发生器”中,使用单 片机作为处理器,产生脉搏波,用作脉搏波仪器检测设备,但是,该专利只能通过与PC机 相连,通过USB数据线,将PC中的脉搏波数据下载到EPROM中,通过LCD和示波器显示 波形,也只是单纯地做到显示波形的作用,需要已知大量的脉搏波数据才能使设备达到其作 用,这样就局限了该数字式脉搏波信号发生器在检测脉搏波仪器时发挥的作用。

此外,有一些信号发生器,只能输出正弦波、方波等简单信号,还有些脉搏波信号发生 器,只有在电脑中存储完整的脉搏波数据,才能显示出最后的波形,显然这给我们平时的使 用带来很多不便。

发明内容

针对现有技术存在的不足,本发明提供一种基于FPGA的脉搏波信号发生器及方法。

本发明的技术方案是:

一种基于FPGA的脉搏波信号发生器,包括触摸屏、LCD显示器、示波器、FPGA、电 源、AD转换装置和DA转换装置;

所述电源用于为LCD显示器、触摸屏、AD转换装置和DA转换装置供电;

所述AD转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标数 字值传输至FPGA;

所述DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至 示波器;

所述FPGA用于产生脉搏波信号并将其传输至LCD显示器或示波器进行脉搏波波形显 示;

所述DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输 出端连接FPGA,AD转换装置输入端连接触摸屏,LCD显示器连接FPGA,电源连接LCD 显示器。

所述FPGA设置有波形选择模块、特征点选取模块、波形拟合模块、噪声叠加及信噪比 设定模块、基线漂移模块、触摸屏去抖动模块和血管弹性腔仿真模块;

所述波形选择模块用于提供可选的输出波形类型并选择;

所述特征点选取模块用于对波形选择模块选择的波形进行特征点选取;

所述波形拟合模块用于利用高斯-cosine函数将特征点选取模块选取的特征点拟合成波 形;

所述血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管弹性 腔内血液流动状态产生波形;

所述噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿真模 块产生的波形叠加噪声信号并设定信噪比;

所述基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移;

所述触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。

采用所述的基于FPGA的脉搏波信号发生器的脉搏波信号发生方法,包括如下步骤:

步骤1:点击触摸屏的四个边界点,得到该四个边界点的坐标值并保存,根据四个边界 点的坐标值、触摸屏长度和触摸屏宽度得到该任意一点坐标值,完成触摸屏坐标校正;

步骤2:选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动,所述波形产生方式 包括波形拟合和血管弹性仿真:若选择波形拟合,则执行步骤3,若选择血管弹性仿真,则 执行步骤6;

步骤3:选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动,所述输出波形类型 包括I型滑脉、II型滑脉、I型弦脉、II型弦脉和III型弦脉;

步骤4:根据选择的输出波形类型,选取特征点并去除由点击触摸屏引起的触摸屏抖动;

所述的在选择的输出波形上选取特征点,是根据所选择的波形,在每个周期中,选取幅 值最大的点、斜率值最大的点、初始点、结束点、拐点和驻点作为特征点。

步骤5:依次连接两个相邻的特征点,利用高斯函数-cosine函数结合的方法,分段拟合 波形,若干分段波形整合得到脉搏波波形,并去除由点击触摸屏引起的触摸屏抖动,然后执 行步骤7;

步骤6:采用弹性腔模型将人体主动脉模拟成两个血管弹性腔,其中一个血管弹性腔表 征主动脉弓,另一个血管弹性腔表征腹主动脉,通过两个血管弹性腔仿真出该血管弹性腔内 血液流动状态形成波形,选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏抖动,血管 弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、腹主动脉的血管弹性腔的集总顺应性、 连接两个血管弹性腔的血柱及外周阻力;

步骤7:在波形中叠加噪声信号并设定信噪比,并去除由点击触摸屏引起的触摸屏抖动;

所述的噪声信号包括50Hz工频噪声,高斯白噪声和均匀分布的噪声。

步骤8:对加入噪声信号并设定信噪比后的波形设定基线漂移,得到噪声和基线漂移的 脉搏波波形;

步骤9:将脉搏波波形通过LCD显示器或示波器显示。

所述去除由点击触摸屏引起的触摸屏抖动,具体方法是:点击触摸屏一点并保存其坐标, 再次点击该点并保存其坐标,分别比较两次点击得到的点的横坐标绝对值之差和纵坐标的绝 对值之差,若横坐标绝对值之差或纵坐标的绝对值之差大于5,则视为触摸屏存在干扰,第 二次点击的坐标无效,若横坐标绝对值之差或纵坐标的绝对值之差小于5,则视为触摸屏无 干扰,第二次点击的坐标有效,此时将第二次点击的有效坐标与第一次点击所保存的坐标的 横纵坐标对应相加并取平均值,得到该点坐标结果。

有益效果:

本发明采用两种方式产生脉搏波波形,一种方式是通过高斯函数-Cosine函数结合的方 式,分段拟合脉搏波得到最后的完整波形,省去了整个波形所浪费的存储空间,实现了真正 意义上的脉搏波发生装置,具有专一性;另一种方式是采用弹性腔模型模拟血管情况,模拟 出两个血管弹性腔,通过参数的改变,可以产生低阻力、中阻力、高阻力、超高阻力四种情 况下的脉搏波波形。两种方式均能在信号数据未知的前提下,由用户设定得到准确脉搏波波 形输出。

本发明的脉搏波信号发生器采用FPGA作为信号处理器,相对于其它开发平台(例如单 片机),FPGA可进行并行数据处理,有更快的运行速度,可以连接更多的外围设备,有利于 系统功能的后续添加,从根本上解决了由于开发平台的不足导致的系统功能的缺陷;而且克 服了其他信号发生器的缺点——只能产生简单的波形,需要完整的脉搏波数据,需要大容量 的Flash存储数据等。采用LCD显示器,触摸屏和示波器组成的与用户的交互界面,使操作 更加简单,用户可以根据需要快速地完成相应操作,有很大的实用价值。

通过实验证明,本发明的基于FPGA的脉搏波信号发生方法所得到的脉搏波波形与实际 波形的相对误差小于3%,与现有技术中的脉搏波发生器相比,大幅提高了拟合后波形的准确 度,最大程度的降低了误差对最后结果的影响。为最大程度的模拟实际脉搏波的波形,本方 法添加不同类型噪声,并设置信噪比,对波形加入基线漂移,让最后得到的脉搏波更有实际 的利用价值。

附图说明

图1为本发明具体实施方式的基于FPGA的脉搏波信号发生器结构框图;

图2为本发明具体实施方式的基于FPGA的脉搏波信号发生方法流程图;

图3为本发明具体实施方式的五种类型的输出波形图;

图4为本发明具体实施方式的弹性腔模型示意图;

图5为本发明具体实施方式的弹性腔模型等效电路图;

图6为本发明具体实施方式的低阻力类型的弹性腔模型输出的脉搏波波形图;

图7为本发明具体实施方式的中阻力类型的弹性腔模型输出的脉搏波波形图;

图8为本发明具体实施方式的高阻力类型的弹性腔模型输出的脉搏波波形图;

图9为本发明具体实施方式的超高阻力类型的弹性腔模型输出的脉搏波波形图;

图10为本发明具体实施方式的叠加50Hz工频噪声后的脉搏波波形图;

图11为本发明具体实施方式的叠加高斯白噪声后的脉搏波波形图;

图12为本发明具体实施方式的叠加均匀分布噪声后的脉搏波波形图;

图13为本发明具体实施方式的加入基线漂移后的脉搏波波形图;

图14为本发明具体实施方式的I型滑脉通过LCD显示器显示的脉搏波波形图;

图15为本发明具体实施方式的I型滑脉通过示波器显示的脉搏波波形图;

图16为本发明具体实施方式的II型滑脉通过示波器显示的脉搏波波形图;

图17为本发明具体实施方式的I型弦脉通过示波器显示的脉搏波波形图;

图18为本发明具体实施方式的II型弦脉通过示波器显示的脉搏波波形图;

图19为本发明具体实施方式的III型弦脉通过示波器显示的脉搏波波形图;

图20为本发明具体实施方式的触摸屏及其四个边界点的示意图;

图21为本发明具体实施方式的FPGA的逻辑框图;

图22为本发明具体实施方式的FPGA中的LCD控制模块的控制框图;

图23为本发明具体实施方式的ADS7843的工作电路图;

图24为本发明具体实施方式的DAC7513工作电路图;

图25为本发明具体实施方式的降压芯片LM2940CT-5.0的电路图;

图26为本发明具体实施方式的降压芯片LM1085IT-3.3的电路图。

具体实施方式

下面结合附图对本发明的具体实施方式做详细说明。

如图1所示,基于FPGA的脉搏波信号发生器,包括触摸屏、LCD显示器、示波器、FPGA、 电源、AD转换装置和DA转换装置;

电源用于为LCD显示器、触摸屏、AD转换装置和DA转换装置供电;

AD转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标数字值 传输至FPGA;

DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至示波 器;

FPGA用于产生脉搏波信号并将其传输至LCD显示器或示波器进行脉搏波波形显示;

DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输出端 连接FPGA,AD转换装置输入端连接触摸屏,LCD显示器连接FPGA,电源连接LCD显示 器。

本实施方式中,采用Altera公司的型号为EP1CQ240C8N的FPGA作为实验平台,其逻 辑框图见图21,该FPGA通过添加Flash模块,提供了系统代码运行的空间,同时,可以将 代码烧录在Flash模块中,节省了每次下载程序所浪费的时间;该FPGA的SDRAM模块, 用来存储LCD显示器要显示的数据,SDRAM控制器集成在LCD IP核内。为了实现SDRAM 模块和LCD显示器之间的异步读写功能,在SDRAM模块的输出端口和LCD显示器的RGB 输入端口之间添加DCFIFO,达到预想效果。

LCD显示器选用夏普公司型号为LQ080V3DG01的LCD液晶屏。根据用户手册提供的 LCD时序的描述,在FPGA中设计LCD控制模块,其控制框图见图22。它能产生液晶屏显 示需要的时钟信号。同时,添加锁相环,将输入时钟信号分频倍频,分别提供给LCD显示器 和SDRAM模块作为其工作信号。

本实施方式中,通过触摸屏点击操作从硬件上辅助FPGA进行波形产生方式的选择、输 出波形类型的选择、在选择的输出波形上选取特征点、利用高斯函数-cosine函数结合的方法 分段拟合波形、采用弹性腔模型将人体主动脉模拟成两个血管弹性腔并仿真出该血管弹性腔 内血液流动状态形成波形、将波形中叠加噪声信号并设定信噪比。

本实施方式采用型号为ADS7843的AD转换装置,作为触摸屏的控制器,ADS7843是 一个12位的模数转换器,其数字接口与FPGA的IO口相连接,提供其工作时序信号,ADS7843 的工作电路如图23所示,ADS7843的14号引脚为输入接口,与FPGA的237号引脚相连。 ADS7843的12引脚为输出接口,与FPGA的219号引脚相连。如果想获取Y方向的坐标具 体数值,可以将信号从X+引脚输入,同时打开Y+和Y-引脚,得到X+的数字电压值,最后, 得到Y方向的坐标,同样,X方向上的坐标可以用同样的方法获得。ADS7843提供了两种电 压输入模式,一种是单电压参考输入模式,另一种是差分模式。本实施方式中使用差分电压 输入模式。

本实施方式采用型号为DAC7513的数模转换芯片作为DA转换装置,输出最后的模拟波 形。DAC7513是一个低电压、12位、低功耗并且能够与SPITM核兼容的高速转换芯片,该芯 片工作时钟信号为10kHZ,参考电压输入为3.3v,其工作电路如图24所示,DAC7513的6 号引脚为输入接口,与FPGA的85号引脚相连,1号引脚为输出接口,直接连接示波器。

本实施方式的基于FPGA的脉搏波信号发生器,需要的电源幅值为12V、5V和3.3V, 其中,12V和5V分别提供给LCD显示器,提供背光电压。3.3V提供给ADS7843模数转换 芯片、DAC7513数模转换芯片和触摸屏。

12v电压通过稳压电源直接获取;通过降压芯片LM2940CT-5.0将12V电压降到5V,提 供给LCD显示器。降压芯片LM2940CT-5.0电路如图25所示,其中,1号引脚为输入电压 12V;3号引脚为输出电压5V。

通过降压芯片LM1085IT-3.3将5V电压降到3.3V,提供给ADS7843模数转换芯片、 DAC7513数模转换芯片和触摸屏使用,降压芯片LM1085IT-3.3电路如图26所示,其中,3 号引脚为输入电压5V;2号引脚为输出电压3.3V。

FPGA设置有波形选择模块、特征点选取模块、波形拟合模块、噪声叠加及信噪比设定 模块、基线漂移模块、触摸屏去抖动模块和血管弹性腔仿真模块;

波形选择模块用于提供可选的输出波形类型并选择;

特征点选取模块用于对波形选择模块选择的波形进行特征点选取;

波形拟合模块用于利用高斯-cosine函数将特征点选取模块选取的特征点拟合成波形;

血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管弹性腔内 血液流动状态产生波形;

噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿真模块产 生的波形叠加噪声信号并设定信噪比;

基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移;

触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。

本实施方式中,基于FPGA的脉搏波信号发生方法,如图2所示,包括如下步骤:

步骤1:点击触摸屏的四个边界点,得到该四个边界点的坐标值并保存,根据四个边界 点的坐标值、触摸屏长度和触摸屏宽度得到该任意一点坐标值,完成触摸屏坐标校正;

如图20所示,点击四个边界点A、B、C、D,得到四个点的坐标值:A(Vax,Vay)、B(Vbx, Vby)、C(Vcx,Vcy)、D(Vdx,Vdy)。

点击触摸屏上的任意一点,根据四个边界点的坐标值、触摸屏长度和触摸屏宽度得到该 任意一点(x,y)坐标值,公式如下:

x = ( Vx - ( Vax + Vbx ) 2 ) · LCD _ W ( Vcx + Vdx ) 2 - ( Vax + Vbx ) 2 y = ( Vy - ( Vay + Vdy ) 2 ) · LCD _ H ( Vby + Vcy ) 2 - ( Vay + Vdy ) 2 ]]>

其中,LCD_W为触摸屏的长度,LCD_H为触摸屏的宽度。

步骤2:选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动,波形产生方式包括 波形拟合和血管弹性仿真:若选择波形拟合,则执行步骤3,若选择血管弹性仿真,则执行 步骤6;

去除由点击触摸屏引起的触摸屏抖动,具体方法是:去除触摸屏抖动:点击触摸屏一点 并保存其坐标,记为(old_x,old_y),再次点击该点并保存其坐标,分别比较两次点击得到 的点的横坐标绝对值之差和纵坐标的绝对值之差,若横坐标绝对值之差或纵坐标的绝对值之 差大于5,则视为触摸屏存在干扰,第二次点击的坐标无效,若横坐标绝对值之差或纵坐标 的绝对值之差小于5,则视为触摸屏无干扰,第二次点击的坐标有效,此时将第二次点击的 有效坐标与第一次点击所保存的坐标的横纵坐标对应相加并取平均值,得到该点坐标结果。

步骤3:选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动,如图3所示,输出 波形类型包括I型滑脉(Type1)、II型滑脉(Type2)、I型弦脉(Type3)、II型弦脉(Type4) 和III型弦脉(Type5);

步骤4:根据选择的输出波形类型选取特征点并去除由点击触摸屏引起的触摸屏抖动;

在选择的输出波形上选取特征点是根据所选择的波形,在每个周期中,选取幅值最大的 点、斜率值最大的点、初始点、结束点、拐点和驻点作为特征点,用户可以根据需要调整特 征点位置,调整范围是原特征点±5个单位(像素点);

脉搏波的特征点反映其在形状上的特点,每种类型的波形需要5到6个特征点,其中, 只有I型滑波需要5个特征点。在有重波的波形中,也需要选取重波幅值最大的点。

系统给出每种函数特征点的具体坐标,存储在一维数组中。在波形拟合过程中,通过调 用数据,直接获得特征点的横纵坐标,对脉搏波进行拟合。

用户可以根据需要在调整范围内调整特征点,这样调整后输入的坐标数值才认为是有效 的,避免了由于用户的错误输入而导致的最后拟合波形的不准确的情况。

步骤5:依次连接两个相邻的特征点,利用高斯函数-cosine函数结合的方法,分段拟合 波形,若干分段波形整合得到脉搏波波形,然后执行步骤7;

在波形曲线的形状上,高斯函数与脉搏波很相似,因此本实施方式采用高斯-cosine函数 分段拟合波形,再把各段波形整合起来形成完整的脉搏波波形;

高斯函数G(x)公式如下:

G ( x ) = h · e - ( x - μ ) 2 2 · α 2 ]]>

其中,h为要拟合的区间的初始点纵坐标,μ代表平均值,同样也是y轴方向高斯函数的 最高值,α代表高斯函数的宽度。

Cosine函数C(x)公式如下:

C(x)=h·cos(x) 

其中,h为要拟合的区间的初始点纵坐标。

利用高斯函数G(x)和Cosine函数C(x),通过差值、补零等操作连接两个特征点,最后拟 合出完整波形。

在拟合波形的过程中,需要保证分段波形在间断点处连续,这样,才能拟合出光滑的波 形。为了保证波形光滑,即上一个波形的右极限等于下一个波形的左极限,设定在间断点处 的左右两端数值相等。同样,高斯函数在波峰点,其一阶导数也是连续的,最后拟合出的波 形也是光滑的。

通过分析不同的脉搏波可知,如果给出两个特征点的位置,可以设定一个合适的高斯函 数的宽度α,给每段拟合波形赋值不同的α,使拟合后的波形与目标波形相似程度最高。

分段拟合函数Pfit(x)的具体公式如下:

P fit ( x ) = y 1 · e - ( x - x 1 ) 2 2 · α 1 2 ( x 0 ≤ x < x 1 ) y 2 + y 2 - y 1 2 + y 2 - y 1 2 · cos ( ( x - x 1 ) ( x 2 - x 1 ) π ) ( x 1 ≤ x < x 2 ) y 3 + y 3 - y 2 2 + y 3 - y 2 2 · cos ( ( x - x 2 ) ( x 3 - x 2 ) π ) ( x 2 ≤ x < x 3 ) y 4 + y 4 - y 3 2 + y 4 - y 3 2 · cos ( x - x 3 ( x 4 - x 3 ) π ) ( x 3 ≤ x < x 4 ) y 4 · e - ( x - x 4 ) 2 2 · α 5 2 ( x 4 ≤ x < x 5 ) ]]>

其中,x0、x1、x2、x3、x4、x5分别表示6个特征点的横坐标,y1、y2、y3、y4分别 表示中间4个特征点的纵坐标(第1个特征点的纵坐标y0=0,第5个特征点的纵坐标y5=0), α1、α2、α3、α4、α5表示6个特征点拟合出的五个分段波形的高斯函数高度。

步骤6:采用弹性腔模型将人体主动脉模拟成两个血管弹性腔,其中一个血管弹性腔表 征主动脉弓,另一个血管弹性腔表征腹主动脉,通过两个血管弹性腔仿真出该血管弹性腔内 血液流动状态形成波形,选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏抖动,血管 弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、表征腹主动脉的血管弹性腔的集总顺 应性、连接两个血管弹性腔的血柱L及外周阻力;

将人体主动脉及其主要分支看做两个血管弹性腔。表征主动脉弓的血管弹性腔的集总顺 应性为C1,表征腹主动脉的血管弹性腔的集总顺应性为C2,连接两个血管弹性腔的血柱L 表征血液的惯性。心脏收缩时,血液qin由心室m1进入C1与血柱L,而后进入C2,最后流 经集中的外周阻力R而进入静脉腔,这就是弹性腔模型(windkessel仿真模型),使用电源器 件模拟血管的真实情况,本实施方式的弹性腔模型的等效电路如图5所示,弹性腔模型相应 的微分方程如下:

d 3 p 2 dt 3 + 1 RC 2 d 2 p 2 dt 2 + ( 1 LC 1 + 1 LC 2 ) dp 2 dt + 1 LRC 1 C 2 p 2 = 1 LC 1 C 2 q in ]]>

弹性腔模型包括四种类型:低阻力、中阻力、高阻力、超高阻力,并设定主动脉集总顺 应性、腹主动脉的集总顺应性、血液惯性和外周阻力;

本实施方式提供低阻力、中阻力、高阻力、超高阻力四种情况下,L、R、C1、C2的参考 数值,并对用户输入的参数进行合法性检验,只要在给定范围内参数,才默认为有效。参数 L、R、C1、C2的给定范围如表1所示:

表1参数L、R、C1、C2的给定范围

  低阻力 中阻力 高阻力 超高阻力 C1 1.37-1.43 1.02-1.08 0.58-0.62 0.44-0.49 C2 0.19-0.25 0.17-0.21 0.077-0.083 0.023-0.027 R 0.47-0.53 1.22-1.27 1.47-1.51 1.98-2.02 L 0.0182-0.0187 0.0102-0.0106 0.0147-0.0151 0.079-0.083

本实施方式中,低阻力参数:C1=1.4,C2=0.22,L=0.0185,R=0.5,中阻力参数:C1=1.06, C2=0.19,L=0.0104,R=1.25,高阻力参数:C1=0.6,C2=0.082,L=0.0149,R=1.4,超高阻力: C1=0.47,C2=0.025,L=0.081,R=2。

在实际的生理条件下,整个心动周期T应该包括收缩期Ts和舒张期Td两部分。这时血 流量qin≠0,由弹性腔模型所得出的脉搏波波形应该包括升支和降支,它代表一个完整的脉 图所应具有的所有信息。由于所得的弹性腔模型相应的微分方程为三阶微分方程,本实施方 式采用四阶龙格库塔方法,求得该三阶微分方程的数值解。以左心室每次搏动输出的血流量 qin(t)作为弹性腔模型的输入信号,qin(t)的函数表达式为:

设弹性腔模型初始值为q(1)=30,p1(1)=50,p2(1)=50,设定中间变量K11、K12、K13、K14、 K21、K22、K23、K24、K31、K32、K33、K34。

K 11 = h L ( p 1 n - p 2 n ) ]]>

K 21 = h C 1 ( q in ( n ) - q n ) ]]>

K 31 = h C 2 ( q n - q 2 n R ) ]]>

K 12 = h L ( p 1 n + 1 2 K 21 - p 2 n - 1 2 K 31 ) ]]>

K 22 = h C 1 ( q in ( n + h ) - q n - 1 2 K 11 ) ]]>

K 32 = h C 2 [ q n + 1 2 K 11 - p 2 n + 1 2 K 31 R ] ]]>

K 13 = h L ( p 1 n + 1 2 K 22 - p 2 n - 1 2 K 32 ) ]]>

K 23 = h C 1 ( q in ( n + h ) - q n - 1 2 K 12 ) ]]>

K 33 = h C 2 [ q n + 1 2 K 12 - p 2 n + K 32 R ] ]]>

K 14 = h L ( p 1 n + K 23 - p 2 n - K 33 ) ]]>

K 24 = h C 1 ( q in ( n + h ) - q n - K 13 ) ]]>

K 34 = h C 2 ( q n + K 13 - p 2 n + K 33 R ) ]]>

其中,h为计算步长,p1为表征主动脉弓的血管弹性腔的压力,p2为表征腹主动脉的血 管弹性腔的压力

求解得到输出的脉搏波波形qn,表示如下:

q n + 1 = q n + 1 6 ( K 11 + 2 K 12 + 2 K 13 + K 14 ) ]]>

p 1 n + 1 = p 1 n + 1 6 ( K 21 + 2 K 22 + 2 K 23 + K 24 ) ]]>

p 2 n + 1 = p 2 n + 1 6 ( K 31 + 2 K 32 + 2 K 33 + K 34 ) ]]>

其中,n表示脉搏波波形qn中的点的个数,即解的个数;

低阻力类型的弹性腔模型输出的脉搏波波形如图6所示,中阻力类型的弹性腔模型输出 的脉搏波波形如图7所示,高阻力类型的弹性腔模型输出的脉搏波波形如图8所示,超高阻 力类型的弹性腔模型输出的脉搏波波形如图9所示。

步骤7:在波形中叠加噪声信号并设定信噪比,并去除由点击触摸屏引起的触摸屏抖动;

噪声信号包括50Hz工频噪声,高斯白噪声和均匀分布的噪声,信噪比可以由用户设定, 如20dB、30dB、40dB或50dB;

50Hz工频噪声:通过频率为50Hz的正弦函数sine得到;

高斯白噪声:采用Box和Muller提出的方法,用两个独立的随机变量从长度相同的两个 区间在[0,1]之间的长方形密度函数生成一个正态分布的序列:产生两个在(0,1)区间均匀分 布的随机噪声varA和varB,在噪声varA和varB基础上产生均值等于0且方差等于1的高斯 白噪声,公式如下:

x = 2 · log ( 1.0 / ( 1 - varA ) ) y = 2 · π · varB z = x · cos ( y ) ]]>

均匀分布噪声:产生均匀分布的白噪声,因为是噪声服从均匀分布,所以就能保证各等 带宽的频带所含能量相等,而且信号是随机产生的。考虑到拟合后的脉搏波的幅值,所以产 生的白噪声数值在0到50之间,能够与脉搏波符合。

通常来说,噪声的衡量标准就是信噪比,即SNR,输出信号每一个点的输入信号与噪声 的比值,即信噪比的数值,信噪比SNR的计算公式如下:

SNR = 10 · log ( Σ i | S ( i ) - μ s | 2 Σ i | N ( i ) - μ n | 2 ) ]]>

其中,S(i)表示脉搏波波形各点数值总和,μs表示脉搏波的平均值。N(i)表示噪声信号 总和,μn表示噪声信号平均值。

完成每个点的信噪比计算后,将结果与用户设定的信噪比数值比较,取最接近用户设定 的信噪比作为最后的信噪比结果。

以利用高斯函数-cosine函数结合的方法得到的脉搏波波形为例,该脉搏波波形中叠加 50Hz工频噪声后的脉搏波波形如图10所示,叠加高斯白噪声后的脉搏波波形如图11所示, 叠加均匀分布噪声后的脉搏波波形如图12所示,且均设定信噪比SNR=30dB。

步骤8:对加入噪声信号并设定信噪比后的波形设定基线漂移,得到噪声和基线漂移的 脉搏波波形;

实际情况中,脉搏波常常出现基线漂移的情况,为了最大程度的接近实际情况,本实施 方式对加入噪声信号并设定信噪比后的波形加入基线漂移,通过对各个不用周期的脉搏波的 幅值加减不同的数值,让每个周期的脉搏波的起始点不在同一条直线上,达到了基线漂移的 效果。

以利用高斯函数-cosine函数结合的方法得到的脉搏波波形为例,加入基线漂移后的脉搏 波波形如图13所示。

步骤9:将脉搏波波形通过LCD显示器或示波器显示。

I型滑脉通过LCD显示器显示的脉搏波波形如图14所示,I型滑脉通过示波器显示的脉 搏波波形如图15所示,II型滑脉通过示波器显示的脉搏波波形如图16所示,I型弦脉通过示 波器显示的脉搏波波形如图17所示,II型弦脉通过示波器显示的脉搏波波形如图18所示; III型弦脉通过示波器显示的脉搏波波形如图19所示。

一种基于FPGA的脉搏波信号发生器及方法.pdf_第1页
第1页 / 共28页
一种基于FPGA的脉搏波信号发生器及方法.pdf_第2页
第2页 / 共28页
一种基于FPGA的脉搏波信号发生器及方法.pdf_第3页
第3页 / 共28页
点击查看更多>>
资源描述

《一种基于FPGA的脉搏波信号发生器及方法.pdf》由会员分享,可在线阅读,更多相关《一种基于FPGA的脉搏波信号发生器及方法.pdf(28页珍藏版)》请在专利查询网上搜索。

1、(10)授权公告号 CN 103054564 B (45)授权公告日 2014.10.01 CN 103054564 B (21)申请号 201310034203.8 (22)申请日 2013.01.29 A61B 5/02(2006.01) (73)专利权人 东北大学 地址 110819 辽宁省沈阳市和平区文化路 3 号巷 11 号 (72)发明人 徐礼胜 王昊 王璐 宋丹 陈珏丽 伏全海 (74)专利代理机构 沈阳东大知识产权代理有限 公司 21109 代理人 梁焱 (54) 发明名称 一种基于 FPGA 的脉搏波信号发生器及方法 (57) 摘要 一种基于 FPGA 的脉搏波信号发生器, 。

2、包括 LCD 显示器、 示波器、 FPGA、 触摸屏、 电源、 AD 转 换装置和 DA 转换装置 ; DA 转换装置输入端连接 FPGA, DA 转换装置输出端连接示波器, AD 转换装 置输入端连接 FPGA, AD 转换装置输出端连接触摸 屏, LCD显示器连接FPGA, 电源连接LCD显示器。 本 发明方法采用两种方式产生脉搏波波形, 一种方 式是通过高斯函数 -Cosine 函数结合的方式, 分 段拟合脉搏波得到最后的完整波形, 省去了整个 波形所浪费的存储空间, 具有专一性 ; 另一种方 式是采用弹性腔模型模拟血管情况, 模拟出两个 血管弹性腔, 通过参数的改变, 可以产生低阻力,。

3、 中阻力, 高阻力, 超高阻力四种情况下的脉搏波波 形。 两种方式均能在信号数据未知的前提下, 由用 户设定得到准确脉搏波波形输出。 (51)Int.Cl. 审查员 赵秋芬 权利要求书 2 页 说明书 11 页 附图 14 页 (19)中华人民共和国国家知识产权局 (12)发明专利 权利要求书2页 说明书11页 附图14页 (10)授权公告号 CN 103054564 B CN 103054564 B 1/2 页 2 1. 一种基于 FPGA 的脉搏波信号发生器, 包括触摸屏、 LCD 显示器、 示波器、 FPGA、 电源、 AD 转换装置和 DA 转换装置 ; 所述电源用于为 LCD 显示器。

4、、 触摸屏、 AD 转换装置和 DA 转换装置供电 ; 所述 AD 转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标 数字值传输至 FPGA ; 所述DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至 示波器 ; 所述 FPGA 用于产生脉搏波信号并将其传输至 LCD 显示器或示波器进行脉搏波波形显 示 ; 所述 DA 转换装置输入端连接 FPGA, DA 转换装置输出端连接示波器, AD 转换装置输出 端连接 FPGA, AD 转换装置输入端连接触摸屏, LCD 显示器连接 FPGA, 电源连接 LCD 显示器 ; 其特征在于 : 所述 FPGA 设。

5、置有波形选择模块、 特征点选取模块、 波形拟合模块、 噪声叠加及信噪比 设定模块、 基线漂移模块、 触摸屏去抖动模块和血管弹性腔仿真模块 ; 所述波形选择模块用于提供可选的输出波形类型并选择 ; 所述特征点选取模块用于对波形选择模块选择的波形进行特征点选取 ; 所述波形拟合模块用于利用高斯 -cosine 函数将特征点选取模块选取的特征点拟合 成波形 ; 所述血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管 弹性腔内血液流动状态产生波形 ; 所述噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿 真模块产生的波形叠加噪声信号并设定信噪比 ; 所述基线漂移模。

6、块用于对叠加噪声并设定信噪比后的波形加入基线漂移 ; 所述触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。 2.采用权利要求1所述的基于FPGA的脉搏波信号发生器进行脉搏波信号发生的方法, 其特征在于 : 包括如下步骤 : 步骤 1 : 点击触摸屏的四个边界点, 得到该四个边界点的坐标值并保存, 根据四个边界 点的坐标值、 触摸屏长度和触摸屏宽度得到任意一点坐标值, 完成触摸屏坐标校正 ; 步骤 2 : 选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动, 所述波形产生方 式包括波形拟合和血管弹性仿真 : 若选择波形拟合, 则执行步骤 3, 若选择血管弹性仿真, 则执行步骤 6 ; 步骤 3。

7、 : 选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动, 所述输出波形类 型包括 I 型滑脉、 II 型滑脉、 I 型弦脉、 II 型弦脉和 III 型弦脉 ; 步骤 4 : 根据选择的输出波形类型, 选取特征点并去除由点击触摸屏引起的触摸屏抖 动 ; 步骤 5 : 依次连接两个相邻的特征点, 利用高斯函数 -cosine 函数结合的方法, 分段拟 合波形, 若干分段波形整合得到脉搏波波形, 并去除由点击触摸屏引起的触摸屏抖动, 然后 执行步骤 7 ; 步骤 6 : 采用弹性腔模型将人体主动脉模拟成两个血管弹性腔, 其中一个血管弹性腔 权 利 要 求 书 CN 103054564 B 2 2。

8、/2 页 3 表征主动脉弓, 另一个血管弹性腔表征腹主动脉, 通过两个血管弹性腔仿真出该血管弹性 腔内血液流动状态形成波形, 选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏抖 动, 血管弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、 腹主动脉的血管弹性腔的 集总顺应性、 连接两个血管弹性腔的血柱及外周阻力 ; 步骤 7 : 在波形中叠加噪声信号并设定信噪比, 并去除由点击触摸屏引起的触摸屏抖 动 ; 步骤 8 : 对加入噪声信号并设定信噪比后的波形设定基线漂移, 得到噪声和基线漂移 的脉搏波波形 ; 步骤 9 : 将脉搏波波形通过 LCD 显示器或示波器显示。 3. 根据权利要求 2 所述。

9、的脉搏波信号发生的方法, 其特征在于 : 步骤 4 中所述的根据 选择的输出波形类型选取特征点, 是根据所选择的波形, 在每个周期中, 选取幅值最大的 点、 斜率值最大的点、 初始点、 结束点、 拐点和驻点作为特征点。 4. 根据权利要求 2 所述的脉搏波信号发生的方法, 其特征在于 : 所述去除由点击触摸 屏引起的触摸屏抖动, 具体方法是 : 点击触摸屏一点并保存其坐标, 再次点击该点并保存其 坐标, 分别比较两次点击得到的点的横坐标绝对值之差和纵坐标的绝对值之差, 若横坐标 绝对值之差或纵坐标的绝对值之差大于 5, 则视为触摸屏存在干扰, 第二次点击的坐标无 效, 若横坐标绝对值之差或纵坐。

10、标的绝对值之差小于 5, 则视为触摸屏无干扰, 第二次点击 的坐标有效, 此时将第二次点击的有效坐标与第一次点击所保存的坐标的横纵坐标对应相 加并取平均值, 得到该点坐标结果。 5. 根据权利要求 2 所述的脉搏波信号发生的方法, 其特征在于 : 步骤 7 所述的噪声信 号包括 50Hz 工频噪声, 高斯白噪声和均匀分布的噪声。 权 利 要 求 书 CN 103054564 B 3 1/11 页 4 一种基于 FPGA 的脉搏波信号发生器及方法 技术领域 0001 本发明属于信号发生器技术领域, 具体涉及一种基于 FPGA 的脉搏波信号发生器 及方法。 背景技术 0002 如 基于 C8051。

11、F020 单片机的脉搏波信号发生器的设计 论文所述, 李洋等人设计 了一种脉搏波信号发生器, 能够发出代替人体实际脉搏波的信号, 将其发送至各类脉搏波 信号检测仪器中, 以求调试和检查这类仪器的性能指标。 但是该项设计中, 信号发生器需要 与上位机相连 , 由于需要存储整个波形数据, 所以大容量的 Flash 芯片才能达到要求。发 生器只是单纯地将上位机中的已存在的波形数据通过液晶屏和示波器显示出来, 添加一些 功能模块, 这都是在已经获得脉搏波数据的前提下, 才能完成的。若没有波形数据, 信号发 生器也达不到显示波形的目的。 0003 又如专利号为 200720103587.1 的实用新型专。

12、利 “数字式脉搏波信号发生器” 中 , 使用单片机作为处理器, 产生脉搏波, 用作脉搏波仪器检测设备, 但是, 该专利只能通过与 PC机相连, 通过USB数据线, 将PC中的脉搏波数据下载到EPROM中, 通过LCD和示波器显示 波形, 也只是单纯地做到显示波形的作用, 需要已知大量的脉搏波数据才能使设备达到其 作用, 这样就局限了该数字式脉搏波信号发生器在检测脉搏波仪器时发挥的作用。 0004 此外, 有一些信号发生器, 只能输出正弦波、 方波等简单信号, 还有些脉搏波信号 发生器, 只有在电脑中存储完整的脉搏波数据, 才能显示出最后的波形, 显然这给我们平时 的使用带来很多不便。 发明内容。

13、 0005 针对现有技术存在的不足, 本发明提供一种基于 FPGA 的脉搏波信号发生器及方 法。 0006 本发明的技术方案是 : 0007 一种基于 FPGA 的脉搏波信号发生器, 包括触摸屏、 LCD 显示器、 示波器、 FPGA、 电 源、 AD 转换装置和 DA 转换装置 ; 0008 所述电源用于为 LCD 显示器、 触摸屏、 AD 转换装置和 DA 转换装置供电 ; 0009 所述 AD 转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该 坐标数字值传输至 FPGA ; 0010 所述DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传 输至示波器 ;。

14、 0011 所述 FPGA 用于产生脉搏波信号并将其传输至 LCD 显示器或示波器进行脉搏波波 形显示 ; 0012 所述 DA 转换装置输入端连接 FPGA, DA 转换装置输出端连接示波器, AD 转换装置 输出端连接 FPGA, AD 转换装置输入端连接触摸屏, LCD 显示器连接 FPGA, 电源连接 LCD 显示 说 明 书 CN 103054564 B 4 2/11 页 5 器。 0013 所述 FPGA 设置有波形选择模块、 特征点选取模块、 波形拟合模块、 噪声叠加及信 噪比设定模块、 基线漂移模块、 触摸屏去抖动模块和血管弹性腔仿真模块 ; 0014 所述波形选择模块用于提供。

15、可选的输出波形类型并选择 ; 0015 所述特征点选取模块用于对波形选择模块选择的波形进行特征点选取 ; 0016 所述波形拟合模块用于利用高斯 -cosine 函数将特征点选取模块选取的特征点 拟合成波形 ; 0017 所述血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该 血管弹性腔内血液流动状态产生波形 ; 0018 所述噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性 腔仿真模块产生的波形叠加噪声信号并设定信噪比 ; 0019 所述基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移 ; 0020 所述触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。

16、。 0021 采用所述的基于 FPGA 的脉搏波信号发生器的脉搏波信号发生方法, 包括如下步 骤 : 0022 步骤 1 : 点击触摸屏的四个边界点, 得到该四个边界点的坐标值并保存, 根据四 个边界点的坐标值、 触摸屏长度和触摸屏宽度得到该任意一点坐标值, 完成触摸屏坐标校 正 ; 0023 步骤 2 : 选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动, 所述波形产 生方式包括波形拟合和血管弹性仿真 : 若选择波形拟合, 则执行步骤 3, 若选择血管弹性仿 真, 则执行步骤 6 ; 0024 步骤 3 : 选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动, 所述输出波 形类型包括 I 。

17、型滑脉、 II 型滑脉、 I 型弦脉、 II 型弦脉和 III 型弦脉 ; 0025 步骤 4 : 根据选择的输出波形类型, 选取特征点并去除由点击触摸屏引起的触摸 屏抖动 ; 0026 所述的在选择的输出波形上选取特征点, 是根据所选择的波形, 在每个周期中, 选 取幅值最大的点、 斜率值最大的点、 初始点、 结束点、 拐点和驻点作为特征点。 0027 步骤 5 : 依次连接两个相邻的特征点, 利用高斯函数 -cosine 函数结合的方法, 分 段拟合波形, 若干分段波形整合得到脉搏波波形, 并去除由点击触摸屏引起的触摸屏抖动, 然后执行步骤 7 ; 0028 步骤 6 : 采用弹性腔模型将。

18、人体主动脉模拟成两个血管弹性腔, 其中一个血管弹 性腔表征主动脉弓, 另一个血管弹性腔表征腹主动脉, 通过两个血管弹性腔仿真出该血管 弹性腔内血液流动状态形成波形, 选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏 抖动, 血管弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、 腹主动脉的血管弹性腔 的集总顺应性、 连接两个血管弹性腔的血柱及外周阻力 ; 0029 步骤 7 : 在波形中叠加噪声信号并设定信噪比, 并去除由点击触摸屏引起的触摸 屏抖动 ; 0030 所述的噪声信号包括 50Hz 工频噪声, 高斯白噪声和均匀分布的噪声。 0031 步骤 8 : 对加入噪声信号并设定信噪比后的波形设。

19、定基线漂移, 得到噪声和基线 说 明 书 CN 103054564 B 5 3/11 页 6 漂移的脉搏波波形 ; 0032 步骤 9 : 将脉搏波波形通过 LCD 显示器或示波器显示。 0033 所述去除由点击触摸屏引起的触摸屏抖动, 具体方法是 : 点击触摸屏一点并保存 其坐标, 再次点击该点并保存其坐标, 分别比较两次点击得到的点的横坐标绝对值之差和 纵坐标的绝对值之差, 若横坐标绝对值之差或纵坐标的绝对值之差大于 5, 则视为触摸屏存 在干扰, 第二次点击的坐标无效, 若横坐标绝对值之差或纵坐标的绝对值之差小于 5, 则视 为触摸屏无干扰, 第二次点击的坐标有效, 此时将第二次点击的有。

20、效坐标与第一次点击所 保存的坐标的横纵坐标对应相加并取平均值, 得到该点坐标结果。 0034 有益效果 : 0035 本发明采用两种方式产生脉搏波波形, 一种方式是通过高斯函数 -Cosine 函数结 合的方式, 分段拟合脉搏波得到最后的完整波形, 省去了整个波形所浪费的存储空间, 实现 了真正意义上的脉搏波发生装置, 具有专一性 ; 另一种方式是采用弹性腔模型模拟血管情 况, 模拟出两个血管弹性腔, 通过参数的改变, 可以产生低阻力、 中阻力、 高阻力、 超高阻力 四种情况下的脉搏波波形。两种方式均能在信号数据未知的前提下, 由用户设定得到准确 脉搏波波形输出。 0036 本发明的脉搏波信号。

21、发生器采用FPGA作为信号处理器, 相对于其它开发平台(例 如单片机 ), FPGA 可进行并行数据处理, 有更快的运行速度, 可以连接更多的外围设备, 有 利于系统功能的后续添加, 从根本上解决了由于开发平台的不足导致的系统功能的缺陷 ; 而且克服了其他信号发生器的缺点只能产生简单的波形, 需要完整的脉搏波数据, 需 要大容量的 Flash 存储数据等。采用 LCD 显示器, 触摸屏和示波器组成的与用户的交互界 面, 使操作更加简单, 用户可以根据需要快速地完成相应操作, 有很大的实用价值。 0037 通过实验证明, 本发明的基于 FPGA 的脉搏波信号发生方法所得到的脉搏波波形 与实际波形。

22、的相对误差小于 3, 与现有技术中的脉搏波发生器相比, 大幅提高了拟合后波 形的准确度, 最大程度的降低了误差对最后结果的影响。为最大程度的模拟实际脉搏波的 波形, 本方法添加不同类型噪声, 并设置信噪比, 对波形加入基线漂移, 让最后得到的脉搏 波更有实际的利用价值。 附图说明 0038 图 1 为本发明具体实施方式的基于 FPGA 的脉搏波信号发生器结构框图 ; 0039 图 2 为本发明具体实施方式的基于 FPGA 的脉搏波信号发生方法流程图 ; 0040 图 3 为本发明具体实施方式的五种类型的输出波形图 ; 0041 图 4 为本发明具体实施方式的弹性腔模型示意图 ; 0042 图 。

23、5 为本发明具体实施方式的弹性腔模型等效电路图 ; 0043 图 6 为本发明具体实施方式的低阻力类型的弹性腔模型输出的脉搏波波形图 ; 0044 图 7 为本发明具体实施方式的中阻力类型的弹性腔模型输出的脉搏波波形图 ; 0045 图 8 为本发明具体实施方式的高阻力类型的弹性腔模型输出的脉搏波波形图 ; 0046 图 9 为本发明具体实施方式的超高阻力类型的弹性腔模型输出的脉搏波波形图 ; 0047 图 10 为本发明具体实施方式的叠加 50Hz 工频噪声后的脉搏波波形图 ; 0048 图 11 为本发明具体实施方式的叠加高斯白噪声后的脉搏波波形图 ; 说 明 书 CN 103054564。

24、 B 6 4/11 页 7 0049 图 12 为本发明具体实施方式的叠加均匀分布噪声后的脉搏波波形图 ; 0050 图 13 为本发明具体实施方式的加入基线漂移后的脉搏波波形图 ; 0051 图 14 为本发明具体实施方式的 I 型滑脉通过 LCD 显示器显示的脉搏波波形图 ; 0052 图 15 为本发明具体实施方式的 I 型滑脉通过示波器显示的脉搏波波形图 ; 0053 图 16 为本发明具体实施方式的 II 型滑脉通过示波器显示的脉搏波波形图 ; 0054 图 17 为本发明具体实施方式的 I 型弦脉通过示波器显示的脉搏波波形图 ; 0055 图 18 为本发明具体实施方式的 II 型。

25、弦脉通过示波器显示的脉搏波波形图 ; 0056 图 19 为本发明具体实施方式的 III 型弦脉通过示波器显示的脉搏波波形图 ; 0057 图 20 为本发明具体实施方式的触摸屏及其四个边界点的示意图 ; 0058 图 21 为本发明具体实施方式的 FPGA 的逻辑框图 ; 0059 图 22 为本发明具体实施方式的 FPGA 中的 LCD 控制模块的控制框图 ; 0060 图 23 为本发明具体实施方式的 ADS7843 的工作电路图 ; 0061 图 24 为本发明具体实施方式的 DAC7513 工作电路图 ; 0062 图 25 为本发明具体实施方式的降压芯片 LM2940CT-5.0 。

26、的电路图 ; 0063 图 26 为本发明具体实施方式的降压芯片 LM1085IT-3.3 的电路图。 具体实施方式 0064 下面结合附图对本发明的具体实施方式做详细说明。 0065 如图 1 所示, 基于 FPGA 的脉搏波信号发生器, 包括触摸屏、 LCD 显示器、 示波器、 FPGA、 电源、 AD 转换装置和 DA 转换装置 ; 0066 电源用于为 LCD 显示器、 触摸屏、 AD 转换装置和 DA 转换装置供电 ; 0067 AD 转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标 数字值传输至 FPGA ; 0068 DA 转换装置用于将 FPGA 输出的数字波。

27、形转换为模拟波形并将该模拟波形传输至 示波器 ; 0069 FPGA 用于产生脉搏波信号并将其传输至 LCD 显示器或示波器进行脉搏波波形显 示 ; 0070 DA转换装置输入端连接FPGA, DA转换装置输出端连接示波器, AD转换装置输出端 连接 FPGA, AD 转换装置输入端连接触摸屏, LCD 显示器连接 FPGA, 电源连接 LCD 显示器。 0071 本实施方式中, 采用 Altera 公司的型号为 EP1CQ240C8N 的 FPGA 作为实验平台, 其 逻辑框图见图 21, 该 FPGA 通过添加 Flash 模块, 提供了系统代码运行的空间, 同时, 可以将 代码烧录在Fl。

28、ash模块中, 节省了每次下载程序所浪费的时间 ; 该FPGA的SDRAM模块, 用来 存储 LCD 显示器要显示的数据, SDRAM 控制器集成在 LCD IP 核内。为了实现 SDRAM 模块和 LCD显示器之间的异步读写功能, 在SDRAM模块的输出端口和LCD显示器的RGB输入端口之 间添加 DCFIFO, 达到预想效果。 0072 LCD 显示器选用夏普公司型号为 LQ080V3DG01 的 LCD 液晶屏。根据用户手册提供 的 LCD 时序的描述, 在 FPGA 中设计 LCD 控制模块, 其控制框图见图 22。它能产生液晶屏显 示需要的时钟信号。同时, 添加锁相环, 将输入时钟信。

29、号分频倍频, 分别提供给 LCD 显示器 和 SDRAM 模块作为其工作信号。 说 明 书 CN 103054564 B 7 5/11 页 8 0073 本实施方式中, 通过触摸屏点击操作从硬件上辅助 FPGA 进行波形产生方式的选 择、 输出波形类型的选择、 在选择的输出波形上选取特征点、 利用高斯函数 -cosine 函数结 合的方法分段拟合波形、 采用弹性腔模型将人体主动脉模拟成两个血管弹性腔并仿真出该 血管弹性腔内血液流动状态形成波形、 将波形中叠加噪声信号并设定信噪比。 0074 本实施方式采用型号为 ADS7843 的 AD 转换装置, 作为触摸屏的控制器, ADS7843 是一个。

30、 12 位的模数转换器, 其数字接口与 FPGA 的 IO 口相连接, 提供其工作时序信号, ADS7843 的工作电路如图 23 所示, ADS7843 的 14 号引脚为输入接口, 与 FPGA 的 237 号引脚 相连。ADS7843 的 12 引脚为输出接口, 与 FPGA 的 219 号引脚相连。如果想获取 Y 方向的坐 标具体数值, 可以将信号从 X+ 引脚输入, 同时打开 Y+ 和 Y- 引脚, 得到 X+ 的数字电压值, 最 后, 得到 Y 方向的坐标, 同样, X 方向上的坐标可以用同样的方法获得。ADS7843 提供了两种 电压输入模式, 一种是单电压参考输入模式, 另一种。

31、是差分模式。 本实施方式中使用差分电 压输入模式。 0075 本实施方式采用型号为DAC7513的数模转换芯片作为DA转换装置, 输出最后的模 拟波形。DAC7513 是一个低电压、 12 位、 低功耗并且能够与 SPITM 核兼容的高速转换芯片, 该芯片工作时钟信号为 10kHZ, 参考电压输入为 3.3v, 其工作电路如图 24 所示, DAC7513 的 6 号引脚为输入接口, 与 FPGA 的 85 号引脚相连, 1 号引脚为输出接口, 直接连接示波器。 0076 本实施方式的基于FPGA的脉搏波信号发生器, 需要的电源幅值为12V、 5V和3.3V, 其中, 12V 和 5V 分别提。

32、供给 LCD 显示器, 提供背光电压。3.3V 提供给 ADS7843 模数转换芯 片、 DAC7513 数模转换芯片和触摸屏。 0077 12v 电压通过稳压电源直接获取 ; 通过降压芯片 LM2940CT-5.0 将 12V 电压降到 5V, 提供给 LCD 显示器。降压芯片 LM2940CT-5.0 电路如图 25 所示, 其中, 1 号引脚为输入电 压 12V ; 3 号引脚为输出电压 5V。 0078 通过降压芯片LM1085IT-3.3将5V电压降到3.3V, 提供给ADS7843模数转换芯片、 DAC7513 数模转换芯片和触摸屏使用, 降压芯片 LM1085IT-3.3 电路如。

33、图 26 所示, 其中, 3 号 引脚为输入电压 5V ; 2 号引脚为输出电压 3.3V。 0079 FPGA 设置有波形选择模块、 特征点选取模块、 波形拟合模块、 噪声叠加及信噪比设 定模块、 基线漂移模块、 触摸屏去抖动模块和血管弹性腔仿真模块 ; 0080 波形选择模块用于提供可选的输出波形类型并选择 ; 0081 特征点选取模块用于对波形选择模块选择的波形进行特征点选取 ; 0082 波形拟合模块用于利用高斯 -cosine 函数将特征点选取模块选取的特征点拟合 成波形 ; 0083 血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管 弹性腔内血液流动状态产生波形。

34、 ; 0084 噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿 真模块产生的波形叠加噪声信号并设定信噪比 ; 0085 基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移 ; 0086 触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。 0087 本实施方式中, 基于 FPGA 的脉搏波信号发生方法, 如图 2 所示, 包括如下步骤 : 0088 步骤 1 : 点击触摸屏的四个边界点, 得到该四个边界点的坐标值并保存, 根据四 说 明 书 CN 103054564 B 8 6/11 页 9 个边界点的坐标值、 触摸屏长度和触摸屏宽度得到该任意一点坐标值, 完成触摸。

35、屏坐标校 正 ; 0089 如图 20 所示, 点击四个边界点 A、 B、 C、 D, 得到四个点的坐标值 : A(Vax, Vay)、 B(Vbx, Vby)、 C(Vcx, Vcy)、 D(Vdx, Vdy)。 0090 点击触摸屏上的任意一点, 根据四个边界点的坐标值、 触摸屏长度和触摸屏宽度 得到该任意一点 (x, y) 坐标值, 公式如下 : 0091 0092 其中, LCD_W 为触摸屏的长度, LCD_H 为触摸屏的宽度。 0093 步骤 2 : 选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动, 波形产生方 式包括波形拟合和血管弹性仿真 : 若选择波形拟合, 则执行步骤 3。

36、, 若选择血管弹性仿真, 则执行步骤 6 ; 0094 去除由点击触摸屏引起的触摸屏抖动, 具体方法是 : 去除触摸屏抖动 : 点击触摸 屏一点并保存其坐标, 记为 (old_x, old_y), 再次点击该点并保存其坐标, 分别比较两次点 击得到的点的横坐标绝对值之差和纵坐标的绝对值之差, 若横坐标绝对值之差或纵坐标的 绝对值之差大于 5, 则视为触摸屏存在干扰, 第二次点击的坐标无效, 若横坐标绝对值之差 或纵坐标的绝对值之差小于 5, 则视为触摸屏无干扰, 第二次点击的坐标有效, 此时将第二 次点击的有效坐标与第一次点击所保存的坐标的横纵坐标对应相加并取平均值, 得到该点 坐标结果。 0。

37、095 步骤 3 : 选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动, 如图 3 所示, 输出波形类型包括 I 型滑脉 (Type1)、 II 型滑脉 (Type2)、 I 型弦脉 (Type3)、 II 型弦脉 (Type4) 和 III 型弦脉 (Type5) ; 0096 步骤 4 : 根据选择的输出波形类型选取特征点并去除由点击触摸屏引起的触摸屏 抖动 ; 0097 在选择的输出波形上选取特征点是根据所选择的波形, 在每个周期中, 选取幅值 最大的点、 斜率值最大的点、 初始点、 结束点、 拐点和驻点作为特征点, 用户可以根据需要调 整特征点位置, 调整范围是原特征点 5 个单位 。

38、( 像素点 ) ; 0098 脉搏波的特征点反映其在形状上的特点, 每种类型的波形需要5到6个特征点, 其 中, 只有 I 型滑波需要 5 个特征点。在有重波的波形中, 也需要选取重波幅值最大的点。 0099 系统给出每种函数特征点的具体坐标, 存储在一维数组中。 在波形拟合过程中, 通 过调用数据, 直接获得特征点的横纵坐标, 对脉搏波进行拟合。 0100 用户可以根据需要在调整范围内调整特征点, 这样调整后输入的坐标数值才认为 是有效的, 避免了由于用户的错误输入而导致的最后拟合波形的不准确的情况。 0101 步骤 5 : 依次连接两个相邻的特征点, 利用高斯函数 -cosine 函数结合。

39、的方法, 分 说 明 书 CN 103054564 B 9 7/11 页 10 段拟合波形, 若干分段波形整合得到脉搏波波形, 然后执行步骤 7 ; 0102 在波形曲线的形状上, 高斯函数与脉搏波很相似, 因此本实施方式采用高 斯 -cosine 函数分段拟合波形, 再把各段波形整合起来形成完整的脉搏波波形 ; 0103 高斯函数 G(x) 公式如下 : 0104 0105 其中, h 为要拟合的区间的初始点纵坐标, 代表平均值, 同样也是 y 轴方向高斯 函数的最高值, 代表高斯函数的宽度。 0106 Cosine 函数 C(x) 公式如下 : 0107 C(x) hcos(x) 0108。

40、 其中, h 为要拟合的区间的初始点纵坐标。 0109 利用高斯函数 G(x) 和 Cosine 函数 C(x), 通过差值、 补零等操作连接两个特征点, 最后拟合出完整波形。 0110 在拟合波形的过程中, 需要保证分段波形在间断点处连续, 这样, 才能拟合出光滑 的波形。 为了保证波形光滑, 即上一个波形的右极限等于下一个波形的左极限, 设定在间断 点处的左右两端数值相等。同样, 高斯函数在波峰点, 其一阶导数也是连续的, 最后拟合出 的波形也是光滑的。 0111 通过分析不同的脉搏波可知, 如果给出两个特征点的位置, 可以设定一个合适的 高斯函数的宽度 , 给每段拟合波形赋值不同的 , 。

41、使拟合后的波形与目标波形相似程度 最高。 0112 分段拟合函数 Pfit(x) 的具体公式如下 : 0113 0114 其中, x0、 x1、 x2、 x3、 x4、 x5分别表示 6 个特征点的横坐标, y1、 y2、 y3、 y4分别表示中 间 4 个特征点的纵坐标 ( 第 1 个特征点的纵坐标 y0 0, 第 5 个特征点的纵坐标 y5 0), 1、 2、 3、 4、 5表示 6 个特征点拟合出的五个分段波形的高斯函数高度。 0115 步骤 6 : 采用弹性腔模型将人体主动脉模拟成两个血管弹性腔, 其中一个血管弹 性腔表征主动脉弓, 另一个血管弹性腔表征腹主动脉, 通过两个血管弹性腔仿。

42、真出该血管 弹性腔内血液流动状态形成波形, 选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏 抖动, 血管弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、 表征腹主动脉的血管弹 说 明 书 CN 103054564 B 10 8/11 页 11 性腔的集总顺应性、 连接两个血管弹性腔的血柱 L 及外周阻力 ; 0116 将人体主动脉及其主要分支看做两个血管弹性腔。 表征主动脉弓的血管弹性腔的 集总顺应性为 C1, 表征腹主动脉的血管弹性腔的集总顺应性为 C2, 连接两个血管弹性腔的 血柱 L 表征血液的惯性。心脏收缩时, 血液 qin由心室 m1 进入 C1与血柱 L, 而后进入 C2, 最 。

43、后流经集中的外周阻力 R 而进入静脉腔, 这就是弹性腔模型 (windkessel 仿真模型 ), 使用 电源器件模拟血管的真实情况, 本实施方式的弹性腔模型的等效电路如图 5 所示, 弹性腔 模型相应的微分方程如下 : 0117 0118 弹性腔模型包括四种类型 : 低阻力、 中阻力、 高阻力、 超高阻力, 并设定主动脉集总 顺应性、 腹主动脉的集总顺应性、 血液惯性和外周阻力 ; 0119 本实施方式提供低阻力、 中阻力、 高阻力、 超高阻力四种情况下, L、 R、 C1、 C2的参考 数值, 并对用户输入的参数进行合法性检验, 只要在给定范围内参数, 才默认为有效。参数 L、 R、 C1。

44、、 C2的给定范围如表 1 所示 : 0120 表 1 参数 L、 R、 C1、 C2的给定范围 0121 低阻力中阻力高阻力超高阻力 C11.37-1.431.02-1.080.58-0.620.44-0.49 C20.19-0.250.17-0.210.077-0.0830.023-0.027 R0.47-0.531.22-1.271.47-1.511.98-2.02 L0.0182-0.01870.0102-0.01060.0147-0.01510.079-0.083 0122 本实施方式中, 低阻力参数 : C1 1.4, C2 0.22, L 0.0185, R 0.5, 中阻力参 。

45、数 : C1 1.06, C2 0.19, L 0.0104, R 1.25, 高阻力参数 : C1 0.6, C2 0.082,L 0.0149,R 1.4, 超高阻力 : C1 0.47, C2 0.025, L 0.081, R 2。 0123 在实际的生理条件下, 整个心动周期 T 应该包括收缩期 Ts和舒张期 Td两部分。这 时血流量 qin 0, 由弹性腔模型所得出的脉搏波波形应该包括升支和降支, 它代表一个完 整的脉图所应具有的所有信息。由于所得的弹性腔模型相应的微分方程为三阶微分方程, 本实施方式采用四阶龙格库塔方法, 求得该三阶微分方程的数值解。以左心室每次搏动输 出的血流量。

46、 qin(t) 作为弹性腔模型的输入信号, qin(t) 的函数表达式为 : 0124 说 明 书 CN 103054564 B 11 9/11 页 12 0125 设弹性腔模型初始值为 q(1) 30, p1(1) 50,p2(1) 50, 设定中间变量 K11、 K12、 K13、 K14、 K21、 K22、 K23、 K24、 K31、 K32、 K33、 K34。 0126 0127 0128 0129 0130 0131 0132 0133 0134 0135 0136 0137 0138 其中, h 为计算步长, p1 为表征主动脉弓的血管弹性腔的压力, p2 为表征腹主动脉 的。

47、血管弹性腔的压力 说 明 书 CN 103054564 B 12 10/11 页 13 0139 求解得到输出的脉搏波波形 qn, 表示如下 : 0140 0141 0142 0143 其中, n 表示脉搏波波形 qn中的点的个数, 即解的个数 ; 0144 低阻力类型的弹性腔模型输出的脉搏波波形如图 6 所示, 中阻力类型的弹性腔模 型输出的脉搏波波形如图7所示, 高阻力类型的弹性腔模型输出的脉搏波波形如图8所示, 超高阻力类型的弹性腔模型输出的脉搏波波形如图 9 所示。 0145 步骤 7 : 在波形中叠加噪声信号并设定信噪比, 并去除由点击触摸屏引起的触摸 屏抖动 ; 0146 噪声信号。

48、包括 50Hz 工频噪声, 高斯白噪声和均匀分布的噪声, 信噪比可以由用户 设定, 如 20dB、 30dB、 40dB 或 50dB ; 0147 50Hz 工频噪声 : 通过频率为 50Hz 的正弦函数 sine 得到 ; 0148 高斯白噪声 : 采用 Box 和 Muller 提出的方法, 用两个独立的随机变量从长度相同 的两个区间在 0, 1 之间的长方形密度函数生成一个正态分布的序列 : 产生两个在 (0, 1) 区间均匀分布的随机噪声varA和varB, 在噪声varA和varB基础上产生均值等于0且方差 等于 1 的高斯白噪声, 公式如下 : 0149 0150 均匀分布噪声 : 产生均匀分布的白噪声, 因为是噪声服从均匀分布, 所以就能保证 各等带宽的频带所含能量相等, 而且信号是随机产生的。 考虑到拟合后的脉搏波的幅值, 所 以产生的白噪声数值在 0 到 50 之间, 能够与脉搏波符合。 0151 通常来说, 噪声的衡量标准就是信噪比, 即 SNR, 输出信号每一个点的输入信号与 噪声的比值, 即信噪比的数值, 信噪比 SNR 的计算公式如下 : 0152 0153 其中, S(i) 表示脉搏波波形各点数值总和, s表示脉搏波的平均值。。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人类生活必需 > 医学或兽医学;卫生学


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1