230 likes | 394 Views
Beating Heart Simulator: Oral Report 3. Ashley Whiteside Nicole Rice Jacob Bauer. Question and Thesis. Can a user interface be created on a computer that can link and affect different aspects of a heart simulator?
E N D
Beating Heart Simulator:Oral Report 3 Ashley Whiteside Nicole Rice Jacob Bauer
Question and Thesis • Can a user interface be created on a computer that can link and affect different aspects of a heart simulator? • The user will input a heart rate. This input will then cause a sample heart to beat at that rate and simulate an ECG that will display the blood pressure and heart rate. • The point of this simulation is to mimic real problems that may be observed in the operating room and train students to react accordingly.
Jonathan C. Nesbitt • Graduated from University of Virginia with a BA in Biology • Attended the Georgetown University School of Medicine in 1981 • Completed postgraduate training at Vanderbilt in 1986 • Was a surgeon on the USNS Comfort during operation Desert Storm/Shield • Joined department of thoracic surgery at Vanderbilt University Medical Center in 2008 • Specializes in the treatment of esophageal cancer, lung cancer, thymoma and thymic carcinoma
Background Current System in use by Dr. Nesbitt: • Utilizes a windshield wiper motor to cyclically pump a plastic bellows. • The bellows forces air through surgical tubing connected to party balloons placed in right and left ventricles of a porcine heart. • Does not allow for variable BPM or real time control • Does not produce a simulated ECG display • Does not displace enough air to accurately represent the magnitude of contraction in a healthy heart
Diagram of Current System Plastic Bellows Silicone Well Piston Motor
Engineering Requirements • The simulator must be controlled by a computer software package. • The software must drive a physical heartbeat in a porcine heart based on the user provided heart rate data. • The software must also produce an ECG display that corresponds to the user provided data. • The simulated heartbeat must be dynamically alterable • The physical palpitation of the porcine heart must mimic real-life motion.
Methods We have segmented our design process according to our system’s three main components • Computer Software • Physical Heartbeat • Simultaneous ECG output
Computer Software The computer interface currently consists of a simple Graphical User Interface (GUI) which allows for the user to input a heart rate value. Based on this value the software programs an Arduino Uno microcontroller to produce a voltage signal in order to control the physical heart beat. The heart rate variable is also used to generate the ECG display. The GUI can be easily updated and will feature a dropdown menu for selecting desired arrhythmia once the ECG display has been completed.
Computer Software We plan on displaying the corresponding ECG as a dynamic graph which updates its data from an array, storing the currently selected arrhythmia and heart rate values. The ECG will feature a traditional 5-6 second scrolling display and will be presented in a separate GUI window that can be displayed on a connected “dual monitor”. We are also considering using the Arduino to generate a signal that will produce an ECG on a peripheral oscilloscope or actual ECG.
Computer Program (C++) • Classes • Singleton • Stores heart rate and arrhythmia values • Allows for dynamic access to variables • Ensures single instance of class (Singleton GoF Pattern) • Pump Driver • Operates as a helper function to main() (for now) • Accesses heart rate value from Simulator class • Outputs instructions to pump through Arduino board • Initializes ECG driver • ECG Driver • Operates within unique thread • Accesses heart rate and arrhythmia values from Simulator class • Builds graph data for ECG display • Builds and updates ECG display Simulator ECG Driver Pump Driver (main()) USB Port Output to Pump Pump Driver input -> Pin 1 ECG Driver input -> Pin 2 Arduino Program (C++)
Computer Software The Arduino Microcontroller • “Arduinois an open source electronics prototyping platform based on flexible, easy to use hardware and software.” – www.arduino.cc • The software and electronic hardware needed to construct a serial port or USB output are incredibly complex to design. • The Arduino has a built in USB connection through which the user can program the board. • Also, the Arduino is programmed using a derivative of C++, meaning we could program it directly from our software. Image courtesy of http://mc202.com/synthesizers/arduino-glitch-box-machinedrum/
Developing A Beating Heart We met with Dr. Barnett, an associate professor of mechanical engineering, on February 2nd to discuss several means of creating the mechanical force we need and to learn more about the application of hydraulic and pneumatic devices to our system.
Developing a Beating Heart Meeting with Dr. Barnett • Dr. Barnett informed us that while hydraulics are more versatile pneumatics respond more rapidly, which is essential because we need to produce heart rates of over 100 bpm. • Additionally, a leak of hydraulic fluid would create significant problems for our system while a pneumatic leak would be less of an issue. • Having decided that pneumatics would indeed be ideal for our project, Dr. Barnett agreed that using a three-way solenoid valve would be best as it would allow us to integrate use of both compressed air and a vacuum pump.
Developing a Beating Heart We plan on using a three-way solenoid valve to regulate the flow of compressed air into balloons placed in each ventricle. Image courtesy of http://www.yourheartvalve.com/heartbasics/heartanatomy.htm
Developing a Beating Heart Three-Way Pneumatic Solenoid Valve • We chose to use a three-way solenoid valve because they are cheap, reliable, and capable of switching rapidly. • We have purchased a 3 way, 3 position, 2 port single solenoid valve from automationstore.com for approximately $20.
Developing a Beating Heart Specifications of our solenoid valve: • Manufactured by AirTAC • 3 port, 2 position, single solenoid valve • Controlled by 12 VDC input. • Maximum pressure of 114 Psi • Power consumption of 2.5W • Maximum frequency of 5 cycles/second • Minimum activation time is 0.05 seconds
Developing a Beating Heart Diagram of Solenoid Valve Setup The Arduino’s output will control the pneumatic valve, causing it to alternate between compressed air and the vacuum pump to produce the physical heartbeat. Air Compressor Vacuum Pump Control Valve Arduino Balloon
Simultaneous ECG Output An ECG that corresponds to the user-provided heart rate will also be generated by our software. The ECG output and beating heart prototype will operate simultaneously but completely independently of one another. Image from: http://www.swharden.com/blog/images/simple_ecg_circuit_output.png
Simultaneous ECG Output We are currently generating our plots using formula that was developed for a MATLAB program. The formula creates a sinusoid that roughly approximates the shape of an ECG.
Simultaneous ECG Output • We have also just obtained access to a Laerdal HeartSim-200 simulator. This is a battery powered ECG rhythm simulator. We are working on a way to gather our ECG source data from the signal it generates. • This would make our ECG display much more accurate and would allow us to plot a wide range of arrhythmias. Image from: hthttp://www.laerdal.com/us/doc/177/HeartSim-200
Additional Goals Once we have developed a successful prototype we will contemplate endowing the system with additional capabilities to increase functionality. These include: • Plot of arterial pressure • Simulation of the effects of anesthesia • Simulation of common arrhythmias
Status and Results • We have developed our basic software program including a usable Graphical User Interface. • We have ordered our three-way solenoid valve and are awaiting its shipment. • We have found an algorithm which generates an approximate ECG waveform. • We have obtained an ECG rhythm generator capable of simulating multiple arrhythmias. • We have begun to work on using these resources to develop our software-driven ECG display.
Conclusion Our goal is to develop a prototype for a cardiac surgery simulator that will permit dynamic alteration of variables during surgery. We have ordered all raw materials that we foresee needing in order to develop a working prototype. The last of these materials should arrive within the next week. Upon their arrival we will begin prototyping our simulator hardware. We plan to meet again with Dr. Nesbitt following spring break to discuss our progress.