Tìm hiểu, thiết kế, tính toán và thi công mạch đo nhịp tim - Pdf 15

Mục lục
Lời mở đầu ………………………………………………………………………………
Phần 1: Lý thuyết
Chương 1: Tìm hiểu về nhịp tim và phương pháp đo nhịp tim bằng hấp thụ quang
học
1.1 Giới thiệu chương ……………………………………………………………………
1.2 Tìm hiểu về nhịp tim…………………………………………………………………
1.3 Phương pháp đo nhịp tim bằng hấp thụ quang học…………………………………….
1.4 Kết luận chương………………………………………………………………………
Chương 2: Sơ đồ khối
2.1 Giới thiệu chương………………………………………………………………………
2.2 Sơ đồ khối và chức năng các khối……………………………………………………
2.2.1 Sơ đồ khối tổng quan…………………………………………………………………
2.2.2 Chức năng các khối…………………………………………………………………
2.3 Chọn linh kiện sử dụng cho các khối…………………………………………………
2.4 Kết luận chương………………………………………………………………………
Phần 2: Thiết kế, tính toán và thi công mạch
Chương 3: Thiết kế và tính toán sơ đồ mạch
3.1 Giới thiệu chương………………………………………………………………………
3.2 Thiết kế, tính toán khối nguồn………………………………………………………….
3.3 Thiết kế, tính toán khối cảm biến……………………………………………………….
3.4 Thiết kế, tính toán khối lọc và khuếch đại……………………………………………
3.5 Thiết kế, tính toán khối xử lý trung tâm và khổi hiển thị………………………………
3.6 Kết luận chương………………………………………………………………………
Chương 4: Lưu đồ thuật toán và lập trình
4.1 Giới thiệu chương………………………………………………………………………
4.2 Lưu đồ thuật toán chương trình chính…………………………………………………
4.3 Lưu đồ thuật toán đo nhịp tim…………………………………………………………
4.4 Lưu đồ thuật toán hiển thị LCD………………………………………………………
4.5 Code lập trình…………………………………………………………………………
4.5 Kết luận chương………………………………………………………………………

- Bảng thông số đánh giá nhịp tim ở trạng thái nghỉ ngơi:
Bảng 1.1 [1]: Thông số đánh giá nhịp tim người ở trạng thái nghỉ ngơi
1.3 Đo nhịp tim bằng phương pháp hấp thụ quang học:
1.3.1 Cơ sở lý thuyết:
- Khi tim đập, máu sẽ được dồn đi khắp cơ thể qua động mạch, tạo ra sự thay đổi về áp
suất trên thành động mạch và lượng máu chảy qua động mạch. Vì vậy, ta có thể đo nhịp
tim bằng cách đo những sự thay đổi đó.
Hình 1.1: Dạng tín hiệu nhịp tim
- Khi lượng máu trong thành động mạch thay đổi sẽ làm thay đổi mức độ hấp thụ ánh
sáng của động mạch, do đó khi một tia sáng được truyền qua động mạch thì cường độ
ánh sáng sau khi truyền qua sẽ biến thiên đồng bộ với nhịp tim.
- Khi tim giãn ra, lượng máu qua động mạch nhỏ nên hấp thụ ít ánh sáng, ánh sáng sau
khi truyền qua động mạch có cường độ lớn, ngược lại khi tim co vào, lượng máu qua
động mạch lớn hơn, ánh sáng sau khi truyền qua động mạch sẽ có cường độ nhỏ hơn.
Hình 1.2: Sự hấp thụ ánh sáng của động mạch khi truyền qua ngón tay.
- Ánh sáng sau khi truyền qua ngón tay gồm 2 thành phần AC và DC:
+ Thành phần DC đặc trưng cho cường độ ánh sáng cố định truyền qua mô, xương và
tĩnh mạch.
+ Thành phần AC đặc trưng cho cường độ ánh sáng thay đổi khi lượng máu thay đổi
truyền qua động mạch, tần số của tín hiệu này đồng bộ với tần số nhịp tim.
=> Nếu ta lọc bỏ thành phần DC sẽ thu được tín hiệu AC đồng bộ với tín hiệu nhịp tim.
1.3.2 Vị trí đặt cảm biến:
* Yêu cầu:
- Phải đặt nguồn phát và nguồn thu để thu được kết quả tốt nhất.
- Vị trí dễ dàng đặt cảm biến, khoảng cách thu phát không quá gần cũng không quá xa.
=> Chọn ngón tay là nơi đặt cảm biến.
Hình 1.3: Vị trí đặt cảm biến
1.4 Kết luận chương:
- Từ việc tìm hiểu về nhịp tim và phương pháp đo nhịp tim bằng hấp thụ quang học, ta có
thể thiết kế cảm biến ánh sáng để phục vụ cho việc đo nhịp tim.

*Giới thiệu tổng quan về vi xử lý PIC16F877A:
PIC 16F877A là một dòng PIC phổ biến (đủ mạnh về tính năng, 40 chân, bộ nhớ đủ cho
hầu hết các ứng dụng thông thường). Cấu trúc tổng quát của PIC 16F877A như sau:
- 8 K Flash ROM.
- 368 Bytes RAM.
- 256 Bytes EEPROM.
- 5 ports (A, B, C, D, E) vào ra với tín hiệu điều khiển độc lập.
- 2 bộ định thời 8 bits (Timer 0 và Timer 2).
- Một bộ định thời 16 bits (Timer 1) có thể hoạt động trong chế độ tiết kiệm năng lượng
(SLEEP MODE) với nguồn xung Clock ngoài.
- 2 bô CCP( Capture / Compare/ PWM).
- 1 bộ biến đổi AD 10 bits, 8 ngõ vào.
- 2 bộ so sánh tương tự (Compartor).
- 1 bộ định thời giám sát (WatchDog Timer).
- Một cổng song song 8 bits với các tín hiệu điều khiển.
- Một cổng nối tiếp.
- 15 nguồn ngắt.
- Có chế độ tiết kiệm năng lượng.
- Nạp chương trình bằng cổng nối tiếp ICSP(In-Circuit Serial Programming)
- Được chế tạo bằng công nghệ CMOS
- 35 tập lệnh có độ dài 14 bits.
- Tần số hoạt động tối đa 20MHz.
2.3.2 Chọn LCD hiển thị kế quả:
*Chọn LCD loại 16x2
Đặc điểm:
- Là loại LCD dễ kiếm.
- Dễ sử dụng.
- Phù hợp với yêu cầu hiển thị của đồ án.
- Giá thành phù hợp.
*Giới thiệu tổng quan về LCD 16x2:

5 R/W
Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic “0”
để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế
độ đọc.
6 E
Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0-
DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận)
thanh ghi bên trong nó khi phát hiện một xung (high-to-low transition)
của tín hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện
cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến
khi nào chân E xuống mức thấp.
7 - 14
DB0 -
DB7
Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2
chế độ sử dụng 8 đường bus này :
+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là
bit DB7.
+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit
MSB là DB7
15 -
Nguồn dương cho đèn nền

16 -
GND cho đèn nền

2.3.3 Chọn linh kiện khối cảm biến nhịp tim:
- Led phát: chọn led phát hồng ngoại 5mm.

là 2V
- Điện áp trên R
1
: V
R1
= Vcc-V
D1

= 5- 2 = 3 v
 R
2
=VR
2
/R
2
= 3/ (20 * 10^-3) = 150Ω
Chọn R
2
= 150 Ω
- Tín hiệu thu được để đưa vào tầng lọc và khuếch đại phụ thuộc vào giá trị của R3.
Chọn R3 khoảng vài chục k Ω .
=> Chọn R3 = 33k Ω
3.5. Thiết kế, tính toán tầng lọc và khuếch đại:
3.4.1 Sơ đồ mạch:
Hình 3.2: Sơ đồ mạch khối lọc và khuếch đại.
3.4.2 Tính chọn linh kiện:
- Để khuếch đại lên nhiều lần ta sử dụng các bộ khuếch đại. ta mắc các opamp nối tiếp
nhau.
- Sử dụng 2 bộ lọc RC để khuếch đại và lọc tín hiệu và 1 bộ đệm để ỏn định tín hiệu và
nâng dòng.

Chọn R
4
= 47K
+ (R
6
, C
2
) tạo thành bộ lọc thông cao với tần số cắt f
2
= 2,67 hz
F
2
= = 2,6 hz
R
6
*C
2
= = 0,061
Chọn C
2
= 100nF suy ra R
6
= 680K
+ chọn hệ số khuêch đại của tầng khuêch đại opamp là 101 lần
K1 = +1 = 101 lần
Suy ra R
6
= 100 R
5
Chọn R

4.2 Lưu đồ thuật toán chương trình chính:
Hình 4.1: Lưu đồ thuật toán chương trình chính
4.3 Lưu đồ thuật toán đo nhịp tim:
Hình 4.2: Lưu đồ thuật toán đo nhịp tim
4.4 Lưu đồ thuật toán giao tiếp LCD
Hình 4.3: Lưu đồ thuật toán giao tiếp LCD
4.5 Code lập trình:
- Sử dụng ngôn ngữ lập trình Hi-Tech C, phần mềm biên dịch MPLABXIDE.
4.5.1 Chương trình chính
#include <htc.h>
#include "lcd.h"
#define _XTAL_FREQ 4000000
#define MAX_SAMPLE 10
__CONFIG(FOSC_HS & WDTE_OFF & PWRTE_OFF & BOREN_OFF & LVP_OFF
& CPD_OFF & WRT_OFF & CP_OFF);
// Khai bao cac bien
unsigned long time[MAX_SAMPLE];
unsigned long time_tmp = 0x00;
unsigned char index = 0x00;
void timer0_config();
// Chuong trinh con xu ly ngat
void interrupt ISR()
{
/* Ngat ngoai INT0 */
if((INTF == 1) && (INTE == 1))
{
time[index] = time_tmp + TMR0;
// Tang bien dem
index++;
if(index == MAX_SAMPLE)

{
time[i] = 0x00;
}
while(1)
{
// Hien thi nhip tim
sum = 0x00;
for(i = 0; i < MAX_SAMPLE; i++)
{
sum += time[i];
}
sum = sum/MAX_SAMPLE; // Gia tri thoi gian trung binh
sum = 15625.0/(4*sum); // f = fTimer / average_timer_value
sum = 60*sum; // Nhip tim = sum * 60 nhip/phut
tmp = (int)sum; // Lay phan nguyen
lcd_goto(0x4A);
lcd_putch((tmp/100) + 48); // Hien thi hang tram
tmp = tmp%100;
lcd_putch((tmp/10) + 48); // Hien thi hang chuc
lcd_putch((tmp%10) + 48); // Hien thi hang don vi
__delay_ms(600);
}
}
// Thiet lap Timer0
void timer0_config()
{
TMR0 = 0x00; // Xoa gia tri thanh ghi TMR0
TMR0IE = 0; // Khong cho phep ngat Timer0
OPTION_REG = 0xC7; // Thiet lap thanh ghi Option
TMR0IE = 1; // Cho phep ngat Timer0


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status