Вы находитесь на странице: 1из 4

FACULTAD DE INGENIERÍA

Señales y sistemas

PULSOMETER

ABSTRACT. In the following document, the


final project of signals and systems is carried
out, where all the knowledge acquired
during the academic semester has been put
into practice, an analysis of the spectrum of
a signal has been made, the signal is the
cardiac pulse of one of the members that
make up the work group. captured by means Fig.1 Taken from: https://saber.patagoniate
of a cardiac sensor and with the help of the c.com/2014/06/arduino-mega-2560-atmega-mega-
Arduino capture the signal, an algorithm is arduino-clon-compatible-argentina-tutorial-basico-
performed in Matlab to generate the informacion-arduino-argentina-ptec/
graphics corresponding to the original
signal, the spectrum of the original signal By means of ports, the microcontroller can be
and the filtered signal. Key words: Arduino, connected to peripherals, which can be read, write or
Fourier spectrum, filter, Matlab, heart rate. external memory devices. A microcontroller integrates
the following subsystems:

INTRODUCTION ● CPU: 8, 16 and 32 bits.


to carry out the realization of the project using a ● Peripherals: Analog / digital converter,
heart rate with infrared and an active buzzer Digital / analog converter, PWM, Counters /
connected to the Arduino one the pulse signals, to Timers, etc.
receive the signal, with noise. then so can filter it ● Data memories: SRAM, EEPROM.
through Matlab program, filter by means of the ● Program memories: ROM, PROM, EPROM,
mentioned program was implemented to reduce EEPROM, FLASH.
the high frequency and allow the passage of the ● Management of interruptions.
low frequency a heart that can vary the ● Ports: Serial (I2C, SPI, CAN, etc.) and
conditions in which the person performing the Parallel.
type of test.
Heart rate sensor
● Pregnancy status
● Heart problems The Amped pulse sensor is a heart rate sensor that just
● Use of drugs connect it to use it for Arduino. In essence it combines
a simple optical heart rate sensor with amplification,
THEORETICAL FRAMEWORK and a noise cancellation circuit making pulse readings
reliable, easy and fast to obtain. In addition, you need
Microcontroller AT MEGA 2560 only 4 mA of current at 5V, which makes it ideal for
mobile applications. [3]
It is a microcontroller with RISC architecture of 8 bits,
Harvard architecture, with flash memory for code,
SRAM and EEPROM for data.
This microcontroller is the one used in the Arduino
MEGA. [4]
Fig.2 Cardiac pulse sensor for Arduino. Taken from:
https://dualtronica.com/sensores/311-sensor-de-
Objectives general
ritmo-p ulso-cardiaco.html.
● Perform the Fourier spectrum analysis of
Heart rate an original and filtered cardiac pulse
signal.
The heart rate is one of the vital signs of people
and is defined as the number of times per minute Objectives specific
that the heart beats or contracts. The heart rate
varies, we have a resting heart rate, which as its ● Perform an algorithm that allows the
name suggests, is the rhythm at which the heart visualization of the signals.
beats when we are relaxed. The heart rate
increases with the effort, with the objective of ● Condition the cardiac pulse sensor with
providing more oxygen and energy for the Arduino to capture the signal.
activity that is being performed.

ANALYSIS AND RESULTS

To make a correct analysis of the problem,


first the circuit is made to record the cardiac
pulse where they were tested with analog and
digital circuits, different configurations were
tested with analog circuits, but the expected
signal could not be captured, therefore, it is
Fig.3 Values pulsations. Taken from: used a cardiac pulse sensor for Arduino
http://cultyfitybtt.blogspot.com/2010/08/frecuencia-
cardiaca.html
where it already brings the integrated circuit
to be able to capture the signal.
Matlab

It is a mathematical software tool totally


integrated into an application of a development
environment oriented towards the realization of
Projects where mathematical calculations are
involved, visualizing them.
MATLAB integrates Analysis, matrix
calculation, signal processing and visualization
graphs.

Fig.5 Signal original.

Following this the scrip is performed in the


Matlab

function varargout = pulso_guide2(varargin)


gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton,
Fig.4 Matlab application icon. Taken from: ...
https://www5.espe.edu.ec/~supercomputacion/project 'gui_OpeningFcn',
s/matlab/ @pulso_guide2_OpeningFcn, ...
OBJECTIVES
2
FACULTAD DE INGENIERÍA
Señales y sistemas

'gui_OutputFcn', fvtool(d)
@pulso_guide2_OutputFcn, ... axes(handles.axes3);
'gui_LayoutFcn', [] , ... % hold off;
'gui_Callback', []); plot(t,filtrada)
if nargin && ischar(varargin{1}) ylim([450 550]);
gui_State.gui_Callback = %xlim([50 300]);
str2func(varargin{1}); grid on;
end title('Señal Filtrada')
function volv_Callback(hObject, eventdata,
if nargout handles)
[varargout{1:nargout}] = close(pulso_guide2);
gui_mainfcn(gui_State, varargin{:}); guide1
else
gui_mainfcn(gui_State, varargin{:}); function trans_Callback(hObject, eventdata,
end handles)
function global a0;
pulso_guide2_OpeningFcn(hObject, global Fs;
eventdata, handles, varargin) global filtrada;
handles.output = hObject; Fs=8620;
global a0; long=length(filtrada); %Longitud de la señal
global t; y=fft(filtrada,long); %Transformada rapida
axes(handles.axes2);%Se muestra en el de fourier
primer área de gráfico y=y(1:long/2); %La
plot(t,a0) mx = abs(y); %Se saca el vaor absoluto
title('Señal capturada') mx=(mx*long)/2;%% Calculo de la
grid on transformada fe fouerier completa
drawnow f = (0:long/2-1)*Fs/long;

guidata(hObject, handles); axes(handles.axes4);


hold off;
function varargout = plot(f,mx)
pulso_guide2_OutputFcn(hObject, ylim([0 (8e5)]);
eventdata, handles) xlim([0 4310]);
varargout{1} = handles.output; grid on;
title('Transformada de Fourier')

function fourier_Callback(hObject,
eventdata, handles) With this script it allows us to filter the
global a0; original signal and apply the Fourier
global t; transform following the figure 5 and 6.
global filtrada;
global Fs;

d =
designfilt('lowpassfir','PassbandFrequency',0
.55, ...
'StopbandFrequency',0.7, ...

'StopbandAttenuation',60,'DesignMethod','k
aiserwin');

filtrada=filter(d,a0);
[2] MANUAL DE PROGRAMACIÓN DE
ARDUINO. (2018). Retrieved from
http://dfists.ua.es/~jpomares/arduino/page_01.ht
m.

[4] (2018). Retrieved from


https://saber.patagoniate c.com/2014/06/arduino-
mega-2560-atmega-mega-arduino-clon-
compatible-argentina-tutorial-basico-
informacion-arduino-argentina-ptec/

Fig.6 Spectrum of the signal. [5] Armengou, Y., Armengou, Y., & perfil, V.
(2018). FRECUENCIA CARDIACA. Retrieved
from
http://edfisicayure2013.blogspot.com.co/2017/1
1/frecuencia-cardiaca.html

Fig.7 Filtered signal

CONCLUSION

● The cardiac signals are of very low


frequency and any type of artifact
generates noise in the signal, there are
also many factors such as a bad register
of the put due to the movement presented
by the person that is being subjected to
the pulse test.

● To improve the captured pulse signal, a


low pass filter must be implemented,
which is characterized by allowing the
passage of lower frequencies and
attenuating high frequencies, the system
that works works very low frequency.

REFERENCES
[1] Introducción a los filtros digitales. (2018).
[ebook] Available at: https://www.eumus.edu
.uy/eme/en senanza/electivas/d
sp/presentaciones/clase10.pdf [Accessed 29 Apr.
2018].

Вам также может понравиться