1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Web ứng dụng cho hệ thống giám sát sức khỏe

9 31 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Nội dung

Bài viết đề nghị một giải pháp xây dựng hệ thống giám sát sức khỏe người bệnh sau khi được điều trị. Giúp người bệnh không phải đến trung tâm y tế mà vẫn được bác sĩ theo dõi tình trạng sức khỏe thường xuyên. Từ đó bác sĩ sẽ lên phác đồ điều trị theo tiến trình phục hồi của người bệnh.

TẠP CHÍ KHOA HỌC ĐẠI HỌC SÀI GÒN Số 14 (39) - Thaùng 3/2016 Web ứng dụng cho hệ thống giám sát sức khỏe Web application for health care monitoring PGS.TS Lê Tiến Thường, ThS Nguyễn Duy Thắng Trường Đại học Bách Khoa – ĐHQG TP.HCM Assoc.Prof., Ph.D Le Tien Thuong, M.S Nguyen Duy Thang Ho Chi Minh City University of Technology Tóm tắt Bài viết đề nghị giải pháp xây dựng hệ thống giám sát sức khỏe người bệnh sau điều trị Giúp người bệnh đến trung tâm y tế mà bác sĩ theo dõi tình trạng sức khỏe thường xuyên Từ bác sĩ lên phác đồ điều trị theo tiến trình phục hồi người bênh Sử dụng cảm biến sinh học để lấy tín hiệu từ người bệnh, sau đưa vào truyền vơ tuyến gồm board mạch vi xử lý Arduino Uno kết hợp với module nRF24L01 cho bên phát thu Dữ liệu ghi vào file text, sau truyền đến máy chủ thơng qua chương trình lập lich cho việc cập nhật liệu từ file text Phía bệnh viện bác sĩ, xây dựng web quản lý thơng tin bệnh nhân, tình trạng sức khỏe tiến trình khơi phục bệnh Từ khóa: hệ thống giám sát từ xa, cảm biến sinh học, mạng truyền vô tuyến, Arduino Uno, nRF24L01, PHP, HTML, CSS, Javascript, SQL Server 2008… Abstract The paper proposes a solution to build health monitoring system for patients after having a treatment Therefore, patients don't need to go to the medical center but their health status was still monitored regularly by doctors Since then doctors will give a regimen depending on recovered process of patients System uses biosensors to get signal from patients, then sent to radio transmitter including microprocessor board Arduino Uno combined with module nRF24L01 for both transmitter and receiver Data will be recorded to a text file, then it is transmitted to the host server through a program established for updating data from the text file At the hospital, there is a website built to manage patient's information, health status and recovered process Keywords: remote monitoring system, biosensor, wireless networks, Arduino Uno, nRF24L01, PHP, HTML, CSS, JavaScript, SQL Server 2008… số người mắc bệnh ngày gia tăng, nguyên nhân chủ yếu chế độ ăn uống thói quen sinh hoạt hàng ngày Để giúp bác sĩ kiểm tra tình trạng sức khỏe bệnh nhân trình điều trị mà người Giới thiệu Ngày nay, bên cạnh tiến vượt bậc kinh tế, khoa học kỹ thuật, công nghệ tiên tiến giúp cho đời sống người nâng cao Tuy nhiên, 39 bệnh không cần phải thường xuyên đến sở y tế để kiểm tra đồng thời giảm tải cho phía bệnh viện, hệ thống giám sát từ xa sử dụng [1, 5] Hệ thống cho phép bác sĩ giám sát bệnh nhân từ nhà riêng họ cách thu thập liệu từ cảm biến cố định người bệnh truyền thông qua kênh truyền vô tuyến [2] Thông tin từ bệnh nhân lưu vào database, dựa vào liệu bác sĩ đánh giá tình trạng bình phục bệnh nhân sau đưa chẩn đoán, phương pháp điều trị toa thuốc cho phù hợp Hệ thống sử dụng module Wi-Fi nRF24L01 kết hợp với board Arduino để truyền liệu [3, 11] Khi người bệnh đến điều trị lần tạo thông tin với mã tài khoản (ID) Mỗi người bệnh có mã ID riêng không trùng lặp với bệnh nhân khác Từ sau đó, thơng tin sức khỏe bệnh nhân tự động gửi lên máy chủ [8, 9] Bác sĩ quản lý hồ sơ liên quan đến bệnh nhân Trong trường hợp liệu tình trạng sức khỏe bệnh nhân vượt mức cho phép hệ thống cảnh báo bác sĩ, từ bác sĩ thực kê toa trực tuyến tư vấn từ xa cho bệnh nhân Trang web quản lý dùng ngôn ngữ lập trình thiết kế website PHP, HTML, CSS, Javascript Bài viết trình bày sơ đồ hệ thống giám sát, chức module sử dụng, lưu đồ thuật toán thực cho khối, nêu kết đạt Thiết kế hệ thống Sensors Arduino Uno nRF24L01 Transmiter Signal from patient Arduino Uno nRF24L01 Receiver Wireless channel Service Web Application Manager Hình 1: Sơ đồ hệ thống giám sát Hệ thống giám sát sức khỏe chia thành ba khối bao gồm khối lấy tín hiệu từ thể người bệnh, khối truyền liệu hệ thống web quản lý thông tin người bệnh Tín hiệu từ người bệnh lấy thơng qua cảm biến sinh học Khối truyền liệu sử dụng board Arduino kết hợp với module Wi-Fi nRF24L01 cho bên phát lẫn bên thu Hệ thống web chứa thơng tin bác sĩ, bệnh nhân tình trạng bình phục bệnh người bệnh Tất thơng tin lưu trữ máy chủ, với thông tin điều trị bệnh nhân cập nhật liên tục 40 Huyết áp áp lực máu động mạch bơm khắp thể trái tim Khi tim đập, co lại đẩy máu qua động mạch tới phần lại thể Huyết áp cao dẫn đến vấn đề nghiêm trọng nhồi máu tim, đột quỵ bệnh thận Cao huyết áp thường khơng có triệu chứng, cảm biến đo huyết áp giúp bác sĩ người nhà bệnh nhân theo dõi thường xuyên tình trạng sức khỏe người bệnh 4) Cảm biến đường huyết Cảm biến dùng để đo nồng độ glucose máu, đơn vị mg/dl mmol/l, giúp cho bệnh nhân tiểu đường theo dõi kiểm sốt đường huyết nhà Nó có giá trị lâm sàng quan trọng cho bệnh rối loạn chuyển hóa đái tháo đường, số hệ hôn mê thẩm thấu, hội chứng hấp thu quan trọng hạ đường huyết B Board Arduino Uno 2.1 Các module hệ thống A Cảm biến Body temperature sensor Pulse sensor Body Blood pressure sensor Glucometer sensor Hình 2: Thu thập tín hiệu cảm biến Cảm biến sử dụng viết cảm biến xung nhịp Ngồi cịn sử dụng số cảm biến khác cho hệ thống giám sát sức khỏe cảm biến nhiệt độ thể, cảm biến huyết áp, cảm biến đường huyết [4] 1) Cảm biến xung nhịp – Pusle sensor Cảm biến xung nhịp [10] dùng để đo nhịp tim hệ thống, kết nối đến board Arduino qua chân tương tự Thiết bị đo gắn bên da, áp lực dù nhỏ hệ mạch phát Sự thay đổi thể tích gây áp lực phát cách dùng ánh sáng đèn LED chiếu lên da đo lượng ánh sáng phản xạ trở lại diode quang Hình 4: Board mạch Arduino Uno Bo mạch Arduino sử dụng dòng vi xử lý 8-bit 32-bit mega AVR Atmel với hai chip phổ biến ATmega328 ATmega2560 Các dòng vi xử lý cho phép lập trình ứng dụng điều khiển phức tạp trang bị cấu hình mạnh với loại nhớ ROM, RAM Flash, ngõ vào số I/O có khả xuất tín hiệu PWM, ngõ đọc tín hiệu tương tự chuẩn giao tiếp đa dạng UART, Hình 3: Cảm biến xung nhịp 2) Cảm biến nhiệt độ - Temperature Cảm biến dung để đo nhiệt độ thể người bệnh Do có số bệnh điều trị kèm theo thay đổi nhiệt độ thể Vì vậy, cảm biến giúp bác sĩ theo dõi thân nhiệt người bệnh từ đưa phương án điều trị phù hợp 3) Cảm biến huyết áp - Blood pressure 41 SPI, I2C Thiết kế bo mạch nhỏ gọn, trang bị nhiều tính thơng dụng mang lại nhiều lợi cho Arduino, nhiên sức mạnh thực Arduino nằm phần mềm Mơi trường lập trình đơn giản dễ sử dụng, ngơn ngữ lập trình dễ hiểu dựa tảng C/C++ quen thuộc với người làm kỹ thuật Và quan trọng số lượng thư viện code viết sẵn chia sẻ cộng đồng nguồn mở lớn [6, 7] C Module nRF24L01 Module nRF24L01 board mạch thiết kế cho giải pháp truyền liệu không dây, băng tần 2.4GHz, sử dụng giao thức SPI để giao tiếp Management Center Signal sensors patient Board Arduino Uno Wireless Transmitter Receiver Module nRF24L01 Module nRF24L01 Web App Board Arduino Uno Admin Doctor Patient Appointment Healthcare Hình 6: Sơ đồ hệ thống giám sát Tín hiệu thu ghi vào file text tạo sẵn máy tính cá nhân đặt nhà bệnh nhân, file text chứa thông tin sức khỏe với mã ID người bệnh Khi dựa vào mã ID bệnh nhân mà thông tin file text cập nhật vào database thơng qua chương trình service dùng cho lập lịch cập nhật thơng tin định kỳ Phía bác sĩ xây dựng trang web quản lý viết ngôn ngữ lập trình PHP Trang web kết nối đến database để lấy thông tin bác sĩ bệnh nhân, sau hiển thị lên giao diện người dùng Từ bác sĩ theo dõi tình trạng sức khỏe người bệnh, đồng thời thực lên lịch hẹn với bệnh nhân B Truyền liệu 1) Truyền lưu liệu vào file text Đầu tiên nhúng thư viện hổ trợ truyền vô tuyến RF24 vào chương trình Gán chân CE nRF24L01 vào chân 9, chân CSN vào chân 10 board Arduino Dữ liệu gán vào chân tương tự board Arduino để truyền lên kênh truyền Tạo hệ thống truyền vô tuyến thông qua thư viện RF24 nhúng Khi kênh truyền sẵn sàng tiến hành đọc liệu nhận từ chân tương tự board Arduino phát, truyền sang phía thu Bên thu đọc liệu nhận ghép chuỗi để truyền vào cổng Serial Hình 5: Module nRF24L01 Do module nRF24L01 hoạt động tần số sóng ngắn 2.4G nên có khả truyền liệu tốc độ cao truyền nhận liệu điều kiện mơi trường có vật cản Module nRF24L01 có 126 kênh truyền, điều giúp ta truyền nhận liệu nhiều kênh khác 2.2 Giải vấn đề A Sơ đồ hệ thống giám sát Từ thể người bệnh lấy thông số cần thiết dựa vào cảm biến sinh học, đưa vào chân tương tự board Arduino phát Ở board Arduino phía phát viết chương trình truyền liệu thu với mã ID bệnh nhân điều trị thơng qua module nRF24L01 Để thu tín hiệu bên thu sử dụng board Arduino nRF24L01 42 Begin add library define pins alert message create radio channel F Channel available? T read data from analog pins send data over radio channel C Web ứng dụng cho quản lý 1) Cơ sở liệu Save data Receiver alert message channel available? T open open serial serial port port read read data data from from serial serial port port F read data from radio channel data data =! =! null null T Admin tbl_doctor F draw draw data data process data tbl_app Hình 7: Lưu đồ khối truyền liệu Quá trình lưu liệu vào file text thực hiện: Đầu tiên xác định mở cổng COM cho cổng cổng Serial kết nối với board Arduino thu Đọc liệu từ cổng Serial board Arduino thu gọi hàm lưu liệu vào file text, đồng thời biểu diễn liệu thu lên cửa sổ thay cho điện tâm đồ 2) Cập nhật liệu vào database Khi bắt đầu chạy service tiến hành lấy thời gian lập lịch so sánh với thời gian theo cặp phút giây Nếu thỏa điều kiện thực lấy đường dẫn đến thư mục lưu trữ file text Kiểm tra đường dẫn có tồn tiến hành đọc tất giá trị có file text theo dòng thực thi câu lệnh thêm liệu vào database Sau hồn tất q trình thêm liệu xóa giá trị tồn file text để cập nhật lần không bị trùng liệu Begin File path existence? F T Read all line data Get current time Insert database F Compare time together? T tbl_heartbeat Hình 9: Quan hệ bảng liệu Database giúp hệ thống quản lý thông tin bác sĩ người bệnh cách hợp lý Các bảng dùng hệ thống bao gồm: admin, tbl_doctor, tbl_patient, tbl_app, tbl_heartbeat Bảng tbl_app liên kết với bảng tbl_doctor thông qua d_id, liên kết với bảng tbl_patient thơng qua p_id Riêng bảng liệu tbl_heartbeat liên kết với bảng tbl_patient dựa vào p_id 2) Lưu đồ thuật toán hệ thống web Đăng nhập chức gần bắt buộc ứng dụng web, giúp người quản trị đảm bảo quyền người dùng Khi bắt đầu trang đăng nhập hệ thống yêu cầu nhập tên người dùng mật khẩu, tiến hành kiểm tra thông tin đăng nhập với liệu lưu trữ bảng tbl_admin Đối với user đăng nhập thuộc quyền admin phép thực tất chức hệ thống Quyền bác sĩ can thiệp vào hệ thống với chức liên quan đến bệnh nhân Riêng quyền bệnh nhân xem thơng tin có hệ thống Hệ thống trang web gồm chức năng: tạo thông tin bác sĩ / bệnh nhân, xem danh sách bác sĩ / bệnh nhân, tạo lịch hẹn bác sĩ bệnh nhân, xem tình trạng sức khỏe Khi tạo thông tin bác sĩ bệnh nhân, yêu cầu nhập thông tin vào trường tương ứng Khi thực chức lưu thông tin vào bảng database, hệ thống thực hiên kiểm tra trường bắt End End Set time start on p_id d_id write write data data to to text text file file write data to serial port tbl_patient Delete value in the text file Get the text file path End Hình 8: Lưu đồ cập nhật liệu 43 buộc phải nhập nhập đầy đủ thơng tin hệ thống lưu thông tin vào database chuyển sang hình hiển thị danh sách bác sĩ / bệnh nhân tương ứng Đối với hình hiển thị thơng tin thực chức sau: tìm kiếm nhanh, chỉnh sửa thông tin, hiển thị thông tin chi tiết, chức xóa thơng tin bác sĩ / bệnh nhân khỏi danh sách Đối với bác sĩ phép tạo lịch hẹn với người bệnh, bệnh nhân xem tiến trình điều trị bệnh Begin Input username Input password Alert message F Check info T Save user role; Home page Add doctor/ patient View doctor/ patient Input info Edit Info Edit info Display list detail doctor/ patient Search Alert message F Input Name or Id doctor Check role of user Login? T Require field empty? F T T Data existence? T F Check role of user Login? T Display list doctor/patient found Add Appointment Healthcare Check role of user Login? Choose patient; Input datetime; Input encoder Display health of patient T Alert message confirm F F F F Require field empty? T Data existence? Insert database; Display list doctor/patient Alert message Delete F Agree? T Update database; Display list doctor/patient Update database; Display list doctor/patient Require field empty? T F Check role of user Login? F T Insert database; Display list doctor End Hình 10: Lưu đồ thuật toán hệ thống web quản lý Đối với chức chỉnh sửa thông tin thực tương tự tạo thông tin với tất liệu hiển thị lấy từ database Để thực thi chức xóa thơng tin khỏi danh sách, xuất thơng báo xác nhận có muốn xóa thơng tin chọn khơng Nếu đồng ý xóa thơng tin khỏi danh sách cập nhật lại liệu database 2.3 Kết A Thu thập xử lí liệu Xem xét q trình đo nhịp tim, tín hiệu từ ngón tay người bệnh lấy thông qua cảm biến xung nhịp chuyển thành dạng sóng tương ứng đo từ oscilloscope thể hình 11 Đối với cảm biến khác thao tác thực diễn tương tự Hình 11: Tín hiệu nhận từ cảm biến 44 Tín hiệu đưa vào chân tương tự board Arduino phát Ở hai board thu phát nạp code cho việc truyền liệu Sau có liệu ghi vào cổng Serial board Arduino thu Tiến hành chạy chương trình xử lý việc ghi giá trị thu vào file text hiển thị kết thu chương trình Processing (hình 12) Phần lớn cửa sổ biểu diễn dạng sóng liệu cảm biến xung nhịp theo thời gian Trái tim lớn màu đỏ phía bên phải trình bày số nhịp tim phút (BPM) quyền truy cập vào trang web Sau đăng nhập thành công chuyển sang hình hệ thống Hình 13: Màn hình Login Màn hình tạo thơng tin với trường “Required” bắt buộc khơng để trống Cịn trường “Option” để trống Riêng trường “Default” thị giá trị mặc định, người quản trị chỉnh sửa, dùng tạo mã ID để bác sĩ / bệnh nhân có mã ID riêng biệt khơng trùng với nhau, giúp hệ thống dễ dàng kiểm sốt Hình 12: Dạng sóng tín hiệu từ cảm biến Nhịp tim bình thường người trưởng thành khoảng 60-100 BPM Đối với vận động viên thể thao, nhịp tim thấp hơn, khoảng 40-60 BPM Đa số người khỏe mạnh số nhịp tim thấp Nhưng nhịp tim giới hạn bình thường, hội chứng nhịp tim chậm Nhịp tim chậm vấn đề nghiêm trọng tim không bơm đủ máu giàu oxy cho thể B Web ứng dụng Để bắt đầu vào trang web hệ thống cách truy cập vào đường link localhost/HealthCareCenter/admin Giao diện xuất trang Login Chức hình Login quản lý thông tin người quản trị Đồng thời thực chia quyền cho phép tài khoản Hình 14: Màn hình tạo bác sĩ Danh sách người bệnh hiển thị thông qua giao diện hình 15 với tất liệu cần thiết truy vấn từ bảng tbl_patient Từ hình hiển thị danh sách bác sĩ / bệnh nhân thực chức xem thông tin chi tiết bác sĩ / bệnh nhân, chỉnh sửa thơng tin, xóa thông tin khỏi danh sách Riêng bệnh nhân theo dõi tiến trình bình phục bệnh 45 Hình 15: Màn hình danh sách bệnh nhân Hình 16: Màn hình hiển thị liệu Để xem trình trạng điều trị bệnh cần nhấn vào bệnh nhân muốn xem Lúc hệ thống dựa vào ID bệnh nhân mà thực câu truy vấn để lấy liệu từ database với liệu giá trị từ cảm biến xung nhịp cập nhật hàng ngày Khi có liệu trả dựa vào kết mà tiến hành phát họa biểu đồ biểu diễn tiến trình điều trị bệnh người bệnh Dữ liệu hiển thị gồm biểu đồ thay cho điện tâm đồ số nhịp tim người bệnh, tất liệu lọc theo ngày cập nhât (hình 16) Dựa vào kết số nhịp tim đo mà bác sĩ theo dõi trình trạng sức khỏe bệnh nhân Trong trường hợp nhịp tim nhanh chậm số cho phép tương ứng với độ tuổi, trình trạng sức khỏe cụ thể mà bác sĩ đưa lời cảnh báo phương án điều trị với bệnh nhân cách liện hệ tư vấn từ xa, yêu cầu bệnh nhân đến sở y tế trường hợp khẩn cấp Bác sĩ ghi tình trạng sức khỏe bệnh nhân vào trường “Remarks” hình bệnh nhân, người bệnh truy cập hệ thống biết tình trạng bệnh cá nhân để có biện pháp điều trị hiệu Bảng 1: Bảng thống kê kết Cảm Thiết Số Sai STT Tuổi biến bị y tế lượng lệch (BPM) (BPM) 1 - 10 10 84-119 83-121 1-2 10-20 10 64-102 68-101 1-4 21-30 10 69-82 70-80 1-2 31-40 10 54-90 55-88 1-2 41-50 10 70-89 68-88 1-2 >50 10 65-89 61-86 1-4 Bảng thống kê hiển thị kết đo lường từ cảm biến với độ tuổi tương ứng Số lượng người tham gia 10 cho độ tuổi từ trẻ em đến người lớn tuổi Kết phép đo lấy trung bình với thời gian thực khoảng phút, so sánh với dụng cụ y tế tham khảo (Omron HEM-7200) dùng đo số tim mạch Kết cho thấy hệ thống thiết kế với thiết bị y tế có sai lệch tương đối q trình đo thí nghiệm hệ thống giám sát thực đo tín hiệu từ đầu ngón tay người bệnh kết phụ thuộc vào tiếp xúc cảm biến ngón tay, cịn thiết bị y tế tham khảo tiến hành cánh tay Ưu điểm hệ thống so với sử dụng thiết bị y tế thiết kế nhỏ gọn liệu cập nhật liên tục lên database hệ thống giám sát 46 Kết luận Với hệ thống giám sát người bệnh trực tiếp đến sở y tế mà bác sĩ theo dõi điều trị bệnh Đồng thời người thân gia đình theo dõi trình trạng sức khỏe người bệnh Từ giúp cho tiến trình khơi phục bệnh diễn cách thuận lợi Việc truyền liệu dùng board Arduino Uno kết hợp với module Wi-Fi nRF24L01 thực cách dễ dàng, với chương trình thu phát liệu đơn giản, dễ hiểu Dữ liệu cập nhật liên tục hàng ngày thực cách tự động bật chương trnh Service máy tính Giao diện hệthống web quản lý thân thiện, có menu trợ giúp rõ ràng với chức thêm mới, tìm kiếm liệu thơng minh giúp người dùng thao tác thuận tiện, dễ dàng TÀI LIỆU THAM KHẢO 10 A B K.C Kavitha, "Wireless Health Care Monitoring," IJIRSET, vol 3, no 3, 2014 B G A D Anish Vahora, Ripal Patel, “Heart beat monitoring and wireless data logging using arm cortex A8,” IJRITCC, vol 2, no 8, Aug 2014 Ngày nhận bài: 21/12/2015 11 C H Zhurong Chen, J Liao, “Protocol architecture for wireless body area network based on nrf24l01,” IEEE ICAL, pp 3050 - 3054, Sept 2008 [Online] Available (12/10/2015): https://www.cookinghacks.com/shop/sensors M G Lipika Chatterjee, M K Nallakaruppan, “Transmission of emergency data over wireless networks by using biosensors,” IJARCSSE, vol 3, no 5, 2013 M Margolis, Arduino Cookbook OReilly Media, March 2011, ISBN: 9780596802479 [Online] Available (12/10/2015): http://www.arduino.cc/en/Guide/HomePage T M Michael Cook and J Trevathan, “A prototype home based environmental monitoring system,” SERSC, vol 7, no 6, pp 393 - 408, 2013 V Saurabh Prakash, “Real time monitoring of ECG signal using pic and web server,” IJET, vol 5, no 2, pp 733 – 736, 2013 Y V Prasad Kumari Nisha, “Heart rate monitoring and data transmission via bluetooth,” IJIERE, vol 2, no 2, 2015 Z L X J Zhu Yao-lin, Zhang Gao-qiang, “Design of wireless multipoint temperature transmission system based on nrf24l01,” IEEE BMEI, pp 780 - 783, 2011 Biên tập xong: 15/03/2016 47 Duyệt đăng: 20/03/2016 ... thường xuyên đến sở y tế để kiểm tra đồng thời giảm tải cho phía bệnh viện, hệ thống giám sát từ xa sử dụng [1, 5] Hệ thống cho phép bác sĩ giám sát bệnh nhân từ nhà riêng họ cách thu thập liệu từ... tiến hành cánh tay Ưu điểm hệ thống so với sử dụng thiết bị y tế thiết kế nhỏ gọn liệu cập nhật liên tục lên database hệ thống giám sát 46 Kết luận Với hệ thống giám sát người bệnh trực tiếp đến... kế hệ thống Sensors Arduino Uno nRF24L01 Transmiter Signal from patient Arduino Uno nRF24L01 Receiver Wireless channel Service Web Application Manager Hình 1: Sơ đồ hệ thống giám sát Hệ thống giám

Ngày đăng: 24/10/2020, 23:33

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w