新型可视电子听诊器的研制
发布时间:2017-09-01
心音是能反映心脏正常或者病理的音响, 它是由于心脏搏动过程中各瓣膜的开闭以及心肌和血液运动所产生的震动形成的。心音听诊是诊断心脏疾病的重要依据。传统的方法是采用听诊器听诊心音, 诊断的依据主要是医师的经验。这种方法比较简单, 但由于人耳对声音的感知是声强与频率的综合效应, 因而有些病理特性难以捕捉, 且准确性较差。设计一种新的电子听诊器对听诊音进行定量、准确的分析很有必要。目前, 国内电子听诊器产品的价格和功能与国外相比还存在较大差距, 多数只是将心音采集后放大, 虽然在一定程度上改良了听诊器, 但是还不能很好地反映心音波形。本文研制的可视听诊器实现了这一功能。它集听诊和心电信号监测功能于一体, 可以实时记录并显示心率及心音图, 使诊断更准确, 且便于医学教学。同时具有可存储、实时显示、简单易用、成本低、体积小等优点。本文对该可视听诊器的结构及工作原理作了较详细的介绍。
1 硬件设计
该可视听诊器由采集处理和波形显示二部分组成, 具体由声音传感器、信号调理采样电路和键盘显示电路组成。由于听诊器接收到的是微弱的宽带频率信号, 因此由声音传感器转换成电信号后, 需要经过滤波检波放大电路心音是能反映心脏正常或者病理的音响, 它是由于心脏搏动过程中各瓣膜的开闭以及心肌和血液运动所产生的震动形成的。心音听诊是诊断心脏疾病的重要依据。传统的方法是采用听诊器听诊心音, 诊断的依据主要是医师的经验。这种方法比较简单, 但由于人耳对声音的感知是声强与频率的综合效应, 因而有些病理特性难以捕捉, 且准确性较差。设计一种新的电子听诊器对听诊音进行定量、准确的分析很有必要。目前, 国内电子听诊器产品的价格和功能与国外相比还存在较大差距, 多数只是将心音采集后放大, 虽然在一定程度上改良了听诊器, 但是还不能很好地反映心音波形。
1.1 拾音头
由于心音频率较低( 20~600Hz) , 在人耳可听频域范围的低频段, 因此选用传声器(话筒―――将声信号转换成电信号的换能器) 作为声音传感器。声音传感器( 话筒) 有很多种类, 如驻极体式、动圈式和电容式等。本系统对传感器的选取原则是: 灵敏度高, 抗干扰能力强, 除了要提取微弱的心音信号外, 还要求它不受人声、工频等信号的干扰。经多次实验比较, 设计中选用驻极体式话筒。拾音器 MIC 的制作选用老式听诊器的振膜头部分。在振膜耳把套上 20cm长的橡皮管, 另一头挤压入一只微型驻极体话筒, 话筒的 2根导线用屏蔽电缆接到电路中的 MIC 处, 驻极体话筒处用热缩套管加固, 以防止操作时产生不必要的噪声干扰。
1.2 信号调理电路
主要由三部分组成: (1)信号输入级(第 1 级)。拾音头输出音频信号经耦合电容 C1 输入信号处理电路, 为保证拾音头正常工作须提供较大的负能给出一定时间间隔内的最大值。另外为便于采集并有效地利用 A/D 的转换范围, 信号要放大到相应的电平范围之内, 故设计中使用了比例放大电路。
1.3 信号采样
心音频率 f 在 20Hz~600Hz 之间, 根据香农( Shannon)采样定理, 只要采样的频率高于或等于原来频率的 2 倍,就可以完整地重现原波形, 因此选择的 A/D 转换器的转换速率应在 1 200Hz 以上, 故设计中选用了串行 A/D 转换器TLC0831。信号采样电路的工作原理: 把调理电路的模拟输出信号用 A/D 转换器变成数字量后, 再由单片机送到液晶显示屏显示。
1.4 键盘显示
本系统选用了精电蓬远的 QH12864T 点阵式液晶显示(LCD)模块。该模块由控制器 T6963C、列驱动器 T6A39、行驱动器 T6A40 及与外部设备的接口等部分组成, 它既能显示字符( 中文和西文字符) , 又能显示图形, 还能够将字符与图形混合显示。
LCD 与单片机的接口方法分为直接访问方式和间接控制方式。直接访问方式是把液晶模块作为存储器接在CPU 的数据线、地址线和控制线上, 同时把它的数据总线接在 89S52 的 P0 口上, 片选以及寄存器选择信号线由 P2口提供, 读写操作由单片机的读写操作信号控制。这种方式是以访问存储器的方式来访问液晶显示模块。间接控制方式不使用单片机的数据系统, 而是利用它的I/O 口来实现与显示模块的通信, 即将液晶显示模块的数据线与单片机的 P0 口连接作为数据总线, 另外 3 根时序控制信号线通常 利 用 89S52 的 P3 口 中 未被使用的 I/O 口来控制。这种访问方式不占用 CPU 的存储器空间, 它的接口电路与时序无关, 其时序完全靠软件编程实现。间接控制方式的速度较直接访问方式快, 所以本设计中采用的是间接控制方式, 具体连接如图 3 所示。另 外 系 统 设 置 了 6 个 按键, 用于图形的拉伸、缩放、存储、回放及菜单式操作.
2 调理电路的调试
其中 s1 是第 1 心音, s2 是第 2 心音; Systole 代表心脏收缩期, Diastole 代表心脏舒张期。

3 系统软件设计
系统选用的 LCD 是在图形工作方式下, 通过建立坐标系, 利用位操作实现对心音波形的逼真显示。下面详细介绍液晶显示屏绘图编程的算法和波形连续显示。
3.1 绘图编程的算法
系统选用的是 128×64 点阵式图形液晶显示模块。要绘制心音波形只要根据 A/D 转换来的数据在液晶显示器的对应位置上绘点显示。
液晶显示器在图形工作方式下液晶平面的每一处所对应的显示缓冲区地址情况, 数据为十六进制, 并建立以左下角为坐标原点的坐标系。这样坐标(X, Y)的值都为正值, 简化了算法。其中 X 表示 1~128 个点, Y 表示各个点所对应的幅值。由于 A/D 采样的数值为 0~255,而 LCD 的行取值为 0~63, 所以把幅值缩小一定的倍数, 即Y=D/B, D 为 A/D 采集的数字量, B 为该数缩小的倍数。由图可以看出幅值 Y 加 1, 显示缓冲区地址 K 就减少 10H,从而得到缓冲区地址的表达式: K=X/8- 10H* Y+0BF0H。而缓冲区地址字节中对应 X 除以 8 的余数的位就正好是要绘点的位置。只要利用位操作命令对它置位就可实现绘点。
3.2 波形显示
把采集的数据存放在 RAM 中, RAM 共存了 8KB 波形数据。而液晶显示器 1 次只能显示 128 个点, 因此可以通过改变在 RAM 中读数间隔来控制波形的横向显示, 即每显示完 1 个数据, RAM 地址加 N, 通过改变 N 的大小来拉开或回缩信号波形, 以便于观察。
如果相邻 2 个点的幅值稍有不同, 2 个点的距离就会分开, 造成显示不连续, 影响视觉效果。因而怎样使波形显示连续, 是显示信号波形中一个很重要的问题。本系统中对这一问题的解决方法: 在 LCD 上每显示完 1 个点后, 判断它与前 1 个点的幅值差距, 即 Y 值值差, 若大于 8, 就要在2 点之间插入若干点(X 值不变, 只变 Y 值), 使 2 点连续起来, 然后再进行下 1 个点的显示。利用这种方法, 可很好地实现心音波形的显示。波形显示程序流程图如图 7 所示。
4 结束语
本文介绍的可视听诊器能实时显示心率和心音波形,并能进行波形拉伸、变换和回放, 形象直观、操作方便, 适合向临床教学和医疗领域推广应用。
摘自:中国计量测控网






