Sử dụng giao thức ASTM và chuẩn HL7 trong việc trao đổi dữ liệu giữa các thiết bị y tế Sử dụng giao thức ASTM và chuẩn HL7 trong việc trao đổi dữ liệu giữa các thiết bị y tế Sử dụng giao thức ASTM và chuẩn HL7 trong việc trao đổi dữ liệu giữa các thiết bị y tế luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
Trang 1SỬ DỤNG GIAO THỨC ASTM VÀ CHUẨN HL7 TRONG VIỆC
TRAO ĐỔI DỮ LIỆU GIỮA CÁC THIẾT BỊ Y TẾ
LUẬN VĂN THẠC SĨ KỸ THUẬT
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-
Đỗ Tiến Lộc
SỬ DỤNG GIAO THỨC ASTM VÀ CHUẨN HL7 TRONG VIỆC TRAO
ĐỔI DỮ LIỆU GIỮA CÁC THIẾT BỊ Y TẾ
Chuyên ngành: Truyền thông và mạng máy tính
LUẬN VĂN THẠC SĨ KỸ THUẬT
…
Truyền thông và mạng máy tính
NGƯỜI HƯỚNG DẪN KHOA HỌC:
TS PHẠM HUY HOÀNG
Hà Nội – Năm 2017
Trang 3LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi
Chương trình, dữ liệu nêu trong luận văn là trung thực và chưa từng được công bố trong bất ký công trình nào khác
Học viên
Đỗ Tiến Lộc
Trang 4MỤC LỤC
MỤC LỤC i
DANH MỤC CÁC TỪ VIẾT TẮT iii
DANH MỤC CÁC BẢNG iv
DANH MỤC CÁC HÌNH VẼ v
MỞ ĐẦU 1
Chương 1 TÌM HIỂU VỀ GIAO THỨC ASTM 5
1.1 Giới thiệu chung 5
1.1.1 Lịch sử hình thành và phát triển 5
1.1.2 Các phiên bản phổ biến 5
1.2 Cấu trúc bản tin 5
1.3 Phương thức truyền bản tin 6
1.3.1 Khởi tạo 6
1.3.2 Truyền dữ liệu 6
1.3.3 Kết thúc 7
1.3.4 Phục hồi lỗi 7
1.3.5 Hạn chế 7
1.4 Bản tin ASTM trong truyền dữ liệu giữa thiết bị y tế và máy tính 7
1.4.1 Bản tin yêu cầu từ máy xét nghiệm chuyển sang máy tính 7
1.4.2 Bản tin trả lời yêu cầu từ máy tính đến máy xét nghiệm 7
1.4.3 Bản tin kết quả từ máy xét nghiệm chuyển sang máy tính 7
1.4.4 Các loại bản tin ASTM 8
Chương 2 TÌM HIỂU VỀ CHUẨN HL7 14
2.1 Giới thiệu chung 14
2.1.1 Lịch sử hình thành và phát triển 14
2.1.2 Nguyên tắc mã hóa 17
Trang 52.2 Bản tin HL7 trong truyền dữ liệu giữa thiết bị y tế và máy tính 18
2.1.3 Bản tin yêu cầu từ máy xét nghiệm chuyển sang máy tính 18
2.1.4 Bản tin trả lời yêu cầu từ máy tính đến máy xét nghiệm 18
2.1.5 Bản tin kết quả từ máy xét nghiệm chuyển sang Host 18
2.1.6 Các loại bản tin HL7 19
Chương 3 PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 24
3.1 Mục tiêu của hệ thống 24
3.2 Lợi ích của hệ thống 24
3.3 Yêu cầu của hệ thống 24
3.3.1 Thành phần của hệ thống 24
3.3.2 Server lưu trữ và quản lý dữ liệu 24
3.3.3 Module quản lý kết nối 25
3.3.4 Module tra cứu dữ liệu, xem kết quả, xem kiểm định chất lượng 25
3.4 Thiết kế hệ thống 26
3.4.1 Lược đồ dòng dữ liệu (DFD) 26
3.4.2 Cơ sở dữ liệu 29
3.5 Kết quả 60
3.6 Nhận xét kết quả 67
KẾT LUẬN 68
TÀI LIỆU THAM KHẢO 69
Trang 6DANH MỤC CÁC TỪ VIẾT TẮT
Trang 7DANH MỤC CÁC BẢNG
Bảng 1: Bản tin tiêu đề ASTM 8
Bảng 2: Bản tin thông tin bệnh nhân ASTM 9
Bảng 3: Bản tin yêu cầu ASTM 9
Bảng 4: Bản tin trả lời yêu cầu ASTM 10
Bảng 5: Bản tin chú thính ASTM 12
Bảng 6: Bản tin kết quả ASTM 12
Bảng 7: Bản tin kết thúc ASTM 13
Bảng 8: Các ký hiệu trong bản tin HL7 16
Bảng 9: Bản tin tiêu đề HL7 19
Bảng 10: Bản tin yêu cầu HL7 20
Bảng 11: Bản tin thông tin bệnh nhân HL7 20
Bảng 12: Bản tin kết quả HL7 21
Bảng 13: Bản tin chi tiết test HL7 22
Bảng 14: Bản tin quy định hóa chất HL7 22
Bảng 15: Bản tin chú thích HL7 23
Bảng 16: Bảng paraclinical_code 29
Bảng 17: Bảng paraclinical_input_result 30
Bảng 18: Bảng paraclinical_input_result_last 30
Bảng 19: Bảng test_order_code 31
Bảng 20: Bảng test_setup_com 31
Bảng 21: Bảng test_setup_ip 32
Bảng 22: Bảng test_setup_ipserver 32
Bảng 23: Bảng test_status_com 32
Bảng 24: Bảng test_user 32
Trang 8DANH MỤC CÁC HÌNH VẼ
Hình 1: Cấu trúc bản tin ASTM 5
Hình 2: Lịch sử phát triển của các phiên bản HL7 15
Hình 3: Các giao thức truyền thông phổ biến dùng trong y tế 15
Hình 4: Mô hình hệ thống trao đổi dữ liệu giữa máy xét nghiệm và HIS 26
Hình 5: Sơ đồ ngữ cảnh 26
Hình 6: Lược đồ dữ liệu yêu cầu xét nghiệm 27
Hình 7: Lược đồ dòng dữ liệu kết quả xét nghiệm 28
Hình 9: Lược đồ dữ liệu chi tiết 29
Hình 10: Giao diện quản lý kết nối 60
Hình 11: Giao diện quản lý sự kiện 61
Hình 12: Giao diện quản lý dữ liệu 61
Hình 13: Giao diện thiết lập 1 kết nối COM 62
Hình 14: Giao diện thiết lập 1 kết nối với máy xét nghiệm LIS đóng vai trò là Client 62 Hình 15: Giao diện thiết lập 1 kết nối với máy xét nghiệm LIS đóng vai trò là Server 63 Hình 16: Hiển thị danh sách số lượng máy, số lượng dữ liệu trong ngày, số lượng dữ liệu đã gửi thành công lên máy chủ 63
Hình 17: Giao diện xem danh sách số lượng barcode của 1 máy trong 1 ngày, số lượng test của barcode, số lượng test của barcode upload thành công lên máy chủ 64
Hình 18: Giao diện xem chi tiết kết quả xét nghiệm của 1 barcode 65
Hình 19: Giao diện tìm kiếm 65
Hình 20: Hệ thống LIS triển khai tại Bệnh viện Đại hoc Y Hà Nội 66
Trang 9MỞ ĐẦU
Lý do chọn đề tài
Với sự phát triển mạnh mẽ của công nghệ thông tin đã được ứng dụng rất nhiều trong lĩnh vực y tế nhằm chăm sóc sức khỏe con người một cách tốt hơn Từ trước đến nay, các thiết bị y tế luôn là một phương tiện hỗ trợ đắc lực cho các bác sỹ trong việc chẩn đoán và điều trị cho người bệnh Ở nước ta hiện nay, trang thiết bị y tế hiện đại ngày càng nhiều Tuy nhiên các thiết bị y tế hầu hết được nhập từ nước ngoài, phần mềm quản lý kết nối thiết bị này với hệ thống quản lý bệnh viện rất ít Ngoài ra, các mẫu bảng biểu dữ liệu xuất ra của các thiết bị này cũng không đủ, hoặc không đúng với những bảng biểu dữ liệu bệnh viện cần Bên cạnh đó, việc xử lý những dữ liệu, thu được theo kiểu thông thường sẽ rất khó khăn cho việc tìm kiếm cũng như thống kê, báo cáo Việc lưu trữ các dữ liệu này cũng rất hạn chế Việc nhập kết quả thủ công, phải ghi chép nhiều lần không tránh khỏi các sai sót và thời gian thực hiện kéo dài Hiện nay trên thế giới, thông qua việc áp dụng các thành tựu khoa học kỹ thuật tiên tiến, việc quản lý các thông tin trong bệnh viện theo cách thông thường đã được thay thế bằng hệ thống thông tin y tế bệnh viện HIS (Hospital Information System) Hệ thống này phục
vụ trực tiếp công tác quản lý và cung cấp mọi thông tin hoạt động của bệnh viện Ngoài
ra, các bệnh viện đã và đang được trang bị những thiết bị điện tử hiện đại, phục vụ cho việc chẩn đoán và điều trị như: máy siêu âm, X – quang, cộng hưởng từ, cắt lớp vi tính… Do đó, xuất hiện những hệ thống quản lý bằng kỹ thuật số như: Hệ thống thông tin về chẩn đoán hình ảnh RIS (Radiology Information System), hệ thống lưu trữ và truyền ảnh PACS (Picture Archiving and Communication System), hệ thống thông tin trong phòng xét nghiệm LIS (Laboratory Information System) Các hệ thống này phục
vụ rất đắc lực cho công việc lưu trữ, chẩn đoán và nhất là khả năng ứng dụng trong hệ thống y tế từ xa, chia sẻ tài nguyên trong công tác nghiên cứu, đào tạo…
Trang 10Mục tiêu của đề tài
Nội dung luận văn này tập trung vào tìm hiểu giao thức, chuẩn dữ liệu giữa thiết
bị y tế và hệ thống thông tin trong bệnh viện cụ thể là các máy xét nghiệm và hệ thống máy tính tại bệnh viện từ đó xây dựng 1 hệ thống trao đổi dữ liệu giữa các máy xét nghiệm và hệ thống thông tin trong bệnh viện Hệ thống này bao gồm các giao diện kết nối thiết bị, giao diện quản lý người dùng, giao diện quản lý tìm kiếm, hệ quản trị cơ sở
dữ liệu Từ đó đưa ra giải pháp ứng dụng công nghệ thông tin vào việc quản lý máy xét nghiệm, kết nối hệ thống thông tin trong phòng xét nghiệm (LIS) với hệ thống thông tin bệnh viện (HIS) nhằm đạt được được những hiệu quả tối ưu Từ những kết quả thu được, kết hợp với việc phân tích giải mã dữ liệu đã xây dựng thành công hệ thống LIS
có khả năng kết nối với các thiết bị trong phòng xét nghiệm với hệ thống quản lý bệnh viện Chương trình này có khả năng quản lý kết nối, quản lý kết quả, giải mã, mã hóa
dữ liệu, trao đổi thông tin giữa máy xét nghiệm và hệ thống quản lý bệnh viện
Nhiệm vụ đặt ra cho học viên
Tìm hiểu cấu trúc bản tin, các mã hóa, cách trao đổi bản tin của giao thức ASTM
và chuẩn dữ liệu HL7
Xây dựng hệ thống sử dụng giao thức ASTM và chuẩn dữ liệu HL7 trong việc truyền dữ liệu giữa thiết bị y tế và hệ thống quản lý dữ liệu bệnh viện (HIS)
Đóng góp của luận văn
Luận văn đã đưa ra được phương thức giao tiếp giữa thiết bị y tế và hệ thống thông tin của bệnh viện Đồng thời đưa ra hướng phát triển những hệ thống phục vụ mục đích giao tiếp giữa các thiết bị y tế với hệ thống thông tin bệnh viện
Các tính năng và lợi ích của hệ thống kết nối giữa các thiết bị y tế và hệ thống thông tin bệnh viện:
Giảm thời gian trong việc chỉ định xét nghiệm: Thay vì việc kỹ thuật viên tại phòng LAB phải nhập chỉ định từ tờ chỉ định của mẫu vào thiết bị, thì việc sử
Trang 11dụng phần mềm kỹ thuật viên chỉ cần đưa mẫu vào thiết bị còn việc chỉ định yêu cầu sẽ tự động chuyển từ hệ thống quản lý bệnh viện sang thiết bị
Giảm thời gian trong việc trả kết quả cho bệnh nhân: Các kết quả sau khi thực hiện xong kỹ thuật viên không phải nhập kết quả từ thiết bị sang hệ thống quản
lý bệnh viện
Giảm sai sót trong quá trình nhập tay của kỹ thuật viên
Tự động nhận, lưu các kết quả từ các máy
Tìm kiếm bệnh nhân, bệnh phẩm theo các trường lọc khác nhau: Phần mềm có khả năng lọc thông tin của bệnh nhân theo các trường khác nhau, bác sỹ có thể
dễ dàng tìm thấy các thông tin của bệnh nhân qua ngày tháng thực hiện, thời gian thực hiện, máy thực hiện, mã bệnh phẩm
Cập nhật và quản lý kết quả xét nghiệm
Phần mềm có thể lấy kết quả tự động và cho phép điều chỉnh; nếu nằm ngoài mức cho phép sẽ báo kết quả bất thường và cho phép ghi chú (nhận xét, kết luận) kết quả Sau khi có kết quả cuối cùng, phần mềm sẽ in kết quả theo mẫu
và cho phép kết xuất ra word, pdf, excel
Tạo phiếu kết quả xét nghiệm: Phần mềm có tính năng tạo các phiếu kết quả theo nhóm như: xét nghiệm huyết học, hóa sinh máu, đông máu, xét nghiệm nước tiểu, xét nghiệm nội tiết
Phần mềm có khả năng thống kê linh hoạt các báo cáo như: sổ xét nghiệm đông máu, sổ xét nghiệm giải phẫu bệnh, sổ xét nghiệm ký sinh trùng sốt rét, sổ xét nghiệm HIV… Ngoài ra, tính năng báo cáo còn bao gồm thống kê danh sách tiếp nhận bệnh nhân, bệnh phẩm, danh sách thực hiện xét nghiệm và thống kê tổng hợp xét nghiệm
Quản trị hệ thống: Phần mềm được tích hợp tính năng quản trị người dùng Bên cạnh đó phần mềm còn có chức năng quản lý các danh mục như chỉ số xét nghiệm, dịch vụ xét nghiệm, thiết bị xét nghiệm, khoa phòng
Trang 12Cấu trúc luận văn
Nội dung luận văn bao gồm 3 chương
Chương 1: Tìm hiều về giao thức ASTM:
Tìm hiểu về lịch sử hình thành, các phiên bản
Cấu trúc bản tin, phương thức truyền bản tin, cách mã hóa bản tin, cách khôi phục bản tin lỗi trong quá trình truyền dữ liệu
Đưa ra các gói tin mẫu trong bản tin ASTM
Chương 2: Tìm hiểu về chuẩn HL7:
Tìm hiểu về lịch sử hình thành, các phiên bản, cấu trúc bản tin
Đưa ra các bản tin mẫu trong bản tin HL7
Đưa ra cách giải mã, ý nghĩa của bản tin HL7
Chương 3: Phân tích thiết kế xây dựng hệ thống:
Đưa ra mục tiêu, yêu cầu của hệ thống
Thiết kế lược đồ dòng dữ liệu
Thiết kế cơ sở dữ liệu
Kết quả đạt được
Trang 13Chương 1 TÌM HIỂU VỀ GIAO THỨC ASTM
1.1 Giới thiệu chung
1.1.1 Lịch sử hình thành và phát triển
American Society for Testing and Materials (ASTM) Hiệp hội vật liệu và thử
y tế và máy tính được mô tả trong ASTM E1394-97 và ASTM E1381–02 Sau này ASTM đã chuyển giao trách nhiệm duy trì và phát triển các tiêu chuẩn này cho Viện Tiêu chuẩn Phòng thí nghiệm(CLSI)
1.1.2 Các phiên bản phổ biến
ASTM E1394-97 và ASTM E1381–02 là 2 phiên bản phổ biến nhất hiện nay
ASTM E1394-97 và ASTM E1381–02 đều có đặc điểm kỹ thuật là truyền tải dữ liệu hai chiều (yêu cầu và kết quả) từ xa giữa các thiết bị y tế và máy tính
1.2 Cấu trúc bản tin
Bản tin được gửi trong gói tin có chứa tối đa 247 ký tự (7 ký tự cho điều khiển và
240 ký tự cho nội dung) Nội dung bản tin hơn 240 ký tự được chia thành hai hoặc nhiều gói tin
Hình 1: Cấu trúc bản tin ASTM
Mỗi gói tin bắt đầu với ký tự <STX> và một số gói tin là một chữ số từ 0 đến 7 Gói tin đầu tiên được bắt đầu bằng 1 và nó được tăng cho một gói tin mới, sau gói tin
số 7 sẽ là gói tin số 0 Số này cho phép bên nhận phân biệt giữa các gói tin với nhau để truyền lại khi có lỗi
Trang 14Checksum cho phép bên nhận phát hiện một gói tin bị lỗi, được mã hoá dưới dạng hai ký tự HEX và được gửi sau thẻ <ETB> và <ETX> Checksum được tính bằng cách, lấy tổng sốt bit của gói tin kiểm tra không bao gồm <STX> sau đó chia cho 256 lấy phần dư rồi đổi sang mã HEX
1.3 Phương thức truyền bản tin
1.3.1 Khởi tạo
Khi bên gửi xác định kết nối giữa bên gửi và bên nhận ở trạng thái rảnh, nó sẽ chuyển gói tin điều khiển<ENQ> tới bên nhận
Khi nhận được gói tin điều khiển <ENQ>, bên nhận chuẩn bị để nhận thông tin Tất
cả các kết nối khác bị đóng Nó trả lời với bản tin điều khiển <ACK> cho thấy nó đã sẵn sàng Tại thời điểm này giai đoạn khởi tạo kết thúc và chuyển sang giai đoạn truyền dữ liệu
Bên nhận không thể nhận được gói tin ngay lập tức thì nó sẽ gửi gói tin điều khiển
<NAK> cho bện gửi Khi nhận được gói tin <NAK>, bên gửi phải đợi ít nhất 10 giây trước khi truyền <ENQ> khác
Trong trường hợp tranh chấp (cả hai hệ thống đồng thời truyền tải một <ENQ>) thiết bị y tế có ưu tiên truyền thông tin
1.3.2 Truyền dữ liệu
Sau khi một gói tin được gửi, bên gửi ngừng việc truyền tải cho đến khi nhận được trả lời Bên nhận có thể trả lời bằng:
<ACK> có nghĩa là gói tin đã nhận được thành công
<NAK> có nghĩa là gói tin không thành công
Sau khi bên gửi nhận được gói tin điều khiển <ACK> bên gửi sẽ tiếp tục gửi gói tin tiếp theo
Nếu bên gửi nhận được gói tin điều khiển <NAK> bên gửi sẽ gửi lại gói tin lỗi
Trang 151.3.3 Kết thúc
Bên gửi, gửi gói tin điều khiển <EOT> sau khi đã gửi hết các gói tin sang bên nhận Sau khi gửi gói tin <EOT> bên gửi coi kết nối dữ liệu ở ở trạng thái rảnh Bên nhận sau khi nhận được gói tin <EOT> thì bên nhận cũng coi kết nối dữ liệu ở trạng thái rảnh
1.3.4 Phục hồi lỗi
Bên nhận trả lời <NAK> cho các gói tin không hợp lệ Khi nhận được một <NAK> bên gửi tăng một retransmission và gửi lại gói tin bị lỗi Nếu bộ đếm này cho thấy số lần gửi lại quá 6 lần, bên gửi phải hủy toàn bộ bản tin đưa kết nối về giai đoạn kết thúc
1.3.5 Hạn chế
Trong gói tin dữ liệu không được tồn tại 15 ký tự điều khiển là: <SOH>, <STX>,
<ETX>, <EOT>, <ENQ>, <ACK>, <DLE>, <NAK>, <SYN>, <ETB>, <LF> DC1>,
Trang 16O|1|321015|0^50071^1^^S1^SC^not|^^^990^1\^^^991^1\^^^8717^1|R|20101019174209|20101019174209||||N||||1||||||||||F|C|1|I|C1^C2^C3^C4^C5|G|
R|1|^^^990/1/not|0.75|mmol/L|^TECH\^NORM\^CRIT\<0^USER|||F||bmserv^SYSTEM|20101020095735|20101020095751|ISE^1^MU1#ISE#1#1^3^125|
C|1|I|23^ISE Sample range over|I|
R|2|^^^991/1/not|297.28|mmol/L|^TECH\^NORM\^CRIT\<0^USER|||F||bmserv^SYSTEM|20101020095735|20101020095751|ISE^1^MU1#ISE#1#1^3^126|
C|1|I|23^ISE Sample range over|I|
R|3|^^^8717/Inc/not|0.02|mmol/L|^TECH\^NORM\^CRIT\^USER|||C||bmserv^SYSTEM|20101019175614|201010191 80627|c701^1^MU1#c701#1#1^6^77|
C|1|I|27^PANIC value over (lower) Technical Limit|I|
L|1|N|
1.4.4 Các loại bản tin ASTM
a Bản tin tiêu đề ASTM
H|\^&|||ASTM-Host|||||cobas 8000|TSDWN|P|1|20110715093311
2 String Định nghĩa các trường cố định |\^&
Trang 1711 String Loại bản tin TSDWN
14 DateTime Thời gian bản tin được khởi tạo 20110715093311
b Bản tin thông tin bệnh nhân ASTM
8 Date Ngày tháng năm sinh bệnh nhân 19651125
Trang 1813 Character Mã trạng thái thông tin yêu cầu O
d Bản tin trả lời yêu cầu ASTM
Trang 19S: Cấp cứu
7 String Thời gian tạo bản tin yêu cầu 20100429161525
Trang 204 String Chú thích
f Bản tin kết quả ASTM
R|1|^^^990/1/not|0.75|mmol/L|^TECH\^NORM\^CRIT\<0^USER|||F||bmserv^SYSTEM|20101020095735|20101020095751|ISE^1^MU1#ISE#1#1^3^125|
Bảng 6: Bản tin kết quả ASTM
Trang 21lần đầu, hoặc kết quả QC
C: Kết quả sau khi hiệu chỉnh
M: Kết quả được chỉnh tay
11 String Hệ điều hành máy xét nghiệm
12 DateTime Thời điểm bắt đầu chạy 20101020095735
13 DateTime Thời gian hoàn thành 20101020095751
Trang 22Chương 2 TÌM HIỂU VỀ CHUẨN HL7 2.1 Giới thiệu chung
2.1.1 Lịch sử hình thành và phát triển
Với mục đích cung cấp một quy định (chuẩn) chung cho việc trao đổi, quản lý và tổng hợp dữ liệu y tế, quản lý các dịch vụ chăm sóc sức khỏe, bằng cách định nghĩa ra một giao thức giữa các hệ thống thông tin y tế khác nhau, tháng 10 năm 1987, tổ chức Health Level 7 (viết tắt là HL7) đã xây dựng nên một chuẩn riêng cho hệ thống thông tin bệnh viện và trở thành phiên bản đầu tiên Tới năm 1994, chuẩn này đã được ANSI (Viện tiêu chuẩn quốc gia Hoa Kỳ - American National Standards Institute) chính thức công nhận [http://en.wikipedia.org/wiki/HL7] Cũng từ đó, các phiên bản HL7 v.2 và
v.3 lần lượt ra đời, được cập nhật và phát triển rộng khắp
Phiên bản 1.0: Chuẩn dự thảo phiên bản 1.0 được đưa ra vào tháng 10 năm 1987
Chuẩn được dùng để trao đổi, hỗ trợ chăm sóc bệnh nhân, quản lý, chuyển giao và đánh giá các dịch vụ chăn sóc sức khỏe khác Đặc biệt chuẩn đã cho phép hỗ trợ các dịch vụ đòi hỏi có sự trao đổi giữa các hệ thống
Phiên bản 2.x: Nguyên mẫu của phiên bản 2 được chuẩn bị từ sau phiên bản 1.0
và được giới thiệu lần đầu tiên năm 1988, gồm các phiên bản 2.0 (năm 1988), 2.1 (năm 1990), 2.2 (năm 1994), 2.3 (năm 1997), 2.3.1 (năm 1999), và 2.4 (năm 2001) Trong đó phiên bản HL7 v2.3 và HL7 v2.3.1 đang được sử dụng rộng rãi và được ANSI (Viện tiêu chuẩn quốc gia Hoa Kỳ) chính thức công nhận
Phiên bản HL7 v2.x khá đơn giản và thuần túy là chuẩn trao đổi bản tin: bản tin ADT (Admission Discharge Transfer); văn bản quản trị bệnh nhân; báo cáo y tế; tài chính, dịch vụ chăm sóc bệnh nhân HL7 v2.3.1 có thêm những nâng cấp để hỗ trợ tính pháp lý, các cải tiến cho phép liên kết quốc tế để tận dụng hết thế mạnh của chuẩn giao tiếp
Trang 23Hình 2: Lịch sử phát triển của các phiên bản HL7
Hình 3: Các giao thức truyền thông phổ biến dùng trong y tế
Ở đây, ta thấy một môi trường y tế tiêu biểu bao gồm một số ứng dụng quan trọng cần trao đổi dữ liệu liên quan đến khám và điều trị Nhiều chuẩn được sử dụng cho một vùng đặc biệt, một trong những chuẩn đó có chuẩn thông điệp HL7 Mô hình
Trang 24HL7 ứng dụng thực tế chẳng hạn danh sách bệnh nhân HL7 cung cấp một khung linh hoạt để xây dựng những thông điệp và được sử dụng một cách rộng rãi
Trong phiên bản 2.3.1, tổ chức HL7 đã định nghĩa ra 92 loại bản tin và khoảng hơn 300 loại sự kiện, mỗi bản tin gồm các đoạn bản tin hoặc nhóm đoạn bản tin tạo thành, đoạn bản tin lại được cấu thành từ các trường Có thể tóm lược như trên hình 2.2
Bản tin: Mỗi bản tin bao gồm một nhóm các đoạn bản tin (segment) được xắp
xếp theo thứ tự đã định nghĩa bởi tổ chức HL7 Ví dụ, ADT – là bản tin về thông tin bệnh nhân; PRE – là bản tin liên quan đến thuốc và mã hóa thuốc; BRA – là bản tin liên quan đến tài chính
Đoạn bản tin: Mỗi segment trong bản tin là một nhóm logic các trường dữ liệu
Trong bản tin HL7 có những đoạn bắt buộc và có những đoạn tùy chọn Mỗi segment
sẽ được đặt tên và xác định bằng ID của segment đó Ví dụ, bản tin ADT chứa các đoạn: MSH – đoạn header (xác định địa chỉ nguồn, địa chỉ đích và những thông tin liên quan tới bản tin); EVN – đoạn loại sự kiện (xác định loại sự kiện là nhập viện, chuyển viện hay xuất viện, thanh toán tài chính); PID – đoạn mã bệnh nhân…
Các trường: Mỗi trường là một chuỗi các ký tự và nó được xác định bằng đoạn
mà nó nằm trong đó và vị trí của nó trong đoạn Ví dụ, PID-5 là trường thứ 5 trong đoạn mã bệnh nhân; mỗi trường lại chứa các thành phần con (component)
Các thành phần con: được biểu diễn bởi các kiểu dữ liệu
Loại dữ liệu: Loại dữ liệu giới hạn nội dung và định dạng của trường dữ liệu,
một số loại dữ liệu là mã hoặc là kết hợp của các loại dữ liệu khác
Bảng 8: Các ký hiệu trong bản tin HL7
<CR> Dấu kết thúc đoạn (dấu xuống dòng)
| Dấu ngăn cách trường
Trang 25^ Dấu ngăn thành phần
~ Dấu ngăn cách lặp
{} Dấu cho biết một hoặc nhiều nhóm segment có thể được lặp lại
[] Dấu cho biết các nhóm segment này là tùy chọn
Điều khiển truy vấn: Mô tả cấu trúc chung của các bản tin, các quá trình tạo bản tin, các kiểu sự kiện
Quản trị bệnh nhân: Cơ chế tạo và thành phần chi tiết của các bản tin liên quan đến quá trình nhập / xuất / chuyển viện của bệnh nhân
Nhập y lệnh: Cấu trúc các bản tin khi có y lệnh, ví dụ như: theo dõi các dấu hiệu sống, yêu cầu xét nghiệm, siêu âm, chụp mạch… Các y lệnh thường có liên quan mật thiết với từng bệnh nhân
Báo cáo quan sát: Mô tả các giao thức để gửi dữ liệu của bệnh nhân, ví dụ như: kết quả khám bệnh, kết quả chẩn đoán… từ ứng dụng này sang ứng dụng khác
Các tập tin tham khảo chung: Các bản tin nhằm đồng bộ các tập tin tham khảo,
ví dụ: tập tin về các bác sỹ, người sử dụng và mật khẩu Các bản tin này nhằm đảm bảo một môi trường đồng nhất giữa các ứng dụng
Bệnh án và quản trị tài liệu: Cấu trúc mô tả các bản tin khi cần tạo các bệnh án hoặc tài liệu liên quan tới quá trình điều trị bệnh nhân
Lập lịch: Mô tả các bản tin nhằm kết nối các sự kiện liên quan tới quá trình lập lịch Sử dụng các dịch vụ như: khám, siêu âm, chụp chiếu và các tài nguyên khác
Chuyển viện: Mô tả các bản tin cần tuân thủ khi bệnh nhân chuyển viện
Chăm sóc bệnh nhân: Các bản tin phát sinh trong quá trình chăm sóc bệnh nhân
2.1.2 Nguyên tắc mã hóa
Khuôn dạng bản tin quy định theo nguyên tắc mã hóa của HL7 gồm các trường
dữ liệu, các trường này có độ dài thay đổi và được ngăn cách bởi một ký tự ngăn cách
Trang 26trường Các nguyên tắc mô tả cách mã hóa của các kiểu dữ liệu trong một trường được quy định riêng Các trường dữ liệu được kết hợp lại thành các nhóm logic được gọi là các đoạn Các đoạn được ngăn cách bởi các ký tự phân đoạn Mỗi đoạn bắt đầu với một giá trị chữ 3 ký tự, giá trị này được nhận dạng trong một bản tin Các đoạn có thể là bắt buộc phải có, hoặc tùy chọn, hoặc lặp lại tùy thuộc vào cấu trúc bản tin
Bộ ký tự hiển thị mã ASCII (gồm các giá trị hexa trong khoảng 20 đến 7E) là bộ
ký tự mặc định để biểu diễn các bản tin HL7
2.2 Bản tin HL7 trong truyền dữ liệu giữa thiết bị y tế và máy tính
2.1.3 Bản tin yêu cầu từ máy xét nghiệm chuyển sang máy tính
SPM||10005||S1||not|||||P|||^^^^|||20100503142217||||||| |||SC|
SAC||||||||||50011|4|OBR|1|||8685|TQ1|1||||||||R|
OBX|1||990||0.99|mmol/L|^TECH~^NORM~^CRIT~<0^USER||||C|
Trang 27Bảng 9: Bản tin tiêu đề HL7
2 String Định nghĩa giá trị cố định ^~\&
4 Trường không chứa dữ liệu
6 Trường không chứa dữ liệu
7 DateTime Ngày giờ tạo gói tin
8 Trường không chứa dữ liệu
11 Trường không chứa dữ liệu
13 Trường không chứa dữ liệu
14 Trường không chứa dữ liệu
15 Trường không chứa dữ liệu
Trang 2817 Trường không chứa dữ liệu
b Bản tin yêu cầu HL7
4 Trường không chứa dữ liệu
7 Trường không chứa dữ liệu
8 Trường không chứa dữ liệu
9 Trường không chứa dữ liệu
10 String Kiểu rack được gán cho 1 giá cụ thể S1: Huyết
thanh
c Bản tin thông tin bệnh nhân HL7
Trang 294 Trường không chứa dữ liệu
6 Trường không chứa dữ liệu
F: Nữ U: Không xác định
d Bản tin kết quả HL7
OBX|1||990||0.99|mmol/L|^TECH~^NORM~^CRIT~<0^USER||||F|||20101020095905|bmserv^SYSTEM||128|ISE^2^MU1#ISE#1#2^4| 20101020095921|
4 Trường không chứa dữ liệu
~^CRIT~<0^USE
R
8 String Cờ cảnh báo
9 Trường không chứa dữ liệu
10 Trường không chứa dữ liệu
lần đầu
Trang 3012 Trường không chứa dữ liệu
13 Trường không chứa dữ liệu
14 DateTime Thời gian bắt đầu chạy test 2010102009590
15 String Hệ điều hành điều khiển máy xét nghiệm bmserv^SYSTE
16 Trường không chứa dữ liệu
#1#2^4
e Bản tin chi tiết test HL7
TCD|1|50|
Bảng 13: Bản tin chi tiết test HL7
1 String Quy định các dịch vụ toàn cầu
2 String Hệ số pha loãng tự động
f Bản tin quy định hóa chất HL7
SID|8685^^564957^R1^9^0|616478|924|
Bảng 14: Bản tin quy định hóa chất HL7
3 String Số sê-ri của hóa chất được sử dụng 924
g Bản tin chú thích HL7
Trang 314 String Mã phân loại chú thích G: Chú thích kết
quả
Trang 32Chương 3 PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG HỆ
THỐNG 3.1 Mục tiêu của hệ thống
Xây dựng hệ thống trao đổi dữ liệu giữa các thiết bị y tế dựa trên giao thức ASTM và chuẩn HL7 Cụ thể trong nội dung luận án này xây dựng hệ thống (LIS) trao
đổi dữ liệu giữa máy xét nghiệm và hệ thống thông tin quản lý bệnh viện (HIS)
3.2 Lợi ích của hệ thống
Các chỉ định lâm sàng của bác sĩ từ HIS được gửi trực tiếp đến máy xét nghiệm
mà không cần đến kỹ thuật viên tại phòng LAB nhập chỉ định trên máy xét nghiệm
Giảm sai sót trong quá trình nhập chị định của kỹ thuật viên phòng LAB
Kết quả từ máy xét nghiệm đưa ra được gửi trả lại cho hệ thống quản lý bệnh viện(HIS) mà không cần kỹ thuật viên nhập kết quả từ máy xét nghiệm vào HIS
Giảm sai sót trong việc nhập kết quả xét nghiệm của bệnh nhân
Giảm chi phí (in giấy) do yêu cầu và kết quả đều được lưu trữ trên Server
Giảm thời gian khám chữa bệnh cho bệnh nhân (chờ nhận kết quả)
Giảm được không gian lưu trữ so với cách lưu trữ thông thường mà bệnh viện đang sử dụng (lưu trữ bằng file cứng)
3.3 Yêu cầu của hệ thống
3.3.1 Thành phần của hệ thống
Cổng trao đổi dữ liệu với máy xét nghiệm
Server lưu trữ và quản lý kết quả xét nghiệm
Module quản lý kết nối
Module tra cứu dữ liệu, xem kết quả, xem kiểm định chất lượng
Module theo dõi luồng đang hoạt động
3.3.2 Server lưu trữ và quản lý dữ liệu
Phải xác thực quyền quản trị
Trang 33 Lưu trữ dữ liệu gửi từ (HIS) cho máy xét nghiệm trước khi mã hóa và gửi đi
Lưu trữ dữ liệu gửi từ máy xét nghiệm cho (HIS) trước khi giải mã hóa và gửi đi
Phân vùng lưu trữ dữ liệu
Tìm kiếm kết quả với nhiều tiêu chí (mã bệnh nhân, tên bệnh nhân, barcode, ngày thực hiện, máy thực hiện)
Lư trữ cấu hình kết nối thiết bị
3.3.3 Module quản lý kết nối
Cho phép đóng mở cổng kết nối giữa phần mềm và máy xét nghiệm
Cho phép thiết lập các thông số để kết nối cổng máy xét nghiệm
Cho phép lần lượt hoặc đồng thời tất cả các kết nối
3.3.4 Module tra cứu dữ liệu, xem kết quả, xem kiểm định chất lượng
Cho phép tìm kiếm kết quả của bệnh nhân theo barcode
Cho phép tìm kiếm QC của bệnh nhận theo mã QC
Cho phép hiển thị danh sách bệnh nhân xét nghiệm theo ngày
Cho phép hiển thị danh sách bệnh nhân theo máy xét nghiệm
Cho phép hiển thị danh sách kết quả của từng barcode
Trang 34Hình 4: Mô hình hệ thống trao đổi dữ liệu giữa máy xét nghiệm và HIS
Máy xét nghiệm
Trang 35b Lược đồ dữ liệu yêu cầu xét nghiệm
Hình 6: Lược đồ dữ liệu yêu cầu xét nghiệm
Trang 36c Lược đồ dòng dữ liệu kết quả xét nghiệm
Hình 7: Lược đồ dòng dữ liệu kết quả xét nghiệm
Trang 37d Lược đồ dữ liệu chi tiết
Hình 8: Lược đồ dữ liệu chi tiết
test_name_org character varying YES Tên
test_name character varying YES Tên test
test_code character varying YES Mã test
machinename character varying YES Tên máy
dịch vụ của bệnh viện
Trang 38Bảng 17: Bảng paraclinical_input_result
được từ máy xét nghiệm machinename character varying YES Tên máy
result_time timestamp YES Thời gian nhận được gói tin
từ máy gửi đến isquest integer NO Gói tin gửi từ máy là gói
kết quả hay gói yêu cầu
rackname character varying YES Rack máy xét nghiệm
Bảng 18: Bảng paraclinical_input_result_last
paraclinical_input_result machinename character varying YES Tên máy
status character varying YES Trạng thái đã gửi lên HIS
chưa