SlideShare a Scribd company logo
EECS 452 Digital Signal Processing Design
Laboratory
Portable Electromyography (EMG) Tracking Device Interfacing Android
Device with Bluetooth for physical Therapy and Sports Medicine
 
Fred Buhler, Jason Hernandez, Angie Zhang, Alastair Shi
Department of Electrical Engineering and Computer Science
University of Michigan, Ann Arbor
April 24th, 2014
 
Table of Contents
I. Introduction
1) EMG Signal and its Nature
2) Motivation
3) Goals
4) End Product Evaluation
II. Description of the Project
1)Signal Architecture
2) Custom PCB design
3) Battery Supply
4) Signal Acquisition
5) Supporting Hardware
i)Bluetooth
ii) FPGA
6) DSP Algorithm Development
i) Fatigue Identifier Algorithm
Initial Method: Mean Frequency
A New Route: Power Spectrum
ii) Force Output Algorithm
7) Implementing Logic on FPGA
Fatigue Identifier Module
Force Output Module
Bluetooth Module
8) Programming Language
VHDL Blocks
C & C++
Java & HTML
MATLAB
9) Parts List
III. Milestones
First Milestone
Second Milestone
Third Milestone
IV. COE Design Expo
V. Member Contributions
VI.References and Citations
 
 
 
I. Introduction
EMG Signal and its Nature
Electromyography (EMG) is an experimental technique concerned with the
development, recording and analysis of myoelectric signals, which are formed by
physiological variations in the state of the muscle fibre membranes.
● Complicated signal
● Controlled by the nervous system
● Dependent on the anatomical and physiological properties of muscles
● Acquire noise while traveling through different tissues
Motivation
The EMG signals are studied for medical science research, rehabilitation, ergonomics,
sports science and more. EMG is used clinically for the diagnosis of neurological and
neuromuscular problems. It is used diagnostically by gait laboratories and by clinicians
trained in the use of biofeedback or ergonomic assessment.
We summarized a small subset of the benefits of working with EMG signals:
● EMG allows to physicians directly “look” into the muscle
● It allows measurements of muscular performance
● Helps in decision making both before/after surgery
● Allows analysis to improve sports activities
Goals
Before we started the project, we performed marker analysis and research to see if the
project is worth investing. After visiting laboratory and clinical setting, we learned the
following:
● The equipment in a clinical or a laboratory setting lacks portability and mobility
● Physical therapists have to bring the patients who have mobile constraints to the
exam room in order to perform EMG analysis.
● Leading competitor in the market can only send the data to a wireless local area
network. Data can only be displayed on a computer.
After understanding the current market, we were inspired and set out the following
goals for this semester including:
● Implement design on a printed circuit board (PCB) rather than a bread board
● Use FPGA as a center for data processing
● Develop working DSP algorithms to monitor the presence of fatigue and force
output of the muscle
● Send information to Android phone or tablet via Bluetooth
● Emotion detection (stretch goal)
 
End Product Evaluation
Before the design expo, we were able to meet most of the goals that we expected to
accomplish. As shown on the poster, our prototype is placed in the center. The custom
PCB is the harbor for EMG probes, power supply, analog filters, FPGA and Bluetooth.
At the COE design expo, the device was well received and it worked reasonably well at
the design expo. Our device has an algorithm that calibrates individual’s peak value of
the EMG signal and this feature ensures that the device works among different people.
Figure 1. The poster for “Portable EMG” shown at the College Engineering Design Expo
II. Description of project
EECS 452 is an embedded DSP class but we wanted to go to the extra mile. Besides the
key feature of our prototype is mobility, which enables 24/7 mobile monitoring of the
EMG activities for clinical applications. Angie Zhang and Jason Hernandez have
connections with the research lab in the medical school and the UM hospital. We were
able to collect the EMG data from medical grade equipment and compare to the signal
obtained from our own prototype. Given more time and resources, we would like to
further verify the accuracy of our device and seek medical professionals for advice.
 
System Architecture
Figure 2. Top Level Overview of the Portable EMG Tracking Device
Figure 3. Jason using the prototype to display his muscle activities while lifting a 10 lb dumbbell.
An EMG signal enters the system via a three-plug standard medical connector or a
standard 3.5mm audio jack connector terminal block on the PCB. The signal is amplified
and filtered through an open source analog front end (slightly modified from an Olimex
schematic). The signal is then digitized and sent to a Spartan 6 FPGA where the signal is
processed and sent to a PC over USB or a mobile device running Android over Bluetooth.
 
Figure 4. Implemented System Level Diagram
Custom PCB design
Figure 5. Custom PCB as the “communication center” of the data.
 
Instead of breadboards, we decided to use printed circuit board, which ensures more
durability and stability during the “wear and tear” of the testing process and the COE
design expo. The PCB is also highly customizable and can be reconfigured to work
specifically for one individual once commercialized. The board design can also be easily
changed into one that measures the ECG, which could lead to more applications and
future prospects for our project.
Battery Supply
Board is designed to operate on a wide range of input sources from 4 to 12 volts,
including batteries for mobile use or power supplies for use in a laboratory environment.
Signal Acquisition
Board accepts a wide range of commercially available EMG sensors with two inputs:
● 3.5mm audio jack
● Standard medical equipment plug.
After experimenting both probes, we found that the standard medical equipment plug
provides much better signals so we used that one for testing and demonstration.
Supporting Hardware
Bluetooth
The RN-42 Class 2 Bluetooth module supports BCSP, DUN, LAN, GAP SDP, RFCOMM,
and L2CAP protocols. Most importantly, it connects seamlessly to Bluetooth capable
mobile devices.
FPGA
OPal Kelly’s small form-factor XEM 6001 with a Spartan6 FPGA drives the board, is
fully reconfigurable, and enables powerful Digital Signal Processing with its DSP 48A1
slices.
Figure 6. OPal Kelly xem 6001
 
DSP Algorithm Development
Figure 7. Exhibits a simplified block diagram representing the DSP aspects found within the project.
The first 3 modules prepare the data for our information extraction modules that are present later in
the datapath.
1) Fatigue Identifier Algorithm
Initial Method: Mean Frequency
Before beginning work on our DSP algorithm, our team read through many EMG
publications in order to identify the most appropriate means for obtaining the
information we wanted. An earlier option of ours was to detect something known as the
median frequency within the power spectrum. This was considered to be a valuable
parameter because of the way it behaved during a muscle's state of fatigue.
Figure 8. Mean frequency spectrum and its correlation with muscle fatigue. [1]
 
A New Route: Power Spectrum
As we began implementing an algorithm which monitored this ability, out team
continued to research alternatives to identifying levels of muscle fatigue. We eventually
found out that not only did the median frequency shift a certain way during fatigue, but
there was a distinct change in the total power as well (Figure 8). Amplitudes at
frequencies greater than 30 Hz remained consistent as a muscle grew tired while
amplitudes for frequencies below 30 Hz increased dramatically. This phenomenon
explains both why the median point on the spectrum falls to a lower frequency, and why
there is an overall power increase in the spectrum [2].
After confirming that our newly obtained knowledge was persistent with our own data,
we settled on a means for observing the power spectrum. We chose to implement a
moving average filter as the core means for preparing our data for the nonconventional
processes that would occur later in our datapath. Initial Matlab tests with MA filters not
only proved its effectiveness on our datasets, but also demonstrated its applicability for a
variety of information extractions.
When visually observing the output of the MA filter, the biological properties which we
sought were clearly evident from one dataset to the next. Not only did the output
clearly resemble the force being exerted by the muscle of interest, but there was a
distinct definition of when the onset of fatigue occurred (Figure 9).
Figure 9. The input (rectified data) and output to the MA filter on a dataset that describes a
repetitive lifting of a 10 lb weight. Note the distinct vertical shift around the 25,000th
sample,
representing the onset of fatigue in the measured muscle
 
Once we were confident with the aspects' consistent presence within the MA filter
outputs, we began implementing it into hardware languages (VHDL & Verilog) as well as
start creating algorithms that could "decipher" the MA outputs. Using methods taught
in class and practiced in lab, we generated an elliptical low pass filter to isolate the
relevant information in the EMG signal. This type of lowpass was chosen due to its
ability to exemplify a sharp drop-off in the frequency spectrum while utilizing a tolerable
number of coefficients. The input to the MA filter was required to be rectified, so an
additional filter was included which mirrored everything below our DC bias to its
respectable quantity. We eventually agreed upon a 2048-point MA filter in order to
balance its ability in smoothing our data without overly distorting any relevant
information.
The MA filter would then be sent to a calibration module which adjusted the data
accordingly to later be interpreted by the force output and fatigue modules. The
calibration module was necessary in order for our algorithms to be effective when used
by a variety of people with different physical attributes. The calibrator worked by
identifying when a user was at rest and then they first exhibited activity. It also
provided succeeding modules with various parameters to be used in measuring
information that was significant to us. The calibration worked very closely with the
fatigue identifier, as it provided the module with certain values which were used to
construct multiple thresholds. The fatigue identifier detected whether or not a threshold
was successfully crossed (which included disregarding insignificant activations) by
comparing calibration values to the MA filter output over the course of 4 second window,
and would notify the calibrator of its current state in order to generate additional
parameters (such as new thresholds for determining an increased or decreased level of
fatigue). Subsequent fatigue thresholds were determined by finding the mean value of
the MA output over the 4 second window and raising that value by 25%. The output of
the fatigue identifier was a two bit value, capable of representing 3 levels of fatigue in
addition to the non-fatigued state.
2) Force Output Algorithm
The ability to detect force output was another main goal of this project. This module
worked by taking in data directly from the MA filter as well as certain coefficients from
the calibration module (Figure 10). The coefficients were used to create a curve that
estimated the current force as a numerical integer (in lbs) based off the user's previous
activity. Once this curve was generated, the module would use the MA output to
determine where the current input lies on the generated curve. Furthermore, the
algorithm worked in conjunction with the fatigue identifier in order to more accurately
calculate the force. As previously mentioned, there is a shift in amplitude when muscle
 
fatigue is present, and this shift would have to be accounted for in order prevent an
overestimation of the force [3].
Implementing Logic on FPGA
After fully develop the algorithms, we needed to implement them on the FPGA. The
elements of the DSP algorithm block diagram were implemented as individual modules
in HDL. The primary tool used to generate these modules was a built-in “Core
Generator” module known as “IP Core”. Through this tool various filters were built. The
“Core Generator” requires various configuration parameters such as filter coefficients,
data input type, sampling rate, and other things specific to core such as when data is
ready to leave and enter the core. This tool was used in the design of the blocks “Low
Pass Filter”, and “MA Filter” in conjunction to fdatool. The MA filter has all coefficients
set to “1”. There are various other handwritten VHDL modules to interface all of the
core generator modules, along with to handle the rectification/offset block, calibration,
and fatigue/force output.
Fatigue Identifier Module
The fatigue module detected fatigue based on a theory regarding an increase in values of
the EMG amplitude. Through the Calibration module we would acquire the average
value of the EMG, we would then calculate 25% more than that value indicating fatigue.
Once this value was acquired we would raise a flag showing fatigue signaling for the
Bluetooth communication module to tell the phone app to show fatigue.
Force Output Module
Figure 10. Shows the results of the force output module (above) after receiving input data from the
MA filter (below). The calibration coefficients are circled in red, the current fatigue it in yellow, and
the force output is in blue. Note the correlation between the peaks, troughs, and force output value.
This data was acquired while lifting and then lowering a 10 lb weight.
 
Bluetooth Module
The last module was for communication to the bluetooth module and how to utilize the
Bluetooth module. A baud-rate generator created a clock for serial communication, and a
frame generator module created a 5-element ASCII frame that contained the DSP state
and normalized data for plotting.
Programming Languages
Many programming languages were used in the process of the project. Here is a brief
summary of where and how each of them is used.
1) VHDL Blocks: Fatigue Detection Module, SPI driver, Opal Kelly Front Panel
Wrapper, Bluetooth baud generator and serial COM driver, Binary to serial frame
transformation, digital bias/rectification, as well as Remote configuration module & data
buffering.
2) C & C++: Built executable to accept configuration data (called from command line or
Matlab) as well as handled PC-side buffering to accept raw data from FPGA.
3) Java & HTML: Used for creating Mobile Application for Android devices
4) MATLAB: Both DSP algorithm testing, and as a FPGA/PC interfacing tool for
initiating data transfers and real-time behavioral configuration of FPGA.
Final Parts List
Items
Purchased
Item Num. Quantity Price per unit Total
Neuroline Sensor 715 05 2 packs $12.20 $24.40
Neuroline Sensor 715 08 2 packs $12.60 $25.20
2-slot Adhesive
Skin Interface
(SC-F01
(DE-02))
100 pieces $35 $35
FPGA Board XEM6001 or
DE70
1 Available in lab 0
Table 1. Detailed list of items purchased for this project.
Note: Total cost of the prototyping process was reasonably low and we did not go over
budget allowed for this project.
 
III. Milestones
1) First milestone:
Our original goal was to have the ability to collect raw EMG data on the PCB, digitize the
data, as well as have the raw data sent to a computer for DPS algorithm testing. We met
this milestone on-time, and by this milestone we were already running DSP algorithms
on our raw data in Matlab leading to our second milestone.
2) Second milestone:
Our original goal was to have a working DSP algorithm implemented in the FPGA fabric.
By the second milestone meeting – we already had a final working product (we could
collect, process, and display live data), however the DSP we had implemented was
simple time/magnitude threshold detection and indication of the EMG signal. While this
was in itself a successful milestone, the DSP still needed some work before milestone 3.
3) Third milestone:
By the design expo we successfully implemented a more complex and through DSP
algorithm that self-calibrated to the user and accurately detected fatigue.
IV. Design Expo
At the design expo and the final presentation, our prototype was passed around since it’s
highly portable. We had the test subject wearing the sticky probes, which collects the
EMG signal and send it to our device. Since the device sends data via Bluetooth to the
Android device, the user can see their live muscle activities while lifting the dumbbell of
different weights.
On a mobile device, the results were displayed as shown in Figure 11. One of the key
features in the user interface we applied is to indicate the onset of the fatigue state of the
muscle group by flashing the screen orange and the severe state of fatigue by flashing
the screen red.
We had great reception at the design expo. People of different age groups tried out our
device. The calibration module in DSP algorithm picks up unique characteristics of
individual’s muscle information so the device worked reasonably well among different
test subjects.
 
Figure 11. EMG Signal Display under relaxed condition (left) and after strenuous activity, muscle
fatigue is indicated by a flashing screen (right) on Fred’s Android phone.
Figure 12. Kids in 5th grade wearing electrodes and testing our prototype at the design expo.
 
V. Team Member Contribution
Fred Buhler (Senior in Electrical Engineering)
1) Designed PCB
2) Wrote FPGA-PC interface
3) Wrote several hardware communication modules to interface FPGA with external
components
4) Wrote Android Application
5) Assisted in writing test code as well as writing code generation scripts in Matlab
Jason Hernandez (Senior in Electrical Engineering and computer Engineering)
1) Initial and subsequent research on fatigue presence and force output
2) Tested preliminary algorithms in Matlab before hardware implementation
3) Transcribed fatigue identifier and force output into verilog from Matlab test code
4) Wrote and executed testbenches to simulate algorithms under various conditions
5) Designed early version of calibration module and median frequency calculator
Alastair Shi (Senior in Electrical Engineering)
1) EMG Signal Research on fatigue presence and force output
2) EMG Signal Processing Implementation (HDL) - all filters and fatigue module
3) Wrote and executed testbenches to simulate algorithms under various conditions
4) Guinea pig - lab test subject
Angie Zhang (Senior in Electrical Engineering)
1) Proposed the original idea and researched potential commercial value of the project
2) Worked closely with team members on the concept and development calibration
module, fatigue identifier and force output in both MATLAB and FPGA;
3) Learned to use ISIM, VHDL and helped convert Verilog code into VHDL
4) Collected data and tested the algorithms;
5) Poster design and final report
VI. References and citations
[1]
http://www.pt.ntu.edu.tw/hmchai/Biomechanics/BMmeasure/MuscleStrengthMeasure
.files/EMGwithFatigue.png
[2]
http://link.springer.com/article/10.1007%2FBF00421697
[3]
http://rsta.royalsocietypublishing.org/content/368/1920/2765.short
 

More Related Content

What's hot

Final Draft of Research Paper 1
Final Draft of Research Paper 1Final Draft of Research Paper 1
Final Draft of Research Paper 1Trevor Davis
 
A new eliminating EOG artifacts technique using combined decomposition method...
A new eliminating EOG artifacts technique using combined decomposition method...A new eliminating EOG artifacts technique using combined decomposition method...
A new eliminating EOG artifacts technique using combined decomposition method...
TELKOMNIKA JOURNAL
 
Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...
Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...
Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...
VLSICS Design
 
Noise analysis & qrs detection in ecg signals
Noise analysis & qrs detection in ecg signalsNoise analysis & qrs detection in ecg signals
Noise analysis & qrs detection in ecg signalsHarshal Ladhe
 
EMG controlled Prosthetic Arm
EMG controlled Prosthetic ArmEMG controlled Prosthetic Arm
EMG controlled Prosthetic Arm
Md Kafiul Islam
 
Mecta ppt product overview
Mecta ppt product overviewMecta ppt product overview
Mecta ppt product overview
odojam
 
Prosthetic Arm for Amputees
Prosthetic Arm for AmputeesProsthetic Arm for Amputees
Prosthetic Arm for Amputees
vivatechijri
 
Feature Extraction Techniques and Classification Algorithms for EEG Signals t...
Feature Extraction Techniques and Classification Algorithms for EEG Signals t...Feature Extraction Techniques and Classification Algorithms for EEG Signals t...
Feature Extraction Techniques and Classification Algorithms for EEG Signals t...
Editor IJCATR
 
IRJET- Microcontroller Based EOG and Accelerometer Guide Wheelchair
IRJET-  	  Microcontroller Based EOG and Accelerometer Guide WheelchairIRJET-  	  Microcontroller Based EOG and Accelerometer Guide Wheelchair
IRJET- Microcontroller Based EOG and Accelerometer Guide Wheelchair
IRJET Journal
 
IRJET- Analysis of Electroencephalogram (EEG) Signals
IRJET- Analysis of Electroencephalogram (EEG) SignalsIRJET- Analysis of Electroencephalogram (EEG) Signals
IRJET- Analysis of Electroencephalogram (EEG) Signals
IRJET Journal
 
IRJET-Electromyogram Signals for Multiuser Interface- A Review
IRJET-Electromyogram Signals for Multiuser Interface- A ReviewIRJET-Electromyogram Signals for Multiuser Interface- A Review
IRJET-Electromyogram Signals for Multiuser Interface- A Review
IRJET Journal
 
Modelling and Control of a Robotic Arm Using Artificial Neural Network
Modelling and Control of a Robotic Arm Using Artificial Neural NetworkModelling and Control of a Robotic Arm Using Artificial Neural Network
Modelling and Control of a Robotic Arm Using Artificial Neural Network
IOSR Journals
 
IEEE Embedded Systems Top most Projects 2016-17 for Engineering Students Fre...
IEEE Embedded Systems Top most Projects 2016-17  for Engineering Students Fre...IEEE Embedded Systems Top most Projects 2016-17  for Engineering Students Fre...
IEEE Embedded Systems Top most Projects 2016-17 for Engineering Students Fre...
Elysium Technologies Private Ltd
 
5. detection and separation of eeg artifacts using wavelet transform nov 11, ...
5. detection and separation of eeg artifacts using wavelet transform nov 11, ...5. detection and separation of eeg artifacts using wavelet transform nov 11, ...
5. detection and separation of eeg artifacts using wavelet transform nov 11, ...
IAESIJEECS
 
Embedded system for upper-limb exoskeleton based on electromyography control
Embedded system for upper-limb exoskeleton based on electromyography controlEmbedded system for upper-limb exoskeleton based on electromyography control
Embedded system for upper-limb exoskeleton based on electromyography control
TELKOMNIKA JOURNAL
 
Performance Comparison of Known ICA Algorithms to a Wavelet-ICA Merger
Performance Comparison of Known ICA Algorithms to a Wavelet-ICA MergerPerformance Comparison of Known ICA Algorithms to a Wavelet-ICA Merger
Performance Comparison of Known ICA Algorithms to a Wavelet-ICA Merger
CSCJournals
 
⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)
⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)
⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)
Victor Asanza
 
The development of a wireless LCP-based intracranial pressure sensor for trau...
The development of a wireless LCP-based intracranial pressure sensor for trau...The development of a wireless LCP-based intracranial pressure sensor for trau...
The development of a wireless LCP-based intracranial pressure sensor for trau...
IJECEIAES
 
Classification of EEG Signals for Brain-Computer Interface
Classification of EEG Signals for Brain-Computer InterfaceClassification of EEG Signals for Brain-Computer Interface
Classification of EEG Signals for Brain-Computer Interface
Azoft
 

What's hot (20)

Ijetcas14 323
Ijetcas14 323Ijetcas14 323
Ijetcas14 323
 
Final Draft of Research Paper 1
Final Draft of Research Paper 1Final Draft of Research Paper 1
Final Draft of Research Paper 1
 
A new eliminating EOG artifacts technique using combined decomposition method...
A new eliminating EOG artifacts technique using combined decomposition method...A new eliminating EOG artifacts technique using combined decomposition method...
A new eliminating EOG artifacts technique using combined decomposition method...
 
Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...
Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...
Trends in VLSI circuit in 2020 - International Journal of VLSI design & Commu...
 
Noise analysis & qrs detection in ecg signals
Noise analysis & qrs detection in ecg signalsNoise analysis & qrs detection in ecg signals
Noise analysis & qrs detection in ecg signals
 
EMG controlled Prosthetic Arm
EMG controlled Prosthetic ArmEMG controlled Prosthetic Arm
EMG controlled Prosthetic Arm
 
Mecta ppt product overview
Mecta ppt product overviewMecta ppt product overview
Mecta ppt product overview
 
Prosthetic Arm for Amputees
Prosthetic Arm for AmputeesProsthetic Arm for Amputees
Prosthetic Arm for Amputees
 
Feature Extraction Techniques and Classification Algorithms for EEG Signals t...
Feature Extraction Techniques and Classification Algorithms for EEG Signals t...Feature Extraction Techniques and Classification Algorithms for EEG Signals t...
Feature Extraction Techniques and Classification Algorithms for EEG Signals t...
 
IRJET- Microcontroller Based EOG and Accelerometer Guide Wheelchair
IRJET-  	  Microcontroller Based EOG and Accelerometer Guide WheelchairIRJET-  	  Microcontroller Based EOG and Accelerometer Guide Wheelchair
IRJET- Microcontroller Based EOG and Accelerometer Guide Wheelchair
 
IRJET- Analysis of Electroencephalogram (EEG) Signals
IRJET- Analysis of Electroencephalogram (EEG) SignalsIRJET- Analysis of Electroencephalogram (EEG) Signals
IRJET- Analysis of Electroencephalogram (EEG) Signals
 
IRJET-Electromyogram Signals for Multiuser Interface- A Review
IRJET-Electromyogram Signals for Multiuser Interface- A ReviewIRJET-Electromyogram Signals for Multiuser Interface- A Review
IRJET-Electromyogram Signals for Multiuser Interface- A Review
 
Modelling and Control of a Robotic Arm Using Artificial Neural Network
Modelling and Control of a Robotic Arm Using Artificial Neural NetworkModelling and Control of a Robotic Arm Using Artificial Neural Network
Modelling and Control of a Robotic Arm Using Artificial Neural Network
 
IEEE Embedded Systems Top most Projects 2016-17 for Engineering Students Fre...
IEEE Embedded Systems Top most Projects 2016-17  for Engineering Students Fre...IEEE Embedded Systems Top most Projects 2016-17  for Engineering Students Fre...
IEEE Embedded Systems Top most Projects 2016-17 for Engineering Students Fre...
 
5. detection and separation of eeg artifacts using wavelet transform nov 11, ...
5. detection and separation of eeg artifacts using wavelet transform nov 11, ...5. detection and separation of eeg artifacts using wavelet transform nov 11, ...
5. detection and separation of eeg artifacts using wavelet transform nov 11, ...
 
Embedded system for upper-limb exoskeleton based on electromyography control
Embedded system for upper-limb exoskeleton based on electromyography controlEmbedded system for upper-limb exoskeleton based on electromyography control
Embedded system for upper-limb exoskeleton based on electromyography control
 
Performance Comparison of Known ICA Algorithms to a Wavelet-ICA Merger
Performance Comparison of Known ICA Algorithms to a Wavelet-ICA MergerPerformance Comparison of Known ICA Algorithms to a Wavelet-ICA Merger
Performance Comparison of Known ICA Algorithms to a Wavelet-ICA Merger
 
⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)
⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)
⭐⭐⭐⭐⭐ 2020 WEBINAR: TECNOLOGÍA Y SALUD (Abril 2020)
 
The development of a wireless LCP-based intracranial pressure sensor for trau...
The development of a wireless LCP-based intracranial pressure sensor for trau...The development of a wireless LCP-based intracranial pressure sensor for trau...
The development of a wireless LCP-based intracranial pressure sensor for trau...
 
Classification of EEG Signals for Brain-Computer Interface
Classification of EEG Signals for Brain-Computer InterfaceClassification of EEG Signals for Brain-Computer Interface
Classification of EEG Signals for Brain-Computer Interface
 

Viewers also liked

METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...
METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...
METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...
IAEME Publication
 
DEVELOPMENT OF SPEAKER VERIFICATION UNDER LIMITED DATA AND CONDITION
DEVELOPMENT OF SPEAKER VERIFICATION  UNDER LIMITED DATA AND CONDITIONDEVELOPMENT OF SPEAKER VERIFICATION  UNDER LIMITED DATA AND CONDITION
DEVELOPMENT OF SPEAKER VERIFICATION UNDER LIMITED DATA AND CONDITIONniranjan kumar
 
sEMG biofeedback in dysphagia
sEMG biofeedback in dysphagiasEMG biofeedback in dysphagia
sEMG biofeedback in dysphagia
Arshelle Kibs
 
Text-Independent Speaker Verification
Text-Independent Speaker VerificationText-Independent Speaker Verification
Text-Independent Speaker Verification
Cody Ray
 
Text-Independent Speaker Verification Report
Text-Independent Speaker Verification ReportText-Independent Speaker Verification Report
Text-Independent Speaker Verification Report
Cody Ray
 
PRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LAB
PRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LABPRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LAB
PRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LAB
Nurhasanah Shafei
 
Dsp lab report- Analysis and classification of EMG signal using MATLAB.
Dsp lab report- Analysis and classification of EMG signal using MATLAB.Dsp lab report- Analysis and classification of EMG signal using MATLAB.
Dsp lab report- Analysis and classification of EMG signal using MATLAB.
Nurhasanah Shafei
 
EMG electromayogram
EMG electromayogramEMG electromayogram
EMG electromayogram
ASHISH RAJ
 
Emg biofeedback
Emg biofeedbackEmg biofeedback
Emg biofeedback
Thangamani Ramalingam
 
Speaker Recognition using Gaussian Mixture Model
Speaker Recognition using Gaussian Mixture Model Speaker Recognition using Gaussian Mixture Model
Speaker Recognition using Gaussian Mixture Model
Saurab Dulal
 
Electromyogram
ElectromyogramElectromyogram
Electromyogram
Jhoniel Viloria
 
Speaker recognition using MFCC
Speaker recognition using MFCCSpeaker recognition using MFCC
Speaker recognition using MFCCHira Shaukat
 
Muscle System
Muscle SystemMuscle System
Muscle System
Rhys Moult
 
Electromyography
ElectromyographyElectromyography
ElectromyographyRajesh Goit
 

Viewers also liked (18)

SPEAKER VERIFICATION
SPEAKER VERIFICATIONSPEAKER VERIFICATION
SPEAKER VERIFICATION
 
METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...
METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...
METHODS FOR IMPROVING THE CLASSIFICATION ACCURACY OF BIOMEDICAL SIGNALS BASED...
 
DEVELOPMENT OF SPEAKER VERIFICATION UNDER LIMITED DATA AND CONDITION
DEVELOPMENT OF SPEAKER VERIFICATION  UNDER LIMITED DATA AND CONDITIONDEVELOPMENT OF SPEAKER VERIFICATION  UNDER LIMITED DATA AND CONDITION
DEVELOPMENT OF SPEAKER VERIFICATION UNDER LIMITED DATA AND CONDITION
 
sEMG biofeedback in dysphagia
sEMG biofeedback in dysphagiasEMG biofeedback in dysphagia
sEMG biofeedback in dysphagia
 
Text-Independent Speaker Verification
Text-Independent Speaker VerificationText-Independent Speaker Verification
Text-Independent Speaker Verification
 
Text-Independent Speaker Verification Report
Text-Independent Speaker Verification ReportText-Independent Speaker Verification Report
Text-Independent Speaker Verification Report
 
PRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LAB
PRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LABPRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LAB
PRESENTATION LAB DSP.Analysis & classification of EMG signal - DSP LAB
 
Dsp lab report- Analysis and classification of EMG signal using MATLAB.
Dsp lab report- Analysis and classification of EMG signal using MATLAB.Dsp lab report- Analysis and classification of EMG signal using MATLAB.
Dsp lab report- Analysis and classification of EMG signal using MATLAB.
 
EMG electromayogram
EMG electromayogramEMG electromayogram
EMG electromayogram
 
Emg biofeedback
Emg biofeedbackEmg biofeedback
Emg biofeedback
 
Speaker recognition.
Speaker recognition.Speaker recognition.
Speaker recognition.
 
Speaker Recognition using Gaussian Mixture Model
Speaker Recognition using Gaussian Mixture Model Speaker Recognition using Gaussian Mixture Model
Speaker Recognition using Gaussian Mixture Model
 
Electromyogram
ElectromyogramElectromyogram
Electromyogram
 
Speaker recognition using MFCC
Speaker recognition using MFCCSpeaker recognition using MFCC
Speaker recognition using MFCC
 
Emg fundamental
Emg fundamentalEmg fundamental
Emg fundamental
 
EMG
EMGEMG
EMG
 
Muscle System
Muscle SystemMuscle System
Muscle System
 
Electromyography
ElectromyographyElectromyography
Electromyography
 

Similar to EECS452EMGFinalProjectReportPDF

Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...
Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...
Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...
IRJET Journal
 
SImOS
SImOSSImOS
SImOS
dalgetty
 
Non-Contact Health Monitoring System Using Image and Signal Processing
Non-Contact Health Monitoring System Using Image and Signal ProcessingNon-Contact Health Monitoring System Using Image and Signal Processing
Non-Contact Health Monitoring System Using Image and Signal Processing
Atul Kumar Sharma
 
9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...
9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...
9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...Lorenzo Passaquindici
 
IoT Based EMG Monitoring System
IoT Based EMG Monitoring SystemIoT Based EMG Monitoring System
IoT Based EMG Monitoring System
IRJET Journal
 
Design of single channel portable eeg
Design of single channel portable eegDesign of single channel portable eeg
Design of single channel portable eeg
ijbesjournal
 
Modelling and Analysis of Brainwaves for Real World Interaction
Modelling and Analysis of Brainwaves for Real World InteractionModelling and Analysis of Brainwaves for Real World Interaction
Modelling and Analysis of Brainwaves for Real World Interaction
Pavan Kumar
 
The second seminar
The second seminarThe second seminar
The second seminarAhmedMahany
 
Emotiv Epoc/EEG/BCI
Emotiv Epoc/EEG/BCIEmotiv Epoc/EEG/BCI
Emotiv Epoc/EEG/BCI
Suhail Khan
 
Emotiv Epoc/BCi/EEG
Emotiv Epoc/BCi/EEGEmotiv Epoc/BCi/EEG
Emotiv Epoc/BCi/EEG
Suhail Khan
 
A Wireless ECG Plaster for Real-Time Cardiac Health Monitoring in Body Senso...
A Wireless ECG Plaster for Real-Time Cardiac  Health Monitoring in Body Senso...A Wireless ECG Plaster for Real-Time Cardiac  Health Monitoring in Body Senso...
A Wireless ECG Plaster for Real-Time Cardiac Health Monitoring in Body Senso...
ecgpapers
 
BCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEO
BCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEOBCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEO
BCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEO
Harathi Devi Nalla
 
IRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud Computing
IRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud ComputingIRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud Computing
IRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud Computing
IRJET Journal
 
DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...
DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...
DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...
CSCJournals
 
Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...
Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...
Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...
HayleyBoyd5
 
Real time ECG Monitoring: A Review
Real time ECG Monitoring: A ReviewReal time ECG Monitoring: A Review
Real time ECG Monitoring: A Review
ijtsrd
 
Class D Power Amplifier for Medical Application
Class D Power Amplifier for Medical ApplicationClass D Power Amplifier for Medical Application
Class D Power Amplifier for Medical Application
ieijjournal
 
CLASS D POWER AMPLIFIER FOR MEDICAL APPLICATION
CLASS D POWER AMPLIFIER FOR MEDICAL APPLICATIONCLASS D POWER AMPLIFIER FOR MEDICAL APPLICATION
CLASS D POWER AMPLIFIER FOR MEDICAL APPLICATION
ieijjournal1
 

Similar to EECS452EMGFinalProjectReportPDF (20)

Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...
Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...
Surface Electromyography (SEMG) Based Fuzzy Logic Controller for Footballer b...
 
SImOS
SImOSSImOS
SImOS
 
Non-Contact Health Monitoring System Using Image and Signal Processing
Non-Contact Health Monitoring System Using Image and Signal ProcessingNon-Contact Health Monitoring System Using Image and Signal Processing
Non-Contact Health Monitoring System Using Image and Signal Processing
 
9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...
9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...
9 - IMEKO2014_Passaquindici et al_NewCompactEquipmentForReal-TimeAcquisition&...
 
IoT Based EMG Monitoring System
IoT Based EMG Monitoring SystemIoT Based EMG Monitoring System
IoT Based EMG Monitoring System
 
Design of single channel portable eeg
Design of single channel portable eegDesign of single channel portable eeg
Design of single channel portable eeg
 
EMG final report
EMG final reportEMG final report
EMG final report
 
Modelling and Analysis of Brainwaves for Real World Interaction
Modelling and Analysis of Brainwaves for Real World InteractionModelling and Analysis of Brainwaves for Real World Interaction
Modelling and Analysis of Brainwaves for Real World Interaction
 
Ijetcas14 393
Ijetcas14 393Ijetcas14 393
Ijetcas14 393
 
The second seminar
The second seminarThe second seminar
The second seminar
 
Emotiv Epoc/EEG/BCI
Emotiv Epoc/EEG/BCIEmotiv Epoc/EEG/BCI
Emotiv Epoc/EEG/BCI
 
Emotiv Epoc/BCi/EEG
Emotiv Epoc/BCi/EEGEmotiv Epoc/BCi/EEG
Emotiv Epoc/BCi/EEG
 
A Wireless ECG Plaster for Real-Time Cardiac Health Monitoring in Body Senso...
A Wireless ECG Plaster for Real-Time Cardiac  Health Monitoring in Body Senso...A Wireless ECG Plaster for Real-Time Cardiac  Health Monitoring in Body Senso...
A Wireless ECG Plaster for Real-Time Cardiac Health Monitoring in Body Senso...
 
BCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEO
BCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEOBCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEO
BCI FOR PARALYSES PATIENT CONVERTING AUDIO TO VIDEO
 
IRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud Computing
IRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud ComputingIRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud Computing
IRJET - Real Time Muscle Fatigue Monitoring using IoT Cloud Computing
 
DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...
DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...
DrCell – A Software Tool for the Analysis of Cell Signals Recorded with Extra...
 
Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...
Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...
Improvement of a Bidirectional Brain-Computer Interface for Neural Engineerin...
 
Real time ECG Monitoring: A Review
Real time ECG Monitoring: A ReviewReal time ECG Monitoring: A Review
Real time ECG Monitoring: A Review
 
Class D Power Amplifier for Medical Application
Class D Power Amplifier for Medical ApplicationClass D Power Amplifier for Medical Application
Class D Power Amplifier for Medical Application
 
CLASS D POWER AMPLIFIER FOR MEDICAL APPLICATION
CLASS D POWER AMPLIFIER FOR MEDICAL APPLICATIONCLASS D POWER AMPLIFIER FOR MEDICAL APPLICATION
CLASS D POWER AMPLIFIER FOR MEDICAL APPLICATION
 

EECS452EMGFinalProjectReportPDF

  • 1. EECS 452 Digital Signal Processing Design Laboratory Portable Electromyography (EMG) Tracking Device Interfacing Android Device with Bluetooth for physical Therapy and Sports Medicine   Fred Buhler, Jason Hernandez, Angie Zhang, Alastair Shi Department of Electrical Engineering and Computer Science University of Michigan, Ann Arbor April 24th, 2014  
  • 2. Table of Contents I. Introduction 1) EMG Signal and its Nature 2) Motivation 3) Goals 4) End Product Evaluation II. Description of the Project 1)Signal Architecture 2) Custom PCB design 3) Battery Supply 4) Signal Acquisition 5) Supporting Hardware i)Bluetooth ii) FPGA 6) DSP Algorithm Development i) Fatigue Identifier Algorithm Initial Method: Mean Frequency A New Route: Power Spectrum ii) Force Output Algorithm 7) Implementing Logic on FPGA Fatigue Identifier Module Force Output Module Bluetooth Module 8) Programming Language VHDL Blocks C & C++ Java & HTML MATLAB 9) Parts List III. Milestones First Milestone Second Milestone Third Milestone IV. COE Design Expo V. Member Contributions VI.References and Citations      
  • 3. I. Introduction EMG Signal and its Nature Electromyography (EMG) is an experimental technique concerned with the development, recording and analysis of myoelectric signals, which are formed by physiological variations in the state of the muscle fibre membranes. ● Complicated signal ● Controlled by the nervous system ● Dependent on the anatomical and physiological properties of muscles ● Acquire noise while traveling through different tissues Motivation The EMG signals are studied for medical science research, rehabilitation, ergonomics, sports science and more. EMG is used clinically for the diagnosis of neurological and neuromuscular problems. It is used diagnostically by gait laboratories and by clinicians trained in the use of biofeedback or ergonomic assessment. We summarized a small subset of the benefits of working with EMG signals: ● EMG allows to physicians directly “look” into the muscle ● It allows measurements of muscular performance ● Helps in decision making both before/after surgery ● Allows analysis to improve sports activities Goals Before we started the project, we performed marker analysis and research to see if the project is worth investing. After visiting laboratory and clinical setting, we learned the following: ● The equipment in a clinical or a laboratory setting lacks portability and mobility ● Physical therapists have to bring the patients who have mobile constraints to the exam room in order to perform EMG analysis. ● Leading competitor in the market can only send the data to a wireless local area network. Data can only be displayed on a computer. After understanding the current market, we were inspired and set out the following goals for this semester including: ● Implement design on a printed circuit board (PCB) rather than a bread board ● Use FPGA as a center for data processing ● Develop working DSP algorithms to monitor the presence of fatigue and force output of the muscle ● Send information to Android phone or tablet via Bluetooth ● Emotion detection (stretch goal)  
  • 4. End Product Evaluation Before the design expo, we were able to meet most of the goals that we expected to accomplish. As shown on the poster, our prototype is placed in the center. The custom PCB is the harbor for EMG probes, power supply, analog filters, FPGA and Bluetooth. At the COE design expo, the device was well received and it worked reasonably well at the design expo. Our device has an algorithm that calibrates individual’s peak value of the EMG signal and this feature ensures that the device works among different people. Figure 1. The poster for “Portable EMG” shown at the College Engineering Design Expo II. Description of project EECS 452 is an embedded DSP class but we wanted to go to the extra mile. Besides the key feature of our prototype is mobility, which enables 24/7 mobile monitoring of the EMG activities for clinical applications. Angie Zhang and Jason Hernandez have connections with the research lab in the medical school and the UM hospital. We were able to collect the EMG data from medical grade equipment and compare to the signal obtained from our own prototype. Given more time and resources, we would like to further verify the accuracy of our device and seek medical professionals for advice.  
  • 5. System Architecture Figure 2. Top Level Overview of the Portable EMG Tracking Device Figure 3. Jason using the prototype to display his muscle activities while lifting a 10 lb dumbbell. An EMG signal enters the system via a three-plug standard medical connector or a standard 3.5mm audio jack connector terminal block on the PCB. The signal is amplified and filtered through an open source analog front end (slightly modified from an Olimex schematic). The signal is then digitized and sent to a Spartan 6 FPGA where the signal is processed and sent to a PC over USB or a mobile device running Android over Bluetooth.  
  • 6. Figure 4. Implemented System Level Diagram Custom PCB design Figure 5. Custom PCB as the “communication center” of the data.  
  • 7. Instead of breadboards, we decided to use printed circuit board, which ensures more durability and stability during the “wear and tear” of the testing process and the COE design expo. The PCB is also highly customizable and can be reconfigured to work specifically for one individual once commercialized. The board design can also be easily changed into one that measures the ECG, which could lead to more applications and future prospects for our project. Battery Supply Board is designed to operate on a wide range of input sources from 4 to 12 volts, including batteries for mobile use or power supplies for use in a laboratory environment. Signal Acquisition Board accepts a wide range of commercially available EMG sensors with two inputs: ● 3.5mm audio jack ● Standard medical equipment plug. After experimenting both probes, we found that the standard medical equipment plug provides much better signals so we used that one for testing and demonstration. Supporting Hardware Bluetooth The RN-42 Class 2 Bluetooth module supports BCSP, DUN, LAN, GAP SDP, RFCOMM, and L2CAP protocols. Most importantly, it connects seamlessly to Bluetooth capable mobile devices. FPGA OPal Kelly’s small form-factor XEM 6001 with a Spartan6 FPGA drives the board, is fully reconfigurable, and enables powerful Digital Signal Processing with its DSP 48A1 slices. Figure 6. OPal Kelly xem 6001  
  • 8. DSP Algorithm Development Figure 7. Exhibits a simplified block diagram representing the DSP aspects found within the project. The first 3 modules prepare the data for our information extraction modules that are present later in the datapath. 1) Fatigue Identifier Algorithm Initial Method: Mean Frequency Before beginning work on our DSP algorithm, our team read through many EMG publications in order to identify the most appropriate means for obtaining the information we wanted. An earlier option of ours was to detect something known as the median frequency within the power spectrum. This was considered to be a valuable parameter because of the way it behaved during a muscle's state of fatigue. Figure 8. Mean frequency spectrum and its correlation with muscle fatigue. [1]  
  • 9. A New Route: Power Spectrum As we began implementing an algorithm which monitored this ability, out team continued to research alternatives to identifying levels of muscle fatigue. We eventually found out that not only did the median frequency shift a certain way during fatigue, but there was a distinct change in the total power as well (Figure 8). Amplitudes at frequencies greater than 30 Hz remained consistent as a muscle grew tired while amplitudes for frequencies below 30 Hz increased dramatically. This phenomenon explains both why the median point on the spectrum falls to a lower frequency, and why there is an overall power increase in the spectrum [2]. After confirming that our newly obtained knowledge was persistent with our own data, we settled on a means for observing the power spectrum. We chose to implement a moving average filter as the core means for preparing our data for the nonconventional processes that would occur later in our datapath. Initial Matlab tests with MA filters not only proved its effectiveness on our datasets, but also demonstrated its applicability for a variety of information extractions. When visually observing the output of the MA filter, the biological properties which we sought were clearly evident from one dataset to the next. Not only did the output clearly resemble the force being exerted by the muscle of interest, but there was a distinct definition of when the onset of fatigue occurred (Figure 9). Figure 9. The input (rectified data) and output to the MA filter on a dataset that describes a repetitive lifting of a 10 lb weight. Note the distinct vertical shift around the 25,000th sample, representing the onset of fatigue in the measured muscle  
  • 10. Once we were confident with the aspects' consistent presence within the MA filter outputs, we began implementing it into hardware languages (VHDL & Verilog) as well as start creating algorithms that could "decipher" the MA outputs. Using methods taught in class and practiced in lab, we generated an elliptical low pass filter to isolate the relevant information in the EMG signal. This type of lowpass was chosen due to its ability to exemplify a sharp drop-off in the frequency spectrum while utilizing a tolerable number of coefficients. The input to the MA filter was required to be rectified, so an additional filter was included which mirrored everything below our DC bias to its respectable quantity. We eventually agreed upon a 2048-point MA filter in order to balance its ability in smoothing our data without overly distorting any relevant information. The MA filter would then be sent to a calibration module which adjusted the data accordingly to later be interpreted by the force output and fatigue modules. The calibration module was necessary in order for our algorithms to be effective when used by a variety of people with different physical attributes. The calibrator worked by identifying when a user was at rest and then they first exhibited activity. It also provided succeeding modules with various parameters to be used in measuring information that was significant to us. The calibration worked very closely with the fatigue identifier, as it provided the module with certain values which were used to construct multiple thresholds. The fatigue identifier detected whether or not a threshold was successfully crossed (which included disregarding insignificant activations) by comparing calibration values to the MA filter output over the course of 4 second window, and would notify the calibrator of its current state in order to generate additional parameters (such as new thresholds for determining an increased or decreased level of fatigue). Subsequent fatigue thresholds were determined by finding the mean value of the MA output over the 4 second window and raising that value by 25%. The output of the fatigue identifier was a two bit value, capable of representing 3 levels of fatigue in addition to the non-fatigued state. 2) Force Output Algorithm The ability to detect force output was another main goal of this project. This module worked by taking in data directly from the MA filter as well as certain coefficients from the calibration module (Figure 10). The coefficients were used to create a curve that estimated the current force as a numerical integer (in lbs) based off the user's previous activity. Once this curve was generated, the module would use the MA output to determine where the current input lies on the generated curve. Furthermore, the algorithm worked in conjunction with the fatigue identifier in order to more accurately calculate the force. As previously mentioned, there is a shift in amplitude when muscle  
  • 11. fatigue is present, and this shift would have to be accounted for in order prevent an overestimation of the force [3]. Implementing Logic on FPGA After fully develop the algorithms, we needed to implement them on the FPGA. The elements of the DSP algorithm block diagram were implemented as individual modules in HDL. The primary tool used to generate these modules was a built-in “Core Generator” module known as “IP Core”. Through this tool various filters were built. The “Core Generator” requires various configuration parameters such as filter coefficients, data input type, sampling rate, and other things specific to core such as when data is ready to leave and enter the core. This tool was used in the design of the blocks “Low Pass Filter”, and “MA Filter” in conjunction to fdatool. The MA filter has all coefficients set to “1”. There are various other handwritten VHDL modules to interface all of the core generator modules, along with to handle the rectification/offset block, calibration, and fatigue/force output. Fatigue Identifier Module The fatigue module detected fatigue based on a theory regarding an increase in values of the EMG amplitude. Through the Calibration module we would acquire the average value of the EMG, we would then calculate 25% more than that value indicating fatigue. Once this value was acquired we would raise a flag showing fatigue signaling for the Bluetooth communication module to tell the phone app to show fatigue. Force Output Module Figure 10. Shows the results of the force output module (above) after receiving input data from the MA filter (below). The calibration coefficients are circled in red, the current fatigue it in yellow, and the force output is in blue. Note the correlation between the peaks, troughs, and force output value. This data was acquired while lifting and then lowering a 10 lb weight.  
  • 12. Bluetooth Module The last module was for communication to the bluetooth module and how to utilize the Bluetooth module. A baud-rate generator created a clock for serial communication, and a frame generator module created a 5-element ASCII frame that contained the DSP state and normalized data for plotting. Programming Languages Many programming languages were used in the process of the project. Here is a brief summary of where and how each of them is used. 1) VHDL Blocks: Fatigue Detection Module, SPI driver, Opal Kelly Front Panel Wrapper, Bluetooth baud generator and serial COM driver, Binary to serial frame transformation, digital bias/rectification, as well as Remote configuration module & data buffering. 2) C & C++: Built executable to accept configuration data (called from command line or Matlab) as well as handled PC-side buffering to accept raw data from FPGA. 3) Java & HTML: Used for creating Mobile Application for Android devices 4) MATLAB: Both DSP algorithm testing, and as a FPGA/PC interfacing tool for initiating data transfers and real-time behavioral configuration of FPGA. Final Parts List Items Purchased Item Num. Quantity Price per unit Total Neuroline Sensor 715 05 2 packs $12.20 $24.40 Neuroline Sensor 715 08 2 packs $12.60 $25.20 2-slot Adhesive Skin Interface (SC-F01 (DE-02)) 100 pieces $35 $35 FPGA Board XEM6001 or DE70 1 Available in lab 0 Table 1. Detailed list of items purchased for this project. Note: Total cost of the prototyping process was reasonably low and we did not go over budget allowed for this project.  
  • 13. III. Milestones 1) First milestone: Our original goal was to have the ability to collect raw EMG data on the PCB, digitize the data, as well as have the raw data sent to a computer for DPS algorithm testing. We met this milestone on-time, and by this milestone we were already running DSP algorithms on our raw data in Matlab leading to our second milestone. 2) Second milestone: Our original goal was to have a working DSP algorithm implemented in the FPGA fabric. By the second milestone meeting – we already had a final working product (we could collect, process, and display live data), however the DSP we had implemented was simple time/magnitude threshold detection and indication of the EMG signal. While this was in itself a successful milestone, the DSP still needed some work before milestone 3. 3) Third milestone: By the design expo we successfully implemented a more complex and through DSP algorithm that self-calibrated to the user and accurately detected fatigue. IV. Design Expo At the design expo and the final presentation, our prototype was passed around since it’s highly portable. We had the test subject wearing the sticky probes, which collects the EMG signal and send it to our device. Since the device sends data via Bluetooth to the Android device, the user can see their live muscle activities while lifting the dumbbell of different weights. On a mobile device, the results were displayed as shown in Figure 11. One of the key features in the user interface we applied is to indicate the onset of the fatigue state of the muscle group by flashing the screen orange and the severe state of fatigue by flashing the screen red. We had great reception at the design expo. People of different age groups tried out our device. The calibration module in DSP algorithm picks up unique characteristics of individual’s muscle information so the device worked reasonably well among different test subjects.  
  • 14. Figure 11. EMG Signal Display under relaxed condition (left) and after strenuous activity, muscle fatigue is indicated by a flashing screen (right) on Fred’s Android phone. Figure 12. Kids in 5th grade wearing electrodes and testing our prototype at the design expo.  
  • 15. V. Team Member Contribution Fred Buhler (Senior in Electrical Engineering) 1) Designed PCB 2) Wrote FPGA-PC interface 3) Wrote several hardware communication modules to interface FPGA with external components 4) Wrote Android Application 5) Assisted in writing test code as well as writing code generation scripts in Matlab Jason Hernandez (Senior in Electrical Engineering and computer Engineering) 1) Initial and subsequent research on fatigue presence and force output 2) Tested preliminary algorithms in Matlab before hardware implementation 3) Transcribed fatigue identifier and force output into verilog from Matlab test code 4) Wrote and executed testbenches to simulate algorithms under various conditions 5) Designed early version of calibration module and median frequency calculator Alastair Shi (Senior in Electrical Engineering) 1) EMG Signal Research on fatigue presence and force output 2) EMG Signal Processing Implementation (HDL) - all filters and fatigue module 3) Wrote and executed testbenches to simulate algorithms under various conditions 4) Guinea pig - lab test subject Angie Zhang (Senior in Electrical Engineering) 1) Proposed the original idea and researched potential commercial value of the project 2) Worked closely with team members on the concept and development calibration module, fatigue identifier and force output in both MATLAB and FPGA; 3) Learned to use ISIM, VHDL and helped convert Verilog code into VHDL 4) Collected data and tested the algorithms; 5) Poster design and final report VI. References and citations [1] http://www.pt.ntu.edu.tw/hmchai/Biomechanics/BMmeasure/MuscleStrengthMeasure .files/EMGwithFatigue.png [2] http://link.springer.com/article/10.1007%2FBF00421697 [3] http://rsta.royalsocietypublishing.org/content/368/1920/2765.short