数字心率计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

西南交通大学

年短学期

电子课程设计报告

目录

一、课题要求

二、方案论证与设计

三、系统原理框图

四、主要电路以及参数计算

五、调试步骤

六、测试数据及实验结果

七、结论

八、学习心得

九、本作品使用说明

十、附录

一、课题要求

基本要求:

实时数字显示心率值(两位半)

能够有报警信号显示

1)正常

2)过快

3)过慢

提高要求:

可显示平均心率

心率不齐时有报警信号

二、方案论证与设计

(1)模拟部分

●采集信号

用红外反射ST188传感器采集血液流动信号,当血液流动时,由于血液的各项参数指标变化,那么传感器接收到的电流信号就会发生变化,从而从传感器输出的电信号也会发生不同的变化,由于接收到的信号很微弱,数量级在毫伏级别,且同时信号具有低频率,低幅值和干扰性非常强的特点,所以我们对采集到的信号进行放大才能被检测到,从而实现心率的测量与计算。因此模拟部分电路分为三个模块,放大,滤波,整形。

●放大

据资料显示,ST188采集到的人体的心率信号所能转化的电流大概在0.05mV-5mV左右,由于采集到的信号是毫伏级别的,而后面要进行整形的输入

信号要达到3V以上,所以对电路的放大倍数的设置是非常重要的。那么在开始阶段我们借助模拟电子技术的一些资料来设计电路,然后通过软件进行仿真,但是由于实验室无法满足每个电路元件参数的要求,所以我们在实际电路中统一使用了老师给定的电路。用两个放大电路来实现需要的放大,,每个子电路的放大

10,采用的电子电路元件参数为:①680K和2.7K;②680K和2.7倍数都约为2

K。

滤波

电源供电时会对电路产生50HZ的工频,且我们采用的是红外线传感器,易受外界影响,这些都会会影响模拟信号的采集和计算,所以需要把这50HZ的工频滤掉且尽量减小外界信号的干扰。由于人的心率频率大概为3HZ左右,所以我们设置的滤波电路的截止频率为0.23-2.3Hz,由此计算得到高通滤波电路的设计为:①10uF和68K(0.23Hz);低通滤波电路的设计为:①0.1uF和680K (2.3Hz);。其次我们选择一阶滤波电路与放大电路合并在一个电路中,高通滤波电路和低通滤波电路一起组成一个带通电路。综合以上两点,我们得出电路的基本雏形,电路由两个相同的,且同时具有带通滤波和放大功能的子电路串联而成。

整形

为了方便计算心率,我们将放大滤波之后的信号进行整形使其成为矩形波,用到的是施密特反向器74HC14芯片。使用74HC14芯片,这个电路相较于迟滞比较电路来说,它的优点也是十分明显的,我们不需要复杂的计算,也不用推测我们所采集到的信号的波形来确定电路的门限阀值。只需要将施密特反向电路这个子电路接在放大滤波电路后,来帮助我们确定放大倍数即可。

(2)数字部分

简要思路:将模拟部分电路采集到的模拟信号作为外界输入,并测试一个脉冲周期所用的时间,而测试时间时就用标准周期的时间来进行计数。通过已知的时钟频率来计算在一分钟内的心跳次数。通过一系列的转换得到心率值,最终通过数码管译码显示出来。因为板子自带的时钟频率为50MHZ,对其进行分频得到1KHz的时钟频率作为基准信号,以此来计算心率。并且用三个发光二极管来代表不同的心率范围。红色表示心率过高,绿色表示正常,而黄色表示心率过慢,另外放置一个发光二极管表示心率不及,当相邻两次心率值相差过大时,则该灯亮。不管心率过慢还是过快蜂鸣器都会报警。另外设置两个开关,一个当开关按下时复位,另外一个表示显示平均心率,本设计取16次的心率计算平均心率。

三、系统原理框图

a.方案原理介绍

因为脉搏输入信号比较弱,大约在0.05mV-5mV左右,首先经过同向比例放大电路放大一万多倍,得到3V左右的信号,又由于50赫兹的工频干扰,信号经过带通约为0.23Hz-2.3Hz、放大倍数约为256倍左右的滤波放大子电路串联而成。然后将得到的信号经过74HC14的反向处理,并进行降压,就得到我们所需要的方波信号。

芯片自带50MHz 的时钟信号,可以通过编写一个Verilog HDL 程序模块将其中50MHz 的频率分频得到1kHz 的基准信号,每当脉搏信号到来一个上升沿时开始计数基准时钟的个数,再来一个上升沿时计数清零,如此循环。在一个心跳周期内,对标准时钟信号进行计数,再通过转换得到心率值。假定时钟信号的频率为f ,在一个心跳周期内对时钟信号的高电平计数为N ,那么一次脉搏的持续时间T=N/f,从而瞬时心率值为60/T=60*f/N 。并且将心率值与上下线值60和120进行比较,实现报警功能(慢、正常、快、心律不齐)。同时由一开关控制平均值的测量,开关按下,通过使用中间16次变量求和,另外一个开关可以实现复位功能。

b.系统原理框图

四、主要电路设计与参数计算

(1) 数字部分

基于FPGA 设计,将整个系统分为若干个子模块,各子模块利用

Verilog HDL 语言准确描述,在Quartus ii 环境下对每个底层模块进

行编译、仿真成功后,再将各个模块连接起来行程顶层,最终的整个数

字系统顶层模块设计如下图所示。

传感器 比较报警

除法转换 计数 整形 滤波电路 放大电路 瞬时心率平均心率 心率不齐 译码显示

1、分频器

对芯片自带的50Mhz的频率进行分频,分出来基准频率为1kHz。既满足要求,又能达到较好的精度要求。

源代码:

module fenpin(reset,clk_50M,clk_1K);

input clk_50M,reset;

output clk_1K;

reg clk_1K;

reg [14:0] cnt1;

reg [17:0] cnt2;

always@(posedge clk_50M)

if(reset)

begin

clk_1K <= 0;cnt1 <= 15'd0;

end

else

begin

if (cnt1 >= 15'd25000)

begin

clk_1K <= ~clk_1K;cnt1 <= 15'd0;

end

else cnt1 <= cnt1+1;

end

endmodule

2、计数部分:对经过一系列放大滤波整形过的矩形波信号进行计数,以便后来计算心率

源代码:

module jishu(heart,clk,counts);

input heart,clk;

相关文档
最新文档