1 / 27
文档名称:

心率监控与反馈系统终稿.docx

格式:docx   大小:196KB   页数:27页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

心率监控与反馈系统终稿.docx

上传人:sssmppp 2022/7/2 文件大小:196 KB

下载得到文件列表

心率监控与反馈系统终稿.docx

相关文档

文档介绍

文档介绍:第四届“含弘杯”学生课外学术科技作品竞赛
心率监控及反馈系统
作品类别:科技发明制作信息技术类
二。一四年十月
目录
目录 1
摘要 1
关键词 1
一、 前言 1
二、 工作原理 1
1、 硬件部分 1

在数据存储模块部分采用的是大容量SD卡存储设备。其通过SPI 总线与MSP430单片机相连,在数据采集后能够迅速完成数据的存入和 读取,同时体积较小,具备极高的兼容性,方便数据的转移。同时扩 大了数据的存储空间和存储效果。

报警模块采用了蜂鸣器和屏幕共同工作的方式。当报警模块工作 时,蜂鸣器开始工作同时屏幕开始间歇性点亮熄灭,从而起到发出警 报的效果。

在远距离数据传输中,采用手机作为数据接收端;在近距离的数据 传输中,由于使用了 NRF2401A无线通信模块,所以接收端采用了相同 的通信模块和
STC89C52RC单片机来构成,其能够将接收到的数据显示 在LCD1602的屏幕上,同时在发送端发出警报信号时,在接收端的蜂 鸣器工作进行报警。下图为接收端LCD1602的电路原理图:
图五LCD 1602显示部分原理图
2、软件设计部分


BPM
用于保存脉冲速率
IBI
持有次之间的时间
Pulse
脉冲波高,真;假时,低
QS 为真时,发现了一拍心跳节拍
Signal 持有传入的原始数据
其中最主要的是BPM和IBI两个字。IBI是连续两个心拍之间的时 间差,而BMP是心率值,表示心脏每分钟跳几下,BMP=60/IBI。
采样:主要通过ADC12采样脉搏模拟信号,采样频率为500Hz。
滤波:由于脉搏波在动脉中的反射,往往会出现一个重脉波。为了避 免这个重脉波的干扰,。心率 的计算根据两个相邻脉搏波的上升段的中间差值确定IBI值,由此可以 推算BMP数值。
图六心率采集算法图一
计算:心率的计算根据两个相邻脉搏波的上升段的中间差值确定IBI
值,由此可以推算BMP数值
图七心率采集算法图二

unsigned int rate[10];

unsigned int amp = 120;
振幅,发送
//unsigned int temp =0 ;
unsigned int BPM=600;
unsigned int IBI = 600;
unsigned int Peak =512;
unsigned int Trough = 512;
最小值,发送
unsigned int thresh = 512;
_Bool Pulse = false;
_Bool firstBeat = true;
_Bool secondBeat = false;
//数组来保存最后十个IBI
//用于保存脉冲波形的
〃温度
//用于保存脉冲速率
//持有次之间的时间
〃初始化心跳峰值
〃用来寻找脉搏波
〃初始化心跳最小值
〃脉冲波高,真。假时,低
〃用于启动 发送速率数组
〃用于启动 发送速率数组
_Bool QS = false; 〃为真时,发现了一拍心跳节拍。
unsigned int Signal; //持有传入的原始数据
unsigned long sampleCounter = 0; // 当前时间
unsigned long lastBeatTime = 0; // 上个心跳时间
unsigned long time; 〃用于记录时间
采样:主要通过ADC12采样脉搏模拟信号,采样频率为500Hz。
void init_adc 12(void)
{
P6SEL = 0x01; // ADC 输入
ADC12CTL0&=〜 ENC;
ADC12CTL0 = ADC12ON+MSC+SHT0_0;
ADC12CTL1 = SHP+CONSEQ_1+ADC12SSEL1 ;
ADC12MCTL0 |= INCH_0+MSC;
ADC12IE = 0x03;
ADC12CTL0 |=ENC;
}
#pragma vector = ADC12_VECTOR //ADC 数据
—interrupt void ADC 12(void)
Signal = ADC12MEM0/4;
2. 2程序代码(见附录)
三、测试方法与误差分析
1、 测试方法
1、 通过USB给系统供给5V直流电
2、 确认电源指示灯点亮系统正常工作
3、 将传感器通过绑带绑在指尖,需指