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
Hộ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’, MAI VĂN TRƯỜNG1, NGUYỄN HOÀNG DUY1 }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ên toàn thế giới, đặc biệt là ở Việt Nam Nhân viên ỵ tế và bác sĩ phải chăm só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ám sát, chăm sóc và cảnh báo kịp thời Nhận thấy vấn đề này, chúng tôi đã phát hiển công cụ giám sát bệnh nhân, gọi là Health Monitoring, dựa trên Internet of Things (IoT) với hai phân hệ Web ứng dụng và ứng dụng hên di động, kết hợp trí tuệ nhân tạo để hỗ hợ bác sĩ theo dõi tình trạng bệnh nhân từ xa và cảnh báo khi phát hiện bất thường hên cơ thể bệnh nhân hong thời gian thực Công cụ này bao gồm thiết bị đeo tay loT sử dụng board mạch Arduino và ESP8266 để xử lý dữ liệu từ cảm biến và giám sát bệnh nhân hong thời gian thực Hệ thống Web sử dụng React,IS để xử lý phía frontend và Java (Spring Boot) để xử lý phía backend, trong khi ứng dụng di động được viết bang React Native Cả các phân hệ Web, app và thiết bị loT đều được kết nố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ịp thờ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 Đại học Công nghiệp TP.HCM và đã thu được kết quả tích cực, bao gồm việc thu thập và cảnh báo theo thời gian thực cho bác sĩ từ bệnh nhân hên các phân hệ của hệ thống Trong tương lai, chúng tôi sẽ phát triển công cụ này cho nhiều nhóm bệnh khác nhau và nâng cao độ chính xác cho việc chẩn đoán và cảnh báo bằng cách thu thập nhiều thông số hơn từ thiết bị đeo tay Từ khóa loT, Giám sát bệnh nhân, Phát hiện thời gian thực, Cảm biến, giám sát từ 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, resulting in many risks and patients not being monitored, cared for, or alerted on time 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 using Arduino and ESP8266 to process data from sensors and monitor patients in real time The web system uses ReactJS to process the frontend and Java (Spring Boot) to process die backend, while the mobile application is written in React Native All web, app, and loT subsystems are connected via WebSockets to transmit data between subsystems and provide timely alerts We have tested this tool with students at the Industrial University of Ho Chi Minh City and obtained favorable results, including real-time data collection and alerts for doctors from patients across subsystems In the future, we will develop this tool for various patient groups and improve diagnostic accuracy and alerting by collecting more data from die wristband 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 Hội nghị Khoa học trẻ ỉần 5 năm 2023(YSC2023)-ỈUH 1 GIỚI THIỆU TÔNG QUAN Trong thời đại công nghệ số phát triển nhanh chóng như hiện nay, Internet of Things (IoT) đã hở thành một trong những xu hướng công nghệ đang được quan tâm và đầu tư rất nhiều loT là một hệ thống được thiết kế để kết nối và quản lý các thiết bị thông minh, cho phép chúng ta có thể điều khiển và giám sát các thiế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ều lĩnh vực khác nhau, trong đó có lĩnh vực chăm sóc sức khỏe Các thiết bị ỵ tế thông minh giúp bệnh nhân có thể tự theo dõi tình hạng sức khỏe của mình và cung cấp dữ liệu cho bác sĩ để đưa ra chẩn đoán và đ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ỏe của mỗ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 - 19 do 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ây một sức ép khủng khiếp lên hệ 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ới số lượng bệnh nhân gia tăng theo cấp số nhân Hằng ngày các ỵ, bác sĩ không thể túc trực bên cạnh bệnh nhân theo dõi tình hạng của họ cũng như phát hiện bất thường từ cơ thể họ một cách nhanh chóng và kịp thời Hơn nữa, những người cao tuổi hoặc những người sống một mình cũng cần có một hệ thống cảnh báo chăm sóc sức khỏe để đảm bảo an toàn cho sức khỏe của họ Với sự phát triển của loT, việc xâ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ên khả thi hơn bao giờ hết và nhận thấy những bất cập trên với mục đích giảm thiểu áp lực của các bác sĩ và nhân viên ỵ tế cũng như tự động hóa quỵ trình theo dõi bệnh nhân, nghiên cứu này được sinh ra với mục tiêu qua việc theo dõi sức khỏe từ xa với thiết bị đ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 gian thực Neu nhận thấy những bất thường của bệnh nhân từ thiết bị loT hệ thống sẽ thực hiện cảnh báo đến Application và đèn của thiết bị 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ân tích tự động, nhờ đó các bác sĩ có thể theo dõi tình hạng của bệnh nhân từ xa ngay lập tức để đưa ra quyết định cần thiết và kịp thời cũng như 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êu nghiên cứu nhằm mục đích xây dựng hệ thống cảnh báo thông minh từ xa kết hợp với thiết bị loT tập hung vào những bệnh nhân mắc bệnh Covid - 19 là chính Hệ thống sẽ được xây dựng cả hai nền tảng Website và Application kết hợp với thiết bị loT, hên nền tảng Website được xây dựng theo dạng CMS (Content Management System) hay còn được gọi là hệ thống quản trị nội dung giúp cho bác sĩ hoặc chuyên gia có thể cập nhật thay đổi dữ liệu trên Website cũng như lấy được dữ liệu từ thiết bị loT trong thời gian thực và hiển thị lên Website Đối với nền tảng Application được thiết kế dành cho bác sĩ, khi nhận được tình trạng bất thường của bệnh nhân từ thiết bị loT, app có nhiệm vụ thông báo đến cho bác sĩ tình hạng bất thường của bệnh nhân, bác sĩ sẽ có thể kịp thời quan sát tình trạng của bệnh nhâ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ên nhiều nền tảng khác nhau Cả hai nền tảng đều có thể được tích hợp với các thiết bị loT để thu thập và quản lý dữ liệu sức khỏe của người dùng Việc cảnh báo tình hạng sức khỏe nguy hiểm cũng được thực hiện hên cả hai nền tảng để đảm bảo người dùng có thể can thiệp kịp thời và giảm thiểu rủi ro cho sức khỏe của họ Bài báo của chúng tôi chia làm 5 phần: Phần 1 Giới thiệu tổng quan về hệ thống; Phần 2 Các công nghệ liên quan; Phần 3 Công cụ Health Monitoring; Phần 4 Kiểm nghiệm thực tế và Phần 5 Kết luận và hướng phát triển Trong đó Phần 3 là phần đóng góp chính của bài bá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 Spring Boot là một extension của Spring Framework dùng để phát hiển ứng dụng Java, được sử dụng để tạo ra các ứng dụng web, mobile và desktop Spring Boot giúp cho việc phát hiển ứng dụng trở nên nhanh chóng và dễ dàng hơn bằng cách cung cấp nhiều tính năng mặc định và giảm thiểu sự 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ựng hệ thống một cách nhanh chóng © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh 233 Hộ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ứa các phưong thức xử lý, truy xuất dữ liệu (CRUD) do lập trình viên viết ra Service Layer là lớp dịch vụ chứa các phươ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ụng các phương thức của các lớp trong Repository Class Extending (băng cá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 đính kèm theo các truy vấn của Services Layer xuống Cữ sở dữ liệu Model đóng nhiều vai trò quan trọng như phát sinh hệ 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ác thực thể lớp Controller lặ thành phần giao tiếp trực tiếp với phí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 minh các yêu câu đó Model truy cập đến phương thức phù họp trong Service 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ảm thiểu thòi gian phát triển, tàng tí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àng hơn băng cách cung câp các công cụ quản lý và khả năng giám sát Ngoài ra spnngboot 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 Boot có thễ trở nên phức tạp và khó hi ễu đôi vói người m ớ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át triển ứng dụng web được phát triển bởi Facebook Tuy nhiên, chúng có mục đích vàứng dụng khác nhau ReactlSlà một thư viện JavaScript được sử dụng đễ xây dựng các ứng dụng web động ReactJS cho phép các nhà phát triển tạo ra các giao diện người dùng (Uĩ) động và tương tác với các thành phân khác nhau của ứng dụng web mộ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 Native là một framework phát tri ễn ứng dụng di động được phát tri ển dựa trên ReactJS [3], React Native cho phép các nhà phát triển tạo ra các ứng dụng di động đa nên tảng (cross-platform) băng cách sử dụng JavaScript 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 động của mình React Native cũng cung cấp các thành phân và tính năng đễ tương tác với các thành phân khác nhau của hệ thông di độ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, được sử dụng đễ phát triển ứng dụng web và di động Firebase cung câp nhiêu dịch vụ khác nhau đễ giúp các nhà phát triển xây dựng cá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ác thực người dùng cho phép xác thực và quản lý người dùng của ứng dụng một cách dễ dàng, thông báo đẫy cho phép gửi thông báo đẩy đến ngưòị dùng củ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ện trong ứng dụng [5], 234 © 2023 Trường Đại học Công nghiệp Thành phố Hổ Chí Minh Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH d) 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ị sau Hì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ối mạng không dây rà truyền dữ liệu qua mạng Internet Cảm biến hồng ngoại không tiếp xúc MLX90614, sử dụng công nghệ hồng ngoại đo nhiệ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ịp tim và oxy trong máu MAX30102, cảm biến đo nhịp tim và nồng độ oxy trong máu, sử dụng công nghệ phát quang để đo lường Led RGB loại đèn led đa sắc có khả năng phát ra ánh sáng với ba màu cơ bản là đỏ (R), xanh lá (G), và xanh dương (B) Màn hình Oled 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 128x64 pixel và được kết nối thông qua giao thức I2C Mạch sạc pin lithium 3.IN là một loại mạch đỉện được sử dụng để sạc các loạ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ích hợp liên tục (CI - Continuous Integration) và hên tục triển khai (CD - Continuous Deployment) mãnguồn mở Jenkins được viết bằng Java và có thể chạy trên nhiều nền tảng khác nhau, bao gồm cả Windows, MacOS và Linux Jenkins cho phép các nhà phát triển kiểm tra và 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ồn từ kho lưu trữ mã nguồn (ví dụ như Git), xây dựng ứng dụng, kiểm tra và thông báo kết quả đến các nhà phát triển Việc sử dụng Jenkins giúp tăng tốc độ phát triển, giảm thiểu lỗi và đảm bảo tính ổn định của ứng dụng đạt được tính linh hoạt cho các dự án phát triển phần mềm [7], f) Cloud Computing với AWS Cloud Computing là một mô hình tính toán dựa trên internet, cho phép người dùng truy cập vào các tài nguyên tính toán, lưu trữ và phần mềm thông qua một mạng lưới máy chủ từ xa Nó có thể giúp cho doanh nghiệp tiết kiệm chi phí và tăng tính linh hoạt trong việc quản lý tài nguyên Vói AW s, người dùng có thể dễ dàng tạo ra các máy chủ ảo, lưu trữ dữ liệu, chạy ứng dụng và triển khai các dịch vụ trực tuyến AWS cũng cung cấp các công cụ quản lý tài nguyên như Amazon CloudWatch và AWS CloudFormation, giúp người dùng quản lý 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ới EC2, người dùng có thể tạo ra các máy chủ ảo vói các tài nguyên như CPU, RAM, ồ cứng, mạng và băng thông mạng tùy chỉnh Vói tính năng tự động mở rộng, EC2 có thể tăng hoặc giảm số lượng các máy chủ ả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ưu trữ đám mây của AWs, 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 đám mây linh hoạt, bảo mật và tiết kiệm chi phí Với S3, © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh 235 Hội nghị Khoa học trễ lẩn 5 năm 2023(YSC2023}-[UH người dùng có thể lưu trữ và truy cập dữ liệu từ bất kỷ đâu trên thế giói thông qua internet Dữ liệu được lưu trữ trên S3 là phi cấu trúc, có thề là các tệp tin, hình ảnh, video hay dữ liệu của ứng dụng S3 cung cấp khả năng lưu trữ khống giới hạn, nghĩa là người dùng có thễ lưu trữ bất kỳ lượng dữ liệu nào mà họ cần [10] _ _ ~ T _ X.,, ; J CloudFront là một dịch vụ CDN (Content Delivery Network) của AWS, cung cấp khả năng tăng tốc độ truy cập và phàn phối nội dung trên toàn cầu Với CloudFront, người dùng có thề tăng tốc độ tải các tài nguyên của họ, bao gồm các trang web, ứng dụng web, nội dung video và hình ảnh, bằng cách đưa nội dưng gần vói người dùng CloudFront sử dụng một mạng lưói các máy chủ đám mây trên toàn cầu đề lưu trữ và phân phối nội dung tới ngưòi dùng [11 ] Hình 3: Lợi ích dịch vụ Cloud Computings [8] 3 HEALTH MONITORING: CÔNG cụ CẢNH BÁO CHĂM SÓC sức KHỎE DựA 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ần giới thiệu, chúng tôi đã xây dựng công cụ Health Monitoring vói sự kết hợp của nhiều côngnghệ tiên tiến Phần Backend được xây dựng trên nền tảng Spring Boot, đảm nhận vai trò tạo ra các Restful-API và xửlý các request từ phía client, đồngthời trả về các response để phục vụ cho client Dữ liệu được lưu trữ trong MongoDB giúp tăng tốc độ lấy dữ liệu, phù hợp cho dự án có tính chất real-time Phần Frontend được xây dụng trên nền tảng ReacữS, chịu trách nhiệm xây dựng giao diện website và gửi các request xuống server, phục vụ cho việc hiển thị đồ thị dường các chỉ số của bệnh nhẵn cho bác sĩ hoặc chuyên gia theo dõi trong thời gian thực ReacUS cũng thực hi ện các chức năng quản lý hệ thống như quản lý bệnh nhân, bác sĩ, tập luật, mầm bệ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 React Native, phục vụ cho chức năng thông báo bệnh nhân có tình trạng bất thường tới bác sĩ chịu trách nhiệm của bệnh nhân đó và các chức năng liên quan của bác sĩ như quản lý bệnh án, xem bệnh nhân đang điều trị (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 AWS như Elastic Compute Cloud (EC2) đề tạo máy ảo dùng đễ cài đặt server, S3 để lưu trữ file tài liệu và hình ảnh cho toàn bộ hệ thống và CloudFront đễ tăng tốc độ tải nguồn cho hệ thống Đồng thời, chúng tôi cũng sử dụng Jenkins để hỗ trợ cho CVCD, giúp những cập nhật của hệ thống được cập nhật nhanh chóng và liên tụ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óa dữ 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ằng cách triể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ảo hệ thống luôn hoạt động ồn định, đáp ứng được số lượng lớn người dùng sử dụng đồng thòi 236 © 2023 Trường Đại học Công nghiệp Thành phế Hồ Chí Minh Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH Hình 4: Sơ đồ hoạt động của hệ thống Health Monitoring 3.2 Kiến trúc của hệ thong Chúng tôi sử dụng kiến trúc Single Page Application (SPA) để xây dựng ứng dụng Health Monitoring Kiến trúc được sử 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ên cùng một trang web hoặc một màn hình mobile Cơ chế hoạt động của SPA có thể được mô tả như sau: Khi người dùng truy cập vào ứng dụng, trình duyệt sẽ tải một lần các tài nguyên cần thiết cho ứng dụng, bao gồm các tệp HTML, css và JavaScript Sau khi tải xong, trình duyệt sẽ hiển thị một trang web giao diện đon giản, thường là một trang chào đón hoặ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ác dữ liệu mói từ máy chủ 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ại toàn bộ trang Khi ngưòi dùng chuyển đồi giữa các trang, JavaScript sẽ được sử dụng để thay đồi nội dung củ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àn bộ trang, giúp cải thiện trải nghiệm người dùng và hỗ trợ việc chia sẻ Hên kết (Hình 5) Hình 5: Kiến trúc Single Page Application trong Health Monitoring © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh 237 Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH 3.3 Phân tích hệ thong Health Monitoring Đối tượng người dùng cho hệ thống Health Monitoring gồm 3 tác nhân chính: chuyên gia, bác sĩ, thiết bị loT Trong đó, chúng tôi tập trung vào chức năng chính của hệ thống là phát hiện bất thường, xây dựng tập luật hỗ trợ việc cảnh báo, theo dõi tình trạng bệnh nhân cũng như phát hiện bất thường của bệnh nhân trong thời gian thực Ngoài ra, nhũng chức năng phụ cũng được đưa và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ôi tập trung vào các chức năng chính như: Xem tình trạng bệnh nhâ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ình 6 Trong mô hình use-case chúng tôi trình bày, gồm có hai thành phần actor chính mô 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ệp vụ đò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 y tế Ngoài ra, chúng tôi cũng mở rộng các use-case cho các chức năng của hệ thống nhằm tạo đỉều kiện thuận lợi cho người dùng là chuyên gia và 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ủa Health Monitoring Trong đó, chúng tôi chú trọng đến bảng Medical Record và bảng Notification hai bảng này giúp khá nhiều dữ liệu cho chức năng chính là xem tình trạng bệnh nhân và gửi thông báo cho bá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 đồng thời làm rõ các mối quan hệ trong lúc xử lý dữ liệu Hình 6: 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 Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH 3.4 Giao diện đồ họa Hệ thống Health Monitoring triển khai nền tảng Web app và Mobile app Web app được triển khai theo dạng CMS, Mobile app được xây dựng để chạy trên cả hai nền tảng Androiđ/iOS Công cụ này chúng tôi quan tâm đến trải nghiệm của người dùng, giao diện thân thiện và đảm bảo tính ốn định cho cả website và 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ủa Health Monitoring trên Web và App Sau khi chuyên gia hoặc bác sĩ đãng nhập sẽ hiện ra giao diện dashboard hiển thị biểu đồ đường của một bệnh nhân Đối vói chuyên gia, có thể chọn bất kì bệnh nhân nào có trong hệ thống Đối vói bác sĩ, chọn bệnh nhân mà bác sĩ đó quản lý Dựa trên bệnh nhân đã chọn website sẽ hiển thị biểu đồ đường gồm 3 đường: đường màu xanh dưong đại diện cho nhịp tim, đường màu đen đại diện cho phần trăm SPO2 trong máu và đường màu xanh lá đại diện cho nhiệt độ cơ thể của bệnh nhân Biểu đồ chạy trong thời gian thực mỗi 5 giây, những dữ liệu bệnh nhân trước đó sẽ được đưa xuống database M ealthy Life o Ồ Hình 7: Giao diện dashboard Dashboard là giao diện trang chủ của website 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ển thị biểu đồ đường với các chỉ số như nhịp tim, SPO2 trong máu, nhiệt độ cơ thể do thiết bị loT truyền lên “vùng 1”: Chọn bệnh nhân để xem tinh trạng của bệnh nhân vừa chọn Mỗi bệnh nhân sẽ có một bệnh án hiện tại, bệnh án đó sẽ cho biết bệnh nhân đang sử dụng thiết bị 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 đồ đường thể hiện nhịp tim của bệnh nhân đã chọn, “vừng 4”: Biểu đồ đường thể hiện SPO2 trong máu của bệnh nhân đã chọn Hình 7 © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh 239 Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH tí ealthy Life e Dashboard 1 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ị Quản lý thiết bị: giao diện hỗ trợ xem danh, sách thiết bị củ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ùng để thêm thông tin một thiết bị mới “vùng 2”: Nút dùng để sửa một thông tin thiết bị “vùng 3”: Nút 0 dùng để xóa mề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”: Filter trạng thái thiết bị theo người dùng chọn, “vùng 6”: Filter bệnh viện sử dụng thiết bị theo người dùng chọn, “vùng 7’: Thể hiện tồng các dữ liệu thiết bị đang hiển thị của table, “vùng 8”: Các nút thao tác chuyển trang Hình 8 Hình 9: Giao diện thêm thiết bị “vùng 1”: Nút thêm, khi người dùng nhấn sẽ thực hiện chức năng thêm thiết bị “vừng 2”: Nút thoát, khi ngưòi dùng nhấn sẽ thực hiện chức năng thoát khỏi modal và 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 Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH Hình 10: Giao diện quản lý mầm bệnh Quản lý mầm bệnh: giao diện hỗ trợ xem danh sách mầm bệnh củ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ông tin một mầm bệnh mới vào hệ thống, “vùng 2”: Nút 2? dùng để cập nhật một thông tin mầ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ếm mầ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 đang hiển thị “vùng 6”: Các nú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, SPO2 dùng để thu thập dữ liệu Mạch Arduino 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ến nhịp tim và oxy trong máu MAX30102 (sử dụng để đo nhịp tim và oxy trong máu của bệnh nhân khi bệnh nhân chạm vào cảm biến); cảm biến nhiệt hồng ngoại không tiếp xúc MLX90614 (sử dụng đo nhiệt độ cơ thể của bệnh nhân khi bệnh nhân chạm vào cảm biến); đèn L ed RGB sẽ bật đền và thay đỗi màu sắc tùy theo trạng thái, (trạng thái bệnh © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh 241 Hội nghị Khoa học trẻ lần 5 nám 2023(YSC2023)-ỈUH nhân không chạm rào cảm biến đèn xanh lá, trạng thái bệnh nhân bình thường xanh dương đậm, trạng thái bất thường xanh dương phát quang); Pin hỗ trợ pin cho thiết bị loT Hình 12: ECS Cluster Monitoring trên AWS cho hệ thống Health Monitoring 4 KIẾM NGHIỆM THựC TẾ Chúng tôi sử dụng dịch vụ ECS Cluster của AW s để triển khai hệ thống, EC s Cluster giúp quản lý và triển khai các ứng dụng trong một môi trường điều khiển đốm mây ECS Cluster cho phép chúng tôi chạy các ứng dụng container trên các máy ảo (EC 2 instances) được quản lý bởi ECS Đồng thời quản lý các tài nguyên của chúng tôi thông qua giao diện quản lý web hoặc các API được cung cấp bỏi AWS Chúng tôi có thể tự động triển khai các ứng dụng container, quản lý các phiên bản container và giám sát các container trong cluster (Hình 12) CPU utilization (%) Chỉ số đo lường tỷ lệ phần trăm của CPU đang được sử dụng so với tổng khả Status check failed năng của CPU có sẵn trên các instance Chỉ số dao động từ 0% đến 100% (count) Đon vị: % Network in (bytes) Tổng số lần mà bất kỳ kiềm tra trạng thái nào (cả System Status Checks và Instance Status Checks) thất bại trong một khoảng thời gian nhất định Network out (bytes) Đon vị: count Network packets in Chỉ số này thễ hiện lưu lượng dữ liệu đang được gửi đến máy chủ hoặc máy ảo (count) thông qua giao diện mạng, số liệu này xác định khối lưọng lưu lượng mạng đến Network packets out cho một úng đụng duy nhất (count) Đơn vị: byte Chỉ số này thể hiện lưu lượng dữ liệu đang được gửi đi từ máy chủ hoặc máy ảo thông qua giao diện mạng, số liệu này xác định khối lượng lưu lượng mạng đến cho một ứng dụng duy nhất Đơn vị: byte Chỉ số này đo lường số lượng gói tin mạng đã được nhận vào qua giao diện mạng của máy chủ hoặc máy ảo trong một khoảng thời gian cụ thể số liệu này xác định khối lượng lưu lượng đến về số lượng gói trên một ứng dụng Đon vị: count Chỉ số này đo lường số lượng gói tin mạng đã được gửi đi từ máy chủ hoặc máy ảo qua giao diện mạng trong một khoảng thòi gian cụ thể Đon vị: count 242 © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh Hội nghị Khoa học trẻ ỉần 5 năm 2023(YSC2023)-ỈUH Disk reads (bytes) Là một thông số hong giám sát hệ thống và lưu lượng LO (Input/Output) của các 0 đĩa hên máy chủ hoặc máy ảo Chỉ số này đo lường số lần đọc dữ liệu từ Disk read operations 0 đĩa trong một khoảng thời gian cụ thể (operations) Đơn vị: byte Là một thông số quan trọng trong giám sát hiệu suất và hoạt động của 0 đĩa Disk writes (bytes) (disk) trên máy chủ hoặc máy ảo Chỉ số này đo lường số lần thực hiện các hoạt động đọc từ 0 đĩa trong một khoảng thời gian cụ thể Disk writes Đơn vị: count operations Giám sát và đánh giá hiệu suất của 0 đĩa (disk) hên máy chủ hoặc máy ảo Chỉ (operations) số này đo lường khối lượng dữ liệu đã ghi vào 0 đĩa hong một khoảng thời gian cụ thể CPU credit usage Đơn vị: byte (count) Thông số giám sát hiệu suất và hoạt động của 0 đĩa (disk) hên máy chủ hoặc máy ảo Chỉ số này đo lường số lần thực hiện các hoạt động ghi dữ liệu lên 0 CPU credit balance đĩa trong một khoảng thời gian cụ thể (count) Đơn vị: count Chỉ số này giúp người quản trị đo lường mức tiêu thụ CPU Credits, từ đó đánh giá hiệu suất CPU thực tế của EC2 instance Theo dõi "CPU credit usage" giúp người quản hị theo dõi việc sử dụng CPU Credits để biết khi nào instance đang tiêu thụ nhiều CPU Credits và có thể tiến hành các biện pháp điều chỉnh nếu cần thiết Đơn vị: count Chỉ số này giúp người quản trị biết số lượng CPU Credits còn lại trong tài khoản của EC2 instance Điều này giúp đảm bảo rang instance có đủ CPU Credits để đáp ứng yêu cầu xử lý trong thời gian tới cung cấp thông tin về việc sử dụng và tích lũy CPU Credits, từ đó người quản trị có thể đánh giá hiệu suất CPU thực tế của EC2 instance và xem liệu nó có đang hoạt động ở mức burstable hay không Đơn vị: count 5 KÉT LUẬN VÀ HƯỚNG PHÁT TRIỂN Bài báo chúng tôi đã hình bày giải pháp xây dựng hệ giám sát, cảnh báo thông minh cho bệnh nhân theo thời gian thực có kết hợp các thiết bị đeo tay trong lĩnh vực loT Hệ thống chúng tôi đề xuất Health Monitoring đã đáp ứng được hầu hết những chức năng cơ bản của một thiết bị cảnh báo thông minh như thu thập huyết áp, nhịp tim, nhiệt độ cơ thể và các chỉ số khác một các tự động Dữ liệu này được tự động gửi đến hệ thống xử lý trung tâm thông qua các thiết bị loT Hệ thống xử lý hung tâm sử dụng những tập luật (từ chuyên gia) kết hợp với thiết bị loT đảm bảo sự đồng bộ tình trạng của bệnh nhân với trạng thái của thiết bị theo thời gian thực Từ đó, bài toán tự động hóa quỵ trình theo dõi bệnh nhân đã được hệ thống giải quyết một cách gọn gàng và nhanh chóng Các thông số của bệnh nhân sẽ được hệ thống cập nhật liên tục trong thời gian thực Health Monitoring được xây dựng trên nền tảng Arduino, sử dụng Mongo Cloud làm database lưu hữ dữ liệu và một so service của firebase, sử dụng mô hình Agile và Scrum để quản lý quá hình phát triển Website được viết theo hệ thống CMS (Content Management System) sẽ quản lý toàn bộ chức năng của hệ thống, Mobile dành cho bác sĩ với một số chức năng tương tự với website Hệ thống cũng đã được hiển khai trong mô hình thực tế với máy chủ và dữ liệu hiển khai trên đám mây của AWS Chúng tôi cũng đã dùng hệ thống này cho các bệnh nhân sốt (Sốt xuất huyết, sốt siêu vi) tại Tp.HCM, đồng thời cũng lấy ý kiến về chuyên gia trong lĩnh vực này Hiện chúng tôi cũng nhận được nhiều ý kiến tích cực về hệ thống Health Monitoring về tính khả thi và hiệu quả Tuy nhiên, hệ thống vẫn còn một số hạn chế như chưa kết hợp thêm AI (thu thập và phân tích dữ liệu thành các tập luật tự động) trong việc xử lý các thông số của bệnh nhân để đồng bộ với các thành phần hên thiết bị loT Chưa hiển khai những công nghệ hả lời tự động như chat GPT vào website và mobile Trong tương lai, chúng tôi sẽ hoàn thiện các chức năng này trong hệ thống Đồng thời cũng bổ sung một số chức năng tiện ích khác như: với mobile thêm chức năng chat và call video tư vấn hực tiếp với bác sĩ; tối ưu thêm các chức năng filter, search cho các module © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh 243 Hội nghị Khoa học trẻ ỉần 5 năm 2023(YSC2023)-ỈUH trong hệ thống; bổ sung tính năng cảnh báo SOS cho thiết bị loT cũng như thông tin về GPS của bệnh nhân trong các trường hợp khẩn cấp TÀI LIỆU THAM KHẢO [1], Sim, w., Choi, w.: Spring boot-based web application development for providing information on security vulnerabilities and patches for open source software Journal of Korea Society of Digital Industry and Information Management 17(4) (2021) 77-83 [2], Spring boot Architecture, [online] https://dzone.com/articles/spring-boot-architecture-andworkflow [Accessed 14/06/2023] [3], ReactJS Library Version 18 (Release March 16, 2022), [online], https://react.dev/, Accessed 01/06/2023 [4], React Native Library Version 0.71 (Release January 12, 2023), [online], https://reactnative.dev/ Accessed 01/06/2023 [5], Firebase Google Service, [online], https://firebase.google.com/ Accessed 01/06/2023 [6], Adruino VN “Cộng đồng Adruino Việt Nam”, [online], http://arduino vn/ Accessed 01/06/2023 [7], Jenkins “Jenkins Build great things at any scale”, [online], https://www.jenkins.io/ Accessed 01/06/2023 [8], “Điện toán đám mây là gì?”, [online], https://aws.amazon.com/vi/what-is-cloudcomputing/, Accessed 02/06/2023 [9], Amazon Web Service -EC2 (2023), [online], Secure and resizable Cloud Compute, https://aws.amazon.com/ec2, Accessed 02/06/2023 [10], Amazon Web Service - S3 (2023), [online], Cloud Object Storage, https://aws.amazon.com/s3/, Accessed 02/06/2023 [11], Amazon Web Service - CloudFront (2023), [online], Content Delivery Network, https://aws.amazon.com/cloudfront/, Accessed 02/06/2023 244 © 2023 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh