3.5.2. Giao diện web
Hình 3.14. Trang đăng ký
Trang đăng ký dạng form để người dùng khai báo thông tin người sử dụng. Các thông tin được nhập sẽ được lưu vào cơ sở dữ liệu người dùng. Dưới cùng là nút để submit. Danh sách các form yêu cầu nhập bao gồm:
Họ và tên Mật khẩu Xác nhận lại mật khẩu Ngày sinh Giới tính Địa chỉ email Điện thoại Địa chỉ b. Trang đăng nhập Hình 3.15. Trang đăng nhập Trang đăng nhập dạng form gồm hai:
Số điện thoại đăng ký
Mật khẩu
Hình 3.16. Danh sách bệnh nhân Danh sách bệnh nhân: Mã số bệnh nhân Họ tên Ngày sinh Giới tính Điện thoại Email Địa chỉ d. Trang danh sách bác sĩ Hình 3.17. Danh sách bác sĩ Danh sách bác sĩ: Mã số bác sĩ Họ tên Chức danh Cơ quan
Điện thoại Email e. Trang bệnh án (a) (b) Hình 3.18. Trang bệnh án:
(a) Nhập số bệnh nhân; (b) Kết quả bệnh án
Trang bệnh án gồm trang đăng nhập với mã số bệnh nhân. Kết quả tương ứng là bệnh án bao gồm: Tên bệnh nhân Ngày sinh Giới tính Chẩn đoán của bác sĩ Bác sĩ khám Chức vụ Thời gian khám
Chương 4: CÀI ĐẶT VÀ THỬ NGHIỆM
4.1. Cài đặt ứng dụng
Ứng dụng có chức năng thu thập dữ liệu bệnh nhân từ máy đo, xử lý, hiển thị kết quả trên màn hình thiết bị, gửi dữ liệu đo tới trung tâm để lưu vào hồ sơ bệnh nhân.
Dữ liệu được sử dụng cho ứng dụng được lấy từ cơ sở dữ liệu của bệnh nhân loạn nhịp tim MIT-BIH Arrhythmia Database. Phần lớn được đo ở chuyển đạo II (lead II) với các điện cực được gắn ở ngực bệnh nhân. Tín hiệu analog được qua bộ lọc có dải thông 0.1 – 100 Hz và bộ lọc triệt tần 60 Hz và được số hóa bởi bộ ADC. [10] Dữ liệu số hóa có dạng binary (định dạng file *.dat) được convert sang dạng text (file *.csv). Ứng dụng smartphone sử dụng file *.csv để hiển thị kết quả trên màn hình cũng như gửi về trung tâm để lưu trong hồ sơ bệnh nhân.
Về cấu trúc, ứng dụng gồm có 7 activity:
Splash Activity: là activity thông báo tên ứng dụng, xuất hiện ngay khi ứng đụng được chạy, tự động chuyển sang activity Menu sau 2 giây.
Menu Activity: gồm các nút để người dùng lựa chọn các chức năng của ứng dụng
Bluetooth Activity: lấy dữ liệu từ Bluetooth
Chart Activity: hiển thị kết quả điện tim trên màn hình smartphone
Post Text Activity: gửi bản tin do người dùng nhập vào tới trung tâm
Post File Activity: gửi file dữ liệu điện tim (*.csv) tới trung tâm
Help Activity: hiển thị thông tin liên lạc với kỹ thuật viên và bác sĩ
Ứng dụng được viết cho phiên bản SDK tối thiểu là SDK 8, tức là chạy trên hệ điều hành Android 2.2 hoặc cao hơn.
4.1.1. Cài đặt bộ công cụ phát triển
Môi trường phát triển bao gồm:
Công cụ phát triển Java JDK
Eclipse IDE
Công cụ phát triển Android SDK
Công cụ mô phỏng
Gói ADT Bundle được dùng là adt-bundle-windows-x86_64-20140702 bao gồm bộ công cụ SDK và Eclipse tích hợp plug-in ADT chạy trên Windows 7 64 bit.
Công cụ mô phỏng được sử dụng là GenyMotion phiên bản 2.3.0. Máy ảo dùng để mô phỏng chạy Android 2.3.7 API 10 có độ phân giải màn hình là 480x800 pixels.
4.1.2. Project
Hình 4.1. Màn hình Eclipse Các thành phần quan trọng của project bao gồm:
Thư mục src: chứa các file java, bao gồm hai gói
Gói org.afree.chart.demo bao gồm các lớp để vẽ đồ thị
o ChartHierachyActivity.java o DemoView.java Gói uet.phuc.ecg: o SplashActivity.java o MenuActivity.java o BluetoothActivity.java o DataView.java o ChartActivity.java o PostTextActivity.java o PostFileActivity.java o HelpActivity.java
Thư mục libs: chứa các thư viện sử dụng trong chương trình
afreechart-0.0.4.jar
commons-codec-1.6.jar commons-logging-1.13.jar fluent-hc-4.3.6.jar httpclient-4.3.6.jar httpclient-cache-4.3.6.jar httpcore-4.3.3.jar httpmime-4.3.6.jar Thư mục res:
Drawable: chứa các file ảnh *.jpg và *.png sử dụng làm logo và icon cho ứng dụng.
layout: chứa các file xml thiết kế giao diện cho các activity tương ứng
o splash.xml o menu.xml o bluetooth.xml o posttext.xml o postfile.xml o help.xml
values: các file xml định nghĩa các màu, kích thước và các string sử dụng trong ứng dụng. o color.xml o dimens.xml o string.xml o styles.xml AndroidManifest.xml:
Khai báo các activity
Các permission để ứng dụng có thể sử dụng các phần cứng như Bluetooth, Internet
4.2. Cài đặt Server
Sử dụng gói XAMPP cho Windows phiên bản 1.8.3-5 bao gồm máy chủ Apache phiên bản 2.4.10, cơ sở dữ liệu MySQL phiên bản 5.6.20, PHP phiên bản 5.5.15.
Cấu hình XAMPP tại file /xampp/apache/conf/httpd.conf, sử dụng port 80 và port 7443 thay cho port 443 do xung đột với VMWare.
Cơ sở dữ liệu: tạo cơ sở dữ liệu MySQL tại địa chỉ http://localhost/phpmyadmin. Bao gồm 1 cơ sở dữ liệu ecg có 5 bảng với các thuộc tính và ràng buộc như trong hình 4.2 dưới đây.
Hình 4.2. Cơ sở dữ liệu
Web page viết bằng PHP bao gồm:
Trang đăng ký thông tin, được lưu vào cơ sở dữ liệu: register.php
Trang xử lý thông tin đăng ký: RegisterController.php
o Kiểm tra các thông tin hợp lệ
o Trường hợp thông tin hợp lệ thì tạo tài khoản trên cơ sở dữ liệu
Trang đăng nhập: login.php
Trang xử lý thông tin đăng nhập : LoginController.php
o So sánh thông tin đăng nhập với cơ sở dữ liệu
o Nếu thông tin đúng hiển thị lời chào, thông tin sai yêu cầu nhập lại
Trang nhận dữ liệu text từ ứng dụng : receiver.php
Trang nhận file dữ liệu từ ứng dụng: receiver2.php
Trang danh sách bệnh nhân
Trang danh sách bác sĩ
Trang bệnh án :
o Truy vấn : so sánh tên, số bệnh nhân, bác sĩ
o In ra các trường tên bệnh nhân, tên bác sĩ, chẩn đoán
4.3. Thử nghiệm 4.3.1. Ứng dụng
Biên dịch project trên Eclipse, chạy ứng dụng trên công cụ mô phỏng Emulator GenyMotion sử dụng máy ảo Android 2.3.7 API 10. Chạy các chức năng Bluetooth, vẽ đồ thị và gửi dữ liệu dạng text và file data tới localhost. Kết quả hiển thị trên công cụ mô phỏng emulator GenyMotion và logcat của Eclipse cho thấy ứng dụng chạy đúng theo yêu cầu.
Chạy ứng dụng trên máy thật : HTC Desire A8181 chạy hệ điều hành Android 2.2 cho kết quả giống như chạy trên Emulator.
4.3.2. Server