có sơ đồ nguyên lý, sơ đồ khối và lưu đồ giải thuật, mạch in và code đầy đủ cho MẠCH đo NHỊP TIM XUẤT LCD dùng 89c51 ...............................................................................................................................................................
Đề tài: Mạch đo nhịp tim xuất LCD BÁO CÁO ĐỒ ÁN MẠCH ĐO NHỊP TIM XUẤT LCD MỤC LỤC 1|Page Đề tài: Mạch đo nhịp tim xuất LCD DANH MỤC HÌNH ẢNH 2|Page Đề tài: Mạch đo nhịp tim xuất LCD DANH MỤC BẢNG BIỂU 3|Page CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 KHẢO SÁT VÀ PHÂN TÍCH BÀI TOÁN Sức khỏe vấn đề quan trọng bậc sống từ xưa đến Sức khỏe liên quan mật thiết đến hầu hết hoạt động từ làm việc, học tập vui chơi Sức khỏe thứ mua Tuy nhiên, tài khoản tiết kiệm giá trị Vì vậy, để tài khoản ổn định cần theo dõi thường xuyên chủ động Một quan quan trọng ảnh hưởng nhiều đến sức khỏe tim, với chức vụ co bóp đặn để đẩy máu theo động mạch đem dưỡng khí chất dinh dưỡng đến toàn thể, đồng thời loại bỏ chất thải trình trao đổi chất Tim hút máu từ tĩnh mạch tim sau đẩy máu đến phổi để trao đổi khí CO2 lấy khí O2 Với chức tối quan trọng với sức khỏe tim quan cần theo dõi thường xuyên nhằm chẩn đoán chữa trị kịp thời có vấn đề tim mạch Ngoài ra, việc theo dõi tim thông qua số nhịp tim quan trọng việc luyện tập thể thao nhằm tránh tình trạng luyện tập sức nguy hiểm đến tính mạng 1.1.1 Ý tưởng Với sống đại ngày nay, nhiều thời gian cho công việc đến bệnh viện kiểm tra sức khỏe định kỳ cụ thể việc đo theo dõi nhịp tim Dựa nhu cầu thực tế đòi hỏi cần có sản phẩm giúp đo nhịp tim nhanh chóng xác nhằm giải khó khăn 1.1.2 Mục tiêu Mục tiêu đồ án sử dụng LED hồng ngoại với chức cảm biến đếm xung nhịp tim với vi điều khiển AT89C51 để thiết kế thi công mạch đo nhịp tim Nhằm phục vụ cho việc theo dõi tim mạch dễ dàng xác phương pháp bắt mạch cổ điển 4|Page 1.2 LỰA CHỌN GIẢI PHÁP THỰC HIỆN 1.2.1 Giải pháp thiết kế Đầu vào hệ thống lấy liệu từ LED hồng ngoại, là linh kiện có chức quan sát đếm số xung nhịp tim tương ứng với số lần tim co bóp bơm máu Xử lý tín hiệu mạch lọc RC mạch khuếc đại thuật toán Ghi liệu lên vi điều khiển AT89C51 Lập trình vi điều khiển để xử lý liệu Để hiển thị: Lấy giá trị số nhịp tim lưu tạm RAM vi điều khiển xuất lên LCD Xóa liệu sau đo, để mạch quay lại trạng thái ban đầu 1.2.2 Xác định toán giới hạn đề tài: Đầu vào hệ thống lấy liệu từ LED hồng ngoại, linh kiện cảm biến đếm cung cấp số nhịp tim Đầu được hiển thị LCD Hiển thị chính xác số nhịp tim Làm việc với điện áp cấp từ nguồn 5V Làm việc lâu dài ổn định 5|Page CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 NGUYÊN LÝ THIẾT KẾ Dựa vào trình tìm hiểu phân tích Mạch đo nhịp tim có nguyên lý hoạt động sau: Cảm biến nhận tín hiệu Mạch lọc RC Hiển thị LCD Mạch khuếch đại thuật toán Vi điều khiển xử lý đếm xung nhịp tim Hình Sơ đồ nguyên lý o Cảm biến: sử dụng LED hồng ngoại dựa vào mức độ che sáng khác mạch máu ngón tay Khi tim co bóp, tiết diện áp suất máu thay đổi, dẫn đến mức độ che sáng qua thay đổi o Mạch lọc mạch khuếch đại: có chức loại bỏ thành phần chiều khuếch đại tín hiệu Nó giúp vi điều khiên dễ dàng xử lý Ngoài ra, sau lọc, ta lấy sóng xung tạo lần tim bắt đầu co bóp nên dễ dàng tính nhịp tim o Vi điều khiển: có chức xử lý tín hiệu ngõ vào, đếm số xung nhịp tim điều khiển trình xuất LCD 6|Page 2.2 LỰA CHỌN LINH KIỆN: 2.2.1 LED thu phát hồng ngoại: Hình LED thu phát hồng ngoại LED viết tắt Light Emitting Diode (Diode phát quang) diode có khả phát ánh sáng hay tia hồng ngoại,tử ngoại.Cũng giống diode,LED cấu tạo từ khối bán dẫn loại P ghép với khối bán dẫn loại N Nguyên lý: LED thu không nhận tín hiệu từ LED phát,điện trở LED thu rấtlớn, lối điện áp LED thu nhận tín hiệu từ LED phát,điện trở LEDthu giảm xuống mạnh (việc giảm phụ thuộc vào cường độ LED phát),khi lối điệnáp 5v.Khi gặp vật cản tín hiệu hồng ngoại va chạm phản xạ ngược lại,còn trường hợp không gặp vật cảntín hiệu hồng ngoạisẽ chạm vào LED thu 2.2.2 IC LM358: IC LM358 khuếch đại thuật toán kép, gồm hai khuếch đại thuật toán bên Mỗi Op-amp có chân, ngõ vào đảo, ngõ vào không đảo ngõ Hoạt động với nguồn cung cấp, ngưỡng điện áp vào thay đổi phạm vi rộng Hình IC LM 358 7|Page 2.2.2Vi điều khiển AT89C51 AT89C51 vi điều khiển bit, chế tạo theo công nghệ CMOS chất lượng cao, với KB EEPROM (Flash Programmable and erasable read only memory) Thiết bị chế tạo việc sử dụng nhớ không bốc mật độ cao ATMEL tương thích với chuẩn công nghiệp MCS-51 tập lệnh chân ATMEL AT89C51 vi điều khiển mạnh (có công suất lớn) mà cung cấp linh động cao giải pháp giá nhiều ứng dụng vi điều khiển Các đặc điểm AT89C51 tóm tắt sau: o o o o o o o o o o KB nhớ lập trình lại nhanh Tần số hoạt động từ 0Hz đến 24 MHz Timer/Counter 16 bit 128 byte RAM nội Port xuất nhập I/O bit Giao tiếp nối tiếp 64 KB vùng nhớ mã 64 KB vùng nhớ liệu Xử lý Boolean (hoạt động bit đơn) 210 vị trí nhớ định vị bit Hình Sơ đồ chân AT89C51 8|Page Chức chân vi điều khiển AT89C51: 89C51 có tất 40 chân có chức đường xuất nhập Trong có 24 chân có tác dụng kép (1 chân có chức năng), đường hoạt động đường xuất nhập, đường điều khiển hay hoạt động thành phần bus liệu bus địa Chân VCC: Chân số 40 VCC cấp điện áp nguồn cho vi điều khiển Điện áp làm việc vi điều khiển 5V±20% Do thiết kế khối nguồn ta cần sử dụng IC ổn áp 7805 để tránh làm hỏng vi điều khiển Chân GND: Chân số 20 nối GND Port (P0): Port có chân (32-39) có hai chức sau: Chức xuất/nhập: bình thường chân port có chức xuất liệu Khi muốn nhận liệu từ bên talập trình đưa chân lên mức Chức làm bus liệu bus địa chỉ: thiết kế lớn có dùng nhớ ngoài,các chân có nhiệm vụ nhận liệu từ ROM RAM ngoại Port (P1): Port có chân (1-8) có chức xuất/nhập, dùng để giao tiếp với thiết bị bên có yêu cầu Ngoài chức khác, nghĩa chúng sử dụng để giao tiếp với thiết bị ngoại vi Port (P2): Port gồm chân (21-28) có công dụng: làm nhiệm vụ xuất/nhập làm byte địa cao bus địa 16-bit cho thiết kế có nhớ chương trình thiết kế có nhiều 256 byte nhớ liệu 9|Page Port (P3): Port gồm chân từ(10-17) có công dụng Khi không hoạt động xuất/nhập, chân port có chức bảng sau: Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 P1.0 P1.1 Tên RxD TxD INT0 INT1 T0 T1 WR RD T2 T2X Chức Ngõ vào nhận liệu nối tiếp Ngõ xuất liệu nối tiếp Ngõ vào ngắt cứng thứ Ngõ vào ngắt cứng thứ Ngõ vào Timer/Counter thứ Ngõ vào Timer/Counter thứ Ngõ điều khiển ghi liệu lên nhớ Ngõ điều khiển đọc liệu từ nhớ bên Ngõ vào Timer/Counter thứ Ngõ nạp lại/thu nhận Timer/Counter thứ Bảng Chức chân port port Chân RESET (RST): Ngõ vào RST chân ngõ vào xóa 89C51 dùng để thiết lập lại trạng thái ban đầu cho hệ thống Khi ngõ vào treo logic tối thiểu hai chu kì máy, ghi bên 89C51 nạp giá trị thích hợp cho việc khởi động lại toàn hệ thống Hình Cấu hình ngõ vào chân reset Chân XTAL1 XTAL2: 10 | P a g e tín hiệu kích hoạt mức thấp kích hoạt lần chu kỳ máy Khi thực thi chương trình ROM nội, chân trì logic 2.2.3 LCD 16x2: Sử dụng LCD 16x2, hiển thị số nhịp tim linh hoạt, hiển thị nhiều ký tự, giúp cho việc hiển thị dễ dàng giải hạn chế hiển thị LED đoạn Hình LCD 16x2 12 | P a g e Bảng Chức chân LCD16x2 CHƯƠNG 3: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG 3.1 SƠ ĐỒ KHỐI CỦA HỆ THỐNG Theo nguyên lý hoạt động hệ thống, ta có sơ đồ khối hệ thống sau: KHỐI NGUỒN KHỐI KHỐI KHỐI CẢM BIẾN VI ĐIỀU KHIỂN HIỂN THỊ Hình Sơ đồ khối o Khối nguồn: sử dụng biến áp 7805 để tạo nguồn 5Vdc cung cấp cho toàn mạch hoạt động Đầu khối nguồn dao động từ 4.8 đến 5.2V o Khối cảm biến: LED hồng ngoại đảm nhận vai trò nhận tín hiệu xung nhịp tim từ ngón tay, sau đưa vào vi điều khiển để xử lý o Khối vi điều khiển: sử dụng AT89C51 nhận tính hiệu xung từ LED hồng ngoại, tiến hành đếm xung trình xuất kết LCD o Khối hiển thị: dùng LCD 16x2 hiển thị số xung đếm từ liệu vi điều khiển 13 | P a g e 3.2 MẠCH NGUYÊN LÝ VÀ MẠCH IN 3.2.1 Khối nguồn: Hình Khối nguồn 3.2.2 Khối cảm biến: Hình Khối cảm biến 14 | P a g e 3.2.3 Khối Vi điều khiển hiển thị: Hình Khối điều khiển hiển thị 3.2.4 Mạch in Hình Mạch in 15 | P a g e 3.3 LƯU ĐỒ GIẢI THUẬT BẮT ĐẦU KIỂM TRA TÍN HIỆU TỪ LED NHẤN START ĐẾM NHỊP TIM VÀ LƯU VÀO RAM 89C51 GIẢI MÃ BCD XUẤT DỮ LIỆU LÊN LCD NHẤN CLEAR KẾT THÚC Hình Lưu đồ giải thuật 16 | P a g e 3.4 HÌNH ẢNH MẠCH THỰC TẾ: Hình Mạch thực tế 3.5 ĐÁNH GIÁ CHẤT LƯỢNG: • Kết đánh giá đo chủ thể thời điểm tình trạng sức khỏe Phương Pháp Dùng ứng dụng “INSTANT HEART RATE” Iphone 5s Nguyên lý Quan sát thay đổi mao mạch đầu ngón tay thông qua camera đèn flash điện thoại Dùng mạch đo Sử dụng LED hồng nhịp tim ngoại dựa vào mức độ che sáng khác mạch máu ngón tay Dùng phương pháp Dùng ngón tay bắt cổ điển: Bắt mạch mạch cổ tay cổ đếm số nhịp tim Kết Lần 1: 64 BPM Lần 2: 69 BPM Lần 3: 75 BPM Sai Số Dùng làm tham số chuẩn Lần 1: 70 BPM Lần 2: 66 BPM Lần 3: 78 BPM Sai số khoảng -10% Lần 1: 72 BPM Lần 2: 72 BPM Lần 3: 78 BPM Sai số Khoảng - 10% Bảng Đánh giá chất lượng • Đánh giá: Mạch đo nhịp tim cho kết sai số tương đương phương pháp bắt mạch việc đo nhịp dễ dàng nhanh chóng 17 | P a g e CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Sau thời gian tìm hiểu lý thuyết thực đề tài hướng dẫn tận tình TS.Đặng Ngọc Minh Đức, em hoàn thành đề tài “Mạch đo nhịp tim xuất LCD” Mạch hiển thị nhịp tim sau xử lý vi điều khiển, đo nhiều lần Do thời gian có hạn kiến thức hạn chế nên đề tài số khuyết điểm: o LED thu phát hồng ngoại cho kết sai số lớn chưa tối ưu o Chưa thể hiển thị dạng sóng nhịp tim Qua việc thực đồ án này, em củng cố kiến thức vi xử lý học, kết hợp với thực tiễn phục vụ cho công việc tương lai nhiều Cũng với đề tài này, tương lai em phát triển mức cao hơn: nâng cấp cảm biến thêm chức lưu trữ so sánh kết sau nhiều lần đo, kết hợp với thiết bị khác để sử dụng thực tiễn sống đồng hồ thời gian thực kèm đo nhiệt độ, hẹn 18 | P a g e DANH MỤC CÁC TÀI LIỆU THAM KHẢO [1] Tống Văn On & Hoàng Đức Hải,Họ vi điều khiển 8051, Nhà xuất lao động xã hội, Thành phố Hồ Chí Minh, 2009 [2] Th.S Trần Công Thịnh, Giáo trình kỹ thuật vi xử lý, Tài liệu lưu hành nội ĐH Tôn Đức Thắng, Thành phố Hồ Chí Minh, 2011 [3] Khoa Điện – Điện tử Thí nghiệm vi xử lý Tp.HCM, Đại học Tôn Đức Thắng, 2012 19 | P a g e PHỤ LỤC Code chương trình viết hợp ngữAssembly ;===============CHUONG TRINH DO NHIP TIM============== ;=================KHAI BAO GIAO TIEP LCD=============== RS BIT P2.5 RW BIT P2.6 EN BIT P2.7 LCD EQU P0 BUSY BIT P0.7 :====================================================== ORG 00H LJMP MAIN ORG 0BH LJMP NGAT ORG 30H ;===============DOAN CHUONG TRINH CHINH============ MAIN: MOV SP,#5FH MOV TMOD,#51H;// T1-COUNTER-MODE 1, T0-TIMER-MODE MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) SETB TR0 MOV TH1,#0 MOV TL1,#0 SETB TR1 MOV IE,#82H;// CHO PHEP NGAT, NGAT TIMER LCALL LCD_INIT;// KHOI DONG LCD MOV DPTR,#TEXT1;// QUANG NHUT MOV A,#80H;// DONG LCALL COMMAND LCALL HIENTHIMACDINH MOV DPTR,#TEXT2;// MSSV: 41202179 MOV A,#0C0H;// DONG LCALL COMMAND 20 | P a g e LCALL HIENTHIMACDINH MP00: LCALL DELAY1S MOV A,#01H ;clear LCD ACALL COMMAND MOV DPTR,#TEXT3;// nhan START MOV A,#80H;// DONG LCALL COMMAND LCALL HIENTHIMACDINH MP0: JNB P3.7,NHANSTART SJMP MP0 MP1: MOV 20,#0;//BIEN TINH SO GIAY MP2: MOV A,20 CJNE A,#200,MP2;//KIEM TRA DU 10S CHUA CLR TR1 CLR TR0 ;=======XU LY XUNG NHIP TIM================= MOV A,TL1;LAY SO XUNG DEM DUOC SAU 10S MOV B,#6; NHAN VOI LA DUOC 60S=1P MUL AB MOV 21,A;// O NHO 21 LUU GIA TRI GOC SAU PHUT MOV B,#100 DIV AB MOV 22,A;// O NHO 22 LUU GIA TRI HANG TRAM CHUA DOI MOV A,B MOV B,#10 DIV AB MOV 23,A;// O NHO 23 LUU GIA TRI HANG CHUC CHUA DOI MOV 24,B;// O NHO 24 LUU GIA TRI HANG DON VI CHUA DOI ;======HIEN THI KET QUA========= 21 | P a g e MOV A,#01H ;XOA LCD ACALL COMMAND MOV DPTR,#TEXT5;// ket qua nhip tim MOV A,#80H;// DONG LCALL COMMAND LCALL HIENTHIMACDINH MOV DPTR,#TEXT6 ;// la: BPM MOV R0,#50 ;DU LIEU HT DONG CAT TU O 50-59 NAPCHU: MOV A,#0 MOVC A,@A+DPTR JZ THOAT2 MOV @R0,A INC DPTR INC R0 SJMP NAPCHU THOAT2: =======CHUYEN VE MA ASCII HIEN THI LCD======== MOV A,22 ADD A,#30H MOV 54,A MOV A,23 ADD A,#30H MOV 55,A MOV A,24 ADD A,#30H MOV 56,A MOV A,#0C0H;// DONG LCALL COMMAND LCALL HIENTHIGIATRI MOV P1,21;TL1 MP3: JNB P3.6,NHANCLEAR SJMP MP3 NHANSTART: 22 | P a g e JNB P3.7,NHANSTART JB P3.7,NHASTART SJMP NHANSTART NHASTART: MOV A,#01H ;CLEAR LCD ACALL COMMAND LCALL DELAY1S MOV DPTR,#TEXT4;// DOI 15S MOV A,#80H;// DONG LCALL COMMAND LCALL HIENTHIMACDINH LJMP MP1 NHANCLEAR: JNB P3.6,NHANCLEAR JB P3.6,NHACLEAR SJMP NHANCLEAR NHACLEAR: MOV A,#01H ;CLEAR LCD ACALL COMMAND MOV DPTR,#TEXT7;// da xoa ket qua ! MOV A,#80H;// DONG LCALL COMMAND LCALL HIENTHIMACDINH LJMP MP00 NGAT: CLR TR0 CLR TF0 MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) INC 20 SETB TR0 RETI ;==== CTC CHO HIEN THI CAC DONG CHU TREN LCD====== HIENTHIMACDINH: MOV A,#0 MOVC A,@A+DPTR 23 | P a g e JZ THOATHIENTHIMACDINH LCALL SEND_DATA INC DPTR SJMP HIENTHIMACDINH THOATHIENTHIMACDINH: RET ;=========HIEN THI TU THANH GHI========= HIENTHIGIATRI: MOV R0,#50 LAPHIENTHIGIATRI: MOV A,@R0 LCALL SEND_DATA INC R0 CJNE R0,#61,LAPHIENTHIGIATRI RET ;=======CTC KHOI TAO VA GIAO TIEP VOI LCD 16X2====== =======KHOI TAO LCD========== LCD_INIT: MOV A,#38H ;2 line 5x7 ACALL COMMAND MOV A,#0CH ;LCD on cursor on ACALL COMMAND MOV A,#01H ;clear LCD ACALL COMMAND MOV A,#06H ;shift cursor right ACALL COMMAND RET COMMAND: ACALL READY ;is LCD ready? CLR RS ;RS=0 for command;RS=1 for data reg CLR RW ;R/W=0 to write to LCD MOV LCD,A ;issue command code SETB EN ;E=1 for H-to-L pulse CLR EN ;E=0 ,latch in RET ;=========GUI DU LIEU HIEN THI TREN LCD======== 24 | P a g e SEND_DATA: ACALL READY ;is LCD ready? SETB RS ;RS=1 for data CLR RW ;R/W=0 to write to LCD MOV LCD,A ;issue data SETB EN ;E=1 for H-to-L pulse CLR EN ;E=0 ,latch in RET READY: CLR RS ;RS=0 access command reg SETB RW ;R/W=1 read command reg MOV LCD,#0FFH ;make P1.7 input port ;read command reg and check busy flag BACK: CLR EN ;E=1 for H-to-L pulse SETB EN ;E=0 H-to-l pulse JB BUSY,BACK ;stay until busy flag=0 RET DELAY1S: MOV R7,#10;// 2S LAPDEL2: MOV R6,#200;// 100mS LAPDEL1: MOV R5,#250 DJNZ R5,$ DJNZ R6,LAPDEL1 DJNZ R7,LAPDEL2 RET ;====DU LIEU HIEN THI LCD===== TEXT1: DB ' QUANG NHUT ',0 TEXT2: DB ' MSSV: 41202179 ',0 TEXT3: DB ' nhan START ',0 TEXT4: 25 | P a g e DB ' doi 10s ',0 TEXT5: DB 'ket qua nhip tim',0 TEXT6: DB 'la: BPM' TEXT7: DB 'da xoa ket qua !',0 END 4.72% 26 | P a g e ...Đề tài: Mạch đo nhịp tim xuất LCD DANH MỤC HÌNH ẢNH 2|Page Đề tài: Mạch đo nhịp tim xuất LCD DANH MỤC BẢNG BIỂU 3|Page CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 KHẢO SÁT VÀ PHÂN TÍCH BÀI TOÁN... Sơ đồ chân AT89C51 8|Page Chức chân vi điều khiển AT89C51: 89C51 có tất 40 chân có chức đường xuất nhập Trong có 24 chân có tác dụng kép (1 chân có chức năng), đường hoạt động đường xuất nhập,... địa chỉ: thiết kế lớn có dùng nhớ ngoài,các chân có nhiệm vụ nhận liệu từ ROM RAM ngoại Port (P 1): Port có chân (1 - 8) có chức xuất/ nhập, dùng để giao tiếp với thiết bị bên có yêu cầu Ngoài chức