Buenos Días a todos. Se que me eh desaparecido horriblemente de mi Blog, eh de decir que a sido por fuerzas mayores que mas adelante les platicaré :) no es nada malo, todo lo contrario :D.
En fin, procederé a explicarles el siguiente proyecto.
Medidor de Frecuencia Respiratoria |
Introducción
La frecuencia respiratoria suele medirse por medio de la observación, o bien en el caso de los cuidados intensivos, con máquinas de alta precisión pero que suelen ser de alto costo.
En este trabajo se sugiere elaborar un
circuito que sea capaz de medir la frecuencia respiratoria a partir de la
exhalación de aire caliente por medio de las fosas nasales. El principio es
colocar un sensor de temperatura en alguna de las fosas nasales, el sensor debe
ser capaz de detectar el cambio de temperatura entre cada inhalación y
exhalación, así como detectar el tiempo en que tarda cada uno de ellos para así
poder determinar la frecuencia respiratoria.
Uno de los sensores más comunes de
temperatura es el LM35, el cual es el sensor sugerido para el desarrollo del
medidor de frecuencia respiratoria.
Materiales
* Arduino Uno
* Sensor de temperatura LM35
Tabla de diferentes Frecuencias Respiratorias |
El sensor de temperatura
LM35 es un sensor de circuito integrado con una salida lineal proporcional a la
escala Celsius. Tiene un alcance de -55°C a 150°C, y una exactitud aproximada
de 0.25°C.
- * Rango de Medida: -55°C-150°C
- * Función de TRANSFERENCIA: 10mV/°C
- * Rango de trabajo: -55°C a 150°C
- * Voltaje de alimentación: 4-30VDC
- * Consumo de corriente: 60 uA
- * Auto calentamiento: menor a 0.08 en espacios sin flujo de aire
- * Resolución: ±1/4°C
Sensor LM35 |
Desarrollo
El sensor que se utiliza en
el presente proyecto es el LM35DZ, es seleccionado debido a que el encapsulado
es el adecuado para colocarlo cerca de una fosa nasal.
Como el LM35DZ en sí tiene
una tensión de salida muy baja (en el orden de los mV) es necesario emplear una
etapa de amplificación, esto para poder observar con mejor claridad los cambios
de voltaje y poder emplearlo como un sensor de exhalaciones.
Para amplificar la tensión
de salida del LM35DZ se propone utilizar amplificadores operacionales en
configuración de amplificador de instrumentación, se selecciona debido a que
con ella sólo se requiere cambiar el valor de una sola resistencia para regular
la ganancia de tensión del circuito, entre sus características es que es capaz
de aumentar la tensión de entrada hasta 100 veces, además de que elimina ruidos
que posiblemente causen problemas en el medidor de frecuencia respiratoria.
En la siguiente figura se
muestra en esquemático de un amplificador de instrumentación con OPAMP’s.
Esquema Amplificador de Instrumentación |
Esquema Final (etapa de amplificación y sensado de la frecuencia respiratoria) |
Después de comprobar el
funcionamiento de la amplificación mediante la simulación, reemplazamos la
fuente de voltaje por el sensor LM35.
Con el multímetro se mide la tensión en R8 a temperatura
ambiente, durante la tarde la medida es de 2.2V, mientras que, en las mañanas,
dicho valor está aproximadamente en 2V.
Se coloca el LM35DZ en una fosa nasal y se procede a
respirar para poder verificar algún cambio de tensión en R8. Independientemente
de la temperatura ambiente, se observa que al respirar en el sensor la
temperatura varía entre + 0.5 a + 0.9 V, por lo que se establece un umbral de
tensión de 2.6 V.
Se
retira la resistencia R8 para colocar un cable que irá a una entrada analógica
del Arduino Uno® (al pin A0), una vez colocado, también hay que conectar una
tierra del Arduino Uno® a la tierra común del circuito.
Código en Arduino
// Medidor de Frecuencia Máxima y Minima //
// Rafael Bayareh y Adriana Manzanárez /
//int sensor= 0; // Pin analogico 0
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int medidor = 0;
int bandera = 0;
int umbral = 620;
int contador = 0;
double frecuencia = 0;
void setup(){
lcd.begin(16, 2); // 16 columnas y 2 filas
lcd.setCursor(2,0);
lcd.print("ELECTRONICA"); //Imprimir mensaje
lcd.setCursor(4,1);
lcd.print("DIGITAL"); //Imprimir mensaje
delay(2000);
lcd.clear();
lcd.setCursor(3,0);
lcd.print("BIENVENIDO ");
delay(3000);
lcd.clear();
lcd.setCursor(3,0);
lcd.print("Medidor De ");
lcd.setCursor(2,1);
lcd.print(" Frecuencia ");
delay(3000);
lcd.clear();
Serial.begin(9600);
}
void loop(){
for(int ciclos= 0; ciclos <100; ciclos++){
medidor = analogRead(A1);
// Conteo
if (medidor > umbral)
{
bandera =1;
}
if (medidor < umbral && bandera ==1)
{
contador = contador+1;
bandera=0;
}
// Tiempo de espera
// delay (50);
delay (100);
}
frecuencia = contador*6;
Serial.println(medidor);
Serial.print("F");
Serial.print("R");
Serial.print("E");
Serial.print("Q");
Serial.print("/");
Serial.print("M");
Serial.print("I");
Serial.print("N");
Serial.print(":");
Serial.println(frecuencia);
if (frecuencia >= 12 && frecuencia <= 20)
{
//Serial.println("Rango Normal");
lcd.setCursor(0,1);
lcd.clear();
lcd.print("Fre_Normal 12-20");
lcd.setCursor(1,6);
lcd.print(frecuencia);
}
if (frecuencia < 12)
{
// Serial.println("Rango Bajo");
lcd.setCursor(0,1);
lcd.clear();
lcd.print("Freq_Baja <12");
lcd.setCursor(1,6);
lcd.print(frecuencia);
}
if (frecuencia > 20)
{
// Serial.println("Rango Alto");
lcd.setCursor(0,1);
lcd.clear();
lcd.print("Freq_Maxima >20");
lcd.setCursor(1,6);
lcd.print(frecuencia);
}
// Serial.print("La Frecuancia Respiratoria es: ");
//Serial.println(frecuencia);
contador =0;
}
Frecuancia Normal |
Espero les sea de utilidad esta entrada, saben que son libres de escribir y opinar en este Blog :D
Gracias por leerme :)
Que tengan lindo día.
"La educación es el principal vestido para la fiesta de la vida"
- Carolina Herrera