1 / 46

Adaptive ECG Filtering

Adaptive ECG Filtering. Group 2: Edward Jezisek, Brandon Autrey , Edward Nowlin Renato Ortega Sponsored By: . Motivation. To improve the quality of ECG signals acquired from patients in an MRI environment ECG quality in MRI machines is lacking Current filter selection is confusing

brinly
Download Presentation

Adaptive ECG Filtering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Adaptive ECG Filtering Group 2: Edward Jezisek, Brandon Autrey, Edward Nowlin Renato Ortega Sponsored By:

  2. Motivation • To improve the quality of ECG signals acquired from patients in an MRI environment • ECG quality in MRI machines is lacking • Current filter selection is confusing • Current filters are imperfect • New MRI scans create problems

  3. Objectives • To filter out 80% of magnetic interference on an ECG signal caused by an MRI machine • To convert an analog ECG signal into a digital signal that can be processed on a computer • To convert a digital signal back into an analog signal that can be processed by legacy analog devices

  4. Goals • To further the use of adaptive algorithms in medical practice • Improve the quality of ECG Signals • Save a life

  5. Specifications • Receive and filter signals up to 250 KHz • Perform real time ECG filtering • Provide patient and device protection • Function in an MRI environment

  6. Requirements Requirements • Analog Front End – Patient protection and differential Amplifier • Data Acquisition – Analog to Digital Converter • Data Processing – Filter out the noise sources • Raw ECG Out – Provide clean ECG output

  7. Project Implementation • Receive ECG signals from 3 leads on the patient • Receive magnetic field gradient signals from 3 leads • Convert these 6 signals from analog to digital • Use the microprocessor to subtract the gradients from the ECG signal • Apply adaptive LMS algorithm to smooth out the signal and filter other noises • Convert from digital to analog

  8. Overall System Diagram

  9. Noise Contributions • Electrical interference from power lines add 50 or 60 Hz power-line frequency. • Muscle contraction and muscle activity can generate high frequency electromyography (EMG) noise. • Motion artifacts such as movement of the electrode over the skin surface.

  10. Hardware

  11. PCB Design considerations • Routing of traces for high speed communications • Electrical isolation • Battery powered vs power outlet • Cost • Use of available components

  12. Analog Front End • Consists of 3 ECG inputs • Consists 3 inputs from magnetic gradient • Provides patient protection • Provides front end filtering

  13. Analog Front End • Removed because of NDA

  14. Analog Front End • Sallen Key Filter • Used for anti aliasing • Low Pass Filter • Sampling Frequency is 500 KHz • Nyquist Frequency is 250 KHz • Cut Off Frequency is 50 KHz Removed because of NDA

  15. Analog to Digital Converter (TI- ADS8556EVM) • It contains six low-power, 16-, 14-, or 12-bit, successive approximation register (SAR) based analog-to-digital converters • Excellent Signal-to-Noise Performance of 91.5 dB • Supports both serial and parallel • At speeds up to 720 kSps • Supports 6 channels

  16. Alternative Converters LTC2376IMS analog to digital converter by Linear Technology • 250 KSpsThroughput Rate • 16 bit • Guaranteed 16-bit No Missing Codes • SPI-Compatible Serial I/O with Daisy-Chain Mode

  17. Digital to Analog Converter (AD5660) • 16 Bit • Single channel • 3 wire serial interface • Clock rate up to 30 MHz

  18. Microprocessor Design Requirements • I/O speed of the CPU is determined by the output of the A/D • Minimum of 0.5 MHz with a device limited maximum of 20 MHz • Must support enough memory to hold the program code plus at least 10 past data points of each signal • Clock speed must be high enough to perform the algorithm at the I/O speed in real time

  19. ARM Cortex M4F • Works with Matlab Embedded Coder • 80 to 160 MHz clock speed • RISC based microprocessor

  20. Xilinx Spartan 3E • I/O speed of 33MHz • Processor speed is 50MHz • 376 Digital I/O pins • FPGA based • Very customizable especially with high speed special purpose applications • Philips is able to advise us with this architecture

  21. Software

  22. Adaptive Filter Experimentation • Verifies which adaptive filtering algorithm will work best • Matlab and Simulink is faster to prototype • Model Based Design • Prototyping various algorithms on microcontroller would be very time consuming

  23. Noise Cancellation • d(k) - input signal • s(k) - clean desired signal • n(k) - noise contributions • e(k) - converges onto the input data signal • n’(k) - correlated to the noise in the signal • When , then . • As long as the input noise remains correlated to the unwanted noise, the adaptive filter adjust its coefficients to reduce the value difference between d(k) and y(k).

  24. Least Mean Square Filter (LMS) • Common filter for Signal Processing • Adaptively removes noise • Very good at removing noise as shown in the results. • Matlab provides this filter The signal in Matlab before and after filtering, when using the Least Mean Squares Filter.

  25. Butterworth Filter • Linear filter to remove unwanted frequencies • Easier to provide a first approach • Low memory usage • Can be Digital and Analog

  26. Matlab Benefits • Quick to create various adaptive filters due to a lot of them already being built in • Removes a lot of debugging time Downfalls • The Embedded Coder is expensive and doesn’t work on all embedded devices

  27. Matlab vs. Embedded Coding • Using Matlab to compare various filters and will possibly use the networking system through USB to offload tasks from the processor to the computer itself

  28. Comparison Methods • The perfect result will be stored. • Noise will be added to the perfect result • The filters results will be measured by subtracting the absolute value of the output from the result and squaring it • The results will be divided by the number of input points to get a running average

  29. Software Development Process • Allows us to develop code while the PCB board is being designed and produced • Development board enables us to test code on hardware to additional debugging tools • Matlab enables fast testing of complex algorithms

  30. Data Processing • Networking System • Graphical User Interface • File Write System • Filter Comparison System

  31. Networking System • Used to transfer data from the microcontroller to the program that modifies the data and back to the microcontroller. • Asynchronous I/O utilizing Publish/Subscribe.

  32. Publish/Subscribe System • The software will be built with a list of publishers and subscribers • The publishers will post data to a topic • The event manager will send all subscribers the data that the publisher posted • Publishers do not need to know subscribers

  33. Topic Manager • Manages the publish subscribe system • Sends data received to a list of subscribers • Manages the memory of the publishers and subscribers • Can send data to a subscriber without knowing whether the receipt was successful

  34. Subscriber • Receives data from the topic manager • Does not know about the Publisher • Will be used for a lot of the input/output processing • Will filter the signals • Some subscribers will also be publishers

  35. Publisher • Publishes data to the Topic Manager in the form of a Topic • Does not know about the subscribers • Will send data to other applications to retrieve a result • Many publishers will also be subscribers

  36. Topic • The topic is the data being sent by the Publisher to the Subscriber • The topic will contain various types of data and an known amount of data • The data will be sent as bytes and will be reconstructed based on the topic type

  37. Graphical Display • Displays the ECG signal • Should be simple and easy to use • Should work on a tablet computer • requires touch screen for the interface

  38. Compare Various Filters • Uses a filter interface • Needs to be easy to compare • Requires some functions to be created on each filter to show the results.

  39. File I/O • Store filtered signals for each filter • Will be used to compare various files/results • Will allow us to test easily

  40. Testing Methods • Perform functional test in an MRI environment • Perform test in a simulated environment. A simulated environment will consist of a rapidly rotating magnet placed over ECG cables while collecting a signal.

  41. Budget

  42. Milestones

  43. Progress

  44. Work Distribution

  45. Issues • Takes time to manufacture PCB • Learning to code to the microprocessor • Time constraint

  46. Questions?

More Related