专利名称:一种基于fpga的脉搏波信号发生器及方法
技术领域:
本发明属于信号发生器技术领域,具体涉及一种基于FPGA的脉搏波信号发生器及方法。
背景技术:
如《基于C8051F020单片机的脉搏波信号发生器的设计》论文所述,李洋等人设计了一种脉搏波信号发生器,能够发出代替人体实际脉搏波的信号,将其发送至各类脉搏波信号检测仪器中,以求调试和检查这类仪器的性能指标。但是该项设计中,信号发生器需要与上位机相连,由于需要存储整个波形数据,所以大容量的Flash芯片才能达到要求。发生器只是单纯地将上位机中的已存在的波形数据通过液晶屏和示波器显示出来,添加一些功能模块,这都是在已经获得脉搏波数据的前提下,才能完成的。若没有波形数据,信号发生器也达不到显示波形的目的。又如专利号为200720103587.1的实用新型专利“数字式脉搏波信号发生器”中,使用单片机作为处理器,产生脉搏波,用作脉搏波仪器检测设备,但是,该专利只能通过与PC机相连,通过USB数据线,将PC中的脉搏波数据下载到EPROM中,通过IXD和示波器显示波形,也只是单纯地做到显示波形的作用,需要已知大量的脉搏波数据才能使设备达到其作用,这样就局限了该数字式脉搏波信号发生器在检测脉搏波仪器时发挥的作用。
此外,有一些信号发生器,只能输出正弦波、方波等简单信号,还有些脉搏波信号发生器,只有在电脑中存储完整的脉搏波数据,才能显示出最后的波形,显然这给我们平时的使用带来很多不便。
发明内容
针对现有技术存在的不足,本发明提供一种基于FPGA的脉搏波信号发生器及方法。本发明的技术方案是—种基于FPGA的脉搏波信号发生器,包括触摸屏、IXD显不器、不波器、FPGA>电源、AD转换装置和DA转换装置;所述电源用于为IXD显示器、触摸屏、AD转换装置和DA转换装置供电;所述AD转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标数字值传输至FPGA ;所述DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至示波器;所述FPGA用于产生脉搏波信号并将其传输至IXD显示器或示波器进行脉搏波波形显示;所述DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输入端连接FPGA,AD转换装置输出端连接触摸屏,IXD显示器连接FPGA,电源连接IXD显示器。所述FPGA设置有波形选择模块、特征点选取模块、波形拟合模块、噪声叠加及信噪比设定模块、基线漂移模块、触摸屏去抖动模块和血管弹性腔仿真模块;所述波形选择模块用于提供可选的输出波形类型并选择;所述特征点选取模块用于对波形选择模块选择的波形进行特征点选取;所述波形拟合模块用于利用高斯-cosine函数将特征点选取模块选取的特征点拟合成波形;所述血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管弹性腔内血液流动状态产生波形;所述噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿真模块产生的波形叠加噪声信号并设定信噪比·;所述基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移;所述触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。采用所述的基于FPGA的脉搏波信号发生器的脉搏波信号发生方法,包括如下步骤步骤1:点击触摸屏的四个边界点,得到该四个边界点的坐标值并保存,根据四个边界点的坐标值、触摸屏长度和触摸屏宽度得到该任意一点坐标值,完成触摸屏坐标校正;步骤2 :选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动,所述波形产生方式包括波形拟合和血管弹性仿真若选择波形拟合,则执行步骤3,若选择血管弹性仿真,则执行步骤6;步骤3 :选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动,所述输出波形类型包括I型滑脉、II型滑脉、I型弦脉、II型弦脉和III型弦脉;步骤4:根据选择的输出波形类型,选取特征点并去除由点击触摸屏引起的触摸屏抖动;所述的在选择的输出波形上选取特征点,是根据所选择的波形,在每个周期中,选取幅值最大的点、斜率值最大的点、初始点、结束点、拐点和驻点作为特征点。步骤5 :依次连接两个相邻的特征点,利用高斯函数-cosine函数结合的方法,分段拟合波形,若干分段波形整合得到脉搏波波形,并去除由点击触摸屏引起的触摸屏抖动,然后执行步骤7 ;步骤6 :采用弹性腔模型将人体主动脉模拟成两个血管弹性腔,其中一个血管弹性腔表征主动脉弓,另一个血管弹性腔表征腹主动脉,通过两个血管弹性腔仿真出该血管弹性腔内血液流动状态形成波形,选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏抖动,血管弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、腹主动脉的血管弹性腔的集总顺应性、连接两个血管弹性腔的血柱及外周阻力;步骤7 :在波形中叠加噪声信号并设定信噪比,并去除由点击触摸屏引起的触摸屏抖动;所述的噪声信号包括50Hz工频噪声,高斯白噪声和均匀分布的噪声。步骤8 :对加入噪声信号并设定信噪比后的波形设定基线漂移,得到噪声和基线漂移的脉搏波波形;步骤9 :将脉搏波波形通过IXD显示器或示波器显示。所述去除由点击触摸屏引起的触摸屏抖动,具体方法是点击触摸屏一点并保存其坐标,再次点击该点并保存其坐标,分别比较两次点击得到的点的横坐标绝对值之差和纵坐标的绝对值之差,若横坐标绝对值之差或纵坐标的绝对值之差大于5,则视为触摸屏存在干扰,第二次点击的坐标无效,若横坐标绝对值之差或纵坐标的绝对值之差小于5,则视为触摸屏无干扰,第二次点击的坐标有效,此时将第二次点击的有效坐标与第一次点击所保存的坐标的横纵坐标对应相加并取平均值,得到该点坐标结果。有益效果本发明采用两种方式产生脉搏波波形,一种方式是通过高斯函数-Cosine函数结合的方式,分段拟合脉搏波得到最后的完整波形,省去了整个波形所浪费的存储空间,实现了真正意义上的脉搏波发生装置,具有专一性;另一种方式是采用弹性腔模型模拟血管情况,模拟出两个血管弹性腔,通过参数的改变,可以产生低阻力、中阻力、高阻力、超高阻力四种情况下的脉搏波波形。两种方式均能在信号数据未知的前提下,由用户设定得到准确脉搏波波形输出。本发明的脉搏波信号发生器采用FPGA作为信号处理器,相对于其它开发平台(例如单片机),FPGA可进行并行数据处理,有更快的运行速度,可以连接更多的外围设备,有利于系统功能的后续添加,从根本上解决了由于开发平台的不足导致的系统功能的缺陷;而且克服了其他信号发生器的缺点——只能产生简单的波形,需要完整的脉搏波数据,需要大容量的Flash存储数据等。采用IXD显示器,触摸屏和示波器组成的与用户的交互界面,使操作更加简单,用户可以根据需要快速地完成相应操作,有很大的实用价值。通过实验证明,本发明的基于FPGA的脉搏波信号发生方法所得到的脉搏波波形与实际波形的相对误差小于3%, 与现有技术中的脉搏波发生器相比,大幅提高了拟合后波形的准确度,最大程度的降低了误差对最后结果的影响。为最大程度的模拟实际脉搏波的波形,本方法添加不同类型噪声,并设置信噪比,对波形加入基线漂移,让最后得到的脉搏波更有实际的利用价值。
图1为本发明具体实施方式
的基于FPGA的脉搏波信号发生器结构框图;图2为本发明具体实施方式
的基于FPGA的脉搏波信号发生方法流程图;图3为本发明具体实施方式
的五种类型的输出波形图;图4为本发明具体实施方式
的弹性腔模型示意图;图5为本发明具体实施方式
的弹性腔模型等效电路图;图6为本发明具体实施方式
的低阻力类型的弹性腔模型输出的脉搏波波形图;图7为本发明具体实施方式
的中阻力类型的弹性腔模型输出的脉搏波波形图;图8为本发明具体实施方式
的高阻力类型的弹性腔模型输出的脉搏波波形图;图9为本发明具体实施方式
的超高阻力类型的弹性腔模型输出的脉搏波波形图;图10为本发明具体实施方式
的叠加50Hz工频噪声后的脉搏波波形图;图11为本发明具体实施方式
的叠加高斯白噪声后的脉搏波波形图12为本发明具体实施方式
的叠加均匀分布噪声后的脉搏波波形图;图13为本发明具体实施方式
的加入基线漂移后的脉搏波波形图;图14为本发明具体实施方式
的I型滑脉通过IXD显示器显示的脉搏波波形图;图15为本发明具体实施方式
的I型滑脉通过示波器显示的脉搏波波形图;图16为本发明具体实施方式
的II型滑脉通过示波器显示的脉搏波波形图;图17为本发明具体实施方式
的I型弦脉通过示波器显示的脉搏波波形图;图18为本发明具体实施方式
的II型弦脉通过示波器显示的脉搏波波形图;图19为本发明具体实施方式
的III型弦脉通过示波器显示的脉搏波波形图;图20为本发明具体实施方式
的触摸屏及其四个边界点的示意图;图21为本发明具体实施方式
的FPGA的逻辑框图;图22为本发明具体实施方式
的FPGA中的LCD控制模块的控制框图;图23为本发明具体实施方式
的ADS7843的工作电路图;图24为本发明具体实施方式
的DAC7513工作电路图;图25为本发明具体实施方式
的降压芯片LM2940CT-5. O的电路图;图26为本发明具体实 施方式的降压芯片LM1085IT-3. 3的电路图。
具体实施例方式下面结合附图对本发明的具体实施方式
做详细说明。如图1所示,基于FPGA的脉搏波信号发生器,包括触摸屏、IXD显示器、示波器、FPGA,电源、AD转换装置和DA转换装置;电源用于为IXD显示器、触摸屏、AD转换装置和DA转换装置供电;AD转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标数字值传输至FPGA ;DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至示波器;FPGA用于产生脉搏波信号并将其传输至IXD显示器或示波器进行脉搏波波形显示;DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输入端连接FPGA,AD转换装置输出端连接触摸屏,IXD显示器连接FPGA,电源连接IXD显示器。本实施方式中,采用Altera公司的型号为EP1CQ240C8N的FPGA作为实验平台,其逻辑框图见图21,该FPGA通过添加Flash模块,提供了系统代码运行的空间,同时,可以将代码烧录在Flash模块中,节省了每次下载程序所浪费的时间;该FPGA的SDRAM模块,用来存储IXD显示器要显示的数据,SDRAM控制器集成在IXD IP核内。为了实现SDRAM模块和IXD显示器之间的异步读写功能,在SDRAM模块的输出端口和IXD显示器的RGB输入端口之间添加DCFIF0,达到预想效果。IXD显示器选用夏普公司型号为LQ080V3DG01的IXD液晶屏。根据用户手册提供的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位、低功耗并且能够与SPI 核兼容的高速转换芯片,该芯片工作时钟信号为IOkHZ,参考电压输入为3. 3v,其工作电路如图24所示,DAC7513的6号引脚为输入接口,与FPGA的85号引脚相连,I号引脚为输出接口,直接连接示波器。本实施方式的基于FPGA的脉搏波信号发生器,需要的电源幅值为12V、5V和3. 3V,其中,12V和5V分别提供给IXD显示器,提供背光电压。3. 3V提供给ADS7843模数转换芯片、DAC7513数模转换芯片和触摸屏。12v电压通过稳压电源直接获取;通过降压芯片LM2940CT-5. O将12V电压降到5V,提供给IXD显示器。降压芯片LM2940CT-5. O电路如图25所示,其中,I号引脚为输入电压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 (Vex, Vcy)、D (Vdx, Vdy)。点击触摸屏上的任意一点,根据四个边界点的坐标值、触摸屏长度和触摸屏宽度得到该任意一点(X,y)坐标值,公式如下
权利要求
1.一种基于FPGA的脉搏波信号发生器,包括触摸屏、IXD显示器和示波器,其特征在于还包括FPGA、电源、AD转换装置和DA转换装置; 所述电源用于为LCD显示器、触摸屏、AD转换装置和DA转换装置供电; 所述AD转换装置用于将点击触摸屏动作产生的电压值转换为坐标数字值并将该坐标数字值传输至FPGA ; 所述DA转换装置用于将FPGA输出的数字波形转换为模拟波形并将该模拟波形传输至示波器; 所述FPGA用于产生脉搏波信号并将其传输至IXD显示器或示波器进行脉搏波波形显示; 所述DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输入端连接FPGA,AD转换装置输出端连接触摸屏,IXD显示器连接FPGA,电源连接IXD显示器。
2.根据权利要求1所述的基于FPGA的脉搏波信号发生器,其特征在于所述FPGA设置有波形选择模块、特征点选取模块、波形拟合模块、噪声叠加及信噪比设定模块、基线漂移模块、触摸屏去抖动模块和血管弹性腔仿真模块; 所述波形选择模块用于提供可选的输出波形类型并选择; 所述特征点选取模块用于对波形选择模块选择的波形进行特征点选取; 所述波形拟合模块用于利用高斯-cosine函数将特征点选取模块选取的特征点拟合成波形; 所述血管弹性腔仿真模块用于将人体主动脉模拟成两个血管弹性腔并仿真出该血管弹性腔内血液流动状态产生波形; 所述噪声叠加及信噪比设定模块用于对波形拟合模块拟合成的波形或血管弹性腔仿真模块产生的波形叠加噪声信号并设定信噪比; 所述基线漂移模块用于对叠加噪声并设定信噪比后的波形加入基线漂移; 所述触摸屏去抖动模块用于去除点击触摸屏引起的抖动干扰。
3.采用权利要求1所述的基于FPGA的脉搏波信号发生器的脉搏波信号发生方法,其特征在于包括如下步骤 步骤1:点击触摸屏的四个边界点,得到该四个边界点的坐标值并保存,根据四个边界点的坐标值、触摸屏长度和触摸屏宽度得到该任意一点坐标值,完成触摸屏坐标校正; 步骤2:选择波形产生方式并去除由点击触摸屏引起的触摸屏抖动,所述波形产生方式包括波形拟合和血管弹性仿真若选择波形拟合,则执行步骤3,若选择血管弹性仿真,则执行步骤6 ; 步骤3:选择输出波形类型并去除由点击触摸屏引起的触摸屏抖动,所述输出波形类型包括I型滑脉、II型滑脉、I型弦脉、II型弦脉和III型弦脉; 步骤4:根据选择的输出波形类型,选取特征点并去除由点击触摸屏引起的触摸屏抖动; 步骤5 :依次连接两个相邻的特征点,利用高斯函数-cosine函数结合的方法,分段拟合波形,若干分段波形整合得到脉搏波波形,并去除由点击触摸屏引起的触摸屏抖动,然后执行步骤7 ; 步骤6 :采用弹性腔模型将人体主动脉模拟成两个血管弹性腔,其中一个血管弹性腔表征主动脉弓,另一个血管弹性腔表征腹主动脉,通过两个血管弹性腔仿真出该血管弹性腔内血液流动状态形成波形,选取血管弹性腔参数并去除由点击触摸屏引起的触摸屏抖动,血管弹性腔参数包括主动脉弓的血管弹性腔的集总顺应性、腹主动脉的血管弹性腔的集总顺应性、连接两个血管弹性腔的血柱及外周阻力; 步骤7 :在波形中叠加噪声信号并设定信噪比,并去除由点击触摸屏引起的触摸屏抖动; 步骤8 :对加入噪声信号并设定信噪比后的波形设定基线漂移,得到噪声和基线漂移的脉搏波波形; 步骤9 :将脉搏波波形通过IXD显示器或示波器显示。
4.根据权利要求3所述的基于FPGA的脉搏波信号发生方法,其特征在于步骤4中所述的在选择的输出波形上选取特征点,是根据所选择的波形,在每个周期中,选取幅值最大的点、斜率值最大的点、初始点、结束点、拐点和驻点作为特征点。
5.根据权利要求3所述的基于FPGA的脉搏波信号发生方法,其特征在于所述去除由点击触摸屏引起的触摸屏抖动,具体方法是点击触摸屏一点并保存其坐标,再次点击该点并保存其坐标,分别比较两次点击得到的点的横坐标绝对值之差和纵坐标的绝对值之差,若横坐标绝对值之差或纵坐标的绝对值之差大于5,则视为触摸屏存在干扰,第二次点击的坐标无效,若横坐标绝对值之差或纵坐标的绝对值之差小于5,则视为触摸屏无干扰,第二次点击的坐标有效,此时将第二次点击的有效坐标与第一次点击所保存的坐标的横纵坐标对应相加并取平均值,得到该点坐标结果。
6.根据权利要求3所述的基于FPGA的脉搏波信号发生方法,其特征在于步骤7所述的噪声信号包括50Hz工频噪声,高斯白噪声和均匀分布的噪声。
全文摘要
一种基于FPGA的脉搏波信号发生器,包括LCD显示器、示波器、FPGA、触摸屏、电源、AD转换装置和DA转换装置;DA转换装置输入端连接FPGA,DA转换装置输出端连接示波器,AD转换装置输入端连接FPGA,AD转换装置输出端连接触摸屏,LCD显示器连接FPGA,电源连接LCD显示器。本发明方法采用两种方式产生脉搏波波形,一种方式是通过高斯函数-Cosine函数结合的方式,分段拟合脉搏波得到最后的完整波形,省去了整个波形所浪费的存储空间,具有专一性;另一种方式是采用弹性腔模型模拟血管情况,模拟出两个血管弹性腔,通过参数的改变,可以产生低阻力,中阻力,高阻力,超高阻力四种情况下的脉搏波波形。两种方式均能在信号数据未知的前提下,由用户设定得到准确脉搏波波形输出。
文档编号A61B5/02GK103054564SQ20131003420
公开日2013年4月24日 申请日期2013年1月29日 优先权日2013年1月29日
发明者徐礼胜, 王昊, 王璐, 宋丹, 陈珏丽, 伏全海 申请人:东北大学