
ศูนย์การแพทย์อัตโนมัติใช้อุปกรณ์ต่างๆ มากมาย ซึ่งการทำงานจะต้องควบคุมโดยระบบข้อมูลทางการแพทย์ (MIS) รวมถึงอุปกรณ์ที่ไม่ยอมรับคำสั่ง แต่ต้องส่งผลการทำงานไปยัง MIS อย่างไรก็ตาม อุปกรณ์ทั้งหมดมีตัวเลือกการเชื่อมต่อที่แตกต่างกัน (USB, RS-232, อีเธอร์เน็ต ฯลฯ) และวิธีโต้ตอบกับอุปกรณ์เหล่านั้น แทบจะเป็นไปไม่ได้เลยที่จะรองรับสิ่งเหล่านี้ทั้งหมดใน MIS ดังนั้นจึงมีการพัฒนาเลเยอร์ซอฟต์แวร์ DeviceManager (DM) ซึ่งมีอินเทอร์เฟซเดียวสำหรับ MIS สำหรับมอบหมายงานให้กับอุปกรณ์และรับผลลัพธ์

เพื่อเพิ่มความทนทานต่อความเสียหายของระบบ DM ถูกแบ่งออกเป็นชุดโปรแกรมที่อยู่ในคอมพิวเตอร์ในศูนย์การแพทย์ DM แบ่งออกเป็นโปรแกรมหลักและชุดปลั๊กอินที่โต้ตอบกับอุปกรณ์เฉพาะและส่งข้อมูลไปยัง MIS รูปด้านล่างแสดงโครงสร้างทั่วไปของการโต้ตอบกับ DeviceManager, MIS และอุปกรณ์

โครงสร้างการโต้ตอบระหว่าง MIS และ DeviceManager แสดง 3 ตัวเลือกสำหรับปลั๊กอิน:
- ปลั๊กอินไม่ได้รับข้อมูลใด ๆ จาก MIS และส่งข้อมูลที่แปลงเป็นรูปแบบที่เข้าใจได้จากอุปกรณ์ (สอดคล้องกับอุปกรณ์ประเภท 3 ในรูปด้านบน)
- ปลั๊กอินได้รับงานสั้น ๆ (ในแง่ของเวลาดำเนินการ) จาก MIS เช่น การพิมพ์บนเครื่องพิมพ์หรือการสแกนภาพ ดำเนินการและส่งผลลัพธ์เพื่อตอบสนองต่อคำขอ (สอดคล้องกับอุปกรณ์ประเภท 1 ในรูปด้านบน ).
- ปลั๊กอินได้รับงานระยะยาวจาก MIS เช่น เพื่อดำเนินการสำรวจหรือตัวชี้วัดการวัด และในการตอบกลับจะส่งสถานะการยอมรับงาน (งานอาจถูกปฏิเสธหากมีข้อผิดพลาดในคำขอ) หลังจากเสร็จสิ้นงาน ผลลัพธ์จะถูกแปลงเป็นรูปแบบที่เข้าใจได้สำหรับ MIS และอัปโหลดไปยังอินเทอร์เฟซที่สอดคล้องกับประเภท (สอดคล้องกับอุปกรณ์ประเภท 2 ในรูปด้านบน)
โปรแกรม DM หลักเริ่มต้น เริ่มต้น รีสตาร์ทในกรณีที่เกิดการหยุดโดยไม่คาดคิด (ขัดข้อง) และยุติปลั๊กอินทั้งหมดเมื่อปิดเครื่อง องค์ประกอบของปลั๊กอินในคอมพิวเตอร์แต่ละเครื่องจะแตกต่างกัน เฉพาะส่วนที่จำเป็นเท่านั้นที่เปิดใช้งานซึ่งระบุไว้ในการตั้งค่า
ปลั๊กอินแต่ละตัวเป็นโปรแกรมอิสระที่โต้ตอบกับโปรแกรมหลัก คำจำกัดความของปลั๊กอินนี้ช่วยให้การทำงานมีเสถียรภาพมากขึ้น เนื่องจากอินสแตนซ์ปลั๊กอินและส่วนหัวเป็นอิสระจากกันในแง่ของการจัดการข้อผิดพลาด (หากเกิดข้อผิดพลาดร้ายแรงที่ทำให้ปลั๊กอินขัดข้อง สิ่งนี้จะไม่ส่งผลกระทบต่อปลั๊กอินและส่วนหัวอื่นๆ) . ปลั๊กอินหนึ่งตัวช่วยให้คุณทำงานกับอุปกรณ์ประเภทเดียว (มักจะเป็นรุ่นเดียวกัน) ในขณะที่ปลั๊กอินบางตัวสามารถโต้ตอบกับอุปกรณ์ได้เพียงเครื่องเดียว ในขณะที่บางตัวสามารถโต้ตอบกับอุปกรณ์หลายเครื่องได้ หากต้องการเชื่อมต่ออุปกรณ์ประเภทเดียวกันหลายเครื่องเข้ากับ DM เดียว ให้เปิดปลั๊กอินเดียวกันหลายอินสแตนซ์

ชุดเครื่องมือ Qt ถูกนำมาใช้ในการพัฒนา DM เนื่องจากช่วยให้สามารถแยกส่วนจากระบบปฏิบัติการเฉพาะได้ในกรณีส่วนใหญ่ ซึ่งทำให้สามารถรองรับคอมพิวเตอร์ที่ใช้ระบบปฏิบัติการต่างๆ ได้ Windows, Linux และ MacOS รวมถึงอุปกรณ์ Raspberry Pi แบบบอร์ดเดี่ยว ข้อจำกัดเพียงอย่างเดียวในการเลือกใช้ระบบปฏิบัติการเมื่อพัฒนาปลั๊กอินคือ ความพร้อมใช้งานของไดรเวอร์และ/หรือซอฟต์แวร์เฉพาะสำหรับอุปกรณ์นั้นๆ
การโต้ตอบระหว่างปลั๊กอินและส่วนหัวเกิดขึ้นผ่าน QLocalSocket ที่ใช้งานอยู่ตลอดเวลาพร้อมกับชื่อของอินสแตนซ์ปลั๊กอินเฉพาะตามโปรโตคอลที่เราสร้างขึ้น การใช้โปรโตคอลการสื่อสารทั้งสองด้านได้รับการออกแบบให้เป็นไดนามิกไลบรารีซึ่งทำให้บริษัทอื่นสามารถพัฒนาปลั๊กอินบางตัวได้โดยไม่ต้องเปิดเผยการโต้ตอบกับส่วนหัวอย่างสมบูรณ์ ตรรกะภายในของเต้ารับในพื้นที่ช่วยให้ศีรษะเรียนรู้เกี่ยวกับการล้มได้ทันทีโดยใช้สัญญาณขาดการเชื่อมต่อ เมื่อสัญญาณดังกล่าวถูกกระตุ้น ปลั๊กอินที่มีปัญหาจะถูกรีสตาร์ท ซึ่งช่วยให้คุณจัดการกับสถานการณ์ที่สำคัญได้อย่างไม่ลำบากมากขึ้น
มีการตัดสินใจที่จะสร้างปฏิสัมพันธ์ระหว่างระบบ MIS และ DM โดยใช้โปรโตคอล HTTP เนื่องจากระบบ MIS ทำงานบนพื้นฐานของโปรโตคอลดังกล่าว เว็บเซิร์ฟเวอร์ซึ่งทำให้การส่งและรับคำขอโดยใช้โปรโตคอลนี้ง่ายขึ้น นอกจากนี้ยังช่วยให้คุณระบุปัญหาที่อาจเกิดขึ้นเมื่อตั้งค่าหรือดำเนินการงานบนอุปกรณ์โดยอิงจากรหัสการตอบสนองได้อีกด้วย
ในบทความต่อไปนี้ เราจะตรวจสอบการทำงานของ DM และปลั๊กอินบางตัวโดยใช้ตัวอย่างของห้องศูนย์วินิจฉัยหลายแห่ง
ที่มา: will.com
