Gallery
Artificial Heart Simulation
"The flexibility and ease of use of the LabVIEW Unit Test Framework Toolkit enabled much faster and reliable completion of this portion of the project and potentially saved hundreds of man-hours and thousands of dollars over the project life cycle."
- Timothy Nolan,
Data Science Automation Inc.
The Challenge:
Creating a program for extremely long-term testing of artificial heart simulated flow testing systems (SFTS) while ensuring that the VIs developed are verified and validated for medical device applications.
The Solution:
Using a parallel loop architecture combined with NI USB-based data acquisition (DAQ) and signal conditioning devices for constant data display with a fast-response graphical user interface (GUI), while also using the LabVIEW Unit Test Framework Toolkit to validate code before, during, and after full system integration.
Author(s):
Timothy Nolan -
Data Science Automation Inc.
 |
We had two goals for this project: create a monitoring system for artificial heart testing and perform code validation tests for medical program compliance.
The system we developed cycled through the testing systems, measured data, and recorded alarm conditions in compliance with user specifications. We handled the communication to the motion control and temperature control systems in parallel while allowing manual user mode at any time. We used the NI LabVIEW Unit Test Framework Toolkit to validate the modules and generate the required reports.
|
Main Acquisition
When testing artificial hearts, we put the devices in flow systems that simulate arterial fluid flow. We test the hearts for months and years at a time to verify they can be used for months and years in a patient. Up to 18 simultaneous loops are run, and they all require data to be acquired, recorded, analyzed, and logged on a regular basis. Because we need to perform centralized data gathering and require proprietary systems for flow probe measurements, we used a multiplexer system to route signals from sensors and serial communication to a single set of inputs. Each loop needs to reliably record 10 beats of data three times a day, one for each “mode” of the system, regardless of alarm conditions, user override, or interrupt.
Motion Control
During daily testing, the system cycles the hearts through three “modes” of linear motion in the loop to simulate the action of the patient’s heart. Theses modes are defined by the user in a common text file and show beat rate, duration, and duty cycle. The settings need to be communicated to a third-party motion control system known as a PMAC, one-per-each flow loop, over RS232 serial communication. We also have to select the correct SFTS in the multiplexer (through digital command), which routes the single-computer serial port to the corresponding PMAC. Serial communication compares the desired settings with the actual settings and updates them as needed.
Alarming and Manual Mode
Even though we only gather the data three times a day, the system needs to continuously monitor the pressure, flow, and temperature of each loop. If any of these values exceeds user-defined limits, an alarm condition is activated. When an alarm condition exists, the current automated progression through the loops and multiplexer is overridden. We gather and write additional diagnostic data to the alarm log and send a message to the user, which must be cleared before any other user input is accepted.
For diagnostic purposes, the user can manually interrupt the automated monitoring and logging of the system. While in manual mode, any specific SFTS can be examined and all alarms are delayed until automated operation of the system resumes.
Using the LabVIEW Unit Test Framework Toolkit
To meet the specifications for developing software for medical devices, each part of the program has to undergo validation testing. As each VI was completed, it needed to be tested and validated with an appropriate report generated as a record. While we could perform these validations tests manually, the LabVIEW Unit Test Framework Toolkit saved a lot of time and effort, especially for recursive tests because it allowed the testing and documentation to be quickly and efficiently produced. In addition, software changes made during integration, retesting, and revalidation were simple. The flexibility and ease of use of the LabVIEW Unit Test Framework Toolkit enabled much faster and reliable completion of this portion of the project and potentially saved hundreds of man-hours and thousands of dollars over the project life cycle.
Author Information:
Timothy Nolan
Data Science Automation Inc.
375 Valley Brook Road, Suite 106
McMurray, PA 15317
Tel: 724-942-6330
tdn@DSAutomation.com