光电脉搏测量仪.doc

上传人:工**** 文档编号:562188065 上传时间:2024-03-12 格式:DOC 页数:9 大小:1.03MB
返回 下载 相关 举报
光电脉搏测量仪.doc_第1页
第1页 / 共9页
光电脉搏测量仪.doc_第2页
第2页 / 共9页
光电脉搏测量仪.doc_第3页
第3页 / 共9页
光电脉搏测量仪.doc_第4页
第4页 / 共9页
光电脉搏测量仪.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《光电脉搏测量仪.doc》由会员分享,可在线阅读,更多相关《光电脉搏测量仪.doc(9页珍藏版)》请在金锄头文库上搜索。

1、光电脉搏测量仪设计报告一、 设计意义从脉搏波中提取人体的生理病理信息作为临床诊断和治疗的依据,历来都受到中外医学界的重视。目前医院的护士每天都要给住院的病人把脉记录病人每分钟脉搏数,方法是用手按在病人腕部的动脉上,根据脉搏的跳动进行计数。为了节省时间,一般不会作1分钟的测量,通常是测量10秒钟时间内心跳的数,再把结果乘以6即得到每分钟的心跳数,即使这样做还是比较费时,而且精度也不高,因此,需要有使用更加方便,测量精度更高的设备。二、 关键技术脉搏检测中关键技术是传感器的设计与传感器输出的微弱信号提取问题, 本文设计的脉搏波检测系统以光电检测技术为基础,并采用了脉冲振幅光调制技术消除周围杂散光、

2、暗电流等各种干扰的影响。并利用过采样技术和数字滤波等数字信号处理方法,代替实现模拟电路中的放大滤波电路的功能。本系统模拟电路简单,由ADC841芯片实现脉搏信号采集,信号处理和脉搏次数的计算等功能,因此体积小,功耗低,系统稳定性高。本系统可实现脉搏波的实时存储并可实现与上位机(PC 机)的实时通讯, 因此可作为多参数病人中心监护系统的一个模块完成心率检测和脉搏波形显示。三、 硬件设计3.1 设计框图外部中断信号光电传感器低通放大器比较和整形单片机STC89C51液晶显示电路外部晶振光电脉搏测量仪是利用光电传感器作为变换原件,把采集到的用于检测脉搏跳动的红外光转换成电信号,用电子仪表进行测量和显

3、示的装置。本系统的组成包括光电传感器、信号处理、单片机电路、数码显示、电源等部分。脉搏测量仪硬件框图如图1所示。 图1 光电脉搏测量仪方框图当手指放在红外线发射二极管和接收三极管中间,随着心脏的跳动,血管中血液的流量将发生变换。由于手指放在光的传递路径中,血管中血液饱和程度的变化将引起光的强度发生变化,因此和心跳的节拍相对应,红外接收三极管的电流也跟着改变,这就导致红外接收三极管输出脉冲信号。该信号经放大、滤波、整形后输出,输出的脉冲信号作为单片机的外部中断信号。单片机电路对输入的脉冲信号进行计算处理后把结果送到数码管显示。3.2脉搏信号采集与放大整形目前脉搏波检测系统有以下几种检测方法:光电

4、容积脉搏波法、液体耦合腔脉搏传感器、压阻式脉搏传感器以及应变式脉搏传感器。近年来, 光电检测技术在临床医学应用中发展很快, 这主要是由于光能避开强烈的电磁干扰, 具有很高的绝缘性, 且可非侵入地检测病人各种症状信息,具有结构简单、无损伤、精度高、可重复好等优点。用光电法提取指尖脉搏光信息受到了从事生物医学仪器工作的专家和学者的重视。3.2.1脉搏信号介绍由于光电传感器所输出的信号波源强度比较弱,且为类似于正弦波波形,如图2所示,所以对信号进行放大整形处理,使其以较强方波形式输出。图2 脉搏仿真信号正弦波3.2.2 放大整形电路图3 信号采集放大整形电路图4为正弦信号通过放大整形电路之后得到的方

5、型波。图4整形后的方波图5 脉搏信号对比3.3单片机处理电路如图6所示,本部分运用了89C51单片机作为核心元件,在这里运用单片机能更快更准确地对数据进行运算,而且可以根据实际情况进行编程,所用外围元件少,轻巧省电,故障率低。来自传感和整形输出电路的脉冲电平输入单片机89C51的P3.5/T1引脚,单片机设为下降沿中断触发模式,故每次脉冲下降沿到达时触发单片机产生中断并进行计时,来一个脉冲脉搏次数就加一;定时器中断主要完成十秒钟的定时功能。单片机对十秒钟内的脉冲次数进行累加并进行计算得出所测人一分钟的脉搏次数,通过P0、P2口把测量过程和结果送到数码管显示出来。图6 单片机处理电路3.4显示电

6、路显示部分采用SMC 1602液晶屏进行数据显示,其主要技术参数如表1所示。表1 液晶屏技术指标接口信号说明如表2所示。表2 液晶屏接口信号说明与单片机接口电路如图7所示。其中J2的3脚为背光引脚,R9和R10电阻用于调节背光亮度。J2的4、5、6引脚分别接液晶的RS、E/W和E控制引脚,J2的714引脚为数据引脚。开始初始化外部中断计数显示程序图7 LCD与单片机接口电路 图8主程序流程图四、软件编程4.1 软件流程图 系统初始化之后, 进行定时器中断、外部中断、显示等工作,不同的外部硬件控制不同的子程序。流程如图8所示。4.2 定时器中断程序流程定时器0中断进入定时器初始值设置到1S?到1

7、0S?处于检测?保存脉搏数返回继续计时按键检测NNYYY定时器中断服务程序由十秒钟钟计时、按键检测、有无测试信号判断等部分组成。当定时器中断开始执行后,对十秒钟开始计时,50ms计时到之后继续检测下50ms,直到10s到了再停止并保存测得的脉搏次数。同时可以对按键进行检测,只要复位测试值就可以重新开始测试。主要完成一分钟的定时功能和保存测得的脉搏次数。流程如图9所示。图 9 定时器中断程序流程图4.3 INT中断程序流程外部中断服务程序完成对外部信号的测量和计算。外部中断采用边沿触发的方式,当处于测量状态的时候,来一个脉冲脉搏次数就加一,由单片机内部定时器控制十秒钟,并通过计算得出一分钟内的脉

8、搏次数。流程如图10所示。外部中断0进入处于检测?脉搏数+1返回等待按键按下Y图10 INT中断程序流程图4.5 源程序#include/头文件#define uchar unsigned char#define uint unsigned intuchar code table=Your Pulse-Rate;/15字符uchar code table1= About ;/7字符uchar code table2=0123456789;/显示3字符uchar code table3= /Min;/5字符sbit lcden=P34;/液晶使能端sbit lcdrs=P35;/液晶数据命令选择

9、端sbit key=P33;uchar count,num;/定义计数值uint n;void delay(uint z)/延时子函数uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void write_com(uchar com)/液晶显示器写命令函数lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;void write_data(uchar date)/液晶显示器写数据函数lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;void init()/初始化函数TMO

10、D= 0x21;/设置定时器模式TL0 = 0x00;/设置定时初值TH0 = 0xDC;/设置定时初值TL1=0xFd; /9600波特率的初值,板子使用12M晶振,初值=256-11059200/32/11.0592/9600TH1=0xFd;/EA=1;TR1=1;/启动波特率发生SCON=0x50;/设置串口方式2ET0=1;lcden=0;write_com(0x38);/设置16X2显示,5X7点阵,8位数据接口write_com(0x0c);/设置开显示,不显示光标write_com(0x06);/写一个字符后地址指针加1write_com(0x01);/显示清零,数据指针清零w

11、rite_com(0x80);for(num=0;num15;num+)write_data(tablenum);delay(5);write_com(0x80+0x40);for(num=0;num7;num+)write_data(table1num);delay(5);write_com(0x80+0x4A);for(num=0;num5;num+)write_data(table3num);delay(5);void display(uint shu)/显示函数 uint ge,shi,bai;ge=shu%10;shi=shu%100/10;bai=shu/100;write_com

12、(0x80+0x47);write_data(table2bai);delay(5);write_data(table2shi);delay(5);write_data(table2ge);delay(5);void send(uint k)/串口发送函数(可选)uint ge,shi,bai;ge=k%10;shi=k%100/10;bai=k/100;SBUF=table2bai;while(!TI);TI=0;SBUF=table2shi;while(!TI);TI=0;SBUF=table2ge;while(!TI);TI=0;void T0_time() interrupt 1/定时

13、器中断,定时时间为1msn+;TL0 = 0x00;/重装定时初值TH0 = 0xDC;/重装定时初值void main()/主函数uint pulse;init();delay(5000);TR0 = 1;/定时器1开始计时while(1)if(count=0&n!=0)n=0;if(key=1)/接收到脉搏高电平就计数delay(400); count+;if(count=8)/每接收到8次就计算显示TR0=0;pulse=48000/n;/n的值即为n毫秒,由于是计数8个就显示一次数,所以用48000毫秒除以n即可得到每分钟脉搏数display(pulse);/送去显示send(pulse);/发送每分钟脉搏数(可选)pulse=0;n=0;count=0;TL0 = 0x00;/重装定时初值TH0 = 0xDC;/重装定时初值TR0=1;五、抗干扰措施及使用方法5.1抗干扰措施为了提高测量仪的精确度,系统首先要解决的是硬件方面的干扰问题。光电式脉搏测量仪的测量过程中,前端测量到的脉搏信号十分微弱,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号