BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
CÔNG TRÌNH NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG THU THẬP TÍN HIỆU ĐIỆN TIM ECG CÓ HIỂN THỊ TÍN HIỆU QUA SMART PHONE
MÃ SỐ: SV2020-16
S K C 0 0 7 3 7 9
Tp. Hồ Chí Minh, tháng 07/2020
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM
BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ VÀ THI CÔNG HỆ THỐNG THU THẬP TÍN HIỆU ĐIỆN TIM ECG CÓ HIỂN THỊ TÍN HIỆU QUA SMART PHONE SV2020 - 16
Chủ nhiệm đề tài: Trần Trung Đức
Số hiệu: HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020
TP Hồ Chí Minh, 07/2020
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM
Trần Trung Đức Nam, Nữ: Nam
Năm thứ:04 /Số năm đào tạo: 04
BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THIẾT KẾ VÀ THI CÔNG HỆ THỐNG THU THẬP TÍN HIỆU ĐIỆN TIM ECG CÓ HIỂN THỊ TÍN HIỆU QUA SMART PHONE SV2020 - 16 Thuộc nhóm ngành khoa học: Kĩ thuật SV thực hiện: Dân tộc: Kinh Lớp, khoa: 161290 , Điện-Điện tử Ngành học: Kĩ thuật Y sinh Người hướng dẫn: Thạc sĩ Nguyễn Thanh Nghĩa
Số hiệu: HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020
TP Hồ Chí Minh, 07/2020
MỤC LỤC
1.4.1. 1.4.2.
1.8.1.
Chương 2.
Trang: i
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020
Mục lục ............................................................................................................................ i Danh mục bảng .............................................................................................................. iii Danh mục hình ảnh ........................................................................................................ iv Danh mục từ viết tắt ..................................................................................................... vii Thông tin kết quả nghiên cứu đề tài .............................................................................. ix MỞ ĐẦU ......................................................................................................................... 1 a. TỔNG QUAN .................................................................................................... 1 LÝ DO CHỌN ĐỀ TÀI ..................................................................................... 2 b. c. MỤC TIÊU ........................................................................................................ 3 d. PHƯƠNG PHÁP NGHIÊN CỨU ..................................................................... 3 ĐỐI TƯỢNG NGHIÊN CỨU ........................................................................... 3 e. f. PHẠM VI NGHIÊN CỨU .................................................................................... 3 Chương 1. CƠ SỞ LÝ THUYẾT .................................................................................... 4 1.1. GIỚI THIỆU ...................................................................................................... 4 1.2. TỔNG QUAN VỀ HOẠT ĐỘNG CỦA TIM VÀ ĐIỆN TIM ......................... 4 1.2.1. Mô tả sơ lược nguyên lý hoạt động của tim ............................................ 4 Sơ lược về điện tim .................................................................................. 5 1.2.2. Phương pháp ghi điện tim ........................................................................ 6 1.2.3. 1.3. LÝ THUYẾT VỀ BỘ LỌC SỐ ....................................................................... 10 1.4. GIỚI THIỆU SƠ LƯỢC VỀ ANDROID ........................................................ 11 Khái niệm Android ................................................................................ 11 Kiến trúc Android .................................................................................. 11 1.5. GIỚI THIỆU VỀ TCP/IP ................................................................................. 12 1.6. GIỚI THIỆU VỀ SERVER ............................................................................. 12 1.7. GIỚI THIỆU VỀ CƠ SỞ DỮ LIỆU ................................................................ 13 1.8. GIỚI THIỆU VỀ WEB .................................................................................... 13 Giới thiệu ............................................................................................... 13 1.9. GIỚI THIỆU PHẦN CỨNG ............................................................................ 14 Giới thiệu ............................................................................................... 14 1.9.1. LUA ESP8266 CP2102 Nodemcu WIFI Module .................................. 14 1.9.2. ADS1292R ECG Module Sensor .......................................................... 15 1.9.3. 1.9.4. Monochrome 7-pin SSD1306 0.96” OLED display .............................. 16 1.10. GIỚI THIỆU PHẦN MỀM LẬP TRÌNH .................................................... 17 TÍNH TOÁN VÀ THIẾT KẾ ................................................................ 18 2.1. GIỚI THIỆU .................................................................................................... 18 2.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ..................................................... 18 Thiết kế sơ đồ khối hệ thống ................................................................. 18 Tính toán và thiết kế mạch ..................................................................... 19 Sơ đồ nguyên lý của toàn mạch ............................................................. 40 2.2.1. 2.2.2. 2.2.3.
Chương 3.
3.2.1. 3.2.2.
3.4.1. 3.4.2.
3.5.1.
3.6.1. 3.6.2. 3.6.3. 3.6.4.
3.7.1. 3.7.2.
4.2.1. 4.2.2.
4.3.1. 4.3.2.
4.4.1. 4.4.2. 4.4.3.
a. b.
Trang: ii
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020
THI CÔNG HỆ THỐNG ....................................................................... 42 3.1. GIỚI THIỆU .................................................................................................... 42 3.2. THI CÔNG HỆ THỐNG ................................................................................. 42 Thi công bo mạch .................................................................................. 42 Lắp ráp và kiểm tra ................................................................................ 43 3.3. ĐÓNG GÓI BỘ ĐIỀU KHIỂN ....................................................................... 46 3.4. LẬP TRÌNH HỆ THỐNG ............................................................................... 49 Lưu đồ giải thuật .................................................................................... 49 Phần mềm lập trình cho vi điều khiển ................................................... 52 3.5. LẬP TRÌNH ỨNG DỤNG .............................................................................. 54 Lưu đồ giải thuật .................................................................................... 54 3.6. LẬP TRÌNH SERVER .................................................................................... 59 Lưu đồ giải thuật .................................................................................... 60 Phần mềm lập trình cho Database ......................................................... 61 Phần mềm lập trình cho Server .............................................................. 62 Kết nối database, server, smartphone .................................................... 63 3.7. VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC ............................ 65 Viết tài liệu hướng dẫn sử dụng ............................................................. 65 Quy trình thao tác .................................................................................. 66 Chương 4. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ .................................................. 67 4.1. KIẾN THỨC ĐẠT ĐƯỢC .............................................................................. 67 4.2. KẾT QUẢ PHẦN CỨNG ................................................................................ 68 Thi công phần cứng ............................................................................... 68 LẬP TRÌNH CHO PHẦN CỨNG ......................................................... 69 4.3. KẾT QUẢ PHẦN MỀM .................................................................................. 71 PHẦN MỀM ANDROID ...................................................................... 71 SERVER ................................................................................................ 72 4.4. ĐÁNH GIÁ KẾT QUẢ ................................................................................... 74 KẾT QUẢ ĐO NHIỀU VỊ TRÍ ............................................................. 74 SO SÁNH KẾT QUẢ VỚI THIẾT BỊ KHÁC ...................................... 76 GIẢI THÍCH .......................................................................................... 79 KẾT LUẬN VÀ KIẾN NGHỊ ....................................................................................... 81 KẾT LUẬN ...................................................................................................... 81 KIẾN NGHỊ ..................................................................................................... 81 TÀI LIỆU THAM KHẢO ............................................................................................. 82
DANH MỤC BẢNG Bảng 2.1: Các chân chức năng sử dụng giao tiếp SPI ................................................ 27
Bảng 2.2: Các chân chức năng của Oled SSD1306 .................................................... 28
Bảng 2.3: Dòng tiêu thụ ở mỗi chế độ truyền nhận dữ liệu ........................................ 32
Bảng 2.4: Đặc tính điện của SSD1306 ....................................................................... 33
Bảng 2.5: Bảng liên hệ dòng sạc và điện trở .............................................................. 36
Bảng 3.1: Danh sách các linh kiện ............................................................................. 43
Bảng 4.1: Thông số điện tim ở 3 vị trí đo khác nhau ................................................. 76
Bảng 4.2: So sánh tính chính xác tính toán nhịp tim với các thiết bị khác .................. 77
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: iii
Bảng 4.4: Thông số điện tim so sánh ở các máy ........................................................ 78
DANH MỤC HÌNH ẢNH Hình 1.1: Chu kỳ hoạt động của tim ............................................................................ 4
Hình 1.2: Điện thế hoạt động – Các quá trình điện học của tim ................................... 5
Hình 1.3: Các thành phần sóng của điện tâm đồ .......................................................... 6
Hình 1.4: Sơ đồ mắc các chuyển đạo mẫu ................................................................... 7
Hình 1.5: Tam giác Einthoven .................................................................................... 7
Hình 1.6: Cách đấu cực trung tâm và mắc một chuyển đạo đơn cực chi ...................... 9
Hình 1.7: Sơ đồ mắc các chuyển đạo đơn cực các chi sau cải tiến ............................... 9
Hình 1.8: Vị trí đặt điện cực thăm dò của 6 chuyển đạo trước tim ............................. 10
Hình 1.9: Mặt phẳng nằm ngang với các trục chuyển đạo ......................................... 10
Hình 1.10: Kiến trúc hệ điều hành Android ............................................................... 11
Hình 1.11: Module Wifi LUA ESP8266 CP2102 Nodemcu ...................................... 14
Hình 1.12: Sơ đồ chân Module Wifi LUA ESP8266 CP2102 Nodemcu .................... 14
Hình 1.13: Mô-đun cảm biến ADS1292R ................................................................. 15
Hình 1.14: Màn hình Oled ........................................................................................ 16
Hình 2.1: Sơ đồ khối hệ thống .................................................................................. 18
Hình 2.2: Sơ đồ khối ADS1292R .............................................................................. 19
Hình 2.3: Sơ đồ mạch khuyếch đại vi sai .................................................................. 20
Hình 2.4: Sơ đồ mạch khuyếch đại vi sai trong ADS1292R ...................................... 21
Hình 2.5: ADC Sigma-delta ...................................................................................... 21
Hình 2.6: Sơ đồ mô hình toán ADC sigma-delta ....................................................... 22
Hình 2.7: Sơ đồ khối tham chiếu ............................................................................... 23
Hình 2.8: IC chuyển đổi mức logic ........................................................................... 23
Hình 2.9: Sơ đồ mạch tín hiệu ECG .......................................................................... 24
Hình 2.10: Module điện tim ADS1292R ................................................................... 25
Hình 2.11: Vi điều khiển ESP8266EX ...................................................................... 25
Hình 2.12: Sơ đồ khối ESP8266EX .......................................................................... 26
Hình 2.13: Sơ đồ mạch chân reset ESP8266.............................................................. 27
Hình 2.14: Sơ đồ khối SSD1306 ............................................................................... 29
Hình 2.15: Sơ đồ ghi dữ liệu vào SSD1306 ............................................................... 31
Hình 2.16: IC TP4056 ............................................................................................... 35
Hình 2.17: Mạch ứng dụng TP4056 .......................................................................... 35
Hình 2.18: Module nguồn có báo vệ Pin ................................................................... 36
Hình 2.19: Sơ đồ nguyên lý toàn mạch ..................................................................... 41
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: iv
Hình 3.1: Sơ đồ mạch in ........................................................................................... 42
Hình 3.2: Sơ đồ bố trí linh kiện ................................................................................. 43
Hình 3.3: Mạch in trên giấy ...................................................................................... 44
Hình 3.4: Tác dụng nhiệt lên boar đồng và giấy in .................................................... 44
Hình 3.5: Board đã ăn mòn và khoan lỗ chân linh kiện ............................................. 45
Hình 3.6: Lắp ráp ADS1292R và TP4056 ................................................................. 45
Hình 3.7: Mặt trên và dưới board mạch ..................................................................... 46
Hình 3.8: Thiết kế hộp đựng ..................................................................................... 47
Hình 3.9: Hoàn thiện thiết kế hộp đựng (ảnh mô hình) .............................................. 48
Hình 3.10: Thi công lắp các phần vào hộp đựng ....................................................... 49
Hình 3.11: Lưu đồ khối chính của hệ thống .............................................................. 49
Hình 3.12: Lưu đồ chương trình con kết nối wifi ...................................................... 50
Hình 3.13: Chương trình con lấy dữ liệu ................................................................... 51
Hình 3.14: Lưu đồ chương trình con Gửi và Hiển thị dữ liệu .................................... 51
Hình 3.15: Giao diện IDE ......................................................................................... 52
Hình 3.16: Thêm đường dẫn cho Board .................................................................... 53
Hình 3.17: Thêm Board để lập trình .......................................................................... 53
Hình 3.18: Lưu đồ giải thuật chính của ứng dụng điện thoại ..................................... 54
Hình 3.19: Lưu đồ giải thuật của khối Login ............................................................. 55
Hình 3.20: Lưu đồ giải thuật chương trình con Information and load data ................. 56
Hình 3.21: Lưu đồ giải thuật chương trình con Get and save data ............................. 57
Hình 3.22: Các bước tạo project mới......................................................................... 58
Hình 3.23: Giao diện thiết kế giao diện cho ứng dụng ............................................... 58
Hình 3.24: Giao diện lập trình chức năng cho ứng dụng ............................................ 59
Hình 3.25: Các bước để xuất File .APK .................................................................... 59
Hình 3.25: Lưu đồ giải thuật xác thực đăng nhập vào ứng dụng ................................ 60
Hình 3.26: Lưu đồ giải thuật giao tiếp dữ liệu giữa ứng dụng và Database ................ 61
Hình 3.27: Giao diện đăng nhập phpMyAdmin ......................................................... 61
Hình 3.28: Tạo cơ sở dữ liệu ..................................................................................... 62
Hình 3.29: Kết quả sau khi hoàn thành tạo bảng CSDL ............................................. 62
Hình 3.30: Giao diện làm việc phần mềm Subline Text ............................................ 63
Hình 3.31: Các bước tạo Website miễn phí trên 000webhost .................................... 64
Hình 3.32: Kết quả sau khi tạo Website .................................................................... 64
Hình 3.33: Giao diện Quản lý “Database” và “Quản lý File” .................................... 65
Hình 3.34: Quay trình thao tác sử dụng của hệ thống đo ECG................................... 66
Hình 4.1: Tổng thể bên ngoài sản phẩm .................................................................... 68
Trang: v
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020
Hình 4.2: Bên trong sản phẩm ................................................................................... 68
Hình 4.3: Màn hình trạng thái hệ thống ..................................................................... 69
Hình 4.4: Tín hiệu thô từ cảm biến ............................................................................ 69
Hình 4.5: Tín hiệu qua bộ lọc thành phần DC ........................................................... 70
Hình 4.6: Tín hiệu qua bộ lọc thông thấp .................................................................. 70
Hình 4.7: Kết quả tính toán nhịp tim ......................................................................... 71
Hình 4.8: Giao diện ứng dụng điện thoại ................................................................... 72
Hình 4.9: Các bảng cơ sở dữ liệu đã được tạo ........................................................... 73
Hình 4.10: Các dữ liệu của bảng CSDL Login_imfomation ...................................... 73
Hình 4.11: Các dữ liệu được lưu lên bảng CSDL user_imfomation_v1 ..................... 73
Hình 4.12: Kết quả gắn điện cực ở ngực ................................................................... 74
Hình 4.13: Kết quả gắn điện cực ở tay ...................................................................... 75
Hình 4.14: Kết quả gắn điện cực ở chi ...................................................................... 75
Hình 4.15: Kết quả đo từ máy phát điện tim mô phỏng ............................................. 76
Hình 4.16: Kết quả tín hiệu ECG đo 3 thiết bị từ 1 sinh viên ..................................... 77
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: vi
Hình 4.17: Biểu đồ so sánh nhịp tim trung bình ........................................................ 79
DANH MỤC TỪ VIẾT TẮT
Số hiệu: HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: vii
Analog to Digital Analog to Digital Converter Application Android Runtime Bluetooth Low Energy Basic Service Set Cascaded Integrator–Comb Central Processor Unit Digital to Analog Converter Database Management System Distributed Control Function Dynamic Host Configuration Protocol Domain Name System Máy ảo java Electrocardiogram Finite Impulse Response File Transfer Protocol Heart Rate HyperText Markup Language HyperText Transfer Protocol Input/Output Inter-Intergrated Circuit Integrated Circuit Institute of Electrical and Electronics Engineers, Infinite Impulse Response Internetwork Operating System Internet of Things Internet Protocol Nhĩ/Thất Negative Temperature Coefficient Operator Amplifier Hypertext Preprocessor Pulse-width modulation Quick Response Relational Database Management System Read-Only Memory Simple Mail Transfer Protocol Serial Peripheral Interface Structured Query Language Transmission Control Protocol User Datagram Protocol Uniform Resource Locator Universal Serial Bus Volt-Ohm-Milliammeter A/D ADC APP ART BLE BSS CIC CPU DAC DBMS DCF DHCP DNS DVM ECG FIR FTP HR HTML HTTP I/O I2C IC IEEE IIR IOS IoT IP N/T NTC Op-Amp PHP PWM QR RDBMS ROM SMTP SPI SQL TCP UDP URL USB VOM
Số hiệu: HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: viii
Virtual Private Server Wireless Fidelity Wi-Fi Protected Access VPS WIFI WPA
MỞ ĐẦU
a. TỔNG QUAN Dương Trọng Lượng và nhóm nghiên cứu đã trình bày đề tài: Thiết kế hệ thống
thu nhận tín hiệu điện tâm đồ trong thời gian thực dựa trên giao tiếp âm thanh- soundcard
tích hợp trong máy tính [1]. Bài báo này đã trình bày nghiên cứu, thiết kế hệ thống thu
nhận tín hiệu điện tâm đồ (ECG) trong thời gian thực dựa vào soundcard có sẵn trong
máy tính. Nghiên cứu này đã phát triển được công cụ giúp thu thập, xử lý, phân tích tín
hiệu ECG được thuận tiện hơn nhờ soundcard và phần mềm Matlab có trên máy tính.
Đồ án tốt nghiệp của Nguyễn Văn Hải và Nguyễn Minh Quân với đề tài: Giám sát
nhịp tim qua điện thoại Android đã tập trung gửi dữ liệu nhịp tim lên điện thoại android
[2]. Dữ liệu nhịp tim được lấy từ cảm biến không xâm lấn được đặt ở đầu ngón tay. Dữ
liệu này được đưa vào và xử lý trong arduino. Sau khi được xử lý, dữ liệu được gửi lên
điện thoại qua serial và giao tiếp qua bluetooth. Trên điện thoại có phần mềm được tạo
từ môi trường Mit App Inventer để hiển thị và giám sát.
Theo dõi dữ liệu điện tim là một nhu cầu cần thiết của mọi người. Bin Yu, Lisheng
Xu và Yongxu Li [3] đã đưa được tín hiệu đó lên điện thoại. Sử dụng bluetooth nămg
lượng thấp (BLE) để gửi dữ liệu lên. Trên nền tảng di động IOS của Iphone 4s được
nhúng bluetooth 4.0, dữ liệu được nhận từ cảm biến và hiển thị. Cảm biến thu nhận tín
hiệu là loại 2 cực. Nghiên cứu không những cho thấy tính hiệu quả trong việc loại bỏ
hạn chế bởi dây dẫn vật lý mà còn giảm đáng kể mức tiêu thụ năng lượng khi giám sát
điện tim dài hạn.
Cùng với sự phát triển của khoa học công nghệ thì khoa học máy tính và mạng
máy tính phát triển. Wei Lin giám sát tín hiệu điện tim theo thời gian thực thông qua kết
nối IEEE802.15.4 [4]. Các bác sĩ có thể nắm được sự bất thường của tín hiệu điện tim
mà không bị ràng buộc với thiết bị ECG. Mục tiêu của nghiên cứu là tạo nên nền tảng
mạng chăm sóc sức khỏe không dây dựa trên tiêu chuẩn IEEE 8002.15.4 có khả năng
truyền dữ liệu ECG đa kênh trong thời gian thực. Sử dụng module ZB XBEE Pro cho
hai thiết bị máy tính để bàn; một để lấy dữ liệu, xử lý và truyền, thiết bị còn lại tiếp nhận
và hiển thị trong thời gian thực. Phần mềm kiểm tra kết nối giữa phần cứng khác và
XBEE đã được viết trên Labview. Kết quả thử nghiệm cho thấy tốc độ truyền dữ liệu
hiệu quả là trên 3,2 Kb/s nếu dữ liệu trên 60 byte, tốc độ này cho phép truyền phát tin
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 1/83
cậy một kênh tín hiệu ECG chất lượng cao mà không bị tràn bộ đệm.
Việc số hóa điện tim có thể thúc đẩy được phát hiện các loại bệnh về tim và liên
quan. Guo Ying [7] và nhóm nghiên cứu phát triển hệ thống phát hiện và phân tích ECG
trên nền tảng Labview thông qua module chuyển đổi. Các tín hiệu này được số hóa và
xử lý lọc đơn giản từ module. Sau đó hiển thị lưu trữ và phát lại dữ liệu dựa trên nền
tảng của Labview và một số xử lý dựa trên nền tảng của Matlab. Hiệu suất của hệ thống
là đáng tin cậy, module gần gũi hơn với thực tế và dễ vận hành.
Labview dần cho thấy lợi thế của mình trong lĩnh vực điện tử bởi khả năng tương
thích phần cứng của nó. Stanley Glenn E. Brucal và nhóm nghiên [5] cứu đã phát triển
thuật toán xử lý tín hiệu ECG 12 đạo trình bằng NI Labview và NI Elvis. Nghiên cứu
này thực hiện thuật toán loại bỏ một lượng nhiễu nhất định trong tín hiệu ECG. Tính
thân thiện của nó được khảo sát thông qua các bác sĩ tim mạch. Khảo sát này cho thấy
ECG-NI loại bỏ tốt được nhiễu, chính xác và thân thiện với người dùng.
Công nghệ phát triển, nhu cầu khám chữa bệnh từ xa cũng tăng theo. Một hệ thống
đo tín hiệu sinh học từ xa trong thời gian thực đã được phát triển bởi Jay A. Raval [6].
Nghiên cứu này cho phép theo dõi bệnh nhân liên tục; thu nhận, phân tích và xử lý các
thông tin như nhịp tim và ECG. Thu tín hiệu thô sử dụng bởi cảm biến EKG được tiền
xử lý trên nền tảng NI ELVIS. Tín hiệu được xử lý tiếp ở phần mềm Labview để phân
tích. Qua đó có thể theo dõi tín hiệu ở một vị trí từ xa trong thời gian thực bằng công cụ
web.
b. LÝ DO CHỌN ĐỀ TÀI Phân loại, phát hiện và chẩn đoán sớm được bệnh tim dựa trên tín hiệu điện tim
lad vấn đề cấp thiết của các nhà khoa học và đội ngũ y bác sĩ. Tại Việt Nam, theo thống
kê của bộ Y tế, hàng năm có khoảng 200.000 người tử vong vì bệnh tim mạch, chiếm
33% tổng số ca tử vong. Theo báo cáo và thống kê của viện Tim mạch năm 2015, người
trưởng thành trong độ tuổi 18-65 chiếm 25% tỷ lệ tăng huyết áp. Trong đó bệnh tim
mạch còn làm cho 17,3 triệu người chết mỗi năm và đến năm 2030 thì con số này lên
đến 23,6 triệu người trên thế giới. Do đó, việc phân loại và chẩn đoán kịp thời các bệnh
cần phải được thực hiện sớm. Để làm được điều trên thì trước hết cần phải có một hệ
thống thu thập và lưu trữ dữ liệu điện tim để phục vụ cho việc học tập và nghiên cứu
của sinh viên, nhà khoa học tại các cơ sở trường đại học, khoa, viện nghiên cứu… được
diễn ra một cách nhanh chóng và thuận lợi nhất.
Tín hiệu điện tim có đặc điểm là biên độ nhỏ và dễ bị nhiễu. Ở các độ tuổi khác
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 2/83
nhau thì việc lấy điện tim và gặp trở ngại khác nhau và số điện cực sẽ quyết định số đạo
trình cần lấy. Vì vậy, trong quá trình thu thập tín hiệu điện tim cần tuân thủ nghiêm ngặt
các nguyên tắc trong việc lấy tín hiệu điện tim cho tốt nhất. Không những thế cần phải
có thiết bị lấy tín hiệu điện tim đáng tin cậy để có thể thu thập các dữ liệu điện tim chính
xác.
Trong thời đại công nghệ 4.0 hiện nay, IoT được áp dụng vào mọi lĩnh vực trong
cuộc sống. Trong lĩnh vực y tế thì IoT đóng vai trò vô cùng quan trọng khi nó giúp việc
khám chữa bệnh trở nên nhanh hơn, thuận tiện hơn khi “vạn vật” được kết nối với nhau.
Đối với việc thu thập và hệ thống hóa số tín hiệu điện tim sẽ giúp cho việc phân loại và
chẩn đoán bện được diễn ra nhanh chóng hơn đồng thời hưởng ứng chính sách hồ sơ y
tế của Bộ Y tế Việt Nam ban hành vào ngày 01/03/2019. Đây là lý do thôi thúc nhóm
thực hiện đề tài Thiết kế và thi công hệ thống thu thập dữ liệu điện tim ECG có hiển
thị tín hiệu qua smart phone.
c. MỤC TIÊU Xây dựng được mô hình thu thập tín hiệu điện tim và gửi dữ liệu lên server. Đồng
thời, tín hiệu cũng được hiển thị lên smart phone thông qua phần mềm ứng dụng được
lập trình.
d. PHƯƠNG PHÁP NGHIÊN CỨU Phương pháp tham khảo tài liệu: Tham khảo các tài liệu về thu thập tín hiệu ECG
và cách sử dụng phần mềm Labview.
Phương pháp thực nghiệm khoa học: Trực tiếp thu thập dữ liệu và đưa dữ liệu lên
web, app điện thoại.
e. ĐỐI TƯỢNG NGHIÊN CỨU Đối tượng nghiên cứu chính của đề tài là tín hiệu điện tim, cách thức truyền dữ
liệu điện tim và lưu dữ liệu điện tim.
f. PHẠM VI NGHIÊN CỨU Phạm vi nghiên cứu là tập trung vào xây dựng một hệ thống phần mềm dùng để
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 3/83
truyền dữ liệu ECG từ lúc thu được đến lúc hiển thị lên thiết bị đầu cuối cho người dùng.
Chương 1. CƠ SỞ LÝ THUYẾT
1.1. GIỚI THIỆU
Sau khi lựa chọn được đề tài, để hiểu rõ hơn về tính thực thi và một số lý
thuyết liên quan đến đề tài, nhóm chúng em xin được trình bày một số nội dung
chính sau: Tổng quan về hoạt động của tim và điện tim, Lý thuyết về bộ lọc số,
Giới thiệu sơ lược về Android, Server, Wifi, Mysql, PHP cũng như phần cứng và
phần mềm được sử dụng để thực hiện đề tài này.
1.2. TỔNG QUAN VỀ HOẠT ĐỘNG CỦA TIM VÀ ĐIỆN TIM
1.2.1. Mô tả sơ lược nguyên lý hoạt động của tim
Tim là một trong những bộ phận quan trọng trong hệ tuần hoàn của người và động
vật [12]. Tim hoạt động như cái bơm với chức năng bơm đều đặn để đẩy máu theo các
động mạch cùng dưỡng khí và các chất dinh dưỡng đến các tế bào trong toàn bộ cơ thể
[13-14]. Đồng thời tim hút máu từ các tĩnh mạch về hai tâm thất của tim, sau đó đẩy
máu đến phổi để trao đổi khí CO2 và lấy khí O2 [15].
Chu kì hoạt động của tim
Tim hoạt động theo chu kỳ với mỗi chu kỳ tim được bắt đầu từ pha co tâm nhĩ,
tiếp đến là pha co tâm thất và cuối cùng là pha giãn chung như mô tả ở hình 1.1.
Hình 1.1: Chu kỳ hoạt động của tim
Mỗi một chu kỳ tim thường kéo dài 0,8 giây gồm 3 pha, trong đó:
Pha nhĩ co 0.1s và 0.7s còn lại là thời gian nghỉ của cơ tâm nhĩ.
Pha thất co 0.3s và 0.5s còn lại là thời gian nghỉ của cơ tâm thất.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: 4/83
Thời gian của pha dãn chung là 0.4s, còn lại 0.4s là thời gian nghỉ.
Nhờ vào các yếu tố như hoạt động theo chu kỳ đều đặn, phân bổ đều thời gian nghỉ
cùng cấu tạo đặc biệt và bền bỉ của tim cũng như lượng máu cung cấp để nuôi dưỡng
dồi dào nên cơ tim có thể hoạt động liên tục [17].
1.2.2. Sơ lược về điện tim
a. Các quá trình điện học của tim
Hình 1.2: Điện thế hoạt động – Các quá trình điện học của tim
Hình 1.2 chính là quá trình điện học của tim, xảy ra do sự biến đổi hiệu điện thế
giữa hai mặt trong và ngoài màng tế bào cơ tim. Sự thay đổi hiệu điện thế này xuất hiện
khi có sự di chuyển của các ion (K+, Na+...) giữa mặt trong và ngoài tế bào.
Khi tế bào bắt đầu hoạt động thì điện thế mặt ngoài màng tế bào trở thành âm tính
tương đối so với mặt trong của màng tế bào và đó chính là hiện tượng khử cực. Sau đó
tế bào dần lập lại thế thăng bằng ion lúc nghỉ, khi đó điện thế mặt ngoài tế bào trở lại
trạng thái dương tương đối so với mặt trong màng tế bào và quá trình đó gọi là hiện
tượng tái cực [18].
b. Sự hình thành điện tâm đồ
Nút xoang giữ vai trò chủ nhịp, tức là xung động từ nút xoang lan ra cơ nhĩ → nhĩ
khử cực, tâm nhĩ bóp đẩy máu xuống tâm thất. Sau đó xung động đi qua nút N/T → Khử
cực thất, tâm thất đẩy máu vào các động mạch.
Hiện tượng tâm nhĩ và tâm thất khử cực lần lượt trước sau là để duy trì quá trình
hoạt động bình thường của hệ tuần hoàn. Do đó, nó cũng làm cho điện tâm đồ hình thành
2 phần là nhĩ đồ và thất đồ [18].
c. Phân tích hành dạng các sóng điện tim
Điện tim bao gồm các dạng sóng như P, phức bộ QRS, sóng T, sóng U. Đặc điểm
cơ bản của mỗi dạng sóng được mô tả như ở hình 1.3.
Các dạng sóng ECG chuẩn được trình bày chi tiết hơn ở dưới đây:
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: 5/83
Sóng P: Sóng khử cực 2 nhĩ (<0.25mV, 0.05-0.11s, V1).
Khoảng PR: khoảng thời gian dẫn truyền từ nhĩ tới thất, khoảng thời gian
này được đo từ đầu sóng P đến điểm đầu QRS (0.12-0.2s).
Phức hợp QRS: Thời gian khử cực 2 thất, được đo từ điểm cuối của khoảng
PR đến hết sóng S (0.05-0.09s).
Khoảng QT: khoảng thời gian cho thấy hoạt động khử cực và tái khử cực
của tâm thất, là khoảng từ điểm đầu QRS đến cuối sóng T (0.35-0.44s).
Đoạn ST: Thời gian 2 tâm thất hoàn toàn bị khử cực và bắt đầu ở điểm cuối
QRS đến điểm đầu sóng T (0.05-0.15s).
Sóng T: Sóng tái cực 2 tâm thất (0.1-0.5mV, đỉnh tròn).
Sóng U: là 1 sóng nhỏ sau sóng T (<0.1mV, V2-V3).
Hình 1.3: Các thành phần sóng của điện tâm đồ
1.2.3. Phương pháp ghi điện tim
Phương pháp ghi điện tâm đồ cũng tương tự như cách ghi các đường cong biến
thiên tuần hoàn khác. Khi cho dòng điện tim tác động lên một bút ghi làm bút này dao
động đều và liên tục qua lại theo một vận tốc nào đó và vẽ lên mặt một băng giấy thông
qua một động cơ mà ta được một đường cong tuần hoàn gồm nhiều làn sóng biến thiên
theo thời gian, đó là điện tâm đồ. Tùy vào điện thế này cao hay thấp mà bút ghi sẽ vạch
lên giấy một làn sóng có biên độ cao hay thấp.
a. Các chuyển đạo thông dụng
Có hai loại chuyển đạo: chuyển đạo trực tiếp và chuyển đạo gián tiếp.
Chuyển đạo trực tiếp là chuyển đạo khi đặt điện cực chạm vào cơ tim. Chỉ
dùng chuyển đạo này trên những người mở lồng ngực trong phẫu thuật hay
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: 6/83
trên các động vật thí nghiệm.
Chuyển đạo gián tiếp thường được dùng trên người bình thường, vị trí là
ngoài lồng ngực với 3 loại chuyển đạo gián tiếp: chuyển đạo song cực chi
(chuyển đạo mẫu), chuyển đạo đơn cực chi và chuyển đạo trước tim.
b. Cách đặt các chuyển đạo
Ngày nay, ở đại đa số các trường hợp nên đặt điện cực theo 12 cách và thu lấy 12
chuyển đạo thông dụng bao gồm 3 chuyển đạo mẫu, 3 chuyển đạo đơn cực chi và 6
chuyển đạo trước tim. Ở mỗi chuyển đạo sẽ có một hình dạng sóng ECG khác nhau.Và
trong phần này chỉ nói chi tiết về 3 chuyển đạo gián tiếp vì nó thường được dùng trong
thực hành y học lâm sàng.
Chuyển đạo song cực chi (chuyển đạo mẫu):
Các chuyển đạo mẫu (Standard) là những chuyển đạo được nghiên cứu ngay từ
thời Einthoven, chúng còn được gọi là các chuyển đạo lưỡng cực các chi (bipolar limb
leads) hay các chuyển đạo lưỡng cực ngoại biên (bipolar peripheral leads) vì cả hai điện
cực của chúng đều là những điện cực thăm dò.
Hình 1.4: Sơ đồ mắc các chuyển đạo mẫu
Điện cực âm ở cổ tay phải, điện cực dương ở cổ tay trái, gọi đó là chuyển đạo I,
viết tắt là D1 như ở hình 1.4 với điện cực đặt ở chân phải là dây nối đất để chống ảnh
hưởng tạp.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: 7/83
Hình 1.5: Tam giác Einthoven
Như cách mắc ở hình 1.5, khi điện cực tay trái dương tính tương đối thì máy điện
tâm đồ sẽ ghi một làn sóng dương, còn khi điện cực tay phải dương tính tương đối thì
máy sẽ ghi một làn sóng âm. Do đó, ta gọi chiều dương của trục chuyển đạo là chiều từ
vai phải sang vai trái.
Điện cực âm đặt ở cổ tay phải, điện cực dương đặt ở cổ chân trái, đó gọi là
chuyển đạo 2, viết tắt là D2. Khi đó, trục chuyển đạo sẽ là một đường thẳng
đi từ vai phải (R) xuống gốc chân trái (F) và chiều dương chính là chiều từ
R đến F.
Điện cực âm đặt ở tay trái và điện cực dương ở chân trái gọi đó là chuyển
đạo 3, viết tắt là D3. Do đó, trục chuyển đạo sẽ là đường thẳng LF từ vai
trái (L) đến gốc chân trái (F) và chiều dương chính là chiều từ L đến F.
Các trục chuyển đạo RL, RF, và LF của D1, D2, D3 lập thành 3 cạnh của một hình
tam giác đều với mỗi góc bằng 60 độ gọi là “tam giác Einthoven”.
Các chuyển đạo đơn cực các chi:
Chuyển đạo này vẫn dùng 2 điện cực: một điện cực thăm dò và một điện cực trung
tính (tay phải, tay trái và chân trái).
Các chuyển đạo mẫu đều có hai điện cực thăm dò để ghi hiệu thế giữa 2 điểm của
điện trường tim. Nhưng khi muốn điện thế riêng biệt của mỗi điểm thì phải biến một
điện cực thành ra trung tính. Do đó, cần nối điện cực âm ra một cực trung tâm gọi tắt là
CT (central terminal) có điện thế bằng 0 (trung tính) vì nó là tâm của một mạch điện
hình sao mắc vào 3 đỉnh của tam giác Einthoven (Wilson). Còn điện cực dương thì đem
đặt lên vùng cần thăm dò và gọi đó là một chuyển đạo đơn cực.
Khi điện cực thăm dò này được đặt ở một chi thì gọi là một chuyển đạo đơn cực
chi và thường được đăt ở 3 vị trí cổ tay phải, cổ tay trái, cổ chân trái như hình 1.6 và
chi tiết được trình bày dưới đây:
Cổ tay phải: chuyển đạo VR (V: voltage; R: right) thu điện thế ở mé bên
phải và đáy tim. Khi đó trục chuyển đạo là đường thẳng nối tâm điểm (O)
ra vai phải.
Cổ tay trái: chuyển đạo VL có nhiệm vụ lấy điện thế đáy thất trái và trục
chuyển đạo ở đây là đường thẳng OL.
Cổ chân trái: chuyển đạo VF, đó là chuyển đạo có thể thu được tín hiệu
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: 8/83
từ thành sau dưới của tim. Trục chuyển đạo là đường thẳng OF.
Hình 1.6: Cách đấu cực trung tâm và mắc một chuyển đạo đơn cực chi
Ba chuyển đạo ở hình 1.6 được Goldberger cải tiến (1947) bằng cách cắt bỏ cánh
sao nối với chi có đặt điện cực thăm dò, làm cho các sóng điện tim của các chuyển đạo
đó tăng biên độ lên gấp rưỡi nhưng vẫn giữ được hình dạng như cũ gọi là những chuyển
đạo đơn cực các chi tăng cường (kí hiệu là aVR, aVL, aVF) như hình 1.7 và thông dụng
hơn các chuyển đạo VR, VL, VF.
Hình 1.7: Sơ đồ mắc các chuyển đạo đơn cực các chi sau cải tiến
Các trục chuyển đạo (OR, OL, OF) của các chuyển đạo đơn cực các chi chính là
ba đường phân giác trong của tam giác Einthoven. Và 6 chuyển đạo: D1, D2, D3, aVR,
aVL, aVF được gọi chung là các chuyển đạo ngoại biên vì đều có điện cực thăm dò đặt
ở các chi. Chúng hỗ trợ cho nhau dò xét các thay đổi của dòng điện tim thể hiện ở bốn
phía xung quanh quả tim trên mặt phẳng chắn (frontal plane).
Các chuyển đạo đơn cực trước tim:
Thông thường khi đo điện tim người ta thường gắn cho bệnh nhân 6 chuyển đạo
trước tim là phổ biến nhất, kí hiệu bằng chữ V (voltage) kèm theo các chỉ số từ 1 đến 6.
Đó là những chuyển đạo đơn cực, có một điện cực trung tính nối vào cực trung tâm (CT)
và một điện cực thăm dò, được đặt lần lượt trên 6 điểm ở vùng trước tim như ở hình 1.8
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020 Trang: 9/83
dưới đây.
Hình 1.8: Vị trí đặt điện cực thăm dò của 6 chuyển đạo trước tim
Và chi tiết vị trí các điện cực gắn lên cơ thể bệnh nhân được trình bày dưới đây:
V1: khoảng liên sườn 4 bên phải sát bờ xương ức.
V2: khoảng liên sườn 4 bên trái, sát bờ xương ức.
V3: điểm giữa đường thẳng nối V2 với V4.
V4: giao điểm của đường dọc đi qua điểm giữa xương đòn trái với đường
ngang đi qua mỏm tim (hay nếu không xác định được vị trí mỏm tim thì
lấy khoảng liên sườn 5 trái).
V5: giao điểm của đường nách trước với đường ngang đi qua V4.
V6: giao điểm đường nách giữa với đường ngang đi qua V4, V5.
Hình 1.9: Mặt phẳng nằm ngang với các trục chuyển đạo
Như vậy, trục chuyển đạo của chúng sẽ là những đường thẳng hướng từ tâm điểm
điện của tim (điểm O) tới các vị trí của điện cực tương ứng như hình 1.9 và các trục đó
nằm trên những mặt phẳng nằm ngang hay gần ngang. [19].
1.3. LÝ THUYẾT VỀ BỘ LỌC SỐ
Trong quá trình thu tín hiệu trong thực tế thường sẽ không tránh khỏi việc bị ảnh
hưởng bởi nhiễu từ môi trường. Vì vậy, quá trình lọc nhiễu tín hiệu là rất cần thiết cho
việc phân bố lại các thành phần tần số của tín hiệu. Quá trình này được thực hiện thông
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 10/83
qua các bộ lọc với hai mục đích chính sau:
Phân tích tính hiệu được áp dụng khi tín hiệu mong muốn bị giao thoa với
các tín hiệu khác (nhiễu).
Phục hồi tín hiệu khi tín hiệu bị sai lệch bởi các tác động không mong muốn
từ môi trường xung quanh làm cho nó bị biến dạng.
Gồm 2 bộ lọc chính: bộ lọc tương tự và bộ lọc số. Và trong đề tài này nhóm chỉ sử
dụng bộ lọc số để lọc nhiễu tín hiệu ECG.
Bộ lọc số là hệ thống tuyến tính bất biến theo thời gian. Đặc trưng bởi một đáp
ứng xung và một đáp ứng tần số. Mỗi đáp ứng đều chứa đầy đủ thông tin về bộ lọc
nhưng ở dạng khác nhau. Nếu có được một trong hai đáp ứng thì có thể tính toán trực
tiếp để suy ra đáp ứng còn lại. Đáp ứng xung là đầu ra của hệ thống khi đầu vào là xung
đơn vị. Đáp ứng tần số là kết quả từ phép biến đồi Fourier của đáp ứng xung.
Bộ lọc số có hai chức năng chính là phân tích và phục hồi tín hiệu. Nếu xét về
đáp ứng xung chia các bộ lọc số thành 2 loại chính là bộ lọc có đáp ứng xung hữu hạn
FIR và bộ lọc có đáp ứng xung vô hạn IIR. Xét về đáp ứng tần số biên độ chia các bộ
lọc thành 4 loại cơ bản: lọc thông thấp, thông cao, thông dải và chắn dải.
1.4. GIỚI THIỆU SƠ LƯỢC VỀ ANDROID
1.4.1. Khái niệm Android
Android là một hệ điều hành mở dựa trên nền tảng Linux, được thiết kế và
chạy trên các thiết bị di động có màn hình cảm ứng như điện thoại thông minh,
máy tính bảng và cả đồng hồ thông minh [22].
1.4.2. Kiến trúc Android
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 11/83
Hình 1.10: Kiến trúc hệ điều hành Android
Kiến trúc hệ điều hành Android gồm 4 tầng chính là Linux Kernel (hạt nhân),
Android Runtime (ART) và Libraries, Application Framework và tầng Applications
[24]. Và chi tiết về tầng trong cấu trúc Android (hình 1.10) được trình bày dưới đây:
a. Tầng hạt nhân Linux
Ở tầng này, tất cả mọi hoạt động của thiết bị muốn thi hành được đều phải thực
hiện ở mức cấp thấp.
b. Tầng Libraries
Tầng này được cung cấp một tập các thư viện đa dạng dùng trong đồ họa, cơ sở dữ
liệu, giao tiếp mạng, … Các thư viện chủ yếu dựa trên Java và C/C++.
c. Tầng Android Runtime
Tầng này sẽ chứa các thư viện của của chương trình viết bằng ngôn ngữ Java gồm
2 bộ phận là các thư viện lõi (core library) và một máy ảo Java (DVM).
d. Tầng Application Framework
Tầng này sẽ xây dựng bộ công cụ các phần tử mức cao bằng ngôn ngữ Java.
e. Tầng Applications
Là tầng cao nhất trong stack bao gồm các ứng dụng Android và các ứng dụng bên
thứ ba do người dùng cài đặt.
1.5. GIỚI THIỆU VỀ TCP/IP
TCP/IP là một bộ các giao thức truyền thông mà internet và hầu hết các mạng máy
tính đang chạy. Bộ giao thức này gồm hai giao thức chính là TCP và IP. TCP giúp tạo
kết nối giữa các ứng dụng trên các máy chủ được nối mạng để trao đổi dữ liệu một cách
đáng tin cậy và đúng thứ tự. IP có chức năng hướng dữ liệu được sử dụng bởi các máy
chủ ngồn và đích để truyền dữ liệu trong một liên mạng chuyển mạch gói.
Bộ giao thức TCP/IP là một tập hợp các tầng gồm Tầng ứng dụng (Application
Layer), Tầng giao vận (Transport Layer), Tầng mạng (Internet Layer), Tầng liên kết
(Link Layer).
1.6. GIỚI THIỆU VỀ SERVER
Server là một hệ thống đáp ứng yêu cầu trên một mạng máy tính để cung cấp hoặc
hỗ trợ cung cấp một dịch vụ mạng. Các server có thể chạy trên một "máy chủ" hoặc
nhiều máy tính nối mạng có khả năng máy chủ lưu trữ.
Các máy chủ thường hoạt động trong một mô hình client-server với server là các
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 12/83
chương trình máy tính đang chạy để phục vụ yêu cầu của các chương trình khác để thực
hiện một số nhiệm vụ thay mặt cho khách hàng (client). Các client thường kết nối với
server thông qua mạng nhưng có thể chạy trên cùng một máy tính. Trong hệ thống hạ
tầng của mạng Internet Protocol (IP), một server là một chương trình hoạt động như một
socket listener (giao thức nghe) [25].
Nếu dựa theo phương pháp xây dựng hệ thống, máy chủ - Server gồm 3 loai: Máy
chủ riêng (Dedicated), Máy chủ ảo (VPS), Máy chủ đám mây (Cloud Server). Còn phân
loại theo chức năng thì máy chủ - server được chia thành các loại phổ biến như: Web
Server, Mail Server, FTP Server, Database Server, DNS Server, DHCP Server, Print
Server, Application Server, Indentity Server, Game Server,...[26].
1.7. GIỚI THIỆU VỀ CƠ SỞ DỮ LIỆU
Cơ sở dữ liệu (Database) là một tập hợp các dữ liệu có tổ chức và được lưu trữ và
truy cập từ hệ thống máy tính. Hệ quản trị cơ sở dữ liệu (DBMS) là phần mềm thu thập
và phân tích dữ liệu với 4 nhóm chức năng chính là Định nghĩa, Cập nhật, Truy suất và
Quản trị dữ liệu.
SQL là một loại ngôn ngữ máy tính phổ biến để tạo, sửa và lấy dữ liệu từ một hệ
quản trị cơ sở dữ liệu quan hệ (RDBMS). MySQL là một hệ thống quản trị cơ sở dữ liệu
với mã nguồn mở hoạt động theo mô hình client-server. MySQL quản lý dữ liệu thông
qua các Database với mỗi Database có thể có nhiều bảng quan hệ chứa dữ liệu [29].
1.8. GIỚI THIỆU VỀ WEB
1.8.1. Giới thiệu
Web là từ gọi tắt của “World Wide Web”, là một mạng lưới toàn cầu giúp mọi
người có thể truy cập và tải xuống thông tin qua các thiết bị kết nối với mạng internet.
Các trang Web được định dạng bằng HTML cho phép các link nhúng có chứa URL và
cho phép điều hướng đến các tài nguyên web khác. Trang web được lưu trữ trong các
máy tính đang chạy chương trình được gọi là “máy chủ web”, xử lý các yêu cầu (request)
từ các client thông qua giao thưc HTML và một số giao thưc liên quan khác.
Có nhiều ngôn ngữ để xây dựng các trang web như Javascript, Python, C#, …
nhưng để kết nối App điện thoại và DBMS thì PHP được sử dụng phổ biến nhất. Đây là
ngôn ngữ lập trình mã nguồn mở và mã PHP có thể thực thi trên server để tạo ra mã
HTML và xuất ra trình duyệt web theo yêu cầu của người sử dụng. PHP cho phép xây
dựng ứng dụng web trên mạng internet tương tác với mọi cơ sở dữ liệu như: MySQL,
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 13/83
Oracle, …
Bên cạnh đó, PHP được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn,
cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so
với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình phổ
biến nhất thế giới [31].
1.9. GIỚI THIỆU PHẦN CỨNG
1.9.1. Giới thiệu
Từ những phần lý thuyết được tìm hiểu ở trên, nhóm chúng em quyết định
lựa chọn phần cứng để thực hiện đề tài này với phần Vi điều khiển là LUA
ESP8266 CP2102 Nodemcu WIFI Module, phần cảm biến để thu tín hiệu là
ADS1292R ECG Module và một màn hình SSD1306 OLED để hiển thị.
1.9.2. LUA ESP8266 CP2102 Nodemcu WIFI Module
a. Mô tả
Hình 1.11: Module Wifi LUA ESP8266 CP2102 Nodemcu
Hình 1.11 chính là Module Wifi ESP8266, đây là một mạch vi điều khiển có thể
giúp ta điều khiển các thiết bị điện tử. Thêm vào đó nó được tích hợp wi-fi 2.4GHz có
thể dùng cho lập trình [32]. Kít ESP8266 được tích hợp sẵn mạch nạp sử dụng chíp
CP2102 trên board và một lõi vi xử lý nên có thể trực tiếp lập trình cho ESP8266 mà
không cần thêm bất kì con vi xử lý nào nữa [33].
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 14/83
Hình 1.12: Sơ đồ chân Module Wifi LUA ESP8266 CP2102 Nodemcu
Ở hệ thống này, ESP8266 kết nối với một module cảm biến thu điện tim dưới dạng
tín hiệu analog. Các chân Module này sẽ được mô tả ở hình 1.12. Nhờ có 1 chân analog
duy nhất mà ESP8266 có thể nhận được dữ liệu. Sau khi thu thập dữ liệu và xử lý,
ESP8266 thực hiện 2 nhiệm vụ độc lập với nhau là: gửi dữ liệu lên web server để lưu
trữ và gửi dữ liệu lên điện thoại để hiển thị trực tiếp tín hiệu đo được.
b. Thông số kỹ thuật
WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n.
Điện áp hoạt động: 3.3V.
Điện áp vào: 5V thông qua cổng USB.
Số chân I/O: 11 (tất cả các chân I/O đều có Interrupt/ PWM/ I2C/ One-
wire, trừ chân D0).
Số chân Analog Input: 1 (điện áp vào tối đa 3.3V).
Bộ nhớ Flash: 4MB.
Giao tiếp: Cable Micro USB (tương đương cáp sạc điện thoại).
Hỗ trợ bảo mật: WPA/WPA2.
Tích hợp giao thức: TCP/IP.
Lập trình trên các ngôn ngữ: C/C++, Micropython…
1.9.3. ADS1292R ECG Module Sensor
a. Mô tả
Hình 1.13: Mô-đun cảm biến ADS1292R
Hình 1.13 chính là Mô-đun ADS1292 là một mô-đun cảm biến với 2 kênh chuyển
đổi A/D 24 bit có chức năng là hỗ trợ đo các tín hiệu ECG và hô hấp. Bên cạnh đó, mô-
đun này được bổ sung chân SPI mới giúp tương thích với các thiết bị Arduino mới hơn
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 15/83
và bao gồm đầu nối Arduino Yun và Due.
Tín hiệu ECG được thu thập thông qua một dây cáp kết nối đi kèm với một đầu là
jack 3.5mm tròn và đầu bên kia là các nút để kết nối các điện cực ECG. Nó cũng chấp
nhận 2 điện cực ECG và một điện cực DRL để giảm nhiễu chế độ chung.
Ngoài ra, mô-đun này cũng có thể đo hoạt động hô hấp bằng cách sử dụng 2 điện
cực giống nhau dựa trên phương pháp chụp phổi trở kháng để đo hô hấp thông qua các
thay đổi về trở kháng của ngực gây ra trong quá trình hô hấp [34].
b. Thông số kỹ thuật
Điện áp hoạt động:
Dòng điện vào (trừ chân cung cấp): ± 10 (mA).
Dòng điện vào tạm thời: ± 100 (mA).
Dòng điện vào liên tục: ± 10 (mA).
Nhiệt độ hoạt động: -40 đến +85 (ºC).
Phạm vi nhiệt độ lưu trữ: +60 đến +150 (ºC).
Tốc độ dữ liệu: 125 SPS đến 8 kSPS.
1.9.4. Monochrome 7-pin SSD1306 0.96” OLED display
a. Mô tả
Hình 1.14 chính là màn hình Oled nhóm sử dụng cho đề tài này. Loại màn hình
này có thể hoạt động trên ở chế độ SPI (chế độ mặc định) và I2C. Bên cạnh đó, module
hiển thị này có các đặc điểm như: độ sáng cao, tự phát xạ, tỷ lệ tương phản cao, đường
viền mỏng, góc nhìn và phạm vi hoạt động nhiệt độ rộng, tiêu thụ điện năng thấp.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 16/83
Hình 1.14: Màn hình Oled
b. Thông số kỹ thuật
Kích thước đường chéo: 0.96 inch.
Kích thước hiển thị: 21.7 x 10.8mm.
IC: SH1106.
Độ phân giải: 128 x 64pixels.
Giao tiếp: SPI và I2C.
Cung cấp điện áp: 3V-5V.
Nhiệt độ hoạt động: -30 đến +70 ºC.
1.10. GIỚI THIỆU PHẦN MỀM LẬP TRÌNH
Sau khi tìm hiểu và lựa chọn phần cứng, đối với Vi điều khiển thì phần mềm hỗ
trợ nhóm chọn là “Aruino IDE”. Còn về phần mềm để lập trình ứng dụng Android thì
có khá nhiều phần mềm hỗ trợ, và nhóm quyết định lựa chọn “Mit App Inventor” vì nó
khá dễ tìm hiểu cũng như sử dụng đối với người mới. Ngoài ra còn có một số phần mềm
hỗ trợ khác như: phần mềm hỗ trợ lập trình cho Server “Subline Text”, phần mềm lập
trình và tạo Database “PhpMyAdmin”. Và chi tiết về các phần mềm lập trình này sẽ
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét: 00 Ngày hiệu lực: 01/4/2020Trang: 17/83
được giới thiệu chi tiết hơn ở các chương sau.
Chương 2. TÍNH TOÁN VÀ THIẾT KẾ
2.1. GIỚI THIỆU
Hệ thống thu thập và hiển thị tín hiệu ECG lên điện thoại có thể đo được dữ liệu
điện tim từ 3 điện cực trên cơ thể. Dữ liệu thu được gửi lên server để hiển thị trên điện
thoại. Hơn nữa dữ liệu được lưu trên Database server để khi cần có thể xem lại. Những
yêu cầu đặt ra cho hệ thống cần được tính toán và thiết kế, từ đó xây dựng phần mềm để
hệ thống được hoạt động.
2.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
Để đáp ứng được những yêu cầu trên đặt ra cho hệ thống, phần tính toán và thiết kế
phần cứng là điều quan trọng. Một hệ thống muốn hoạt động ổn định thì phần cứng phải
được tính toán chặt chẽ. Dưới đây là phần tính toán thiết kế phần cứng của hệ thống
được thể hiện qua các phần: Thiết kế sơ đồ khối, tính toán và thiết kế các khối, thiết kế
sơ đồ nguyên lý toàn mạch.
Hình 2.1: Sơ đồ khối hệ thống
2.2.1. Thiết kế sơ đồ khối hệ thống
Một hệ thống đáp ứng được yêu cầu của đề tài có các khối như trên sơ đồ hình 2.1.
Sơ đồ bao gồm các khối như: khối cảm biến, khối xử lý, khối hiển thị, khối truyền dữ
liệu trực tuyến và lưu trữ, khối nguồn. Khối cảm biến lấy tín hiệu từ cơ thể con người
chuyển thành tín hiệu điện. Tín hiệu điện này được chuyển đồi tương sự sang số để dễ
dàng thực hiện xử lý. Khối xử lý nhận tín hiệu số từ khối cảm biến, xử lý chúng và gửi
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 18/83
các tín hiệu đó lên khối hiển thị và khối lưu trữ. Tín hiệu được lưu trữ tại khối lưu trữ,
khi cần chúng sẽ được truy xuất ra khối hiển thị. Cuối cùng là khối nguồn, khối này
cung cấp năng lượng cho toàn bộ hệ thống hoạt động. Kết hợp các khối này để được
một phần cứng hệ thống hoàn chỉnh.
2.2.2. Tính toán và thiết kế mạch
Để đạt được một hệ thống hoàn chỉnh, trước tiên hết là tính toán và thiết kế phần
cứng. Phần cứng tốt là nền tảng để phần mềm hoạt động tốt. Các khối được thiết kế phải
phù hợp và tương thích với nhau thì hệ thống mới hoạt động ổn định. Dưới đây là thiết
kế và tính toán các thông số của các khối hệ thống này.
a. Thiết kế khối cảm biến
Như đã được giới thiệu ở phần tổng quan và sơ sở lý thuyết. Điện tim là một loại
xung điện do tim tự phát. Xung điện này giúp tim co bóp và nó cũng lan truyền khắp cơ
thể. Tuỳ vào mỗi vị trí và đặc điểm khác nhau của mỗi phần cơ thể mà tại đó ta thu được
những tín hiệu điện tim khác nhau. Tín hiệu sau khi đo phải giảm nhiễu, khuyếch đại,
chuyển đổi tương tự sang số, và chuyển sang bộ xử lý. Hình 2.2 là sơ đồ khối của cảm
biến điện tim ADS1292R. IC cảm biến này tích hợp đủ các yêu cầu phần cứng để thu
về tín hiệu điện tim của hệ thống.
Hình 2.2: Sơ đồ khối ADS1292R
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 19/83
Mạch thu tín hiệu
Tín hiệu được thu vào là sự sai lệch điện áp khi tim hoạt động được đo tại các điểm cực
đặt trên cơ thể. Hệ thống này đo đạt tín hiệu điện tim bằng ba điện cực. Trong đó có 2
điện cực để lấy hiệu điện thế và một điện cực để làm điện thế tham chiếu.
Hình 2.3: Sơ đồ mạch khuyếch đại vi sai
Để tính toán được hiệu điện thế giữa hai cực, hệ thống dùng mạch khuyếch đại đo
(Instrumentation Amplifier) như hình 2.3. Điện áp đầu ra Vout chính là tín hiệu điện
tim cần tìm. Để dễ dàng tính toán, mạch trên hình 2.3 sẽ được chia thành hai phần, phần
I sẽ là hai op-amp đệm ở ngõ vào, phần II sẽ là op-amp với vai trò mạch vi sai. Vout ở
phần II sẽ được tính theo công thức (2.1).
(Volt) (2.1)
Trong đó quy ước Vo1 và Vo2 lần lượt là ngõ ra của hai op-amp đệm ở phần I, điện trở
R3 = R2. Vì hai mạch op-amp ở ngõ vào là khuyếch đại đệm không đảo, nên ta có 2 ngõ
vào âm cũng lần lượt là V1 và V2 tương ứng với hai ngõ vào dương. Áp dụng định luật
Ohm ta tính được dòng i chạy qua điện trở R1. Tương tự ta cũng tính dòng i qua điện
trở R1, R2, R3. Từ đó ta sẽ tính được (Vo1-Vo2) theo công thức (2.2) (2.3) dưới đây.
(2.2)
(2.3)
Từ công thức (2.1) và (2.3) ta có thể tính được điện áp ngõ ra Vout như công thức (2.4)
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 20/83
và hệ số khuyếch đại tín hiệu A được tính như công thức (2.5).
(2.4)
(2.5)
Để dễ dàng thay đổi hệ số khuyếch đại, mạch sẽ dùng R1 có thể thay đổi được để tăng
hoặc giảm hệ số.
Hình 2.4: Sơ đồ mạch khuyếch đại vi sai trong ADS1292R
Hiện nay có rất nhiều IC có chức năng khuyếch đại đo, tuy nhiên để phù hợp với tín
hiệu điện tim hệ thống sẽ sử dụng IC ADS1292R. Mạch khuyếch đại đo của IC này như
hình 2.4 có thể thay đổi được thông số khuyếch đại bằng cách lập trình.
Chuyển đổi tương tự sang số
Hình 2.5: ADC Sigma-delta
Tín hiệu ngõ ra Vout là tín hiệu điện tim thuộc tín hiệu tương tự. Để dễ dàng xử
lý, tín hiệu này sẽ được chuyển về tín hiệu số. Bộ chuyển đổi tín hiệu tương tự sang số
(ADC) này trong ADS1292R thuộc loại Sigma-delta có độ phân giải 24bit. Trên hình
2.5 là bộ ADC Sigma-delta 1 bit. Thành phần chung của ADC kiểu này là các bộ phận
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 21/83
như: vi sai, tích phân, so sánh, DAC hồi tiếp tương ứng.
Hình 2.6: Sơ đồ mô hình toán ADC sigma-delta
Lưu đồ của ADC này được thể hiện ở hình 2.6. Đầu tiên tín hiệu đưa vào được
qua bộ vi sai. Bộ này trừ tín hiệu vào và tín hiệu hồi tiếp từ ngõ ra đã được chuyển đổi
DAC. Tín hiệu tiếp tục đi qua bộ tích phân, tại đây tín hiệu được cộng với kết quả tín
hiệu bộ tích phân trước đó. Sau đó sẽ đi qua bộ so sánh, từ đây sẽ cho ra kết quả của
ADC. Tín hiệu ngõ ra sẽ được qua bộ DAC để hồi tiếp. ADC kiểu này sẽ cần thời gian
thời gian để tính toán chuyển đổi. Độ phân giải càng cao thì độ trễ càng lớn.
Tín hiệu tham chiếu
Để tính được hiệu điện thế của hai cực, cần có một cực làm điện thế tham chiếu.
Hình 2.7 là sơ đồi khối tham chiếu trong ADS1292R. ADS1292R sử dụng một mạch
bandgap. Mạch này tạo điện áp không đổi bất kể sự thay đổi của nguồn điện, nhiệt độ
và tải mạch. Điện áp này được khuyến nghị là 2.42V cho điện áp hoạt động là 3V và
4.033V cho điện áp hoạt động là 5V. Điện áp này được đưa vào bộ đệm tham chiếu để
tạo điện áp ngõ ra thích hợp. Điện áp ngõ ra được đưa tới ngõ vào của khối ADC nhằm
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 22/83
số hoá tín hiệu.
Hình 2.7: Sơ đồ khối tham chiếu
Giao tiếp dữ liệu số
Dữ liệu sau khi được chuyển đổi sang số sẽ thông qua giao thức truyền thông
chuyển đến bộ vi điều khiển. Mỗi loại Vi điều khiển đều có điện áp mức logic khác
nhau, điện áp mức logic truyền dữ liệu của ADS1292R phải được chuyển đổi phù hợp
với bộ vi điều khiển. Để thực hiện được điều đó, hệ thống sử dụng IC IY08 của Texas
Instrument như hình 2.8.
Hình 2.8: IC chuyển đổi mức logic
Điện áp hoạt động của IC ADS1292R là từ 2.7-5.25V và thông thường là 3.3V.
Điện áp mức logic của vi điều khiển sẽ được mắc vào VCCB của IC. Từ đó điện áp mức
logic sẽ được chuyển đổi phù hợp từ Port A sang Port B của IC.
Sơ đồ mạch thu tín hiệu hoàn thiện.
Mạch lấy tín hiệu điện tim sẽ được xây dựng dựa trên IC ADS1292R. Hình 2.9
là sơ đồ toàn mạch cảm biến. Trong đó các chân tín hiệu PWDN/RESET, START,
DRDY và các chân giao tiếp SPI (3) được kết hợp với port A của IC chuyển đổi điện áp
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 23/83
mức logic TXB0108. Điện cực được gắn ở kênh 2 là các chân IN2N và IN2P (1). Tụ
điện 47nF được sử dụng để ổn định tín hiệu cho PGA hai kênh. Điện áp tham chiếu được
nối tới chân RLDREF (2) thông qua hai điện trở bảo vệ 100 kOhm. Các tụ điện 100nF,
10nF, 1uF được sử dụng để ổn định nguồn, ổn định các chân tham chiếu được thiết kế
theo khuyến cáo của nhà sản xuất.
Hình 2.9: Sơ đồ mạch tín hiệu ECG
Để dễ dàng thực hiện kết nối và vẽ mạch in. Mạch thu tín hiệu ECG được gom
thành một module. Trên hình 2.10 là module ADS1292R. Trên module này, IC cảm
biến điện tim (1) là thành phần chính quan trọng nhất, nó chính là IC ADS1292R đã nói
ở trên. (2) là IC chuyển đổi điện áp mức logic. Nó chuyển đổi điện áp từ IC ADS1292R
sang các chân giao tiếp (3) sao cho phù hợp với vi điều khiển. (4) là các jack kết nối
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 24/83
3.5mm để kết nối các điện cực gắn từ cơ thể người vào hệ thống.
Hình 2.10: Module điện tim ADS1292R
b. Khối xử lý
Khối xử lý nhận tín hiệu từ khối cảm biến để tiến hành xử lý tín hiệu. Mục đích của
hệ thống là thu thập tín hiệu điện tim và gửi qua điện thoại thông qua Wireless. Cấu tạo
gọn nhẹ và đáp ứng đủ nhu cầu về tốc độ xử lý, ESP8266 EX là một lựa chọn phù hợp.
Trên hình 2.11 là vi điều khiển ESP8266EX và kit phát triển của nó có tên là Node
MCU esp8266.
Hình 2.11: Vi điều khiển ESP8266EX
Trong hệ thống này, Node MCU được sử dụng các chức năng như SPI giao tiếp
với ADS1292R để lấy chuỗi dữ liệu số tín hiệu điện tim. Giao tiếp I2C được sử dụng
với chức năng hiển thị trên màn hình OLED các thông số cần thiết. Và quan trọng nhất
chính là sử dụng server để gửi dữ liệu lên điện thoại android.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 25/83
Các chức năng cơ bản: Clock, GPIO, memory, registor
Hình 2.12: Sơ đồ khối ESP8266EX
ESP8266 có cấu trúc cơ bản như mọi vi xử lý khác. Vi điều khiển này tích hợp
bộ vi xử lý Tensilica L106 kiến trúc RISC 32bit. Vi điều khiển này có thể chạy với năng
lượng thấp với tốc độ có thể lên đến 160Mhz. Hệ điều hành RTOS và ngăn xếp wifi cho
phép 80% khả năng xử lý có sẵn để lập trình ứng dụng. Hình 2.12 là biểu thị cho sơ đồ
chức năng của ESP8266. Trong sơ đồ này có thể thấy vi điều khiển một phần xử lý
wireless riêng biệt song song với bộ xử lý chính. Điều này giúp cho tốc độ xử lý dữ liệu
không bị ảnh hưởng bởi tốc độ truyền tải dữ liệu.
ESP8266EX Wi-Fi SoC tích hợp bộ điều khiển bộ nhớ và các đơn vị bộ nhớ gồm
có SRAM (bộ nhớ truy xuất ngẫu nhiên tĩnh) và ROM. MCU có thể truy cập các bộ nhớ
này thông qua bộ “trọng tài” để quyết định cái nào trước cái nào sau. Bộ nhớ Ram truy
cập cho phép là <50 kB. Tuy nhiên không có ROM programable trong SoC, do đó
chương trình phải được lưu trên bộ nhớ flash ngoài thông qua SPI. Bộ nhớ hỗ trợ tối đa
có thể lên đến 16MB, và vùng nhớ OTA (over-the-air) cho phép phải lớn hơn 1MB.
NODE MCU được thiết kế để sử dụng tần số cao. Có thể lựa chọn tần số là 80Mhz hoặc
tốc độ cao 160 Mhz.
ESP8266 có 17 chân GPIO. Các chân này có thể được gán các chức năng khác
nhau dựa trên lập trình các thanh ghi tương ứng phù hợp. Mỗi GPIO PAD có thể cấu
hình điện trở trong pull-up hoặc pull-down hoặc được cài đặt ở chế độ trở kháng Z cao.
Khi được cấu hình làm đầu vào, dữ liệu được lưu trữ trong các thanh ghi phần mềm; đầu
vào cũng có thể được đặt thành ngắt CPU kích hoạt cạnh hoặc kích hoạt mức. Các chân
này được đặt là hai chiều, không đảo và 3 trạng thái. Các chân này có thể ghép với chức
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 26/83
năng khác như SPI, I2C, UART, PWM.
Hình 2.13: Sơ đồ mạch chân reset ESP8266
Mỗi lần nạp dữ liệu, khởi động lại hoặc wake-up ta cần có chân Reset. Trong
hình 2.13 là chân Reset của mạch được gắn vào GPIO 16. Bình thường chân này sẽ
được kéo lên mức cao do hở mạch, khi có nút nhấn sẽ được kéo xuống mức thấp. Lúc
này dòng trong mạch sẽ là Iled được tính như công thức (2.6).
(2.6)
Trong đó Vcc =3.3V, Vled = 2 V, R = 470+470 Ohm. Giá trị Iled = 1 mA.
SPI giao tiếp với ADS1292R và Oled SSD1306
ESP8266EX có hai SPI.
o Một Slave / Master SPI chung
o Một Slave HSPI chung
Chức năng của tất cả các chân này có thể được thực hiện thông qua phần cứng.
Hệ thống sẽ sử dụng chân D0, D3, D4 và các chân SCK, MISO, MOSI, CS để hoạt động
với chức năng SPI giao tiếp với ADS1292R. Các chân GPIO tương ứng với START,
DRDY, PWDN/RESET có chức năng hỗ trợ trong việc lấy dữ liệu từ cảm biến. Chức
năng của các chân được mô tả của bảng 2.1 dưới đây.
Bảng 2.1: Các chân chức năng sử dụng giao tiếp SPI
Chân Chức năng
SCK Truyền xung clock để giao tiếp
MISO Đường dữ liệu truyền từ Slave đến Master
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 27/83
MOSI Đường dữ liệu truyền từ Master đến Slaver
CS Chip Select
START Nhận tín hiệu bắt đầu từ ADS1292R
PWDN/RESET Điều khiển Power down/ reset ADS1292R
DRDY Nhận tín hiệu sẵn sàng từ ADS1292R
Tín hiệu clock chính là cơ sở cho truyền dữ liệu số. Clock sử dụng có tần số f =
2.048 MHz. Chân CS được sử dụng khi có nhiều cảm biến kết nối. Chân START nhận
tín hiệu khai báo từ cảm biến. Nếu có sự kiện trao đổi dữ liệu chân DRDY sẽ thay đổi
trạng thái và dữ liệu được truyền qua chân MISO, MOSI.
SPI giao tiếp với OLED
Oled trong hệ thống này sử dụng IC điều khiển là SSD1306. IC này hoạt động
giao tiếp với vi điều khiển ở nhiều chế độ như: Parallel 6800, Parallel 8080, SPI, I2C.
Đối với Oled, chức năng sử dụng chủ yếu là nhận dữ liệu về và hiển thị. Để việc
xử lý không bị trì hoãn, giao tiếp với Oled sẽ sử dụng giao thức SPI. SPI giao tiếp với
SSD1306 sẽ chỉ sử dụng SCK và MOSI. Các chân chức năng hỗ trợ là D1,D2 nối với
D/C và CS của SSD1306. Các chân này hỗ trợ chọn chip và giao tiếp với Oled và thể
hiện ở bảng 2.2 dưới đây.
Bảng 2.2: Các chân chức năng của Oled SSD1306
Chức năng Chân
SCK Truyền xung clock để giao tiếp
MOSI Đường dữ liệu truyền từ Master đến Slaver
Chip Select, chọn khi có nhiều thiết bị chung 1 giao
CS thức SPI
D/C Điều khiển ghi dữ liệu/lệnh vào bộ nhớ của oled
RES Dùng để reset lại oled
Wireless giao tiếp với điện thoại
ESP8266 thực hiện TCP/IP với giao thức WLAN MAC b/g/n đầy đủ. Nó hỗ trợ
hoạt động STA và SorfAP cài đặt dịch vụ cơ bản BSS (Basic service set) trong chức
năng điều khiển phân tán DCF (Distributed Control Function). ESP8266 hỗ trợ tần số
và băng tầng cơ sở như sau:
o 802.11 b và 802.11 g
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 28/83
o MCS0-7 802.11 n trong băng thông 20 MHz
o Khoảng bảo vệ 802.11 n là 0.4μs
o Tốc độ dữ liệu lên tới 72,2 Mb / giây
o Nhận STBC 2 x 1
o Công suất truyền lên tới 20,5 dBm
o Công suất truyền có thể điều chỉnh
c. Khối hiển thị
Mục đích của tất cả các hệ thống là cung cấp thông tin cho người sử dụng. Người
dùng sẽ nhận thông tin đó thông qua khối hiển thị của hệ thống. Trong hệ thống này,
khối hiển thị sẽ là một màng hình oled 0.96 inch và điện thoại thông minh sử dụng hệ
điều hành android. Điện thoại thông minh sẽ được cài đặt ứng dụng được xây dựng trên
MIT app inventor.
Hình 2.14: Sơ đồ khối SSD1306
Trái tim của oled 0.91 inch 128x64 này là ic SSD1306. Hình 2.14 là sơ đồ khối
của IC này. Các khối chức năng là: Khối giao tiếp MCU, khối GDDRAM, khối Display
controller, khối Command Decoder, khối Oscillator, khối Control Power và cuối cùng
là khối Driver.
Khối Oscillator là khối cấp xung cho toàn IC hoạt động với mạch RC công suất
thấp. Có thể lựa chọn bộ dao động bên trong hoặc dao động bên ngoài thông qua chân
CLS. Khi CLS được kéo lên mức High, bộ dao động bên trong được chọn, lúc này chân
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 29/83
CL mở và không kết nối. Khi CLS kéo xuống mức Low, bộ dao động ngoài được kích
hoạt và chân CL được nối với bộ tạo xung ngoài. Có thể thay đổi được tần số xung bộ
dao động bên trong bằng bộ chia. Bộ chia này có thể thay đổi được từ 1-16 bằng lệnh
D5h. Tần số quét khung của hệ thống cũng được xác định theo công thức (2.7). Trong
đó Fosc là tần số của bộ tạo xung, D là hệ số bộ chia trước, K là số lượng clock để hiển
thị trên mỗi hàng, No.of Mux là số lượng tỉ lệ ghép kênh.
(2.7)
Khối giao tiếp MCU là khối cho phép lựa chọn kiểu giao tiếp với vi điểu khiển
hoặc các thiết bị khác để trao đổi dữ liệu. SSD1306 bao gồm 8 chân dữ liệu và 5 chân
điều khiển. Chọn chế độ làm việc của MCU bằng cách đặt phần cứng các chân BS[2:0].
Các chế độ có thể được chọn là: MCU Parallel 6800- series, MCU Parallel 8080- series,
MCU Serial Interface (3 wire or 4 wire), IIC. Hệ thống này sử dụng chế độ SPI để hoạt
động
Khối Command decoder là khối có chức năng xác định và giải mã đầu vào. Chân
D/C# sẽ xác định xem đầu vào sẽ là dữ liệu hiển thị hay là lệnh điều khiển. Nếu chân
D/C# ở mức cao, dữ liệu đầu vào các chân D[7:0] sẽ được hiểu là dữ liệu hiển thị và
được ghi vào GDDRAM. Nếu chân D/C# ở mức thấp, dữ liệu vào các chân D[7:0] sẽ
được hiểu là một lệnh, chúng sẽ được giải mã và ghi vào các thanh ghi lệnh tương ứng.
GDDRAM là một ram tĩnh được ánh xạ bit giữ cho các bit mẫu được hiển thị.
Dữ liệu được đưa tới Display controler và kết hợp với phần Curent/Voltage controler để
điều khiển Seg/Com driver. Segment driver sẽ cung cấp 128 nguồn dòng để điều khiển
tấm oled. Dòng điều khiển được điều chỉnh từ 0-100uA với 256 bước. Còn Common
driver sẽ tạo ra các xung quét điện áp. Từ đó tạo thông tin được hiển thị lên màn hình.
Giao tiếp SPI với SSD1306, dữ liệu ra từ MOSI được truyền tới chân SDIN. Dữ
liệu này có chiều dài 8bit được dịch chuyển vào thanh ghi sau mỗi lần xung clock chuyển
trạng thái từ LOW sang HIGH nhờ vào các chân D7, D6, D5…D0 của SSD1306. Chân
D/C sẽ được kiểm tra sau mỗi 8 xung CLK. Sau khi kiểm tra, dữ liệu truyền đến sẽ được
chọn ghi vào bộ nhớ dữ liệu hoặc thanh ghi lệnh.
Hình 2.15 thể hiện cách dữ liệu di chuyển vào bộ nhớ. Chân CS phải xuống LOW
để chọn SSD1306 nhận dữ liệu. Chân D/C sẽ chuyển trạng thái tuỳ theo mục đích là ghi
dữ liệu hoặc ghi lệnh. Sau mỗi cạnh lên của CLK, dữ liệu sẽ được chuyển vào các chân
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 30/83
D7, D6, …, D0 và từ đó được chuyển vào bộ nhớ.
Hình 2.15: Sơ đồ ghi dữ liệu vào SSD1306
d. Thiết kế khối nguồn
Để một hệ thống hoạt động, ta cần cung cấp năng lượng cho nó. Động cơ đốt thì cần
nhiên liệu đốt, hệ thống điện tử thì cần năng lượng điện. Trong hệ thống này có các
thành phần cần nguồn như: ADS1292, Node MCU, Buzzer. Để tính công suất của
nguồn, ta tính công suất P của các mạch thành phần với công thức (2.8). Trong đó U
(V) là hiệu điện thế hoạt động, I (A) là dòng hoạt động.
(w) (2.8)
Khối cảm biến
Ic ADS1292R trong hệ thống này được chọn hoạt động ở với điện áp U = 3V.
Dòng hoạt động bình thường I= 205uA. Theo công thức (2.8) ta tính được P1=615 uW.
Chế độ trên chưa bao gồm năng lượng tiêu thụ bộ khuyếch đại PGA và bộ tạo
xung clock bên trong. PGA hoạt động cung điện áp U=3 V, I = 5 uA, theo công thức
(2.8) ta tính được P2= 15 uW. Bộ tạo dao động bên trong có công suất P3= 30uW do tài
liệu nhà sản xuất cung cấp.
Gọi P4 là tổng công suất hoạt động ở chế độ thông thường. Theo công thức (2.9),
P4= 615+ 15+ 30 = 660 uW. Công suất tiêu thụ cực đại được nhà sản xuất đưa ra là
P’4=740 uW.
(2.9)
IC YE08 có nhiệm vụ chuyển đổi mức logic. Port A hoạt động ở điện áp 3V, port
B hoạt động ở điện áp 3.3V. Ở điều kiện thường, port A sử dụng I = 0.06 uA, port B
dùng I= 4 uA lớn hơn rất nhiều so với port A. Do đó để dễ tính toán công suất, nhà sản
xuất đưa ra cách xem như điện áp IC U = 3.3V và dòng I= 5 uA. Từ đó công suất được
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 31/83
tính theo công thức (2.8) là P5 = 16.5 uW. Công suất tiêu thụ cực đại P’5 = 33 uW.
Gọi Pa là tổng công suất trung bình mạch cảm biến hoạt động ở chế độ thường,
P’a là công suất tiêu thụ cực đại. Theo công thức (2.9), Pa= P4+P5= 676.5 uW, P’a =
P’4+P’5 = 773 uW.
Khối vi điều khiển
Khối vi điều khiển hoạt động gồm các phần: xử lý, truyền dữ liệu không dây,
giao tiếp với các khối khác.
Chế độ truyền dữ liệu không dây (Active mode), ESP8266 hoạt động chuẩn
802.11 b/g/n. Năng lượng tiêu thụ ở chế độ này được đo đạt ở điện áp thông thường 3V.
Dòng tiêu thụ được liệt kê ở bảng 3.3 cho thấy khi hoạt động ở chuẩn 802.11 b, dòng
điện tiêu thụ cho phát dữ liệu là 170 mA, dòng điện tiêu thụ cho nhận dữ liệu là 50 mA.
Chuẩn 802.11 n sử dụng dòng phát thấp nhất là 120 mA và dòng cho nhận dữ liệu là 56
mA. Vì mỗi lần hoạt động chỉ sử dụng một trong 3 chuẩn và khi sử dụng chuẩn đó thì
trong mỗi thời điểm nhất định chỉ sử dụng truyền hoặc nhận dữ liệu. Do đó để đảm bảo
hoạt động truyền nhận dữ liệu, công suất tiêu thụ ở chế độ này (khi i=170 mA) nhận giá
trị P6= 510 mW.
Bảng 2.3: Dòng tiêu thụ ở mỗi chế độ truyền nhận dữ liệu
Parameters Typical Unit
TX8002.11 b, CCK 11Mbps, Pout = +17 dBm 170 mA
TX8002.11 g, OFDM 54Mbps, Pout = +15 dBm 140 mA
TX8002.11 n, MCS7, Pout = +13 dBm 120 mA
RX8002.11 b, 1024 bytes packet length, -80 dBm 50 mA
RX8002.11 g, 1024 bytes packet length, -70 dBm 56 mA
RX8002.11 n, 1024 bytes packet length, -65 dBm 56 mA
ESP8266 thực hiện xử lý dữ liệu ở chế độ Modem-sleep mode. Ở chế độ này,
dòng sử dụng I=15 mA, điện áp hoạt động U = 3.3 V. Công suất tiêu thụ P7 được tính
theo công thức (2.8) và kết quả là P7 = 49.5 mW.
Các giao tiếp với ngoại vi sử dụng qua các chân I/O. Hệ thống này sử dụng hai
giao tiếp là SPI và IIC. SPI sử dụng 4 chân I/O, IIC sử dụng 2 chân I/O làm chức năng
giao tiếp. Ngoài ra để phù hợp với truyền nhận dữ liệu, hệ thống còn sử dụng 3 chân I/O
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 32/83
để điều khiển giao tiếp SPI trên cảm biến. Năng lượng của 9 chân I/O này được tính ở
U=3.3V và I=12 mA (nhà sản xuất cung cấp số liệu lúc hoạt động cực đại) P8 = 356.4
mW.
Gọi Pb, P’b lần lượt là công suất trung bình và công suất cực đại. Theo số dữ liệu
của thiết bị I=80 mA, công suất trung bình có giá trị Pb = 264 mW. Công suất cực đại
khi ở Active mode và các chân I/O hoạt động cực đại theo công thức (2.9) là P’b =
P6+P7+P8 = 915.9 mW.
Khối hiển thị
Đảm nhận điều khiển khối hiển thị là IC SSD1306. Bảng 2.4 là bảng liệt kê đặc
tính điện của IC này. Trong bảng này cần quan tâm đến điện áp hoạt động Vcc và điện
áp cung cấp logic Vdd. Dòng cung cấp tại Vcc=12 V là Icc và dòng cung cấp tại Vdd =
2.8 là Idd.
Test Condition Min Typ Max Unit 7 15 V - Bảng 2.4: Đặc tính điện của SSD1306 Symbol Parameter VCC
1.65 - 3.3 V VDD -
- V - VOH 0.9 x VDD
- - V VOL 0.1 x VDD IOUT = 100uA, 3.3MHz IOUT = 100uA, 3.3MHz
- V - VIH - 0.8 x VDD
- - V VIL - 0.2 x VDD Operating Voltage - Logic Supply Voltage High Logic Output Level Low Logic Output Level High Logic Input Level Low Logic Input Level
- - 10 uA ICC, SLEEP ICC, Sleep mode Current
- - 10 uA IDD, SLEEP IDD, Sleep mode Current
VDD = 1.65V~3.3V, VCC = 7V~15V Display OFF, No panel attached VDD = 1.65V~3.3V, VCC = 7V~15V Display OFF, No panel attached
ICC - 430 780 uA Contrast = FFh
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 33/83
VCC Supply Current VDD = 2.8V, VCC = 12V, IREF = 12.5uA No loading, Display ON, All ON
IDD - 50 150 uA
VDD Supply Current VDD = 2.8V, VCC = 12V, IREF = 12.5uA No loading, Display ON, All ON
Công suất trung bình và công suất cực đại nguồn Vcc là P9 và P’9. Dòng trung
bình Icc = 430 uA và dòng cực đại I’cc = 780 uA. Từ công thức (2.8) ta tính được giá
trị của P9 = 5.16 mW và P9 = 9.36 mW. Công suất trung bình và công suất cực đại
nguồn Vdd là P10 và P’10. Dòng trung bình Idd = 50 uA và dòng cực đại I’dd = 150
uA. Từ công thức (2.8) ta tính được giá trị của P10 = 0.6 mW và P’10 = 1.8 mW.
Gọi Pc và P’c là lần lượt là công suất trung bình và công suất cực đại của
SSD1306. Theo công thức (2.9), Pc = P9 + P10 = 6.2 mW, P’c = P’9 + P’10 = 11.16
mW.
Tính tổng công suất và chọn nguồn
Công suất của hệ thống chính là tổng công suất của các thành phần. Tổng công
suất trung bình là Pd và tổng công suất cực đại là P’d. Pd = Pa+Pb+Pc = 270.9 mW. P’d
= P’a+P’b+P’c = 928.3 mW. Vậy để hệ thống hoạt động, nguồn được chọn có công suất
cực đại tức thời không nhỏ hơn 928.3 mW.
Hệ thống là thiết bị đeo nên sử dụng Pin, và Pin này có điện áp là Us = 3.7 V.
Dòng xả của Pin được xác định theo công thức (2.10). Trong đó P là công suất cực đại
tức thời, U là hiệu điện thế hoạt động của Pin. Từ công thức (2.10) ta xác định được I
= 250.9 mA. Để cung cấp đủ năng lượng cho hệ thống hoạt động ngay cả khi công suất
hoạt động cao nhất, dòng xả tối đa của Pin phải lớn hơn 250.9 mA.
(2.10)
C-rate chính là đại lượng biểu thị cho tốc độ sạc và xả của Pin tương ứng với
dụng lượng. 1C của Pin dung lượng 1000 mAh tương ứng với dòng xả 1000 mA. Với
dung lượng đó nhưng 0.5C sẽ cho ra dòng xả 500 mA. Chọn Pin sạc LiPo 2000 mAh có
dòng xả tối đa 1C, dòng xả tương ứng là 2000 mA, đáp ứng tốt yêu cầu dòng xả tối đa
của hệ thống.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 34/83
(2.11)
Năng lượng tiêu thụ trung bình của hệ thống được tính theo công thức (2.11).
Năng lượng của Pin là Qs = U*I*t = 7400 mWh. Hệ thống có Pd = 270.9 mW và P’d =
928.3 mW. Do đó, thời gian sử dụng thông thường là t1 ≈ 27 giờ và thời gian sử dụng
ít nhất là t2 ≈ 7 giờ.
Để nạp năng lượng cho Pin, hệ thống sẽ dùng một mạch sạc. Pin của hệ thống có
tốc độ dòng sạc tối đa 1C. Điện áp sạc Pin LiPo không quá 4.2V. Do đó mạch sạc cũng
phải có tốc độ sạc và điện áp sạc tương ứng. Hình 2.16 là IC TP4056. IC này có tốc độ
dòng sạc tối đa 1C và tự ngắt khi dòng sạc dưới 1/10C. Dải điện áp sạc từ 2.9 – 4.2V,
điện áp hoạt động là 5V.
Hình 2.16: IC TP4056
Tuy nhiên, Pin Lipo là một loại Pin dễ hỏng nếu bị sạc điện áp quá cao, xả dòng
cao hoặc điện áp hai cực dưới 2.4V. Do đó cần phải có cơ chế bảo vệ quản lý sạc và xả.
IC DW01A kết hợp với mosfest FS8205A sẽ được áp dụng với chức năng này.
Hình 2.17 là sơ đồ mạch ứng dụng và mặt trên của mạch sạc dùng TP4056. Có
hai led đỏ và led xanh để biểu thị trạng thái hoạt động của mạch. Mạch có điện trở Rprog
để thay đổi tốc độ sạc. Điện trở này có giá trị tương ứng với dòng sạc được liệt kê ở
bảng 2.5
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 35/83
Hình 2.17: Mạch ứng dụng TP4056
Khi có cắm nguồn sạc, TP4056 cấp năng lượng. Hiệu điện thế giữa chân Bat và
GND là khoảng 4.2V. Ở điều kiện thường, DW01A nhận biết có nguồn sạc ở chân CS.
Điều khiển cho OC và OD ở mức cao và xạc, xả Pin bình thường. Dòng sạc sẽ đi qua
MOSFET OC và diode kí sinh của OD, dòng xả sẽ đi qua MOSFET OD và diode kí sinh
OC. Lúc điện áp sạc quá cao, chân điều khiển sạc xuống mức LOW, lúc này sẽ ngắt sạc
cho Pin. Lúc dòng xả cao hoặc điện áp Pin thấp hơn 2.4V, chân điều khiển xả OD sẽ
xuống LOW và không cho phép xả pin, ngắt pin tạm thời.
Bảng 2.5: Bảng liên hệ dòng sạc và điện trở
Rprog (k) 10 5 4 3 2 1.6 1.5 1.33 1.2
Ibat (mA) 130 250 300 400 580 690 780 900 1000
Ngoài ra, để bảo vệ Pin và thiết bị hoạt động tốt hơn, trên mạch ứng dụng còn có
NTC và cầu phân áp hai điện trở R1, R2. Khi nhiệt độ lên quá cao hoặc xuống quá thấp
thì đèn sẽ báo và tự động ngắt sạc. Tuy nhiên vì để tiết kiệm chi phí và làm hệ thống
đơn giản hơn, phần này không cần sử dụng.
Hình 2.18: Module nguồn có báo vệ Pin
Mạch nguồn này sẽ được kết hợp thành một module. Module này có hình như
hình 2.18. Module này xây dựng các ngõ vào, ngõ ra, kết nối với Pin ở các vị trí hợp lý.
Ngoài ra còn sử dụng cổng Micro usb để lấy năng lượng sạc.
e. Thiết kế bộ lọc tín hiệu số
Tín hiệu điện tim mới vừa thu được thường không đạt chất lượng mong muốn vì có
nhiễu làm ảnh hưởng. Nhiễu tín hiệu thường gặp là nhiễu cao tần và nhiễu DC.
Bộ lọc thông thấp để xử lý nhiễu cao tần. Tín hiệu điện tim đo ở ba đạo trình bằng
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 36/83
ba cực có thông tin cần thiết trong khoảng tần số nhỏ hơn = 40Hz. Tần số lấy mẫu
điện tim = 125 Hz. Trong hệ thống này, bộ lọc thông thấp FIR được thiết kế bằng
phương pháp cửa sổ (phân tích Fourier).
Đáp ứng ngõ ra của bộ lọc có dạng như phương trình (2.12) với hàm truyền
ở phương trình (2.13).
(2.12)
(2.13)
Trong đó là hàm cửa sổ chiều dài K-1 với ; có dạng như
công thức (2.15).
Chọn cửa sổ phù hợp phải nhờ vào độ suy hao dải chặn. Bằng phương pháp tham
khảo tài liệu, chọn cửa sổ Hamming với như công thức (2.14).
(2.14)
(2.15)
(2.16)
(2.17)
Tìm bậc K của bộ lọc bằng công thức (2.16). là độ rộng dải chuyển tiếp của
bộ lọc. Bằng phương pháp thực nghiệm, chọn tương ứng = 2.6 Hz. Từ công
thức (2.16) và công thức (2.17), K 161. Thay = 125 Hz, = 40Hz, K 161 vào
công thức (2.13), sử dụng Matlab để cho ra kết quả các hệ số của bộ lọc thông thấp.
Thành phần DC được loại bỏ bằng bộ lọc Cascaded integrator–comb filter (CIC
as a moving average filter). Bộ lọc này sẽ di chuyển tín hiệu có đường cơ sở bị dịch
chuyển trở về mức 0v. Đáp ứng ngõ ra của bộ lọc CIC được thể hiện ở công thức
(2.18). Hàm truyền của bộ lọc trên miền Z có dạng phương trình (2.19).
(2.18)
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 37/83
(2.19)
Bộ lọc CIC này có D là độ trễ vi sai. Tham khảo các các nghiên cứu khoa học, chọn
D=5 là thích hợp trong hệ thống này.
Tính toán nhịp tim bằng phương pháp Đạo hàm bậc 1. Dữ liệu điện tim sau khi
được qua hai bộ lọc sẽ đưa vào quá trình tính toán. Tín hiệu qua các bước tính toán sau:
đạo hàm, lấy giá trị tuyệt đối, so sánh ngưỡng và cập nhật giá trị mới.
(2.20)
(2.21)
(2.22)
Đầu tiên, dữ liệu sẽ được tính đạo hàm bậc 1 theo công thức (2.20). Hai mẫu được
chọn là hai mẫu cách nhau hai khoảng . Phương pháp này gọi là central-difference.
Ngưỡng so sánh sẽ được tính bằng giá trị đạo hàm lớn nhất tính được ở công thức (2.21).
Nếu lần tính đạo hàm tiếp theo vượt ngưỡng M, sẽ được tính là một đỉnh, từ thời gian
giữa hai đỉnh liên tiếp, nhịp tim HR sẽ được tính theo công thức (2.22).
Tính sai số của hệ thống
Để đánh giá tính ổn định và chính xác của hệ thống thử nghiệm với tín hiệu thực
tế là điều cần thiết. Các đánh giá được đánh giá dựa trên các hình ảnh dạng sóng cũng
như các số liệu được thu thập và tính toán dựa trên các công thức (2.23), (2.24), (2.25).
Công thức tính giá trị trung bình:
(2.23)
Công thức tính phương sai:
(2.24)
Công thức tính độ lệch chuẩn:
(2.25)
Trong đó:
: giá trị trung bình của tập dữ liệu.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 38/83
: giá trị thứ i trong tập dữ liệu.
: tổng số giá trị có trong tập dữ liệu.
: Phương sai của tập dữ liệu.
: Độ lệch chuẩn của tập dữ liệu.
f. Thiết kế khối trực tuyến và lưu trữ
Một phần rất quan trọng trong hệ thống này là truyền dữ liệu không dây và lưu
trữ. Mọi thông tin cần phải được lưu trữ để có thể xem lại, đánh giá, kết luận sau này.
Khối trực tuyến gửi dữ liệu lên để xem thông tin trên ứng dụng điện thoại. Dữ liệu thu
được từ cảm biến có giá trị 24bit, sau khi qua các bộ lọc và tính toán nhịp tim sẽ được
giảm độ phân giải mẫu còn 16bit để dễ dàng truyền và lưu trữ. Dữ liệu gửi từ cảm biến
lên trên ứng dụng điện thoại sẽ theo từng gói. Độ dài mỗi khối là 32 mẫu điện tim và
một dữ liệu nhịp tim.
Truyền dữ liệu dựa trên bộ giao thức TCP/IP (Internet Protocol Suite). Bộ giao thức
này có tầng: Tầng ứng dụng - Application Layer, Tầng giao vận - Transport Layer, Tầng
mạng - Internet Layer, Tầng liên kết - Link Layer. Lúc này điện thoại và thiết bị thu dữ
liệu hoạt động chung mạng, gọi là Local network.
Tầng liên kết (Link Layer): cung cấp một giao tiếp với mạng vật lý, hệ thống
sử dụng wireless để truyền dữ liệu.
Tầng mạng: (Internet layer). Cung cấp chức năng địa chỉ luận lý, độc lập phần
cứng để dữ liệu có thể di chuyển giữa các mạng con có kiến trúc vật lý khác
nhau. Hệ thống sử dụng giao thức định tuyến liên mạng (Internet Protocol)
trong tầng này.
Tầng vận chuyển (Transport layer): Cung cấp chức năng điều khiển luồng,
kiểm soát lỗi và các dịch vụ báo nhận liên mạng. Tầng này có hai giao thức
chính là Transmission Control Protocol (TCP) và User Datagram Protocol
(UDP). TCP giao nhận dữ liệu đảm bảo được chất lượng gói tin nhưng tốn
thời gian, còn UDP thì ngược lại. Dữ liệu điện tim liên quan đến con người
nên việc vận chuyển dữ liệu phải được đảm bảo. Do đó chọn chọn giao thức
TCP hoạt động trong mô hình này. Mỗi gói tin giao thức TCP không quá
65535 byte.
Tầng ứng dụng (Application Layer): Cung cấp ứng dụng cho việc xử lý các
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 39/83
tập tin hoặc truyền dữ liệu. Tầng này hỗ trợ các giao thức như: FTP, TELNET,
SMTP, HTTP … Dữ liệu điện tim sẽ được tạo thành gói, và để dễ dàng truyền
nhận với phần cứng, hệ thống sử dụng HTTP để hoạt động.
Khối lưu trữ của hệ thống có thể truy cập được khắp mọi nơi. Các thông tin
được đóng gói bởi khối truyền thông và được gửi lên cơ sở dữ liệu (Database). Giúp
cho ứng dụng liên kết được với database, hệ thống sẽ dùng web.
Database được xây dựng trên Structured Query Language (SQL. Database trong
hệ thống này được xây dựng mô hình dữ liệu quan hệ. Hệ quản trị cơ sở dữ liệu
(Database Management System) này là MySQL. Có hai bảng được tạo là bảng đăng
nhập và bảng dữ liệu ECG. Truy vấn dữ liệu trong bảng đăng nhập để xác nhận quyền
được hoạt động. Truy vấn dữ liệu trong bảng dữ liệu ECG để lưu dữ liệu đo hoặc đọc
dữ liệu đo đã được ghi.
Web là công cụ trung gian giúp ứng dụng điện thoại liên kết và truy vấn dữ liệu từ
MySQL. Tương tác dụng điện thoại với Web bao gồm các hoạt động: gửi dữ liệu lên
(POST), lấy dữ liệu về (GET). Tương tác Web với MySQL gồm: kết nối MySQL, truy
vấn đọc-ghi dữ liệu từ MySQL. Web sẽ được lập trình bằng PHP.
Server cung cấp hai dịch vụ là Database server và Web server. Databaser server
dùng để lưu dữ liệu và Web server giúp điện thoại thông minh giao tiếp với Database
server.
2.2.3. Sơ đồ nguyên lý của toàn mạch
Từ những tính toán và thiết kế trên, sơ đồ nguyên lý toàn mạch được vẽ như hình
2.19. Trong đó, khối (1) là khối cảm biến, khối (2) là khối hiển thị, khối (3) là khối vi
điều khiển và khối (4) là khối nguồn.
Khối cảm biến (1) có IC chính là ADS1292R và IC chuyển đổi điện áp mức logic
để giao tiếp với vi điều khiển. Truyền dữ liệu với vi điều khiển thông qua giao thức SPI.
Giao thức này sử dụng các chân: MISO, MOSI, SCL, CS. Các chân START, DRDY,
PWDN/RESET là các chân chức năng để điều khiển IC và báo sự kiện truyền nhận dữ
liệu.
Khối hiển thị (2) hiển thị dữ liệu thu được và các thông tin cần thiết. IC SSD1306
đảm nhiệm nhận dữ liệu và hiển thị chúng trên Panel oled. Giao tiếp với vi điều khiển
thông qua giao thức SPI. Sử dụng các chân D/C và CS để chọn chế độ ghi dữ liệu/lệnh
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 40/83
và chọn ic giao tiếp.
Hình 2.19: Sơ đồ nguyên lý toàn mạch
Khối vi xử lý (3) là khối có vai trò tiếp nhận dữ liệu, xử lý dữ liệu và giao tiếp
với các ngoại vi khác. Giao thức SPI trên ESP8266 Node MCU sử dụng các chân D5,
D6, D7, D8 và các chân D0, D3, D4 tương ứng với các chân bên khối cảm biến. Giao
thức SPI trên Node MCU còn dùng kết hợp các chân D1, D2 để giao tiếp và điều khiển
khối hiển thị.
Khối (4) là khối nguồn, cung cấp năng lượng chính cho IC. Sử dụng nguồn sạc
với IC TP4056 có chức năng tự ngắt nếu dòng sạc thấp hoặc tự ngắt dòng xả khi điện
áp pin thấp. Pin lưu trữ năng lượng là loại LiPo có điện áp hoạt động bình thường là
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 41/83
3.7V và dung lượng 2000 mAh.
Chương 3. THI CÔNG HỆ THỐNG
3.1. GIỚI THIỆU
Hệ thống được thiết kế và tính toán phần cứng ở chương II được thi công. Mạch
chính bao gồm một tấm kim loại có các đường mạch thiết kế sẵn trên một diện tính giới
hạn để gắn linh kiện hoạt động thay vì nối dây. Các công đoạn thi công phần cứng bao
gồm: Thi công mạch chính, lắp ráp và kiểm tra. Hệ thống bao gồm mạch chính và các
ngoại vi khác kết nối với nhau để thực hiện nhiệm vụ đặt ra. Thi công hệ thống bao gồm:
đóng gói bộ điều kiển, thi công mô hình. Các phần thi công sẽ được mô tả chi tiết ở dưới
đây.
3.2. THI CÔNG HỆ THỐNG
3.2.1. Thi công bo mạch
Để thi công được mạch của hệ thống, cần thiết kế bản mạch in. Vì linh kiện và
mạch đơn giản nên hệ thống chỉ được thiết kế trên mạch một lớp. Hình 3.1 là hình thể
hiện sơ đồ mạch in được thiết kế trên phần mềm Altium.
Hình 3.1: Sơ đồ mạch in
Để trực quan hơn trong việc thi công, sơ đồ bố trí linh kiện được tạo ra. Nhìn vào
hình 3.2, dễ dàng thấy được bên trái là ESP8266 Node MCU. Bên phải góc dưới là
ADS1292R có ngõ vào là Jack cắm 3.5mm được quay ra mép phải để dễ dàng kết nối.
Bên phải góc trên là mạch sạc TP4056 với ngõ vào Micro USB hướng ra mép phải để
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 42/83
dễ dàng cắm nguồn lúc sạc.
Hình 3.2: Sơ đồ bố trí linh kiện
Từ những thiết kế ban đầu, có thể liệt kê được các linh kiện cần sử dụng trong
bảng 3.1 dưới đây.
Bảng 3.1: Danh sách các linh kiện
Stt Tên linh kiện Giá trị SL Chú thích
1 ESP8266 Node MCU 1A 1 Có tản nhiệt
2 ADS1292R 1.8 1 2-Channel 24-bit ADC
3 4.2V-1A TP4056 1 Có ic bảo khi sạc Pin
4 2.2-5.5VDC Oled 1 0.96 inch, SPI
5 Button 1 Nút nhấn Reset x
6 Switch 1 Nạp chương trình x
7 Contact 1 Tắt/mở thiết bị x
8 Battery 1 3.7V-2000mAh Cấp nguồn cho hệ thống
Kết nối với Contact, 9 3 x Bus cái, header 2 pin Button, Battery
1 Kết nối với Oled x 10 Bus cái, header 7 pin
1 Jack 3.5mm x Jack
3.2.2. Lắp ráp và kiểm tra
a. Tạo bản mạch in
Tạo được bản mạch in phải qua các bước: In mạch, chuyển mực in lên mạch, rửa
mạch, khoang lỗ gắn chân linh kiện.
Giấy in mạch là loại giấy bóng trơn và chịu nhiệt. Mực in cũng phải là loại mực
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 43/83
nhiệt để khi muốn chuyển mực qua board đồng sẽ sử dụng nhiệt độ cao. Tuỳ vào nhu
cầu sử dụng mà tấm này có 1 hoặc 2 mặt được phủ toàn bộ đồng. Mạch in trên giấy và
board đồng thể hiện ở hình 3.3.
Hình 3.3: Mạch in trên giấy
Tiếp theo, tiến hành chuyển mực in lên board đồng. Mục đích của việc này là che
đi những chỗ cần thiết để dung dịch không ăn mòn. Những chỗ này kết hợp với nhau
tạo ra những nơi dẫn điện - cách điện và trở thành một mạch liên kết các chân của linh
kiện với nhau. Để chuyển mực cần sử dụng nhiệt độ cao đặt vào giấy in. Mặt có mực
của giấy in tiếp xúc với board đồng. Lúc này dưới tác dụng của của nhiệt như hình 3.4
(a), mực in nóng chảy và khi nguội sẽ bám vào mặt có đồng của board như hình 3.4 (b).
Hình 3.4: Tác dụng nhiệt lên boar đồng và giấy in
Sau khi che đi những chỗ cần thiết bằng mực, tiến hành công đoạn ăn mòn. Dung
dịch ăn mòn là dung dịch Sắt (III) Clorua. Dung dịch này phản ứng với đồng không
được che lại trong board tạo ra Đồng Clorua và Sắt (II) Clorua. Cả 2 chất này đều tan
trong dung dịch. Sau đó tiến hành khoan lỗ đặt sẵn để cắm chân linh kiện. Mũi khoan
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 44/83
dùng cho lỗ có đường kính là 0.1 mm. Sau khi khoan mạch có hình dạng như hình 3.5.
Hình 3.5: Board đã ăn mòn và khoan lỗ chân linh kiện
Công việc tiếp theo là lắp ráp và hàn các linh kiện lên Board để tạo mối liên kết
về cơ học.
b. Lắp ráp Node MCU, ADS1292R và mạch nguồn TP4056
Hình 3.6: Lắp ráp ADS1292R và TP4056
Đặt ESP8266 NODE MCU lên Board theo sơ đồ bố trí linh kiện. MCU có 30 Pin
được chia đều làm hai hàng. Mỗi hàng chân có khoảng cách giữa các chân là 0.1 inch
(2.54mm).
Tương tự cách lắp ráp MCU, ADS1292R và mạch nguồn TP4056 cũng được hàn
vào board mạch. ADS1292R có 12 Pin chung một hàng. Khoảng cách giữa các chân
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 45/83
cũng là 0.1 inch. TP4056 có 4 Pin, 2 Pin để kết nối với Batery, 2 Pin còn lại kết nối với
board. Sau khi lắp ráp và hàn tất cae các linh kiện thì board mạch được thể hiện ở hình
3.6.
c. Lắp ráp các jack nối chức năng
Sau khi hoàn thiện lắp các module trên board, hệ thống được lắp các jack nối và
liên kết tới các linh kiện rời. Các kết nối đó như Pin (3), Button (1), Contact (4) , Oled
(2) như hình 3.7 (a) và kết quả sau khi kết nối các linh kiện rời với mạch chính như
hình 3.7 (c). Sau khi hoàn thiện ta được mặt trên của board như hình 3.7 (d) và mặt
dưới của board như hình 3.7 (b).
Lắp ráp xong tiến hành dùng VOM để kiểm tra.
Hình 3.7: Mặt trên và dưới board mạch
3.3. ĐÓNG GÓI BỘ ĐIỀU KHIỂN
Phần mạch điện sau khi thi công sẽ được đóng gói. Tuỳ vào mục đích sử dụng cho
mỗi hệ thống sẽ có mỗi thiết kế khác nhau. Yêu cầu của hệ thống là gọn nhẹ, có thể
mang theo được trên người. Do đó hệ thống sẽ được thiết kế sao cho tiện lợi cho mục
đích này nhất.
Đầu tiên phải xác định được các thành phần để đóng gói. Các thành phần đó là:
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 46/83
Board mạch chính, Pin, Oled, Contact-Button. Trong đó thành phần có kích thước lớn
nhất về chiều dài và chiều rộng là Board mạch chính. Các Jack cắm và kết nối cũng nằm
trên board này. Do đó cấu trúc chính của hộp chứa sẽ dựa trên board mạch chính.
Pin là thành phần quan trọng cung cấp năng lượng cho hệ thống hoạt động. Trong
phần thiết kế tính toán khối nguồn, Pin được thiết kế có khả năng hoạt động lên tới hàng
chục giờ và có khả năng sạc được. Thành phần chính của Pin là hoá chất, trong lúc hoạt
động vẫn có khả năng cháy nổ. Do đó Pin sẽ nằm ở vị trí dưới đáy hộp, có thanh kẹp cố
định.
Mạch chính có kích thước là 58 mm x 68 mm. Trên mạch có các các kết nối như:
kết nối nguồn-Micro Usb, kết nối điện cực – 3.5 mm. Ngoài ra trên mạch còn thiết kế
các lỗ ở vị trí góc để liên kết với hộp. Do đó thiết kế hộp sẽ có kích thước bên trong là
60 mm x 70 mm. Có các trụ để liên kết với hộp. Tại các vị trí tiếp xúc với cổng kết nối
của board mạch chính sẽ có các lỗ thông để thực hiện chức năng khi cần.
Oled, button, contact sẽ là những thành phần tương tác trực tiếp. Những thành phần
này sẽ được gắn lên trên thành của hộp. Oled có được thiết kế sẵn là có 4 lỗ ở góc, do
đó sẽ có các vít cố định lên thành hộp. Thân của button có ren và đai ốc cố định nên chỉ
cần thiết kế lỗ thông phù hợp với đường kính ren là có thể cố định. Contact có mỗi lẫy
gài ở mỗi cạnh bên, do đó sẽ thiết kế lỗ thông vừa hai lẫy đó.
Hình 3.8: Thiết kế hộp đựng
Từ những chi tiết ở trên, hộp đựng được thiết kế như bản vẽ hình 3.8. Trên bản vẽ
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 47/83
này có ba hình chiếu: Front, Top, Right side view. Ở Front view, mô hình được chiếu từ
trên xuống cho thấy được đáy hộp, trụ cố định mạch và Pin. Front view thể hiện màng
hình ở mặt trước và nơi cố định nắp hộp. Right side view cho thấy nơi cắm sạc pin,
button, contact và lỗ cắm kết nối điện cực.
Mô phỏng lại liên kết các thành phần được thể hiện ở hình 3.9. Dưới đáy hộp (1)
có gắn Pin và lẫy cố định Pin. Nắp hộp (2) được cố định ở phía trên. Mặt trước (3) sẽ là
nơi gắn màng hình hiển thị, mặt bên (4) có các lỗ với hình dạng phù hợp để gắn các linh
kiện. Cuối cùng là mặt đáy (5) có các rãnh để kết nối với đai vải khi đeo trên cơ thể.
Hình 3.9: Hoàn thiện thiết kế hộp đựng (ảnh mô hình)
Hộp đựng được thiết kế xong sẽ được đưa đi in 3D. Sau đó tiến hành lắp thành
phần như đã tính toán trong phần thiết kế hộp đựng. Theo trình tự thiết kế, Pin (2) sẽ
được lắp vào mặt đáy. Cố định Pin là thanh kẹp có lẫy gài cũng được in 3D. Thanh kẹp
này liên kết với đáy hộp nhờ vít M2 5mm. Sau đó tiến hành lắp Button (1) và Contact
(3) ở mặt cạnh chung với jack 3.5mm và cổng sạc Micro. Tiếp đến là lắp màn hình Oled
(4) vào mặt phía bên trái của hộp so với mặt button và contact và liên kết các jack kết
nối các linh kiện rời với mạch chính như hình 3.10a.
Sau đó, tiến hành lắp mạch chính vào trụ đứng và được cố định. Hình 3.10b thể
hiện lúc hoàn thiện lắp mạch chính vào hộp. Cố định mạch chính với hộp là bốn vít M2
12mm. Oled sẽ được lắp ở mặt bên khác với mặt của Button và contact. Các vị trí trên
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 48/83
mặt bên cũng được xuyên lỗ chừa cho các cổng kết nối.
Hình 3.10: Thi công lắp các phần vào hộp đựng
3.4. LẬP TRÌNH HỆ THỐNG
3.4.1. Lưu đồ giải thuật
Sau khi thiết kế tính toán và thi công phần cứng, hệ thống phải được lập trình dựa
trên những yêu cầu đặt ra. Để truyền được dữ liệu lên smartphone và server, hệ thống
phải được kết nối Wifi. Dữ liệu truyền lên trong đó có tín hiệu điện tim, tín hiệu này
được lấy từ cảm biến thông qua giao thức SPI. Ngoài ra tín hiệu còn được hiển thị offline
trên oled để dễ hình dung được dạng tín hiệu. Các phần đó được thể hiện rõ hơn ở lưu
đồ dưới đây.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 49/83
Hình 3.11: Lưu đồ khối chính của hệ thống
Hình 3.12: Lưu đồ chương trình con kết nối wifi
Sơ đồ khối chính của vi điều khiển được thể hiện ở hình 3.11. Theo lưu đồ này thì
có các khối để bắt đầu như: khai báo – khởi tạo và cài đặt ban đầu. Tiếp theo là các
chương trình con như: kết nối wifi, lấy dữ liệu, gửi và hiển thị dữ liệu. Khi bắt đầu hoạt
động, vi điều khiển phải khai báo và khởi tạo các biến cần thiết cho các hoạt động khác
của chương trình. Để hoạt động được, vi điều khiển sẽ phải thực hiện các cài đặt ban
đầu. Tiếp đó, vi điều khiển sẽ kết nối Wifi để phục vụ cho hoạt động trao đổi dữ liệu.
Chương trình con Lấy dữ liệu sẽ lấy dữ liệu từ cảm biết lên và xử lý. Sau đó khối Gửi
và hiển thị dữ liệu sẽ tiến hành gửi dữ liệu lên điện thoại và hiển thị dữ liệu lên oled.
Khối Wifi connect có chức năng chính là thực hiện kết nối wifi cho hệ thống. Hình
3.12 là lưu đồ chi tiết cho chương trình con này. Vi điều khiển sẽ kiểm tra và tự kết nối
cấu hình đã lưu trước đó trên bộ nhớ. Nếu có kết nối thì hiển thị địa chỉ IP và thoát. Nếu
không được kết nối, vi điều khiển sẽ tiến hành smart config và bắt đầu kết nối wifi. Việc
này lặp đi lặp lại nhiều lần cho tới khi kết nối thành công. Khi kết nối thành công, vi
điều khiển lưu lại cấu hình đó để phục vụ cho việc kết nối lần sau, hiển thị địa chỉ IP và
kết thúc chương trình con.
Chương trình con lấy dữ liệu ở hình 3.13. Ở chương trình này, vi điều khiển sẽ
kiểm tra, lấy dữ liệu và xử lý dữ liệu đã nhận được từ cảm biến thông qua giao thức SPI.
Đầu tiên vi điều khiển sẽ kiểm tra tín hiệu dữ liệu sẵn sàng từ cảm biến. Nếu chưa có thì
kết thúc chương trình con. Nếu có tín hiệu sẵn sàng, vi điều khiển sẽ tiến hành lấy dữ
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 50/83
liệu. Tuy nhiên cần phải kiểm tra xem tín hiệu này có phải từ điện cực đã mắc vào cơ
thể hay chưa. Nếu chưa thì cho tín hiệu bằng 0 và kết thúc. Nếu đã là tín hiệu từ điện
cực thì sẽ đưa vào xử lý tín hiệu số. Xử lý tín hiệu số bao gồm: Loại bỏ thành phần DC,
Lọc thông thấp, Tính toán nhịp tim và thu thập thành mảng dữ liệu. Sau khi thực hiện
xử lý tín hiệu số thì sẽ kết thúc chương trình con.
Hình 3.13: Chương trình con lấy dữ liệu
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 51/83
Hình 3.14: Lưu đồ chương trình con Gửi và Hiển thị dữ liệu
Sau khi xử lý và thu tập tín hiệu xong, tín hiệu được gửi lên điện thoại và hiển thị
lên màng hình oled. Công việc này thể hiện ở chương trình con hình 3.14. Vi điều khiển
sẽ lần lượt đi từ vị trí đầu tiên đến vị trí cuối cùng của mảng. Mỗi dữ liệu tại vị trí đó
được hiển thị lên oled. Đi đến hết mảng dữ liệu, vi điều khiển sẽ gửi tất cả dữ liệu trong
mảng lên điện thoại, sau đó sẽ kết thúc chương trình.
3.4.2. Phần mềm lập trình cho vi điều khiển
Arduino IDE là chương trình giúp cho việc lập trình các phần cứng mà nó hỗ trợ.
IDE là môi trường phát triển tích hợp chạy trên trên các máy tính cơ bản cá nhân. Môi
trường này là một ứng dụng đa nền tảng (cross-platform) được viết bằng ngôn ngữ java.
IDE này sẽ được sử dụng cho ngôn ngữ lập trình vi xử lý và project writing. Được thiết
kế cho đối tượng mới làm quen với phát triển phần mềm.
Các chương trình Arduino viết bằng C hoặc C++. Arduino IDE đi kèm với một
thư viện phần mềm gọi là Writing. Việc sử dụng Writing gốc giúp các thao tác
Input/Output và các xử lý khác dễ dàng hơn.
Để sử dụng phần mềm này, đầu tiên vào trang chủ Arduino.cc để tải phần mềm về.
Sau đó nhấn vào cài đặt, chọn thư mục và tiến hành cài đặt.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 52/83
Hình 3.15: Giao diện IDE
Giao diện hình 3.15 ta thấy một số thành phần như: Thanh bảng chọn (1), Thanh
công cụ (2), vùng code editor (3), vùng thông báo trạng thái (4).
Thanh bản chọn gồm các chọn lựa như: File, Edit, Sketch, Tool và Help. Các chức
năng hoạt động của phần mềm đều chứa trong các mục của bảng này. Thanh công cụ
chứa: Biên dịch, nạp, new, open, save. Đây là các chức năng chính thường xuyên sử
dụng của chương trình. Vùng Code editor dùng để soạn thảo code và vùng thông báo
trạng thái dùng để hiển thị trạng thái của chương trình hoạt động như nạp, biên dịch,
hiển thị lỗi.
Hình 3.16: Thêm đường dẫn cho Board
Để lập trình esp8266 Node MCU, ta thực hiện qua các bước: Khai báo Board, thêm
thư viện, soạn thảo code, biên dịch và nạp. Đầu tiên phải khai báo hệ thống để có Writing
gốc. Vào “File\Preferent\Addition Board Manager URLs” và điền vào đường link
http://arduino.esp8266.com/stable/package_esp8266com_index.json như hình 3.16.
Sau đó vào “Tool/Board/Board Manager” gõ chọn ESP8266 và cài đặt. như hình 3.17.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 53/83
Hình 3.17: Thêm Board để lập trình
3.5. LẬP TRÌNH ỨNG DỤNG
3.5.1. Lưu đồ giải thuật
Bên cạnh lập trình cho hệ thống, việc lập trình cho ứng dụng điện thoại cũng là
một trong những mục tiêu cần hoàn thành. Để nhận được dữ liệu từ bộ xử lý trung tâm
thì điện thoại cần phải được kết nối với Wifi. Dữ liệu sau khi nhận sẽ được hiển thị trực
tiếp lên mà hình điện thoại. Ngoài ra, ứng dụng còn hỗ trợ lưu lại dữ liệu lên Database
Server cũng như lấy dữ liệu từ Database Server về để xem lại các thông tin đã được lưu
trước đó trên điện thoại.
Hình 3.18: Lưu đồ giải thuật chính của ứng dụng điện thoại
Sơ đồ khối chính của app android được thể hiện ở hình 3.18. Theo lưu đồ này thì
có các khối để bắt đầu như: Khai báo – khởi tạo và cài đặt ban đầu. Tiếp theo là các
chương trình con như: đăng nhập, tải dữ liệu từ kho lưu trữ và nhập thông tin người đo,
nhận dữ liệu ECG đo trực tiếp và lưu dữ liệu. Khi bắt đầu hoạt động, các biến cần thiết
được khai báo và khởi tạo cho các hoạt động của chương trình. Sử dụng được app cần
đăng nhập vào hệ thống bằng tên dăng nhập và mật khẩu được thiết lập trong kho dữ
liệu để lấy dữ liệu từ kho dữ liệu và hiển thị lên app. Tiếp đó nhập một số thông tin
thông tin bệnh nhân và nhập địa chỉ ip kết nối wifi của bộ vi điều khiển để nhận dữ liệu
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 54/83
ECG trực tiếp và lưu dữ liệu nếu cần.
Hình 3.19: Lưu đồ giải thuật của khối Login
Khối Login có chức năng chính là thực hiện xác nhận thông tin để đăng nhập vào
hệ thống và hình 3.19 chính là lưu đồ chi tiết cho chương trình con này. Đầu tiên, ứng
dụng sẽ kiểm tra xem Username và Password nhập từ người dùng với dữ liệu được cài
đặt trong kho dữ liệu có trùng khớp hay không thông qua việc nhấn nút “LOGIN”. Ứng
dụng chỉ tiếp tục hoạt động và chuyển sang các chức năng khác ở màn hình Information
and load data khi người dùng nhập đúng thông tin đăng nhập. Ngược lại, màn hình đăng
nhập sẽ vẫn giữ nguyên mà không chuyển qua màn hình mới nếu nhập sai thông tin.
Nếu nhấn nút nhấn “EXIT” sẽ thoát khỏi ứng dụng.
Chương trình con tải dữ liệu từ kho dữ liệu ở hình 3.20. Trước tiên, ứng dụng sẽ
kiểm tra id nhập từ người dùng và id trên kho dữ liệu được lưu trong quá trình đo trước
đó có trùng khớp hay không thông qua việc nhấn nút nhấn “GET”. Nếu id đúng thì dữ
liệu từ kho dữ liệu sẽ được lấy xuống và hiển thị lên ứng dụng, nếu sai sẽ không lấy
được dữ liệu. Tiếp đến, nếu muốn chuyển sang màn hình với chức năng đo và lưu tín
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 55/83
hiệu thì ứng dụng sẽ kiểm tra xem các thông tin người được lấy tín hiệu có được nhập
đầy đủ hay chưa. Nếu đã được nhập đầy đủ thông tin thì Screen sẽ được chuyển kèm
với các thông tin người được đo. Ngược lại ứng dụng sẽ vẫn ở lại Screen hiện tại và
thông báo cho người dùng nhập vào những thông tin còn thiếu để chuyển màn hình. Bên
cạnh đó, nếu nhấn nút nhấn “CLEAR” đồ thị vẽ được từ các dữ liệu được lấu xống sẽ
bị xóa, còn nhấn nút nhấn “BACK” sẽ quay về màn hình Loginđể thoát ứng dụng.
Hình 3.20: Lưu đồ giải thuật chương trình con Information and load data
Chương trình con nhận dữ liệu từ vi điều khiển hiển thị lên ứng dụng và sao lưu
dữ liệu (Get and Save data) ở Hình 3.21. Khi cài đặt và kết nối thiết bị thành công với
Wifi, tại màn hình Oled sẽ hiển thị thông IP address được kết nối. Lúc này, ứng dụng sẽ
kiểm tra xem địa chỉ ip đã được nhập và kết nối vào hay chưa bằng nhập và cách nhấn
“OK” trên màn hình. Nếu kết nối đúng địa chỉ ip và nhấn “Start” sẽ nhận được dữ liệu
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 56/83
ECG từ vi điều kiển và hiển thị lên màn hình ứng dụng và nhấn “Stop” nếu muốn dừng
việc nhận dữ liệu từ bộ xử lý trung tâm. Ngược lại, nếu IP address không được nhập hay
kết nối sai sẽ không nhận được tín hiệu thu được từ cảm biến và hiển thị thông báo lỗi.
Tiếp theo, ứng dụng sẽ kiểm tra nút “Save” nếu được nhấn dữ liệu sẽ được lưu lên
Database Server, nhấn nút nhấn “BACK” để quay về màn hình Information and load
data. Nhấn “CLEAR” để xóa địa chỉ IP hiện tại.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 57/83
Hình 3.21: Lưu đồ giải thuật chương trình con Get and save data
3.5.2. Phần mềm lập trình cho ứng dụng điện thoại
Để sử dụng được ở chế độ online cần có tài khoản Google để đăng nhập. Trước
hết cần truy cập vào địa chỉ http://appinventor.mit.edu/, sau đó chọn “Create App!” và
đăng nhập bằng tài khoản Google để mở trang quản lý các project.
Hình 3.22: Các bước tạo project mới
Để tạo một ứng dụng, cần phải tạo project. Để tạo project ta vào mục “My
Projects” chọn “Start new project” để đặt tên cho project. Sau khi đặt tên xong, chọn
“OK” để đi đến giao diện thiết kế cho ứng dụng, các bước được mô tả như như hình
3.22.
Hình 3.23: Giao diện thiết kế giao diện cho ứng dụng
Giao diện công cụ thiết kế ứng dụng (hình 3.23) gồm 5 phần chính với vị trí (1) là
thanh công cụ, (2) là vùng chứa các đối tượng để thiết kế giao diện (Palette), (3) là vùng
màn hình điện thoại giả lập để chứa cá đối tượng (Viewer), (4) là vùng để xem các thành
phần đối tượng có trong View (Conponenrs), (5) là vùng để chỉnh các chức năng cho
các đối tượng (Properties).
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 58/83
Quá trình thiết kế giao diện ứng dụng điện thoại gồm 3 bước chính:
Bước 1: Thiết kế giao diện bằng cách kéo thả, sắp xếp các đối tượng ở mục
“Palette” ở phía ngoài cùng bên trái của thanh công cụ (2. Sau đó chọn các thông số cho
các đối tượng ở mục “Properties” ở ngoài cùng bên trái của thanh công cụ (5) như mô
tả ở hình 3.28.
Bước 2: Tiến hành nhấn “Blocks” trên thanh công cụ (1) để chuyển sang giao
diện lập trình chức năng cho các đối tượng được chọn trong giao diện (hình 3.24). Tại
đây, để lập trình thì nhiệm vụ khá đơn giản là kéo thả và ghép nối các code sao cho phù
hợp.
Hình 3.24: Giao diện lập trình chức năng cho ứng dụng
Bước 3: Sau khi hoàn thành thiết kế ứng dụng, tiến hành biên dịch, đóng gói
thành File có đuôi .APK bằng cách chọn “Build” ở thanh công cụ (1). Tại đây có 2 chế
độ xuất APP là “provide QR code for .apk” và “save .apk to my computer” như hình
3.25.
Hình 3.25: Các bước để xuất File .APK
3.6. LẬP TRÌNH SERVER
Để hoàn thiện gửi dữ liệu hoặc lấy dữ liệu trực tuyến, hệ thống được thiết kế
hoạt động trên một Server. Server này cung cấp hai dịch vụ là Database server và Web
server. Databaser server dùng để lưu dữ liệu và Web server giúp điện thoại thông minh
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 59/83
giao tiếp với Database server.
3.6.1. Lưu đồ giải thuật
Muốn thực hiện giao tiếp dữ liệu trực tuyến, hệ thống được lập trình Web với ngôn
ngữ lập trình PHP. Chức năng ở ứng dụng điện thoại cần thực hiện là: Xác nhận đăng
nhập, lấy dữ liệu được lưu sẵn về để xem, gửi dữ liệu đo được từ mạch tín hiệu. Thuật
toán các chức năng này thể hiện ở dưới đây.
Hình 3.25: Lưu đồ giải thuật xác thực đăng nhập vào ứng dụng
Hình 3.25 là lưu đồ xác nhận sự đăng nhập vào hệ thống. Để xác nhận đăng nhập,
web sẽ kết nối với Database có chứa thông tin tài khoản được phép đăng nhập. Sau khi
kết nối, web sẽ tìm trong dữ liệu để kiểm tra sự tồn tại người dùng (name). Nếu tồn tại
người dùng, sẽ kiểm tra sự trùng khớp mật khẩu (password). Đúng tất cả web trả về về
1, sai mật khẩu trả về 2, sai người dùng trả về 0. Kết quả trả về sẽ cho ứng dụng hoạt
động.
Lưu đồ đáp ứng lệnh giao tiếp dữ liệu từ ứng dụng điện thoại tới database thể hiện
ở hình 3.26. Hình 3.26a là lưu đồ lấy dữ liệu. Đầu tiên web sẽ kết nối tới database, tìm
số thứ tự đã nhập. Nếu có tồn tại số thứ tự, sẽ gửi dữ liệu ECG từ database về ứng dụng,
không tồn tại số thứ tự sẽ kết thúc. Hình 3.26b là lưu đồ lúc gửi dữ liệu lên. Khi kết nối
được database, web sẽ chèn vào nó dữ liệu ECG từ ứng dụng điện thoại lên, phản hồi
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 60/83
ghi thành công và kết thúc.
Hình 3.26: Lưu đồ giải thuật giao tiếp dữ liệu giữa ứng dụng và Database
3.6.2. Phần mềm lập trình cho Database
Để sử dụng phần mềm online phpMyAdmin thiết lập và lập trình Database cần
thực hiện theo các bước dưới đây:
Bước 1: truy cập vào phpMyAdmin ở 000webhost, truy cập vào địa chỉ:
khẩu đã được thiết lập ở trang web 000webhost, lựa chọn ngôn ngữ theo chỉ dẫn
rồi chọn “thực hiện” để đăng nhập vào phần mềm như hình 3.27.
https://databases.000webhost.com/. Sau đó nhập thông tin gồm tên tài khoản và mật
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 61/83
Hình 3.27: Giao diện đăng nhập phpMyAdmin
Bước 2: Tạo cơ sở dữ liệu (CSDL) màn hình như hình 3.28 sẽ xuất hiện. Tại mục
“Cơ sở dữ liệu”, để tạo một CSDL mới thì nhấp vào “Mới” ở phía ngoài cùng bên trái
và nhập các thông tin CSDL muốn tạo và chọn “Tạo” để hoàn thành tạo CSDL mới và
tên CSDL mới tạo được sẽ hiện ở phía ngoài cùng bên trái.
Hình 3.28: Tạo cơ sở dữ liệu
Bước 3: Tạo bảng dữ liệu sẽ hiện ra gồm chổ điền thông tin tên bảng và số cột của
bảng muốn tạo. Sau khi nhập thông tin đầy đủ thì chọn “Thực hiện” để chuyển đến giao
diện nhập thông tin và lựa chọn chức năng cho các hàng các cột trong bảng. Cuối cùng
chọn “Ghi lại” để hoàn thành xuất bảng dữ liệu như hình 3.29.
Hình 3.29: Kết quả sau khi hoàn thành tạo bảng CSDL
3.6.3. Phần mềm lập trình cho Server
Để lập trình cho Server cần thực hiện theo các bước hướng dẫn dưới đây:
Bước 1: Tải phần mềm bằng cách truy cập vào địa chỉ
https://www.sublimetext.com/ (trang chủ phần mềm) chọn mục “Download” để lựa
chọn phiên bản muốn tải. Sau khi tải thành công phần mềm, tiến hành nhấn vào File mới
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 62/83
tải và cài đặt theo chỉ dẫn.
Bước 2: Sau khi cài đặt thành công phần mềm, tiến hành mở phần mềm lên và
giao diện phần mềm như hình 3.30. Nhìn vào giao diện ta thấy 2 thành phần chính:
Thanh bảng chọn (1) với ác chức năng hoạt động của phần mềm đều chứa trong các mục
của bảng này, (2) là vùng code editor để soạn thảo code.
Hình 3.30: Giao diện làm việc phần mềm Subline Text
Bước 3: Soạn thảo code lập trình cho Server, chỉ nhần nhấp vào vùng Code editor
và tiến hành soạn thảo code. Sau đó lưu lại bằng cách vào “File” trên thanh bảng chọn
và chọn “Save as…” hoặc nhấn tổ hợp phím “Ctrl + Shift + S” để lưu tên cũng như
chọn nơi muốn lưu. Và File sau khi lưu này sẽ được Upload lên Server.
3.6.4. Kết nối database, server, smartphone
Có các cách để đăng nhập vào hệ thống là Facebook và Google, sau khi truy cập
vào link: https://vn.000webhost.com/ và chọn “ĐĂNG NHẬP”. Nếu chưa có tài khoản
thì có thể đăng ký tài khoản tại website này.
Tiến hành tạo website mới lần lượt bằng cách bấm vào ô có dấu “+” chọn
“LET’S CREATE SOME MAGIC” chọn “Học lập trình web” chọn “Tiếp tục”
nhập các thông tin vê tên và mật khẩu website.
Sau khi nhập đầy đủ các thông tin thì chọn “Nhập” để tiến hành chọn “Cài đặt
WordPress” bằng các nhấn “Chọn” trên giao diện web để nhập thông tin cài đặt
WordPress rồi chọn “Cài đặt” để hoàn thành cài đặt. Các bước cài đặt được thể hiện
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 63/83
trong hình 3.31.
Hình 3.31: Các bước tạo Website miễn phí trên 000webhost
Hình 3.32: Kết quả sau khi tạo Website
Sau khi đã hoàn thành các bước trên, tiến hành quay lại đăng nhập vào trang web
vn.000webhost.com để kiểm tra kết quả (hình 3.32). Sau đó chọn “Quản lý website”
“Công cụ” “Quản lý Database” để tạo bảng CSDL để lưu trữ các thông tin nhận
được từ Smartphone và chọn “Quản lý File” để Upload các file lập trình server PHP
lên để liên kết với bảng CSDL và lấy đường dẫn đó hỗ trợ cho việc kết nối với
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 64/83
Smartphone. Và hình 3.33 là giao diện của 2 mục này.
Hình 3.33: Giao diện Quản lý “Database” và “Quản lý File”
3.7. VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC
3.7.1. Viết tài liệu hướng dẫn sử dụng
Hệ thống được hoàn thành, để sử dụng hiệu quả cần có tài liệu hướng dẫn sử dụng.
Tài liệu này mô tả cách vận hành hệ thống từ lúc khởi động nguồn cho đến lúc tắt nguồn.
Bước 1: Mắc điện cực vào người đo, kiểm tra kết nối dây điện cực với thiết bị.
Bước 2: Cấp nguồn cho hệ thống, hệ thống sử dụng nguồn là Pin LiPo 3.7V. Khi
đóng công tắc nguồn ở chế độ ON trên hộp thì hệ thống bắt đầu hoạt động, màn hình
sáng lên và hiển thị logo.
Bước 3: Mở điện thoại lên, sử dụng app smartconfig esp8266 để cấu hình wifi cho
hệ thống. Nếu trước đó cấu hình rồi thì bỏ qua bước này.
Bước 4: Trên điện thoại, nhập tài khoản và mật khẩu được cung cấp rồi nhấn
“LOGIN” để đăng nhập vào ứng dụng.
Bước 5: Lúc này màn hình sẽ chuyển sang màn hình mới với chức năng chính là
xem lại các dữ liệu được lưu trước đó bằng cách nhập ID và nhấn nút “GET”.
Bước 6: Nếu có nhu cầu muốn đo tín hiệu, cần phải nhập một số thông tin người
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 65/83
đo tín hiệu ECG rồi nhấn “NEXT” để chuyển qua màn hình hiển thị tín hiệu được thu
trực tiếp từ các điện cực gắn trên cơ thể cũng như lưu lại các dữ liệu đo được bằng cách
nhấn “SAVE”.
Bước 7: Sau khi bước 6 được thực thi, để thu thập và hiển thị tín hiệu ECG trước
hết cần phải nhập địa chỉ IP của esp8266 và kết nối bằng cách nhấn nút “OK”. Sau đó
là nhấn “Start” để nhận dữ liệu và hiển thị các tín hiệu ECG đo được, nhấn “Stop” nếu
muốn dừng lại. Muốn xoá đại chỉ IP nhấn nút “CLEAR”. Muốn trở lại màn hình trước
đó (bước 5) thì nhấn nút “BACK”.
Bước 8: Để thoát app nhấn nút “EXIT” trên app ở màn hình đăng nhập.
Bước 9: Nếu muốn reset phần cứng nhấn nút nhân “Reset” màu vàng ở trên hộp
thiết bị.
Bước 10: Để tắt nguồn nhấn nút công tắc về chế độ OFF trên hộp và hệ thống sẽ
ngừng không hoạt động.
3.7.2. Quy trình thao tác
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 66/83
Hình 3.34: Quay trình thao tác sử dụng của hệ thống đo ECG
Chương 4. KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ
Trong thời gian 8 tháng, nhóm sinh viên đã thực hiện nghiên cứu đề tài “Thiết kế
và thi công hệ thống thu thập dữ liệu điện tim ECG có hiển thị tín hiệu qua smart
phone.”. Thực hiện đề tài này, nhóm đã tìm hiểu và có được kiến thức về các lý thuyết
liên quan, thi công được phần cứng, thiết kế được phần mềm. Kết quả đạt được thể hiện
chi tiết ở các phần dưới đây.
4.1. KIẾN THỨC ĐẠT ĐƯỢC
Đối tượng xử lý chính của hệ thống là tín hiệu điện tim. Nhờ đó nhóm thực hiện
hiểu được các kiến thức về hoạt động của tim, lý thuyết tín hiệu về điện tim. Hiểu biết
được những quy ước gắn điện cực để đo điện tim hiện có.
Hiểu biết thêm kiến thức về vi điều khiển, cảm biến, ngoại vi. Thực hiện tìm hiểu
và lập trình được vi điều khiển ESP8266. Giao tiếp và lấy tín hiệu từ cảm biến điện tim
ADS1292R. Hiển thị tín hiệu lên Oled SSD1306. Tìm hiểu thông tin trong Data Sheet
được cung cấp từ nhà sản xuất. Từ đó tạo nên một phần cứng của hệ thống Y sinh.
Nhóm sinh viên thực hiện cũng đã tìm hiểu và ứng dụng được lý thuyết Xử lý tín
hiệu Y sinh. Các bộ lọc thông thấp, bộ lọc thành phần DC, tính toán thông số nhịp tim
theo thuật toán Pan-tompkins được tìm hiểu và áp dụng vào đề tài này.
Kiến thức về công nghệ không dây, hệ thống thông tin y tế, lập trình ứng dụng
android. Kết nối các thiết bị và truyền tải thông tin trong mạng nội bộ, mạng internet
thông qua WiFi. Thiết lập hệ cơ sở dữ liệu để quản trị và lưu trữ dữ liệu thu được. Lập
trình ứng dụng trên androi và lập trình web để liên kết truyền tải dữ liệu.
Kiến thức về An toàn y tế khi thiết kế và sử dụng thiết bị Y tế. Việc thiết kế ngoài
lấy dữ liệu tốt, cần phải đi kèm với tính an toàn của sản phẩm. Dự tính và hạn chế rủ ro
cho sản phẩm, nhất là về Điện sẽ làm sản phẩm an toàn hơn. Lập ra quy trình sử dụng
đúng đắn và hướng dẫn sử dụng sẽ hạn chế được nguy cơ mất an toàn.
Kiến thức sử dụng các phần mềm liên quan để phục vụ cho việc thiết kế, tính toán,
thi công, lập trình hoạt động hệ thống. Phần mềm Eagle, phần mềm Altium cho vẽ mạch
nguyên lý và mạch in. Phần mềm Arduino IDE để lập trình vi điều khiển. Phầm mềm
Matlab để tính toán hệ số của bộ lọc thông thấp. Phần mềm Sublime text, phpAdmin để
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 67/83
lập trình hệ web và hệ cơ sở dữ liệu.
4.2. KẾT QUẢ PHẦN CỨNG
4.2.1. Thi công phần cứng
Phần cứng của sản phẩm có tổng thể gồm các mặt bên ngoài, bên trong và lúc hoạt
động. Nhận xét về tính thẩm mĩ, độ bền.
Hình 4.1: Tổng thể bên ngoài sản phẩm
Sau khi hoàn thành thi công hệ thống. Nhóm đã thực hiện được sản phẩm phần
cứng hệ thống. Hình 4.1 là tổng thể bên ngoài của sản phẩm gồm các thành phần chính
với (1) là nắp hộp cố định bằng vít ở mặt trước và sau, (2) là hộp đựng, (3) là contact
khởi động nguồn, (4) là nút nhấn reset, (5) là màn hình Oled để hiển thị, (6) là lỗ cắm
jack kết nối các điện cực đo, (7) là dây đai đeo vào lưng, (8) là lổ cắm jack sạc pin.
Hình 4.2: Bên trong sản phẩm
Bên trong của phần đóng gói được thể hiện ở hình 4.2. Bên trong bao gồm vị trí
(1) là nút reset, (2) là pin và thanh kẹp pin, (3) là contact khởi động nguồn, (4) là màn
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 68/83
hình Oled, (5) là mạch chính được cố định phía trên bằng vít ở 4 góc hộp.
Hình 4.3: Màn hình trạng thái hệ thống
Lúc nhấn contact khởi động nguồn. Màn hình sáng lên và bắt đầu hoạt động. Ở
hình 4.3 thể hiện các trạng thái của thiết bị như: (1) là lúc mới bật contact nguồn (hiển
thị logo sản phẩm), (2) lúc kết nối Wifi (hiển thị dòng chữ “StartConfig wifi” và nhấp
nháy dòng chữ “StartConfig Success”), (3) hoàn thành kết nối Wifi (hiển thị địa chỉ IP
được kết nối), (4) lúc đang đo (hiển thị dạng sóng, chỉ số nhịp tim và IP đã kết nối).
4.2.2. LẬP TRÌNH CHO PHẦN CỨNG
Kết quả về lấy dữ liệu thô, bộ lọc, tính nhịp tim, tính hệ số bộ lọc trên matlab. Dữ
liệu thô là dữ liệu lấy trực tiếp từ trên cơ thể của người đo. Dữ liệu này có nhiều các tác
nhân ảnh hưởng như điện cơ, nhiễu tần số cao, tín hiệu sai lệch do người dùng rung lắc.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 69/83
Hình 4.4: Tín hiệu thô từ cảm biến
Tín hiệu thu được từ cảm biến là tín hiệu chưa được xử lý. Hình 4.4 là tín hiệu thu
được từ cảm biến. Tín hiệu này chuyển tương tự sang số 24bit và hiển thị qua cổng
Serial của phần mềm Arduino IDE. Đặc điểm của tín hiệu này là bị dịch chuyển bởi
thành phần điện áp có tần số thấp, thành phần DC. Hơn nữa, tín hiệu còn bị pha tạp bởi
các tín hiệu khác như tín hiệu điện cơ, tín hiệu có tần số cao.
Hình 4.5: Tín hiệu qua bộ lọc thành phần DC
Bộ lọc thông cao loại bỏ thành phần DC dựa theo cấu trúc bộ lọc CIC. Kết quả
thực hiện bộ lọc này thể hiện ở hình 4.5. Các thành phần DC 0Hz được lọc bởi bộ lọc
thông cao. Sau khi qua bộ lọc này, tín hiệu loại bỏ được thành phần DC và đường cơ sở
dần về mức 0V. Ngoài ra, trong lúc thực hiện bộ lọc này tín hiệu còn được giảm độ phân
giải ADC đến mức milivolt.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 70/83
Hình 4.6: Tín hiệu qua bộ lọc thông thấp
Bộ lọc thông thấp được thiết kế hệ số trên phần mềm Matlab. Tần số lọc là 40Hz.
Hình 4.6 là kết quả của tín hiệu từ bộ lọc thông cao nối tiếp qua bộ lọc thông thấp. Tín
hiệu sau khi qua hai bộ lọc vẫn giữ được các đặt tính của điện tim (0.5-24 Hz).
Bộ lọc thông cao và bộ lọc thông thấp được áp dụng nối tiếp nhau. Tín hiệu ra vừa
khử được điện áp DC, vừa giữ được các tín hiệu có tần số dưới 40Hz. Tín hiệu tiếp tục
được đưa vào để tính nhịp tim. Tính toán nhịp tim dựa trên phương pháp ngưỡng Pan-
Tompkins. Các ngưỡng này tự động cập nhật và điều chỉnh sau mỗi thay đổi của ngưỡng
trước đó, từ đó tạo sự chính xác hơn trong tính toán nhịp tim. Hình 4.7 có đường màu
đỏ thể hiện nhịp tim. Cụ thể, nhịp tim ở mức 55 nhịp/phút. Hơn nữa còn thể hiện được
tín hiệu ngõ ra từ các bộ lọc.
Hình 4.7: Kết quả tính toán nhịp tim
4.3. KẾT QUẢ PHẦN MỀM
4.3.1. PHẦN MỀM ANDROID
Kết quả màn hình từ lúc mở app đến đóng app. Độ bảo mật, độ ổn định, tính thẩm
mĩ, tốc độ truyền thông dữ liệu.
Nhận dữ liệu từ phần cứng là phần mềm trên điện thoại với các giao diện như hình
Hình 4.8. là hình mà lúc mới mở ứng dụng. Lúc này ứng dụng hiển thị ở màn Screen1
với nội dung là đăng nhập. Tài khoản và mật khẩu đăng nhập sẽ được cài đặt trước trên
database server và người dùng chỉ cần nhập đúng thông tin là có thể đăng nhập vào ứng
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 71/83
dụng.
Hình 4.8: Giao diện ứng dụng điện thoại
Kết quả đăng nhập thành công là chuyển sang Screen (2). Tại screen này, người
dùng có thể xem lại các thông tin được lưu trên Database bằng cách nhập ID và nhấn
nút “GET”. Để chuyển sang Screen (3) thì bắt buộc người dùng phải nhập đầy đủ các
thông tin ở mục “User Imfomation” để các thông tin này được gửi kèm theo khi nhấn
nút “NEXT”. Và Screen 3 cũng chính là phần quan trọng bậc nhất trong ứng dụng này
với 2 chức năng chính, thứ nhất là nhận rồi hiển thị tín hiệu ECG trực tiếp từ bộ xử lý
trung tâm gửi lên khi kết nối đúng điạ chỉ “ESP8266 IP” và nhấn “Start”. Thứ hai là
chức năng lưu lại dữ liệu người dùng gồm các thông tin người dùng được nhập từ Screen
(2), các dữ liệu điện tim ECG, nhịp tim HR kèm thời gian đo hiện tại lên Database bằng
cách nhấn nút “Save”.
4.3.2. SERVER
Database của hệ thống được xây dựng online trên server của 000Webhost gồm 2
bảng với bảng thứ nhất là “user_imformation” để lưu các dữ liệu với các trường
Database gồm có ID, Full_Name, User_id, Phone, Data, HeartRate, DMY được thể hiện
ở hình 4.9 a. Bảng thứ 2 là “Login_imformation” lưu các thông tin để đăng nhập vào
ứng dụng được nhập vào bằng tay với 3 trường là ID, UserName, Password như hình
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 72/83
4.9 b.
Hình 4.9: Các bảng cơ sở dữ liệu đã được tạo
Dữ liệu được lấy từ bảng CSDL “Login_imformation” để đăng nhập vào hệ thống
thông qua việc so sánh với thông tin được nhập từ ứng dụng điện thoại. Và hình 4.10 là
một số dữ liệu được nhập vào.
Hình 4.10: Các dữ liệu của bảng CSDL Login_imfomation
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 73/83
Hình 4.11: Các dữ liệu được lưu lên bảng CSDL user_imfomation_v1
Dữ liệu được truyền lên bảng CSDL “user_imformation_v1” khi nút “Save” ở
ứng dụng điện thoại khi được nhấn. Kết quả là dữ liệu đã được lưu trên cơ sở dữ liệu
như hình 4.11.
4.4. ĐÁNH GIÁ KẾT QUẢ
Hoàn thành được hệ thống, nhóm tiến hành do và thu lại được kết quả. Để đánh
giá hệ thống có hoàn thành được chỉ tiêu và hoạt động được không, nhóm tiến hành đo
trên các thiết bị khác để so sánh.
4.4.1. KẾT QUẢ ĐO NHIỀU VỊ TRÍ
Để đánh giá được khả năng thu tín hiệu, Hệ thống được đo bằng ba cách: mắc 3
điện cực ở ngực, mắc 3 điện cực ở hai cánh tay và mắc 3 điện cực ở các chi. Cách đo
này thực hiện trên 1 người và nhiều lần đo để lấy số nhịp tim trung bình.
Hình 4.12: Kết quả gắn điện cực ở ngực
Gắn điện cực ở ngực, kết quả thu được điện tim có dạng như hình 4.12. Vị trí điện
cực LA được mắc ở ngực trái, RA được mắc ở ngực phải, RL được mắc ở dưới bụng.
Dữ liệu đo cho thấy tín hiệu điện tim có biên độ peak-peak lớn, xấp xỉ 2mV. Nhịp tim
đạt khoảng 54 nhịp/phút
Gắn điện cực ở tay, kết quả thu được điện tim có dạng như hình 4.13. Vị trí các
điện cực RA, RL tại cánh tay phải, LA tại cánh tay trái. Tín hiệu thu được có biên độ
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 74/83
peak-peak xấp xỉ 0.9mV. Nhịp tim khoản 55 nhịp/phút.
Hình 4.13: Kết quả gắn điện cực ở tay
Hình 4.14: Kết quả gắn điện cực ở chi
Gắn điện cực ở chi, kết quả thu được điện tim có dạng như hình 4.14. Vị trí điện
cực LA, RA, LR lần lượt tại tay trái, tay phải, chân phải. Tín hiệu đo được cũng có biên
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 75/83
độ xấp xỉ 0.9mV. Nhịp tim thu được xấp xỉ 56 nhịp/phút.
Ngoài thông tin là dạng sóng điện tim, hệ thống cũng cho ra thông số điện tim ở
bảng 4.1. Số nhịp tim đo ra không chênh lệch nhiều.
Bảng 4.1: Thông số điện tim ở 3 vị trí đo khác nhau
Gắn ở ngực Gắn ở tay Gắn ở chi
54 56 55 Thông số ECG
4.4.2. SO SÁNH KẾT QUẢ VỚI THIẾT BỊ KHÁC
Thông số nhịp tim và dạng sóng điện tim: Máy đo điện tim Fukuda Denshi FX-
7100, monitor COMEN c80.
Tín hiệu đầu vào: máy mô phỏng tín hiệu chuẩn SKX-2000 và cơ thể người.
Tính chính xác của hệ thống phải được chứng minh thông qua so sánh với các thiết
bị chuẩn khác đang có mặt trên thị trường. Đầu tiên, thử nghiệm với máy phát điện tim
chuẩn. Hình 4.15 là kết quả của một lần đo so sánh hệ thống này với hai thiết bị có mặt
trên thị trường. Các lần lấy tín hiệu từ máy phát mô phỏng đều cho ra dạng sóng tương
đương nhau.
Hình 4.15: Kết quả đo từ máy phát điện tim mô phỏng
Thử nghiệm nhiều lần với số nhịp/phút tăng dần 10 nhịp trong khoảng 60 đến 100
nhịp. Thu được kết quả thống kê ở bảng 4.2. Những lần lấy dữ liệu, thông số nhịp tim
của máy FX-7100 đáp ứng nhanh. Tuy nhiên để đạt được nhịp chính xác, phải đợi sau
vài lần tính toán. Máy COMEN C80 đáp ứng tính toán nhịp tim chậm hơn. Tuy nhiên,
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 76/83
kết quả chuyển dần cho tới khi chính xác và rất ổn định. Hệ thống đo điện tim gửi lên
ECG của nhóm sinh viên đáp ứng nhanh như FX-7100, nhưng cũng cần một vài lần để
tính toán chính xác.
Bảng 4.2: So sánh tính chính xác tính toán nhịp tim với các thiết bị khác
Máy phát mô phỏng 60 bpm 70bpm 80bpm 90bpm 100bpm
FX-7100 60 70 80 90 100
COMEN c80 60 71 81 91 101
Hệ thống đang làm 60 71 81 91 101
Các dữ liệu được thu thập bằng cách đo thử nghiệm trên cơ thể người với 5 sinh
viên (3 nam, 2 nữ) với mỗi người đo 3 lần cho mỗi thiết bị, mỗi lần đo khoảng 30s đến
1 phút tùy vào sự ổn định tín hiệu của người đo.
Hình 4.16: Kết quả tín hiệu ECG đo 3 thiết bị từ 1 sinh viên
Kết quả đo tín hiệu một trong các lần đo từ một sinh viên được thể hiện qua Hình
4.16. Với Hình 4.16a là dạng sóng lấy được từ thiết bị đo gửi lên wifi, còn hình 4.16b,
4.16c lần lượt là từ máy đo điện tim Fukuda Denshi FX-7102 và Patient Monitoring
COMEN C80. Lần lượt dạng sóng Lead I của các máy đều tương tự nhau. Máy FX-
7102 có mắc 4 điện cực nên cho ra được 6 tín hiệu Lead I,II,III và aVR, aVL, aVF. Máy
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 77/83
COMEN C80 mắc 3 điện cực nên có thể cho ra được tín hiệu 3 lead.
Thông số nhịp tim tính toán được từ hệ thống và các thiết bị được thể hiện trong
bảng 4.4. Các lần đo số liệu được lưu trữ trong bộ nhớ máy, sau đó in ra giấy và thống
kê vào bảng. Mỗi sinh viên có 3 lần đo và nhịp tim là kết quả trung bình trong lần đo
đó. Sau đó dùng các công thức (2.23), (2.24), (2.25) để tính toán sai số. Từ các số liệu
ở bảng 4.4 có thể nhận thấy mỗi lần đo của mỗi thiết bị có sự chênh lệch.
Bảng 4.4: Thông số điện tim so sánh ở các máy
FX-7102 COMEN c80 Hệ thống đang làm
49 48 50 SV1 52 51 51 16129001 53 53 51
82 80 79 SV2 75 78 77 16129016 77 79 77
69 69 70 SV3 70 68 74 16129022 70 68 73
84 85 85 SV4 90 87 88 16129006 87 87 88
96 86 98 SV5 94 92 94 16129067 96 93 90
76.27 74.93 76.33 Trung bình chung (𝐗̅)
249.8 221.1 239.8 Phương sai (S2)
15.81 14.87 15.49 Độ lệch chuẩn (S)
Để dễ dàng đánh giá, các số liệu ở bảng 4.4 được tính toán trung bình. Số liệu
trung bình này được tính toán theo công thức (2.23) và được vẽ lên biểu đồ hình 4.17
với giá trị được làm tròn ở hàng đơn vị. Từ biển đồ, có thể dễ dàng nhận thấy nhịp tim
của các sinh viên có sự chênh lệch giữa các thiết bị đo. Sự chênh lệch hai thiết bị chuẩn
là không quá lớn. Thiết bị sản phẩm của nhóm sinh viên thực hiện cũng có sự chênh
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 78/83
lệch không nhiều.
120
95
100
94
90
87
87
86
79
78
78
80
72
70
68
60
51
51
51
40
20
0
16129001
16129016
16129022
16129006
16129067
FX 7102
COMEN C80
OUR DEVICE
Hình 4.17: Biểu đồ so sánh nhịp tim trung bình
4.4.3. GIẢI THÍCH
a. Đo tại nhiều vị trí khác nhau trên cơ thể
Đo tại các vị trí mắc điện cực khác nhau trên cơ thể. Vị trí các chi, vị trí trên 2 cánh
tay và vị trí ở ngực. Tín hiệu điện tim khi đo ở vị trí ngực có biên độ lớn hơn ở hai vị trí
còn lại vì sự suy hao khi lan truyền. Càng truyền đi xa về phí các chi, tín hiệu càng có
biên độ thấp. Hơn nữa tín hiệu lại càng bị ảnh hưởng bởi các yếu tố như điện cơ, thành
phần DC.
Tuy nhiên, khi tính nhịp tim sẽ không xảy ra sự thay đổi lớn. Tín hiệu sau khi lọc
nhiễu đo ở vị trí khác nhau nhưng có dạng sóng tương tự nhau. Ngưỡng xác định đỉnh
sẽ được cập nhật phù hợp theo tỉ lệ biên độ đỉnh. Từ đó suy ra được nhịp tim chính xác.
b. So sánh nhiều thiết bị khác nhau, tín hiệu mô phỏng
Tín hiệu phát ra ở bộ phát chuẩn không có các thành phần nhiễu. Tín hiệu có biên
độ Peak-Peak bằng nhau và bằng 1 mV. Tần số nhịp tim có thể điều chỉnh được và
khoảng thời gian giữa hai nhịp liền kề là bằng nhau. Các thiết bị thu được tín hiệu giống
nhau và tính toán nhịp tim xấp xỉ nhau cho thấy sản phẩm của nhóm đạt yêu cầu về ngõ
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 79/83
ra và tính toán.
c. So sánh các thiết bị khác nhau với tín hiệu được lấy trên cơ thể tại vị
trí cánh tay
Ở nhiều người đo, dạng sóng tín hiệu khá giống nhau. Tuy nhiên, tính toán nhịp
tim lại có sự khác biệt giữa các thiết bị. Mỗi thiết bị đều có mỗi thuật toán tính toán nhịp
tim riêng. Hơn nữa các tác động bên ngoài như tinh thần, thành phần nhiễu tại mỗi thời
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 80/83
điểm đo khác nhau. Dẫn đến sự khác biệt trong tính toán nhịp tim.
KẾT LUẬN VÀ KIẾN NGHỊ
a.
KẾT LUẬN
Sau thời gian tìm hiểu và thực hiện đề tài, nhóm chúng em đã thu được nhiều kết
quả khả quan và đạt được yêu cầu ban đầu của đề tài. Cụ thể mục tiêu nhóm đã đạt được
như sau:
Biết sử dụng các phần mềm để thiết kế và vẽ sơ đồ nguyên lý, sơ đồ mạch in,
lập trình ứng dụng điện thoại, lập trình hệ thống, xử lí bộ lọc, lập trình Server.
Thiết kế được một ứng dụng Android trên Smartphone với giao diện ứng dụng
đơn giản, thân thiện và dễ dàng cho người dùng.
Thiết kế và thi công được phần cứng hệ thống thu thập và hiển thị tín hiệu
ECG đơn giản, nhỏ gọn, dễ sử dụng và có thể sạc pin.
Hệ thống đo được dữ liệu ECG bằng 3 điện cực, lưu được dữ liệu lên Database
Server, load lại dữ liệu và hiển thị lên điện thoại, xem được dữ liệu trực tiếp
khi đo trên điện thoại và màn hình Oled được tích hợp trên hộp của sản phẩm.
Tuy nhiên, đề tài vẫn còn tồn tại một số lỗi phát sinh khách quan làm cho hệ thống
chưa ổn định. Và kết quả của hệ thống so với một số thiết bị trên thị trường còn có chênh
lệch không đáng kể.
b. KIẾN NGHỊ
Để tăng tính thực tế và hiệu quả hơn cho thiết bị, nhóm đề ra một số kiến nghị như
sau:
Hướng tới nhiều thiết bị đo và gửi cùng lúc.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 81/83
Chuẩn hóa dữ liệu phù hợp với các tiêu chuẩn hệ thống thông tin y tế.
TÀI LIỆU THAM KHẢO
[1] Dương Trọng Lượng, Nguyễn Đức Thuận, Nguyễn Thái Hà, Trịnh Quang
Đức, Phí Ngọc Tú, Nguyễn Phan Kiên, “Thiết kế hệ thống thu nhận tín hiệu điện tâm
đồ trong thời gian thực dựa trên giao tiếp âm thanh – soundcard tích hợp trong máy
tính”, Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Công nghệ, Tập 30, số
2, pp. 40-46, 2014.
[2] Nguyễn Văn Hải, Nguyễn Minh Quân, “Giám sát nhịp tim qua điện thoại
Android”, Đồ án tốt nghiệp, Đại học Bà Rịa Vũng Tàu, 2017.
[3] Bin Yu, Lisheng Xu, Yongxu Li, “Bluethooth Low Energy (BLE) based mobile
electrocardiogram monitoring system”, IEEE International Conference on
Information and Automation, Shenyang, China, 2012.
[4] Wei Lin, “Real time monitoring of electrocardiogram through ieee 8002.15.4
network”, 2011 8th International conference & expo on emerging technologies for a
smarter word, New York, NY, USA, 2011.
[5] Brucal, S.G.E., Aguirre, J.V.C.T., Macatangay, S.D., Rubia, W.U., & Zamora,
A.M., “Development of a 12-lead ECG signal processing algorithm using NI
Labview and NI Elvis”, 2018 IEEE 7th Global conference on consumer electronics
(GCCE), 2018.
[6] Raval, J. A., Sakinala, V. V., Jadhav, N. R., & Karia, D. C., “Labview based
real time bio-telemetry system for healthcare”, International conference on
communication and signal processing (ICCSP), 2017.
[7] Ying, G., Zhenzhen, W., Li, K., Qiang, D., & Jinghui, L., “Heart sound and
ECG signal analysis and detection system based on Labview”, Chinese control and
decision conference (CCDC), 2018.
[8] C larence Wilbur Taber, Clayton L. Thomas, Donald Venes, “Taber's
Cyclopedic Medical Dictionary”, 2009.
[9] Dung Le, “Hoạt Động Của Tim”, sites.google.com, 2010.
[10] Hall, John, “Guyton and Hall textbook of medical physiology”, 2011.
[11] Keith L. Moore, Arthur F. Dalley, Anne M. R. Agur, “1”, “Clinically Oriented
Anatomy. Wolters Kluwel Health/Lippincott Williams & Wilkins”, 2009.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 82/83
[12] “Hệ tuần hoàn (tiếp)”, sinhhoc247.com, 19/09/2016.
[13] Chúc Nghĩa, “(GIÃI MÃ) Vì sao tim hoạt động suốt đời mà không mệt mỏi?”,
suckhoe88.com, 26/07/2019.
[14] TS.BSCC.Trần Văn Đồng, “Hình Dạng Và Định Danh Các Sóng Điện Tâm Đồ”,
Hội nghị tim mạch toàn quốc 2015.
[15] Giáo sư Trần Đỗ Trinh, “Hướng dẫn đọc điện tim”, ĐH Y Dược Huế, 2008.
[16] “Android”, techterms.com, 16/05/2016.
[17] Nguyen Dinh Duc, “Kiên trúc của hệ điều hành Android”, 12/09/2016.
[18] “Server là gì? Máy chủ là gì? Những điều cần biết về Server”, viettelidc.com.vn,
21/09/2018.
[19] Hồng Nhi, “Server là gì? Các loại máy chủ phổ biến hiện nay”,
blog.tinohost.com, 2019.
[20] “Bài 9: Giới thiệu về hệ quản trị cơ sở dữ liệu MySQL”, kungfuphp.com,
31/01/2015.
[21] “Tổng Quan Về PHP”, stdio.vn, 30/01/2016.
[22] LHV - Galileo. “Bài 1.0: Tổng quan về ESP8266 nodeMCU”, lophocvui.com,
22/09/2018.
[23] “Giới thiệu vắn tắt kít phát triển ESP8266 (chíp nạp CP2102)”, arduino.vn,
11/8/2016.
Số hiệu:HD/QT-PKHCN-QHQT-NCKHSV/00 Lần soát xét:00 Ngày hiệu lực: 01/4/2020 Trang: 83/83
[24] “ADS1292rShield_Breakout”, github.com, 4/7/2018.

