Hằngngày các ỵ, bác sĩ không thểtúctrực bên cạnhbệnh nhân theo dõi tình hạng của họ cũngnhư pháthiệnbất thườngtừ cơ thể họmột cáchnhanh chóngvà kịp thời.Hơn nữa, những ngườicao tuổi hoặc
Trang 1Hội nghị Khoa học trẻ ỉần 5 năm 2023(YSC2023)-ỈUH
YSC5.F020
HEALTH MONITORING - HẸ THỐNG CẢNH BÁO CHĂM SÓC sức KHỎE
DựA TRÊN NÈN TẢNG loT
TÔN LONG PHƯỚC1’, MAIVĂNTRƯỜNG1,NGUYỄNHOÀNGDUY1
}Khoa Công nghệ Thông tin, TrườngĐại học Công nghiệp Thành phổ Hồ Chỉ Minh
*tonlongphuoc@iuh.edu.vn, mvantruong.dev@gmaiỉ.com, nguyenhoangduy.dev@gmail.com
Tóm tăt. Đại dịch Covid-19 đãcó ảnh hưởng lớn đến ngành ỵ tếtrêntoànthế giới, đặcbiệt là ởViệt Nam Nhân viênỵ tế và bác sĩ phảichămsóc một lượng bệnh nhân tăngđột biến, gây ra nhiều rủi ro khiến các bệnh nhân không được giámsát,chămsóc vàcảnh báo kịp thời.Nhậnthấy vấn đề này, chúng tôi đã phát hiển côngcụ giám sátbệnhnhân, gọi là Health Monitoring,dựa trên Internet of Things (IoT) với hai phân
hệ Web ứngdụng và ứngdụng hên di động, kết hợp trí tuệ nhântạo đểhỗ hợ bác sĩ theo dõi tình trạng bệnhnhân từ xavàcảnhbáo khi phát hiện bất thường hên cơthểbệnhnhân hong thời gian thực Công cụ nàybao gồmthiết bị đeo tayloT sửdụng board mạchArduinovà ESP8266để xửlýdữ liệu từ cảm biến và giámsát bệnh nhân hong thời gian thực Hệthống Web sử dụngReact,IS để xửlý phía frontend và Java (SpringBoot) để xửlý phía backend, trong khiứng dụng diđộngđượcviết bang React Native.Cả các phân
hệ Web,app vàthiết bịloTđềuđượckếtnối với nhau thông qua websocket để huyền dữ liệu giữa các phân
hệvà cung cấp cảnh báo kịpthời Hiện nay, chúng tôi đã thử nghiệm công cụ này với các sinh viên tại hường Đạihọc Công nghiệp TP.HCM và đã thu đượckếtquảtích cực,baogồm việc thu thập vàcảnh báo theo thời gian thực chobác sĩtừ bệnh nhânhên các phân hệ của hệ thống Trong tương lai, chúngtôi sẽ phát triển công cụ này cho nhiều nhóm bệnh khác nhauvà nâng cao độ chính xáccho việc chẩnđoán và cảnhbáo bằng cách thu thập nhiều thôngsốhơn từthiếtbị đeo tay
Từ khóa loT, Giám sát bệnh nhân, Phát hiện thời gianthực, Cảmbiến, giám sáttừxa, ReactJS, React Native, Spring Boot, Arduino, ESP8266, Websocket
HEALTH MONITORING loT-BASED HEALTH CARE SYSTEM
Abstract. The Covid-19 pandemic has significantly impacted the healthcare industry worldwide, especially in Vietnam Healthcare workers and doctors have had to care for a sudden surge of patients, resultingin many risks and patients not being monitored, caredfor, or alerted ontime To address these issues, we have developed a patient monitoring tool called Health Monitoring, based on the Internet of Things (IoT), with two subsystems: a web application and a mobile application, combined with artificial intelligence to assist doctors in remotely monitoring and detecting abnormalities in real-time The tool includes an loT wristband device usingArduino and ESP8266 to process data from sensors and monitor patients inreal time The web system uses ReactJS to process the frontend andJava (Spring Boot) to process diebackend, while the mobile applicationis written in React Native.All web, app, andloT subsystems are connected viaWebSockets to transmit databetween subsystems andprovidetimely alerts We have tested this tool with students atthe Industrial University of Ho Chi Minh City and obtained favorable results, including real-time datacollection and alerts for doctorsfrom patients across subsystems.In thefuture, we willdevelopthis toolfor various patientgroups andimprove diagnosticaccuracy and alerting by collecting moredata fromdiewristband device
Keywords loT, patient monitoring, real-time detection, sensor, remote monitoring, ReactJS, React Native, Spring Boot, Arduino, ESP8266, websocket
232 © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh
Trang 21 GIỚI THIỆU TÔNG QUAN
Trongthời đại côngnghệ số pháttriển nhanhchóngnhư hiện nay, Internet of Things (IoT)đã hở thành một trong những xuhướng côngnghệ đang được quan tâm và đầu tưrất nhiều loTlàmộthệ thống được thiết
kế để kết nốivà quảnlý các thiếtbị thông minh, cho phép chúng ta có thể điều khiển và giám sát cácthiết
bịtừxa thông qua internet Sự phát hiển của loT đã mở ra nhiều tiềm năngứng dụng hong nhiềulĩnh vực khác nhau,trong đó có lĩnhvực chămsóc sức khỏe Các thiếtbị ỵtế thông minh giúp bệnhnhân có thểtự theo dõi tình hạng sức khỏe củamình và cung cấp dữ liệu cho bác sĩ đểđưa ra chẩn đoánvà điều hị tốt hơn
Hiện nay, chăm sóc sức khỏeđang là một trong những vấn đề được quan tâm hàng đầu hong xã hội Tuy nhiên, việc quản lý và giám sát sức khỏecủamỗi người vẫn còn gặp nhiều khókhăn Trong năm 2019 thế giới phải đối mặt vớiđại dịch Covid - 19do vi-rút có tên SARS-CoV-2 gây ra, căn bệnh này ảnh hưởng rất lớn đến nhiều lĩnh vực trong đời sống vàxã hội, gâymột sứcépkhủng khiếp lênhệ thống ỵ tếtoàn cầu, trong thời điểm đó các bệnh viện gần như quá tải, bác sĩvà các nhân viên ỵ tế gần như kiệt quệ, vớisố lượngbệnh nhân gia tăng theocấp số nhân Hằngngày các ỵ, bác sĩ không thểtúctrực bên cạnhbệnh nhân theo dõi tình hạng của họ cũngnhư pháthiệnbất thườngtừ cơ thể họmột cáchnhanh chóngvà kịp thời Hơn nữa, những ngườicao tuổi hoặc những ngườisống một mình cũng cần có mộthệ thống cảnhbáo chăm sóc sứckhỏe để đảmbảo an toàn chosức khỏe của họ
Với sự phát triểncủaloT,việcxây dựng hệ thống cảnh báo chăm sóc sức khỏe dựa trên nền tảng loT hở nênkhả thihơn bao giờ hết và nhận thấy những bất cập trên với mụcđíchgiảm thiểu áp lực của các bácsĩ
và nhânviên ỵ tế cũngnhư tự độnghóa quỵ trình theo dõibệnh nhân, nghiêncứu này được sinh ravới mục tiêu qua việc theo dõi sức khỏe từxa với thiếtbị đeo tay ỵ tếđược cung cấp, hệ thống này sẽthu thập các chỉ số sức khỏe của bệnh nhân chuyển những thông số đó đến với Website và Application của bác sĩvà chuyên gia trong thời gianthực Neu nhận thấy những bất thường của bệnhnhântừthiếtbịloThệ thống sẽ thực hiệncảnh báo đến Application và đèn của thiếtbịloT Hệthống dựa vào các tập luật ỵ tế được ban hành, sử dụng dữ liệu để theo dõi vàphântích tựđộng, nhờ đó các bác sĩ có thể theo dõi tình hạng của bệnhnhântừxangay lập tức để đưa ra quyếtđịnh cần thiếtvàkịpthời cũngnhưlà nhận được những thông báo từhệthống để xửlýtình huống ỵtếkhẩn cấp
Mục tiêunghiêncứu nhằm mụcđích xây dựnghệ thống cảnhbáo thông minh từ xa kếthợp vớithiếtbị loT tập hung vào những bệnhnhân mắc bệnh Covid - 19 là chính Hệ thống sẽ đượcxây dựng cả hainền tảng Website và Application kết hợp vớithiết bị loT, hên nền tảng Website được xây dựng theo dạngCMS (Content Management System) hay cònđược gọi là hệ thống quảntrị nội dunggiúp chobác sĩhoặc chuyên gia có thể cậpnhật thay đổi dữ liệu trênWebsitecũng như lấy được dữ liệu từthiếtbị loT trong thời gian thực và hiểnthị lên Website Đốivới nền tảng Application được thiết kế dành chobác sĩ, khi nhận được tình trạng bấtthườngcủa bệnh nhântừthiết bị loT, app có nhiệm vụthông báo đếncho bácsĩtình hạng bất thường củabệnh nhân, bác sĩ sẽcó thểkịpthời quan sát tình trạng củabệnhnhân.Việc kết hợp hai nền tảng Website và Application sẽ giúp người dùng có thểquản lývà theo dõi sức khỏe của mình một cách toàn diện hênnhiều nền tảng khác nhau Cả hai nềntảng đều có thểđược tích hợp với các thiếtbị loT để thu thập vàquản lý dữ liệu sứckhỏe củangười dùng Việc cảnh báo tình hạng sức khỏenguy hiểm cũng được thực hiệnhên cảhai nền tảng để đảm bảo người dùng có thể can thiệp kịp thờivà giảmthiểu rủiro chosứckhỏe của họ
Bài báo của chúngtôi chialàm5 phần: Phần 1 Giới thiệu tổng quan về hệ thống; Phần 2Các công nghệ liên quan; Phần3 Công cụ Health Monitoring; Phần 4 Kiểm nghiệmthực tếvà Phần 5 Kếtluận và hướng phát triển Trong đó Phần 3là phần đóng góp chínhcủa bàibáo
2 CÁC CÔNG NGHẸ LIÊN QUAN
2.1 Những framework hỗ trợ phát triển ứng dụng
a) Spring Boot
SpringBootlà mộtextension của SpringFramework dùng đểpháthiển ứngdụngJava, được sửdụng để tạo ra cácứngdụngweb, mobile và desktop SpringBoot giúp cho việc phát hiển ứng dụngtrở nên nhanh chóngvà dễ dàng hơn bằng cách cung cấp nhiềutínhnăng mặc địnhvà giảmthiểusự cấu hình Kiến trúc Spring Boot bao gồm các thành phần cơ bản như: Repository Class Extending, Service Layer, Model, Controller (Hình Ỉ).Repository Class Extending: hỗ trợquá trình xây dựnghệ thống một cách nhanh chóng
Trang 3Hội nghị Khoa học trẻ tẩn 5 năm 2023(YSC2023)-ĨUH
hoặc cũng có thểlà các lớp chứacác phưong thứcxử lý, truy xuất dữ liệu (CRUD) dolập trình viên viếtra Service Layer là lớp dịch vụ chứa cácphương thức (hàm)xử lý các yêu cầu như chỉnh sửa, lóp Service thường sửdụngcác phương thứccủa các lớp trong Repository Class Extending (băngcách gọi tói một hay kêt hợp nhiêu phương thức vói nhau) đễtruy xuât, thêm, xóa dữliệu trong cơ sở dữliệu Model làthành phần được đínhkèm theo các truyvấn củaServicesLayer xuống Cữ sở dữ liệu Model đóng nhiều vai trò quantrọng như phát sinhhệ Cữ sở dữ liệu theo liên kết các lớp của lập trình viên, chuyển đổi kết quả truy xuất từ cơ sở dữliệu thành cácthực thể lớp Controller lặ thành phần giao tiếp trực tiếp vớiphía client, tồn tại dưới dạng các API Model có trách nhiệm xử lý yêu câu của client, xác minhcácyêu câu đó.Model truy cậpđến phương thứcphù họp trongService Layerđể đạtđược kết quả mong muốn, trảkết quả về cho phía client [1,2], Springboot có một số ưu diễm sau: Giảmthiểu thòi gian phát triển, tàngtính ồn định; tính dễ quản lý: spring Boot giúp cho việc quãn lý ứng dụng trở nên dễ dànghơn băng cách cungcâpcác công cụ quản lývàkhả năng giám sát Ngoàiraspnngboot cũng có những mặt hạn chê: Cân kiên thức vê spring Framework; tính phức tạp trong một số trường hợp: Trong một sốtrường họp, Spring Bootcó thễ trở nên phức tạp và khó hi ễu đôi vói ngườim ới bãt đâu hoặc vói các ứng dụng cótính độc 1 ập cao
Spring Boot flow architecture
Hình 1: Kiến trúc Spring Boot [2]
b) ReacMS - React Native
ReactTS và React Native đều làcác cõng nghệ pháttriển ứng dụngweb được phát triển bởi Facebook Tuy nhiên, chúng có mục đích vàứng dụngkhácnhau ReactlSlà mộtthưviện JavaScript được sửdụngđễ xây dựng các ứng dụng web động ReactJS chophép các nhà phát triển tạo ra các giao diện người dùng (Uĩ) động vàtươngtác với các thànhphân khácnhau của ứng dụng webmột cách dễ dàng ReacUS sửdụng một phưong pháp lập trình gọi là "reactive programming" đễ tạo ra các ứng dụng web động nhanh chóng
và dễ bảo trì React Nativelàmột framework phát tri ễn ứng dụngdi động được phát triển dựa trênReactJS [3], React Native cho phép các nhà phát triểntạo ra các ứngdụng diđộng đa nêntảng (cross-platform) băng cách sử dụngJavaScript Vói React Native, các nhàphát triển có thể sửdụng các thành phân cuaReactJS
đễ xây dựng các giao diện ngưòi dùng động cho ứng dụng di độngcủa mình React Nativecũng cung cấp các thành phânvà tính năng đễ tương tác với các thành phân khác nhau của hệthôngdi động nhưcamera, GPS,và các cảm biên khác [4],
c) Firebase
Firebase là một nên tảng dịch vụ đám mây do Google cung câp, đượcsử dụng đễ phát triển ứng dụng web
và di động Firebasecung câp nhiêudịch vụ khác nhau đễ giúp các nhà phát triển xây dựngcác ứng dụng web và di động nhanh chóng và dễ dàng Một sô công dụng của firebase được sử dụng trong Health Monitoring như: xácthực người dùng cho phépxác thựcvà quảnlýngườidùngcủa ứng dụng mộtcách dễ dàng,thông báo đẫy cho phépgửi thôngbáo đẩy đến ngưòị dùngcủa ứng dụng một cách dễ dàng, cloud functions cho phép xây dựng các hàm chạy trên đám mây đễ xử lýcác sự kiệntrongứng dụng [5],
234 © 2023 Trường Đại học Công nghiệp Thành phố Hổ Chí Minh
Trang 4d) Thiết bị loT
Chúng tôi tạo thiết bị đeo tay cho bệnh nhân bằng những thiết bịsauHình 2'. Mạch Arduino Uno+ Wifi R3 Ằtmega328P + ESP8266, mạch được tích hợp module Wifi ESP8266 giúp kết nốimạngkhôngdây rà truyền dữliệu qua mạng Internet Cảmbiến hồng ngoại không tiếp xúc MLX90614, sử dụng công nghệ hồng ngoại đonhiệtđộ của các vật thể mà không cần tiếp xúc trực tiếp Cảm biến nhịptim vàoxy trong máuMAX30102, cảm biếnđo nhịp tim vànồng độ oxy trong máu,sử dụng côngnghệ phát quang để đo lường.Led RGBloạiđèn ledđa sắccókhảnăng phát ra ánh sáng vớibamàu cơ bản là đỏ(R), xanh lá (G),
và xanh dương(B) MànhìnhOled 1,3inch 128x64 I2C - SSD1306 một loại màn hình hiển thị OLED nhỏ gọn có độ phân giải 128x64pixel và được kếtnối thông qua giao thức I2C.Mạchsạcpin lithium 3.IN là một loạimạch đỉện được sử dụng để sạc cácloại pin lithium-ion có điện áp 3.7V [6],
Mân hình Olcd 1.3 inch 128x64 I2C -
SSD13O6
Cảm biến nh(p tim và oxy trong máu
MAX30102
Hình 2: Linh kiện tạo thiết bị loT [6]
e) Jenkins
Jenkins làmột công cụ tíchhợp liên tục(CI - Continuous Integration)và hên tục triển khai (CD - Continuous Deployment)mãnguồnmở.Jenkins được viết bằng Java vàcóthể chạy trênnhiều nền tảng khác nhau,bao gồmcả Windows, MacOS vàLinux.Jenkins cho phép các nhà phát triển kiểmtravàxây dựng mã nguồn của ứng dụng một cách tựđộng Nótự động lấy mã nguồntừkholưutrữ mã nguồn(ví dụnhưGit), xây dựng ứng dụng,kiểmtra vàthông báo kết quả đến các nhà phát triển Việc sử dụng Jenkinsgiúp tăng tốc
độ phát triển, giảm thiểu lỗi và đảm bảo tính ổnđịnhcủa ứng dụng đạt được tínhlinh hoạt cho cácdự án phát triển phần mềm [7],
f) Cloud Computing với AWS
Cloud Computing là mộtmôhình tính toán dựa trên internet, chophép người dùngtruy cập vào các tài nguyên tính toán, lưu trữ vàphần mềm thôngqua mộtmạnglưới máy chủ từxa Nócóthểgiúp cho doanh nghiệp tiết kiệmchi phí và tăngtính linh hoạt trong việcquản lý tài nguyên Vói AW s, ngườidùngcóthể
dễ dàng tạora các máy chủ ảo, lưutrữdữ liệu, chạy ứng dụngvà triển khai các dịch vụ trựctuyến AWS cũngcung cấp các công cụ quản lýtàinguyênnhưAmazon CloudWatch vàAWS CloudFormation, giúp người dùng quảnlýcác tài nguyên của họ trong một môi trường đám mây [8]
EC2 (Elastic Compute Cloud) làmột dịch vụtính toánđám mây của AWS, cung cấp cho người dùng khả năng tạo và quẫn lýcác máy chủ ảo (instances) trên nền tảngđám mây của AWS VớiEC2,người dùng có thể tạora các máy chủ ảo vói các tài nguyên như CPU,RAM, ồ cứng, mạng và băngthông mạngtùy chỉnh Vói tính năng tự động mởrộng,EC2 có thể tăng hoặc giảmsố lượng các máychủ ảo tự động dựa trên tài nguyên yêu cầu của úng dụng [9],
S3 (Simple storage Service) là một địch vụ lưutrữ đám mây củaAWs,cung cấp cho người dùng khảnăng lưu trữ vàquản lý dữ liệu trong một môi trường đámmây linh hoạt,bảomậtvà tiết kiệm chiphí Với S3,
Trang 5Hội nghị Khoa học trễ lẩn 5 năm 2023(YSC2023}-[UH
người dùng có thể lưu trữ và truycập dữ liệutừ bất kỷ đâu trên thế giói thông qua internet.Dữliệu được lưu trữ trênS3 là phi cấutrúc,cóthềlà các tệp tin, hình ảnh, video hay dữliệu của ứng dụng.S3 cungcấp khảnăng lưu trữ khống giớihạn, nghĩa là người dùng cóthễlưu trữ bấtkỳlượngdữliệunào mà họ cần
CloudFront là một dịch vụ CDN (Content Delivery Network)của AWS, cungcấpkhả năng tăngtốc độtruy cập và phàn phối nộidung trên toàn cầu.Với CloudFront, người dùng có thềtăngtốc độ tải các tài nguyên của họ, bao gồm cáctrangweb,ứng dụng web,nội dungvideovà hình ảnh, bằngcách đưa nội dưng gần vói người dùng CloudFront sử dụng một mạng lưóicácmáy chủ đám mây trên toàn cầu đềlưutrữ vàphân phối nộidung tới ngưòidùng [11]
Hình 3: Lợi ích dịch vụ Cloud Computings [8]
TRÊN NỀN TẢNG loT
3.1 Giới thiệu
Như bài toán đã được trình bày trong phầngiới thiệu, chúng tôi đã xây dựng công cụ Health Monitoring vói sựkết hợp củanhiều côngnghệ tiên tiến.PhầnBackend được xây dựngtrênnềntảngSpring Boot, đảm nhậnvaitròtạora cácRestful-API và xửlý các request từ phíaclient, đồngthời trả về các response để phục
vụ cho client.Dữ liệuđược lưu trữ trongMongoDBgiúptăngtốcđộ lấy dữliệu, phù hợp cho dự án có tính chất real-time.PhầnFrontend được xây dụng trên nền tảngReacữS, chịu tráchnhiệm xâydựng giao diện website và gửi các request xuống server, phục vụ choviệc hiển thị đồ thị dường cácchỉ số củabệnh nhẵn cho bác sĩ hoặcchuyêngiatheo dõi trong thời gian thực ReacUS cũng thực hi ệncác chức năng quảnlý hệ thốngnhư quản lý bệnh nhân, bác sĩ, tậpluật,mầmbệnh, và nhiều chức năng khác Phần ứng dụng di động cho Ảndroid/IOS dược xây dựng trên nền tảng ReactNative, phục vụ cho chức năng thông báo bệnhnhân
có tình trạng bất thường tới bác sĩchịu tráchnhiệm của bệnh nhân đó và các chức năng liên quancủa bác
sĩ như quảnlý bệnh án,xem bệnh nhân đangđiềutrị (Hình 4) Để đảm bảoứng dụng áp dụng được vào thực tế, chúng tôi đã sử dụng một số dịch vụ của AWSnhư Elastic Compute Cloud (EC2) đề tạo máy ảo dùng đễ cài đặt server, S3 để lưu trữfiletài liệu và hình ảnh chotoàn bộ hệ thống và CloudFront đễ tăng tốc độ tải nguồn cho hệ thống.Đồng thời, chúngtôi cũng sử dụng Jenkins để hỗtrợ cho CVCD, giúp những cậpnhật của hệ thống được cập nhật nhanhchóng vàliêntục Đễ đảm bảo tính bảo mật và độ tin cậy cho
dữ liệu trong hệthống, chúng tôi đã sử dụng các giải pháp mã hóadữliệu, bao gồm mã hóa dữ liệu trong truyền thông và mã hóa dữliệu trong lưu trữ Ngoài ra, chúng tôi cũng đã đảm bảo tính khả dụng vàhiệu suất của hệ thống bằngcáchtriển khai các giải pháp nhưLoad Balancer và Auto Scaling Group, giúp tăng khả năng chịu tải và đâm bảohệ thống luôn hoạt động ồn định, đáp ứng được sốlượng lớn người dùng sử dụng đồngthòi
236 © 2023 Trường Đại học Công nghiệp Thành phế Hồ Chí Minh
Trang 6Hình 4: Sơ đồ hoạt động của hệ thống Health Monitoring
3.2 Kiến trúc của hệ thong
Chúngtôi sử dụng kiếntrúc Single Page Application (SPA) đểxâydựng ứng dụng Health Monitoring Kiến trúcđượcsử dụng phổ biến trong các ứng dụng web và app hiện đại Kiến trúc SPA hoạt động dựa trên việc tải một lần các tài nguyên cần thiết cho ứng dụng, sau đó sử dụng JavaScript để xửlý và hiển thịcác nội dung trêncùng một trangwebhoặcmộtmàn hình mobile Cơchế hoạt độngcủa SPA có thể được mô
tả nhưsau: Khi người dùng truy cập vào ứng dụng,trìnhduyệtsẽ tải một lần các tàinguyêncần thiết cho ứng dụng, bao gồmcác tệpHTML, css vàJavaScript Sau khi tải xong,trình duyệt sẽhiển thị một trang webgiao diện đongiản, thườnglà một trang chào đónhoặc trang đăng nhập Khi người dùng thao tác trên trang web, JavaScript sẽ được sử dụng để tải cácdữliệu mói từ máychủ và hiển thịcác phần nội dung mói lên trang web mà không cần tải lạitoàn bộ trang.Khingưòi dùng chuyểnđồigiữacáctrang, JavaScript sẽ được sử dụng đểthay đồi nội dungcủa trang màkhông cần tải lại toàn bộ trang.SP A sử dụng các API của trình duyệtđể thay đỗi URL của trang mà không cần tải lại toànbộtrang,giúp cải thiện trảinghiệm người dùng và hỗtrợ việc chiasẻHênkết (Hình 5)
Hình 5: Kiến trúc Single Page Application trong Health Monitoring
Trang 7Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH
3.3 Phân tích hệ thong Health Monitoring
Đốitượngngười dùng cho hệ thống Health Monitoring gồm 3 tác nhân chính: chuyêngia, bác sĩ, thiếtbị loT.Trong đó, chúngtôitậptrung vào chức năng chínhcủa hệ thống là phát hiện bất thường, xây dựngtập luậthỗtrợviệccảnhbáo, theodõitình trạng bệnh nhân cũng như phát hiện bấtthường của bệnh nhân trong thờigian thực.Ngoài ra,nhũng chức năng phụ cũng được đưavào hệ thống để hỗ trợ việc quản lý hệ thống
vàtăng trải nghiệm người dùng Từ những chức năng trên, chúng tôitập trung vào các chức năng chính như:Xem tình trạng bệnhnhân, gửi dữ liệu bệnh nhân lên hệ thống, đồng bộtrạng thái thiết bị, gửi thông báo đến bác sĩ.Sau đóchúng tôi mởrộng các chức năng tươngứng trong Hình6
Trongmô hình use-case chúng tôi trình bày, gồm có haithànhphần actor chínhmô tả cho hai đối tượng người dùng mà chúng tôi hướng đến(chuyên gia, bác sĩ) Trong đó, những use-case chính và phức tạp về nghiệpvụđòi hỏi nhiều xử lý cho hệ thống đó là: use-case quản lý thiết bịvà use-case quản lí tập luật ytế Ngoài ra, chúng tôi cũngmở rộng cácuse-case cho các chức năng của hệ thống nhằm tạo đỉều kiệnthuận lợi cho ngườidùng là chuyên giavàbác sĩ
Từcác usecase đã phân tíchởtrên thì chúng tôi đã phác thảo ra được lược đồ quan hệ thực thểcủaHealth Monitoring Trong đó, chúng tôichú trọng đến bảng Medical Record và bảngNotification hai bảng này giúpkhánhiềudữ liệu cho chức năng chính là xem tình trạngbệnh nhân và gửi thông báo chobác ã khi gặp bắt thường Ngoài ra thì còn các bảng dữ liệu khác bổ trợ cho chức năng chinh đồngthời làmrõ các mối quan hệ tronglúc xử lý dữliệu
Hình6: Sơ đồ use case của hệ thống Health Monitoring
238 © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh
Trang 83.4 Giao diện đồ họa
Hệ thống Health Monitoring triển khai nền tảng Web appvà Mobile app Web app đượctriển khai theo dạng CMS, Mobile app được xây dựngđể chạy trên cảhainềntảng Androiđ/iOS Công cụ nàychúng tôi quan tâm đếntrảinghiệm củangười dùng, giao diện thân thiệnvàđảm bảo tính ốn địnhcho cảwebsitevà app Sauđây chúng tôi xin giới thiệu một vài giao diện và chức năng củaHealth Monitoring trênWeb và App Sau khi chuyên giahoặc bácsĩđãng nhập sẽhiện ra giao diện dashboard hiển thịbiểu đồđườngcủa mộtbệnh nhân Đối vói chuyên gia, có thể chọn bất kì bệnh nhânnào có trong hệ thống.Đối vói bác sĩ, chọn bệnh nhânmà bác sĩđóquản lý.Dựa trênbệnhnhân đã chọn websitesẽhiển thị biểu đồ đườnggồm
3 đường: đường màu xanh dưong đại diện chonhịp tim, đường màu đen đạidiện cho phần trăm SPO2 trong máu và đường màu xanh lá đại diện chonhiệt độ cơ thể của bệnhnhân Biểuđồ chạytrong thời gian thực mỗi 5 giây, những dữ liệubệnh nhân trước đó sẽ được đưa xuống database
Hình 7: Giao diện dashboard Dashboard là giao diện trang chủcủawebsite Theo dõi bệnh nhân tùy theo lựa chọn của bác sĩ hoặc chuyên gia Hiểnthị biểuđồ đườngvớicácchỉsố như nhịp tim, SPO2trong máu, nhiệt độ cơ thể do thiếtbị loT truyềnlên.“vùng 1”: Chọnbệnh nhân để xem tinh trạng của bệnh nhân vừa chọn Mỗibệnh nhân sẽcó một bệnh án hiện tại, bệnh án đó sẽchobiết bệnh nhânđangsử dụng thiếtbị nào, từ thiết bịsẽ hiển thị các thông
số đã chọn, “vùng 2”: Biểu đồ đường thểhiện nhiệt độ cơ thể của bệnh nhân đã chọn, “vùng 3”: Biểu đồ đườngthểhiệnnhịp tim củabệnhnhân đã chọn, “vừng 4”: Biểuđồ đườngthểhiện SPO2 trong máu của bệnh nhân đã chọn Hình7
Trang 9Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH
tí ealthy Life
e Dashboard
Quàn li bAc *ĩ
|ẳLQuàn li bênh nhân
* Quân li mãm bệnh
Quán lí tip luật y tô
Quán li bênh viện
Quán lí khoa
Quàn lí bệnh an
8
Hình 8: Giao diện quàn lý thiết bị
1
Quản lý thiết bị: giao diệnhỗ trợxemdanh, sách thiếtbị của hệthống, cũngnhư tạo, cậpnhật vàxóathiết
bị “vùng 1”: Nút dùng để thêmthông tin một thiết bị mới “vùng 2”: Nút dùng đểsửa một thông tin thiếtbị “vùng 3”: Nút 0 dùng đểxóamềm một thiết bị nào đó “vùng 4”: Ô tìm kiếm thiết bị theo từ khóa, “vùng 5”: Filtertrạngthái thiết bị theo ngườidùng chọn, “vùng 6”: Filter bệnh viện sử dụng thiếtbị theongười dùng chọn, “vùng 7’: Thểhiệntồngcácdữ liệu thiết bị đang hiển thị của table, “vùng 8”: Các nút thao tác chuyểntrang Hình 8
Hình 9: Giao diện thêm thiết bị
“vùng ”: Nút thêm, khi ngườidùngnhấn sẽ thựchiệnchức năng thêm thiết bị “vừng 2”: Nút thoát, khi ngưòidùng nhấnsẽ thực hiện chức năng thoát khỏimodalvà trở vềtrang chinh,“vùng 3”: Tương tự “vùng 2” Hình 10
240 © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh
Trang 10Hình 10: Giao diện quản lý mầm bệnh Quảnlý mầm bệnh: giao diện hỗtrợxem danh sách mầm bệnhcủa hệthống, cũng nhưtạo, cập nhật và xóa thiết bị “vừng 1”: Nút D dùng để thêm thôngtinmột mầm bệnhmớivào hệthống, “vùng2”: Nút 2? dùng đểcập nhậtmột thông tinmầm bệnhđã có trong hệthống, “ràng 3”: Nút ỡ dùng đểxóa mềm một mầm bệnh nào đó “vùng 4”: Tim kiếmmầm bệnh theo từ khóa,“vùng 5”: Hiển thị tổng số mầm bệnh có trong hệ thống và sốdữ liệu đanghiển thị.“vùng 6”: Cácnút thực hiện chức năng chuyển trang
Hình 11: Thiết bị đeo tay dùng cho bệnh nhân trong hệ thống Health Monitoring Thiết bị loT có cảm biến nhiệt độ,nhịp tim, SPO2dùngđểthuthậpdữliệu.MạchArduino Uno + Wifi R3 Atmega328P + ESP8266 trong đó ESP8266 trung tâm đểxử lý các dữ liệu và đồng bộdữ liệu với hệ thống bao gồm: Màn hình OLED hiển thị thông tin các dữliệu cơ thể; cảm biếnnhịp tim và oxy trong máu MAX30102 (sửdụngđể đo nhịp timvà oxy trong máucủabệnh nhân khi bệnh nhân chạmvào cảm biến); cảm biến nhiệthồng ngoại khôngtiếp xúc MLX90614 (sử dụng đo nhiệt độ cơ thểcủa bệnhnhân khi bệnh nhân chạmvào cảm biến);đèn L ed RGB sẽbậtđền và thayđỗi màu sắctùytheotrạng thái,(trạng thái bệnh