distributed architectures for medical systems
DESCRIPTION
Distributed Architectures for Medical Systems. Andrew A. Kitchen Computer Integrated Surgery 8 March 2001. Plan of Attack. Brief outline of Polaris Tracking Device CORBA IDL project Why efficient usage of distributed architectures in a medical situation is beneficial - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/1.jpg)
Distributed Architectures for Medical Systems
Andrew A. Kitchen
Computer Integrated Surgery
8 March 2001
![Page 2: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/2.jpg)
Plan of Attack
• Brief outline of Polaris Tracking Device CORBA IDL project
• Why efficient usage of distributed architectures in a medical situation is beneficial
• How such an architecture can be implemented
• Conclusion
![Page 3: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/3.jpg)
Introducing a Polaris Tracker to the World
Creation of a CORBA IDL & Client/Server software to enable efficient networking of a Polaris
Tracking Device
![Page 4: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/4.jpg)
The Polaris Device
• Efficient Optical Tracker
• Communicates via an RS232 port
• Already has C++ code written for it
• It is available in the ERC and is vital for other ERC endeavors
![Page 5: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/5.jpg)
The TINI Device
• Communicates via an RS232 port & an Ethernet port
• Dedicated board with sufficient RAM & speed
• Runs JAVA• Cheap & Small
![Page 6: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/6.jpg)
The IDL Negotiates Everything
• It will allow the Polaris to talk to client through the TINI• It runs on a TINI in a JAVA environment• It is independent of client platform• Client/Server code handle all data acquisition
![Page 7: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/7.jpg)
Plan of Attack
• Brief outline of Polaris Tracking Device CORBA IDL project
• Why efficient usage of distributed architectures in a medical situation is beneficial
• How such an architecture can be implemented
• Conclusion
![Page 8: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/8.jpg)
The Big Picture
• Multiple monitoring devices per patient
• Multiple devices per procedure
• Few doctors with limited capacity to integrate information
![Page 9: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/9.jpg)
Where’s the Problem?
• How to manage many devices, and do it within a limited space?
• How to integrate multiple sets of data into a coherent representation of what is happening?
• How to manipulate data in a fast & efficient manner?• How many devices can be handled at once?• Will each device be able to integrate with the other
devices? Is there a standard?• How much will it cost?
![Page 10: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/10.jpg)
A Sufficient Implementation of a Distributed Medical System Should….
• Manage multiple devices and do it without incorporating too much of a footprint
• Provide quick & efficient data collection from all devices
• Allow for centralization of control & data management• Scalability• Adhere to / set recognized standards• Be economical!
![Page 11: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/11.jpg)
Plan of Attack
• Brief outline of Polaris Tracking Device CORBA IDL project
• Why efficient usage of distributed architectures in a medical situation is beneficial
• How such an architecture can be implemented
• Conclusion
![Page 12: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/12.jpg)
A Sample Implementation
• Katehakis, D.G., et al. “A Distributed, Agent-Based Architecture for Acquisition, Management, Archiving and Display of Real-Time Monitoring Data in the Intensive Care Unit”, FORTH-ICS/TR-261, October 1999.
![Page 13: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/13.jpg)
Design of an ICU Distributed Architecture
![Page 14: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/14.jpg)
Overall Structure of Architecture
• The Acquisition Agents run on servers on the network
• Acquisition Agents are continuously querying the device for current data
• The Monitoring Agents run on clients on the network
• Monitoring Agents occasionally query the Acquisition Agents for current data
![Page 15: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/15.jpg)
CORBA Handles the Interaction of the Clients and the Servers
![Page 16: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/16.jpg)
What does this gain us?
• Frees client resources• Allows for significant expansion of network to include
numerous servers & devices• Provides a common communication protocol
(CORBA)• Makes possible integration of data from multiple
devices on a single client• Functions well in real-time due to dedicated server
querying
![Page 17: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/17.jpg)
What about the holes in the armor?
• Every device must have an associated acquisition agent, which must run on a computer (although it need not be dedicated to one device if it has enough I/O ports)
• CORBA isn’t used by 100% of the developers, but it is used by a vast majority
• Extra computers take up space
• Extra computers cost a lot of money
![Page 18: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/18.jpg)
Plan of Attack
• Brief outline of Polaris Tracking Device CORBA IDL project
• Why efficient usage of distributed architectures in a medical situation is beneficial
• How such an architecture can be implemented
• Conclusion
![Page 19: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/19.jpg)
Smaller, Cheaper & More Universal
• TINIs are very, very cheap ($57 - $67)
• TINIs are, well, tiny
• TINIs have Ethernet & RS232 ports
• TINIs run JAVA, which is available for free
• JacORB is a free CORBA ORB coded in JAVA
• The development tools for the JAVA code is free
![Page 20: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/20.jpg)
Polaris, TINI & CORBA
• TINI is a dedicated server that runs JAVA
• The JacORB runs on the TINI board
• Creation of an IDL and client/server functions for the Polaris Tracker for use with the JacORB allows the TINI to communicate with the Polaris Tracker and with the clients on the network
• TINI operates as a dedicated server running a single Acquisition Agent and controlling a single device
![Page 21: Distributed Architectures for Medical Systems](https://reader035.vdocuments.us/reader035/viewer/2022070400/5681352a550346895d9c9295/html5/thumbnails/21.jpg)
What’s the Big Deal?
Creating an IDL and the associated client/server code for the Polaris Tracker would prove the viability of replacing dedicated workstations with smaller and cheaper TINI boards.
Using a JAVA implementation of the CORBA ORB and client/server functions would provide a strong impetus for future development using the TINI, possibly leading to the acceptance of JAVA as an industry standard for networking medical devices in a distributed architecture