Monitor de Co2 con sensor mh z19


¿Alguna vez se ha preguntado por qué a menudo se siente somnoliento o incluso cansado por la mañana después de dormir toda la noche? Hay muchas cosas que pueden provocar un sueño de mala calidad,   pero   dada la grave pandemia  al que nos estamos exponiendo  desgraciadamente, también  hay otra razón  contundente: una mayor  exposición a  agentes virulentos al no  estar suficientemente ventilado la estancia .

En efecto , ambas casuísticas citadas  se deben a una concentración inadecuada de dióxido de carbono (CO2) puesto que las personas emiten dióxido de carbono durante la respiración , lo  que implica que   la concentración de CO2 es uno de los principales factores que afectan la calidad del aire y con ello   la exposición a agentes infecciosos.

Por estas razones según los científicos  apuntan que puede ser interesante contar con  un medidor de CO2 para comprender si la concentración de CO2 en nuestro entorno  como afecta la calidad del aire.

Una concentración menor de 800 ppm se considera adecuada, aunque lo ideal es que ronde las 500 ppm. A partir de 800 ppm salta la alerta ya que la ventilación es deficiente, lo que facilita en gran medida la permanencia del virus en el aire, de tal forma que su capacidad de transmisión puede prolongarse durante varias horas.

Estos medidores se pueden comprar ya montados, pero  no dispondremos ningún nivel de mejora ni personalización ni interacción  y los de bajo coste además ofrecen muy poca precisión ,  por lo que vamos a  ver como construir  un medidor real para que entendamos como funciona y de paso podemos pensar en futuras mejoras .

 

La elección del sensor

En un prototipo puede que se vea tentado en usar  sensores del tipo  MQ135 , un sensor de calidad de aire barato) , que detecta NH3, NOx, alcohol, benceno, humo, CO2  y que hemos visto en numerosos proyectos en este blog.

Este  tipo sensores  son  módulos listo para usar para Arduino y Raspberry Pi  gracias a su doble salida analogica   y digital  (para el uso con laRPi se requiere un convertidor AD adicional a no ser que solo necesite la señal de haber superado el umbral  ajustable de disparo de la señal digital ,pero para Arduino la conexión es directa ). 


Los sensores de la serie MQ utilizan un pequeño elemento calefactor con un sensor electrónico-químico por lo que son sensibles a una amplia gama de gases y son adecuados para su uso en interiores. Es cierto que  tienen una alta sensibilidad y un tiempo de respuesta rápido, pero tardan unos minutos en dar lecturas precisas porque el sensor tiene que calentarse.

Estos sensores son  muy fáciles de de usar para medir la concentración de GLP, i-butano, propano, metano, alcohol, hidrógeno y humo en el aire, midiendo concentraciones de gas de 100 a 10000 ppm   siendo ideal para la detección de fugas de gas, alarmas de gas u otros proyectos de robótica y microcontroladores. 

Según el fabricante  en general este tipo de sensores tienen relativa poca precisión incluso después de aplicar la corrección de temperatura y humedad. Además  suelen  tener  un alto consumo de energía (800 mw) y un tiempo de precalentamiento  excesivo lo cual son bastantes inconvenientes para abandonarlo y probar con otro  tipo de sensor.

Hay bastantes sensores de CO2 en el mercado de precios muy variados: MG811 (~ 40 $), MH-Z14 WINSEN (~ 40 $), MH-Z19 WINSEN (~ 30 $), K-30 (~ 85 $), VERNIER CO2-BTA ( ~ 330 $).

Los  sensores de CO2 NDIR (infrarrojo no dispersivo) son el   tipo de sensor más común utilizado para medir el CO2, pues  tienen buena precisión y bajo consumo de energía aunque los precios son muy variados.

Un ejemplo de sensor NDIR es el sensor MH-Z19 tiene buenas características y muy buen precio, así que puede ser una buena opción.  Aquí algunos parámetros técnicos del sensor MH-Z19 :

Tensión de trabajo   4,5 V ~ 5,5 V CC
Corriente media   <85 mA
Nivel de interfaz   3,3 V
Rango de medición   0 ~ 5% VOL opcional
Señal de salida   PWM, UART
Tiempo de precalentamiento   3min
Tiempo de respuesta   T90 <90 s
Temperatura de trabajo   0-50C
Humedad de trabajo   0 ~ 95% de humedad relativa
Peso   15 g
Esperanza de vida   > 5 años
Dimensión   57,5 × 34,7 × 16 mm (largo × ancho × alto)

Este sensor e pequeña escala de uso general  utiliza el principio infrarrojo no dispersivo (NDIR) para detectar la presencia de CO2 en el aire, con buena selectividad y dependencia anaerobia, larga vida y cuenta con compensación de temperatura incorporada y al mismo tiempo  salida en serie, salida analógica y salida PWM. Además, tiene un precio contenido (en amazon unos 14€)

Hay varias  variantes de este sensor con diferentes rangos de medición:

  • 0 ~ 10000 ppm
  • 0 ~ 2000 ppm
  • 0 ~ 5000 ppm

Una opción interesante es la primera porque el modelo B es el más extendido y fácil de conseguir,  si bien  un nivel de CO2 superior a 2000 ppm no sería apropiado para un ambiente doméstico. 

Puede ser interesante montar un dispositivo móvil para poder medir el nivel de CO2 donde quiera dentro del hogar , puesto que como el voltaje de trabajo del MH-Z19 es de 4.5 ~ 5.5V DC, puede usarse la salida USB standard  o simplemente  3 baterías AA ) como fuente de alimentación.

 

Respecto a la visualización de los datos una pantalla OLED LCD 0.96 «I2C IIC SPI Serial 128X64 (en amazon unos 9€)  es una buena opción pues  es muy fácil usarla con nuestro Arduino  gracias a la conexión I2C , y claro las librerías gratuitas para Arduino

Para  poderla usar en nuestro proyecto , es importante tener en cuenta que necesitaremos  la biblioteca de controladores oled Adafruit SSD1306

Respecto al conexionado , no puede ser más sencillo, pues conectaremos la alimentación   del sensor ,la pantalla  y nuestro  arduino  a través de un interruptor al polo positivo de   un portapilas de 3 pilas de 1.5V. Obviamente  complementaremos las conexiones de VCC  con las  masa (0v) conectando el  polo negativo del portapilas a las conexiones de 0v del sensor ,la pantalla  y nuestro  arduino.  

El montaje se complementará con las conexiones de datos  del  sensor MH-Z19    y de la pantalla , conectando la salida PWM del  sensor digital  al pin 7 (pin digital 7) de Arduino ,  y las conexiones de datos I2C  de la pantalla a los pines  SDA( pin 19)   y   pin SCL(pin 18) de nuestra placa Arduino. 

 

Medidor de CO2 MH-Z19

Este  es el resumen de elementos básicos de  hw para hacer este pequeño proyecto:

  • Sensor de co2 infrarrojo MH-Z19 (en amazon unos 14€)
  • Arduino Pro Micro  ( o cualquier otra placa Arduino que disponga)
  • Pantalla OLED LCD 0.96 «I2C IIC SPI Serial 128X64 (en amazon unos 9€)
  • Soporte de batería 3 AAA 1.5V 
  • Interruptor

Implementación

Necesitaremos lo siguientes elementos software para implementar este proyecto

Respecto al   proyecto, cuyo código Arduino al completo podemos ver más abajo , de forma  simplificada  este es   su funcionamiento: 

Primero importamos las librerías  para el control de la  pantalla I2C

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);

A continuación definiremos las variables, empezando definiendo el pin 7 para el pwm para el sensor de Co2,  constantes, etc   destacando el valor del precalentamiento para el sensor de co2  cuyo valor es de 120 segundos

#define pwmPin 7        
int preheatSec = 120;
int prevVal = LOW;
long th, tl, h, l, ppm = 0;

Ahora veremos la  parte esencial , cuya principal ocupación es proporcionar el valor de la medida de C02 en la variable ppm 

void PWM_ISR() {
long tt = millis();
int val = digitalRead(pwmPin);

if (val == HIGH) {
if (val != prevVal) {
h = tt;
tl = h - l;
prevVal = val;
}
} else {
if (val != prevVal) {
l = tt;
th = l - h;
prevVal = val;
ppm = 2000 * (th - 2) / (th + tl - 4);
}
}
}

Otra  función  importante es la inicialización de la pantalla OLED , que  conseguiremos al introducirla en la función setup

void setup() { 
Serial.begin(115200);
pinMode(pwmPin, INPUT);
attachInterrupt(digitalPinToInterrupt(pwmPin), PWM_ISR, CHANGE);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3C (for the 128x64)
display.setTextColor(WHITE);
}

Dado el intervalo de precalentamiento , es interesante una función que presente la cuenta atrás para que el usuario sea consciente de que es necesario esperar ese intervalo:

void displayPreheating(int secLeft) {
display.setTextSize(2);
display.println("PREHEATING");
display.setTextSize(1);
display.println();
display.setTextSize(5);
display.print(" ");
display.print(secLeft);
display.display();
}

Obviamente tampoco nos puede faltar la visualización del nivel de ppm , que solo se mostrará si es superior  a 1000 ppm ( obviamente podemos ajustar este umbral al valor que deseemos).

void displayPPM(long ppm) {
display.setTextSize(2);
display.println("CO2 PPM");
display.setTextSize(1);
display.println();
display.setTextSize(5);
if (ppm < 1000) {
display.print(" ");
}
display.print(ppm);
display.display();
Serial.println(ppm);
}

Finalmente en el bucle principal  básicamente  borraremos la pantalla y mostraremos la  cuenta atrás  del precalentamiento para finalmente mostrar el nivel de ppm  cada 1000ms.

void loop() { 
display.clearDisplay();
display.setCursor(0,0);
if (preheatSec > 0) {
displayPreheating(preheatSec);
preheatSec--;
}
else {
displayPPM(ppm);
}
delay(1000);
}

 

Para terminar, IhorMelynk nos ofrece el código fuente para Arduino que el mismo cargó en su Arduino:

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);

#if (SSD1306_LCDHEIGHT != 64)
#error("Height incorrect, please fix Adafruit_SSD1306.h!");
#endif

#define pwmPin 7

int preheatSec = 120;
int prevVal = LOW;
long th, tl, h, l, ppm = 0;

void PWM_ISR() {
long tt = millis();
int val = digitalRead(pwmPin);

if (val == HIGH) {
if (val != prevVal) {
h = tt;
tl = h - l;
prevVal = val;
}
} else {
if (val != prevVal) {
l = tt;
th = l - h;
prevVal = val;
ppm = 2000 * (th - 2) / (th + tl - 4);
}
}
}

void setup() {
Serial.begin(115200);
pinMode(pwmPin, INPUT);
attachInterrupt(digitalPinToInterrupt(pwmPin), PWM_ISR, CHANGE);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3C (for the 128x64)
display.setTextColor(WHITE);
}

void displayPreheating(int secLeft) {
display.setTextSize(2);
display.println("PREHEATING");
display.setTextSize(1);
display.println();
display.setTextSize(5);
display.print(" ");
display.print(secLeft);
display.display();
}

void displayPPM(long ppm) {
display.setTextSize(2);
display.println("CO2 PPM");
display.setTextSize(1);
display.println();
display.setTextSize(5);
if (ppm < 1000) {
display.print(" ");
}
display.print(ppm);
display.display();
Serial.println(ppm);
}

void loop() {
display.clearDisplay();
display.setCursor(0,0);
if (preheatSec > 0) {
displayPreheating(preheatSec);
preheatSec--;
}
else {
displayPPM(ppm);
}
delay(1000);
}

 

Teniendo esto en cuenta, a la hora de mantener el contacto social los espacios al aire libre se presentan como la mejor alternativa. En espacios cerrados la ventilación es fundamental. No es suficiente con abrir las ventanas 10 minutos cada hora. La ventilación debe ser constante. Por supuesto, en ambos casos la mascarilla sigue siendo un elemento de protección esencial.

 

 

 

 

 

 

 

Anuncio publicitario

Solidaridad tecnológica frente al coronavirus


Ante las crisis  graves  que han ocurrido a lo largo de la historia    se han  ido  repitiendo  una y otra vez que se  consigue aflorar   lo mejor ( y también  lo peor ) del ser humano ,   y desgraciadamente ahora  estamos ante una nueva  desastrosa situación del coronavirus  como pandemia global,  que ha conseguido que profesionales, makers, aficionados   , personas de diferentes ámbitos  ,  así como   empresas,organizaciones, etc   estén trabajando  la mayoría de forma altruista  en mitigar  los efectos de la carencia de material sanitario   mediante  técnicas  modernas como la impresión 3d, corte cnc , electronica embebida ,etc 

En esta linea , que  se ha hecho eco toda la prensa, la mayoria de los s esfuerzos se centran  es   lograr un respirador artificial barato open source   que sea  utilizable  durante   esta grave situación pues este dispositivo se ha convertido en una pieza clave en las UCI básicamente porque se prevee que no va  a haber suficientes suponiéndo  un enorme  reto para los médicos de todo  donde desgraciadamente ante la ausencia de estos en algunos países se ven en los dilemas morales de decidir a quien colocárselo.

Estos respiradores caseros  son muy importantes  en esta pandemia,  pero   hay muchos mas frentes abiertos   en esta comunidad  de solidaridad  tecnológica pues    hay otros grupos  para construir gafas de protección , mascarillas , pinzas desechables , piezas de repuesto para material sanitario, maquinas dispensadores de gel , etc , todos ellos   dispositivos   o herramientas  que podemos  fabricar gracias a la impresión 3D o técnicas modernas como el CNC

Este es el foro que pretende  centralizar toda la ayuda   https://foro.coronavirusmakers.org/     , el hashtag de Twitter #CheapVentilators para conocer los equipos de otros países y a la cuenta @AIRE_Covid19 donde publicarán toda la información del proyecto español.

También  hay un sitio web: https://coronavirusmakers.org/index.php/es/  con  información general filtrada

Asimismo es posible contactar via Telegram  en las diferentes grupos de trabajo que se han asignado , siendo el grupo principal de Telegram https://t.me/coronavirus_makers

Respiradores  artificiales

El funcionamiento de los respiradores artificiales modernos está condicionado por una sensorización muy   compleja  que permite ajustar la mezcla aire-oxígeno, generar alarmas , etc.   función que obviamente no se va a poder solucionar  con una solución «sencilla» que sea open  source pues se busca  dispositivos que puedan fabricarse rápido y de forma distribuida usando,  impresión 3D , corte CNC , etc   y electronica convencional  para construir algo  que   pueda  ayudar la falta de respiradores comerciales

Actualmente en el foro  respecto a los respiradores  hay  tres líneas de trabajo:

    • Estudiar la línea de suministro de las máquinas de respiración, comprobando si de verdad hay una rotura de stock y eliminar los cuellos de botella que pudieran aparecer . 
    • Adaptación de máquinas actuales para ser utilizadas como respiradores; por ejemplo, las máquina CPAP o BIPAP , usadas contra la apnea del sueño que utilizan miles de personas todas las noches .
    •  Crear máquinas de respiración artificial basándose en   maquinas mas «simples» ,por ejemplo el balón de tipo Jackson Rees   dotándoles  de una «inteligencia» que les permita funcionar de forma autónoma. En ese sentido  se estaba trabajando sobre dos  modelos , uno  iniciado por el Mit   en el 2010 y  otro por la Universidad Rice en Houston. Muy resumidamente se basan subyacentemente en usar diseños clásicos probados   eliminando la necesidad de  tener a un sanitario dedicado exclusivamente a esa tarea pues es un desperdicio de recursos si podemos tener una máquina capaz de hacer ese trabajo sin cansarse y de una forma eficiente  y autónoma.

Obviamente por su bajo precio  y alto potencia  se están  abordando  diseños que utilizan material médico desechable y ampliamente disponibles para liberar manos de médicos y/o enfermeros en situación de emergencia.

En este caso, en lugar de asistir el facultativo con un  sistema respiratorio manual tipo de bolsa, se busca generar un sistema mecánico que le permita liberarlo de esta tarea para atender a otros enfermos en la misma sala. Estos modelos no disponen por el momento de los parámetros avanzados de los respiradores modernos. Se está explorando esta posibilidad, pero requerirá mucho más tiempo.

En todo  caso queda clara la dificultad de tratar unos pulmones con Covid-19, que requieren de una gran complejidad pero gracias a las aportaciones de personal sanitario  explican que ante problemas de  respiradores avanzando los respiradores pueden ser sencillos los primeros días pues estos pacientes son muy fáciles de ventilar en general.

Por tantos estos diseños que están surgiendo,  pueden ser muy buenos para los primeros días aunque no tengan  sofisticación y permitan respiraciones espontáneas:es decir ventilación controlada por presión, a una frecuencia respiratoria entre 12-30 y con posibilidad de PEEP hasta 20 con monitorización del volumen corriente y volumen minuto. Eso ayudaría en las primeros días  (que son los peores )  con la esperanzar de que mas adelante  se buscaría alternativa con respiradores actuales sofisticados , ya que  llegado el momento no habrá para todos en las fases iniciales y algo  tan relativamente sencillo como los antiguos ventiladores con estas  nueva mejora  podría salvar vidas

Mascarillas caseras

Dados los problemas para conseguir mascarillas hay muchas opciones para fabricarlas nosotros mismos   siendo la mas famosa la  Mascarilla DIY con Goma EVA como filtro

En un grupo de Facebook un chico de Eslovenia se creó un diseño de una mascarilla para usar como filtro un filtro HEPA ( por ejemplo los usados en aspiradoras convencionales )  y de hecho este diseño ,dada la situación, como son dificiles de conseguir, desde Taipei dijeron que han usado goma EVA como filtro, asi que se he rediseñado y los he subido a Thingverse.

La goma EVA hay que cortarla en cuadrados de 77 x 77 mm para la de hombre y de 68 x 68 para mujer. Recomiendan que para que ajuste mejor a la cara, que se caliente un poco  el plástico en el microondas para amoldarla.

Ademas antes de usarla se debería limpiar todos sus componentes con alcohol isopropilico.

Hay dos tamaños para mujer y para hombre y los  ficheros estan disponibles en  https://www.thingiverse.com/thing:4223817

 

Ese diseño no es único , pues  en thinginverse  podemos encontrar muchos  mas , pero en este lo llamativo de este ultimo ,  es lo sencillo del filtro

 

 

Gafas de Protección

Se busca  intentar suplir una posible  carencia de gafas de protección para uso hospitalario  

Hay muchos disponibles  y otros nuevos que están apareciendo  usando materiales sencillos como pantallas ( por ejemplo  con encuadernadores de papelería)

Válvulas

Unos makers italianos han impreso en 3D una válvula que se les había averiado en un hospital de Milán (hemos pedido a uno de los Fablabs de Milan, para saber si tienen el STL): https://www.3dprintingmedia.network/covid-19-3d-printed-valve-for-reanimation-device/

 

 

Mas ideas

Hay muchísimos mas ejemplos de dispositivos   y diseños que nos pueden ayudar en el día a día   a sobrellevar esta grave pandemia , desde soportes para pomos de puertas, abridores de puerta con el  pie,  dispensadores automáticos de productos de desinfección   y un largo etcétera

Para inspirarnos basta buscar «coronavirus» en el repositorio thingiverse.com

 

Amigo lector , si tiene  alguna idea o sugerencia siéntase  libre de compartirla con esta comunidad  y por supuesto si tiene ganas de colaborar participe   en el foro en español del coronavirus  !MUCHO ANIMO QUE JUNTOS LO VAMOS A SUPERAR!

 

 

 

Sencilla alarma basada en un foco con detector de proximidad


Hoy en día hay soluciones muy económicas  debido a su gran escala comercial  que son   susceptibles de ser mejoradas para complementar con notoriedad  sus prestaciones y  !sin coste alguno!.En el ejemplo de hoy actualizado a un modelo mas moderno del fabricante Meikee vamos  a  ver como de hecho una modesta  lámpara con sensor de movimiento para uso en exteriores  ideal (almacén, garaje, clóset, etc …,con un bajo consumo de sólo 10 vatios ( aunque existen  de muchas  potencias  más elevadas ) ,y  900 lúmenes de luz  garantizados   puede usarse   además de su cometido principal de encenderse  cuando el sensor detecta movimiento  en el exterior , que  también envíe   una alarma hacia el interior, para  que tengamos constancia  si no nos  hemos percatados por la activación de la luminaria   de que puede que haya personas , animales o cosas merodeando por el exterior  .

En esta simple  modificación  pues mantendremos el  diseño moderno y compacto de la luminaria ,  ya que vamos a hacer una sencilla modificación   que apenas ocupa más espacio ( únicamente necesitaremos  añadir una regleta )  y que además no inhabilita su protección  impermeable (IP66), una característica fundamental para aquellos que desean montar esta luminaria en el exterior.

Respecto al interior de  la luminaria , esta se aleja de las convencionales halógenas al   incorporar uno de los últimos 30 chips súper brillantes de LED  que reemplazan a los  anteriores, ofreciendo una iluminación más brillante (900 LM, blanco frío de 6000 Kelvin ) ,  con un gran ahorro en la factura de la luz y una gran durabilidad (los LED tienen una vida media de 50000 horas).

El foco del fabricante Meikee   integra un sensor PIR   y la electronica necesaria para activar la luminaria  , la cual por cierto va integrada en el propio receptor del PIR(es decir en la cajita  mas pequeña que alberga el propio sensor)

En este modelo , se puede ajustar la iluminación utilizando los 3 botones de configuración de la parte de atrás del propio modulo del PIR 

Los ajuste son los siguientes:

  • HORA ;sirve  para establecer la duración de la iluminación (6-360 s);
  • SENS; sirve para ajustar el rango de detección (1-12m);
  • LUX :ajuste la foto-sensibilidad (día y noche)

 

Aparte de ajustar  el valor  SENS   a la distancia que precisemos , un ajuste especialmente interesante es el ajuste LUX pues no puede permitir que el foco  ( y  por tanto la alarma ) no se active de día ,pudiéndose accionar automáticamente solo de noche  , que es cuando la mayoría de las ocasiones los dueños de lo ajeno merodean por los exteriores de los inmuebles

Con la doble función de iluminación sorpresiva ( que el producto  ya lo contempla ) y la alarma sonora ( que vamos añadir tanto interior como exterior ) la idea   que se  busca con esta mejora es   una  detección anticipada que localizar los intentos de intrusión y antes de que el intruso haya conseguido entrar : así, decidimos antes a los intrusos y, ademas  tenemos un señal audible de que ha sucedido , señal que por cierto podemos contemplar con otros sistemas como cámaras, alarmas remotas , etc.

Bien veamos la mejora  de este foco con sensor que podemos comprar por unos 15€

 

 

La idea  de este post  es mejorar  un asequible  foco del fabricante  Meikee  para poder usarlo para activar otras cargas ( no solo la de la propia luminaria) , para lo cual tendremos que abrirlo con cuidad  para capturar la señal de salida y devolverlo al exterior . Desgraciadamente  manipulaciones del producto nos  hará  perdera la garantia , pero por el precio que tiene creemos merece la pena puesto que nos puede ser muy útil desde el interior  saber si se ha activado el foco  o por ejemplo para enviar a una central de alarma

Hackeando el foco

 

Antes de desmontar el foco,  probaremos el foco dado que cualquier cambio de esta en su configuración nos hará perder la garantía, asi que  es nuestra última oportunidad para  probar de que funciona perfectamente este.

Una vez  comprobado su funcionamiento , si estamos decididos a mejorar el foco, desmontamos  los 4 tornillos de la parte posterior ( puede que esten bastante duros para asegurar la estanqueidad).

 

 

Ahora quitaremos los dos tornillos del reflector , sacaremos con cuidado el cristal protector  y luego accederemos  a la electronica , con mucho cuidado de no tocar los leds SMD  

En otros  modelos  haay dos bloques  ,   diferentes : el chip compuesto por leds  SMD  ( en el centro )    y el convertidor ac/dc para este ( a la derecha), pero en este modelo del  fabricante  Meikee  van integrados la matriz de leds  y el propio convertidor en una unica placa alimentandose todo el conjunto con la tension de la red de ca

 

 

 

En la imagen   se observan claramente  tres conexiones que van al módulo PIR : 

  • Cable marrón; uno de los polos de la red para dar alimentación permanente al módulo PIR
  • Cable azul : otro de los polos de la red  para dar alimentación permanente al módulo PIR
  • Cable rojo ; el cable de detección del PIR   que permite alimentar a la placa   

 

Hemos visto que nuestro objetivo es cable rojo  de salida del módulo de  PIR   que permite alimentar a la placa  leds  de la luminaria  que  nos permite obtener la salida del relé interno del modulo PIR ,así que intentaremos capturar este hilo  para lo cual descubriremos el protector plástico del empalme 

 

 

Es muy poco ortodoxo , pero como no queremos que el módulo pierda la estanqueidad , y normalmente  para luces exteriores las instalación no suelen contar con este tipo  de  cableado, utilizaremos el cable amarillo de masa del cable de salida pus  más adelante si nos interesase podriamos exteriormente fijarle un tornillo al chasis y volverlo a conectar

 

 

 

Ahora solo nos queda  usar una ficha de empalme  o bien directamente retorcer ambos cables (es decir el cable amarillo de la manguera exterior con  el cable rojo procedente de la salida del modulo PIR h)

 

 

Ahora ya cerraremos con cuidado la luminaria  : primero el reflector  y luego la junta de estanqueidad  , el cristal  y finalmente la tapa . Ahora ya podemos conectar la c. a.  al extremo de la manguera del foco  , pero con la  importante diferencia que en el  cable amarillo ya no conectaremos la masa  sino por ejemplo un zumbador o  un testigo  que  alojaremos  en el interior de la vivienda para tener constancia  visual    o sonora   de que el foco luz se ha encendido por movimiento de objetos extraños próximos al PIR

 

 

 Por cierto ,si se pregunta  donde conectar el otro extremo del zumbador o luz auxiliar este irá conectado al cable marrón de la manguera .Asimismo , como se puede apreciar ,se complementa con un interruptor para anular el zumbador en caso de que sea demasiado molesto  .

Tambien se recomienda usar otro interruptor a la entrada de ca si este va estar conectado permanentemente a la red de ca, aunque podemos prescindir de este  con el ajuste de noche pues  podemos permitir que solo se active por la noche.

 

 

Hay muchas opciones de uso para esta salida de CA , el cual por cierto no debemos cargar con mucha potencia pues corremos el riesgo de estropear los contactos del relé interno del modulo PIR

Algunos ejemplos de lo que podemos hacer con esta salida «extra»;

  • Un  relé  de potencia con bobinado de  220v de CA para conectar cargas mayores
  • Un segundo relé de 220V pero para utilizar los contactos para alarmas
  • Un  zumbador de 220V ( los hay por 2€ en Amazon)
  • Un timbre convencional
  • etc

Bueno ,como hemos visto   quizás sean una idea un tanto atrevida , que no todo el mundo esté dispuesto a realizar,  pero desde luego !la posibilidad está ahí   ! y eso sin casi ningún coste adicional !¿se le ocurre  alguna mejora adicional ? si es así no dude en compartirla con toda la comunidad ..!!GRACIAS!!

 

Por cierto este es el link de acceso directo del citado foco con detector de presencia

 

 

Estación meteorológica conectada


Hay algunas otras estaciones meteorológicas basadas en NodeMcu o ESP8266 publicadas en la web, pero sin embargo,casi ninguna incluyen algunos sensores  de los que vamos a ver , y sobre todo,   se programan en un lenguaje más difícil: LUA.
En este proyecto de Ingenerare, los datos recuperados  por varios sensores , se envían a través de  wifi a la plataforma  Thingspeak, para posteriormente poder  visualizar su valores en el canal de Thingspeak o en un sitio web personal.

Este canal transmitirá los siguientes datos a un canal Thingspeak:

  • Temperatura  gracias a  un DHT11 / 22.
  • Temperatura por medio de un BMP180.
  • La humedad  gracias a un DHT11 / 22.
  • La presión atmosférica   por medio de un BMP180.
  • Temperatura del punto de rocío DHT11 / 22.
  • Altitud por medio de un BMP180.
  • La intensidad de la luz gracias  a un LDR.
  • El valor lluvia.

Los componentes  usados en este  proyecto son los siguientes:

caja.PNG

El corazón del sistema es una  placa  NodeMcu , la cual de hecho, es un Arduino  conmenos puertos analogicos  pero con un escudo wifi el cualpuede reconocerse por la placa de metal en la parte superior de la misma.  Este escudo puede ser comprado y utilizado como una controladora individual para su uso con un  Arduino para darle conectividad (de hecho incluso existe una versión conocida como la V1 esp8266 que sólo tiene 2 pines digitales,pero en versiones posteriores disponemos de mas pines digitales).

La gran ventaja de la placa  NodeMcu es que la placa  se puede programar en el entorno Arduino (el IDE  normal de Arduino). Además, la placa  incluye un convertidor de 5 voltios y así se puede conectar de forma segura mediante USB al ordenador sin tener que comprar un módulo conversor Dv-DC  de 3,3 voltios.

Si usted necesita  comprar una placa  NodeMcu se puede comprar la versión 0.9 o la versión 1.0: la única diferencia que sé es que la versión 0.9 es más ancha que la versión 1.0. ( de hecho no puede utilizar la versión 0.9 en una placa de prototipos standard  ).

Hay  gran cantidad de tutoriales en Internet donde explican como  programar esta placa  junta con el software de LUA, pero al ser  básicamente un Arduino con un escudo  wifi, también se puede usar el software Arduino IDE siguiendo estos pasos:

  • Ir   a «Archivo»
  • Haga clic en «Oreferencias»
  • Agregue el siguiente enlace en el campo «URL de la placa adicional ‘:http: //arduino.esp8266.com/stable/package_esp8266c 
  • Después de esto puede reiniciar el software y debe ser capaz de seleccionar la junta en el gestor de tabla (V1.0 o v0.9).

ThingSpeak

En esta ocasión se va a enviar   nuestros medidas a la veterana  plataforma Thingspeak  que ofrece varias opciones para la interacción con sus datos como Thingtweet, Thinghttp etc.

Lo primero que tenemos que hacer es crearnos una cuenta en thingspeak , para ello  simplemente vaya a thingspeak.com y cree  una cuenta ,donde  solo será necesario rellenar en al menos la primera y segunda en la configuración de campo.

Si se conecta un sensor de temperatura y humedad, como se describe mas adelante, rellenar «temperatura» en el campo 1, ‘humedad’ en el campo 2 y el «punto de rocío» en el campo 3. Si desea conectar otros sensores tales como el sensor de BMP, sensor de lluvia, LDR, sólo tiene que hacer lo mismo para el resto de los campos.

En este formulario puede encontrar  una clave API key  que habrá que mencionar en su código para  Arduino bajo la ‘clave de API’  , pues esta clave es necesaria para conectar el Arduino al canal Thingspeak recién creado.

thingspeak.PNG

Sensor DHTXX

DHT11 y  DHT22 son dos modelos de una misma familia de sensores, que permiten realizar la medición simultánea de temperatura y humedad usando ademas un único  hilo para comunicar los datos vía serie, para lo cual  ambos  disponen de un procesador interno que realiza el proceso de medición, proporcionando la medición mediante una señal digital, por lo que resulta muy sencillo obtener la medición desde un microprocesador como Arduino o ESP8266.

Ambos son similares ( DHT11 presenta una carcasa azul  , mientras que el sensor DHT22  es blanco)  compartiendo además los mismos pines  disponiendo de  4 patillas, de las cuales usaremos sólo 3: Vcc, Output y GND.  Como peculiaridad ,la  salida la conectaremos a una entrada digital  , pero necesitaremos poner una resistencia de 10K entre Vcc y el Pin Output.

El  DHT11  puede medir temperaturas entre 0 a 50, con una precisión de 2ºC, humedad entre 20 a 80%, con precisión del 5% y con una a frecuencia de muestreo de 1 muestras por segundo (1 Hz)

En clara superioridad  con el dHT11 , el modelo DHT22 tiene unas características mucho más profesionales.
  • Medición de temperatura entre -40 a 125, con una precisión de 0.5ºC
  • Medición de humedad entre 0 a 100%, con precisión del 2-5%.
  • Frecuencia de muestreo de 2 muestras por segundo (2 Hz)

Destacar que este tipo de  sensores de temperatura  ( y, aún más, los sensores de humedad) , son sensores con elevada inercia y tiempos de respuesta elevados. Es decir, al “lentos” para reflejar los cambios en la medición.

Conectar el DHT11   o el DHT22  a  un Arduino o ESP82366  es sencillo, simplemente alimentamos desde Arduino al sensor a través de los pines GND y Vcc del mismo. Por otro lado, conectamos la salida Output a una entrada digital de Arduino como por ejemplo el pin D4   (No necesitaremos poner una resistencia de 10K entre Vcc y el Pin Output al llevarla ya  integrada la placa ).

El sensor de BMP

El sensor de BMP180  mide la de la temperatura y la presión del aire. Sí, ya tenemos un sensor de temperatura añadido en el paso anterior, pero no un sensor de presión de aire. Conectar la clavija de alimentación a la línea de 3,2 voltios de la NodeMCU y el conector de tierra en el pin GND de la NodeMCU. El SCL tiene que estar conectado a D1 y la SDA a D2.

Sensor de lluvia y sensor de luz

El sensor utiliza materiales de doble cara FR-04 de alta calidad, donde el área extensa es de 5.0 * 4.0CM, y la superficie niquelada, eficaz contra la oxidación, la conductividad, el funcionamiento superior y las áreas de la vida.

El sensor de lluvia no requiere ninguna  otra placa cuando queremos leer el valor analógico.Si queremos leer valores  binarios  en cambio podemos utilizar la placa adicional  que ofrece  una  conexión a los pines digitales . Gracias a un potenciómetro   que contiene  esta placa , se puede establecer el valor  de umbral con que se dispara pues el  formato de salida  puede ser  de conmutación digital (0 y 1) gracias a  un comparador de amplio voltaje LM393 (y salida de tensión analógica AO).

También en este proyecto se ha añadido un LDR , por lo que podemos  tener dos lecturas analógicas. Esta es una parte difícil pues el NodeMCU sólo tiene un pin analógico , pero podemos resolver este problema mediante la multiplexación de los pines analógicos de modo que con la ayuda de dos diodos y dos pines GPIO , podemos suministrar energía a ambos sensores en secuencia para tomar la lectura de ambos ( eso sí tendrá que controlar esta secuencia desde el  propio programa)

canlaes.PNG

Como se puede ver el sensor de lluvia está activada por el pin D7  (GPIO13)  yel LDR es alimentado por el   pin D8  (GPIO15).

Este es el trozo de código que permite la lectura de ambas señales analógicas:

int sensorPin = A0; // selecciona  el pi, t the input pin for the potentiometer
int enable1 = 10; // activar lectura  sensor A
int enable2 = 11; // acvtivar lectura sensor B

int sensorValue1 = 0; // variable to store the value coming from sensor A
int sensorValue2 = 0; // variable to store the value coming from sensor B

void setup() {
Serial.begin(9600);
// declare the enable and ledPin as an OUTPUT:
pinMode(enable1, OUTPUT);
pinMode(enable2, OUTPUT);
}

void loop() {
// read the value from sensor A:
digitalWrite(enable1, HIGH);
sensorValue1 = analogRead(sensorPin);
Serial.println(sensorValue1);
digitalWrite(enable1, LOW);

delay(100);

// read the value from sensor A:
digitalWrite(enable2, HIGH);
sensorValue2 = analogRead(sensorPin);
Serial.println(sensorValue2);
digitalWrite(enable2, LOW);
Serial.println(«—————————————-«);
delay(1000);
}

Las conexión  de todos los sensores  queda pues como en la figura siguiente:

esquema

Finalmente una vez montado el circuito  solo nos queda  programar el ESP por ejemplo usando el código de más abajo.

No debemos olvidar  de cambiar el apikey con el de su cuenta de thingspeak, pues si no se hace NO  se podrán enviar datos a su canal

Es asimismo importante añadir el nombre SSID  de su red Wi-FI (esto es simplemente el nombre que aparece cuando se hace clic en la esquina derecha de Bottum a filtrar) así como añadir la contraseña de esta red wifi.

Si ha cargado el boceto se puede comprobar en el monitor serie cómo funciona. Basta con abrir el monitor pulsando CNTR + M.

*
This sketch is a combination of two other sketches:
1.
Plot DTH11 data on thingspeak.com using an ESP8266
April 11 2015
Author: Jeroen Beemster
Website: http://www.arduinesp.com
2.
Example sketch: adafruit BMP 085
Sensor api BMP180
*/
//library DHT22
#include

//library esp
#include

//library bmp180
#include
#include
#include

// replace with your channel’s thingspeak API key,
String apiKey = «»; //fill in the api key from thingspeak
const char* ssid = «»; //fill in your wifi name
const char* password = «»; //fill in your wifi password

const char* server = «api.thingspeak.com»;
#define DHTPIN 2 // what pin we’re connected to

DHT dht(DHTPIN, DHT22,15);
WiFiClient client;

int sensorPin = A0; // input for LDR and rain sensor
int enable1 = 15; // enable reading LDR
int enable2 = 13; // enable reading Rain sensor
int sensorValue1 = 0; // variable to store the value coming from sensor LDR
int sensorValue2 = 0; // variable to store the value coming from sensor Rain sensor
//————————–setup————————-
void setup() {

// declare the enable and ledPin as an OUTPUT:
pinMode(enable1, OUTPUT);
pinMode(enable2, OUTPUT);
Serial.begin(115200);
delay(10);

dht.begin();

WiFi.begin(ssid, password);

Serial.println();
Serial.println();
Serial.print(«Connecting to «);
Serial.println(ssid);
Serial.print(«……….»);
Serial.println();
WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
delay(500);

}
Serial.println(«WiFi connected»);
Serial.println();

}
void loop() {
//————————–DHT22/DHT11————————-

float h = dht.readHumidity();
float t = dht.readTemperature();

if (isnan(h) || isnan(t)) {
Serial.println(«Failed to read from DHT sensor!»);
return;
}
Serial.print(«Temperature: «);
Serial.print(t);
Serial.print(» degrees Celcius «);
Serial.println();

Serial.print(«Humidity: «);
Serial.print(h);
Serial.print(«%»);
Serial.println();

//— extra—- you can measure dew point with the temperature and the humidity

double gamma = log(h/100) + ((17.62t) / (243.5+t));
double dp = 243.5
gamma / (17.62-gamma);

Serial.print(«Dew point: «);
Serial.print(dp);
Serial.print(» degrees Celcius «);
Serial.println();

//————————–BMP180————————

if(!bmp.begin()) {
Serial.print(«Failed to read from BMP sensor!!»);
while(1);
}

sensors_event_t event;
bmp.getEvent(&event);

Serial.print(«Pressure: «);
Serial.print(event.pressure);
Serial.println(» hPa»);

float temperature;
bmp.getTemperature(&temperature);
Serial.print(«Temperature: «);
Serial.print(temperature);
Serial.println(» degrees Celcius «);

//— extra—-you can measure the altitude with the temperature and the air pressure

float seaLevelPressure = 1015;
Serial.print(«Altitude: «);
Serial.print(bmp.pressureToAltitude(seaLevelPressure,event.pressure));
Serial.println(» m»);

//————————–LDR————————-

digitalWrite(enable1, HIGH);
sensorValue1 = analogRead(sensorPin);
sensorValue1 = constrain(sensorValue1, 300, 850);
sensorValue1 = map(sensorValue1, 300, 850, 0, 1023);
Serial.print(«Light intensity: «);
Serial.println(sensorValue1);
digitalWrite(enable1, LOW);
delay(100);

//————————–Rain Sensor————————-

digitalWrite(enable2, HIGH);

delay(500);
sensorValue2 = analogRead(sensorPin);
sensorValue2 = constrain(sensorValue2, 150, 440);
sensorValue2 = map(sensorValue2, 150, 440, 1023, 0);

Serial.print(«Rain value: «);
Serial.println(sensorValue2);
Serial.println();
delay(100);

digitalWrite(enable2, LOW);

//————————–thingspeak————————-

if (client.connect(server,80)) { // «184.106.153.149» or api.thingspeak.com
String postStr = apiKey;
postStr +=»&field1=»;
postStr += String(t);
postStr +=»&field2=»;
postStr += String(h);
postStr +=»&field3=»;
postStr += String(dp);
postStr +=»&field4=»;
postStr += String(event.pressure);
postStr +=»&field5=»;
postStr += String(temperature);
postStr +=»&field6=»;
postStr += String(sensorValue1);
postStr +=»&field7=»;
postStr += String(sensorValue2);
postStr +=»&field8=»;
postStr += String(bmp.pressureToAltitude(seaLevelPressure,event.pressure));
postStr += «\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n»;

client.print(«POST /update HTTP/1.1\n»);
client.print(«Host: api.thingspeak.com\n»);
client.print(«Connection: close\n»);
client.print(«X-THINGSPEAKAPIKEY: «+apiKey+»\n»);
client.print(«Content-Type: application/x-www-form-urlencoded\n»);
client.print(«Content-Length: «);
client.print(postStr.length());
client.print(«\n\n\n\n\n\n\n\n»);
client.print(postStr);

}
client.stop();
// thingspeak needs minimum 15 sec delay between updates
delay(20000);
}

Weather_station_for_instructables.inoWeather_station_for_instructables.ino

Todo el conjunto se puede meter en un pequeña caja .  El sensor de DHT y el sensor de BMP pueden posicionarse en el lado de la caja cubriendo los dos sensores con un poco de múltiplex para que la lluvia no pudo influir en las lecturas
Asimimos Thingspeak tiene un montón de opciones de plugin. Uno de ellos es que es posible hacer que los medidores  los publique en su página web de thingspeak   en la pestaña ‘vista privada’ de Thingspeak. Se pueden  vincular los medidores de su sitio web privado  mediante el uso de un iframe que tiene que estar conectado a Thingspeak para poder ver los medidores.

Fuente   aqui

Monte su detector de humo en 2 minutos


Un detector de humo es una alarma que detecta la presencia de humo en el aire y emite una señal acústica  de gran intensidad avisando del posible  peligro de incendio lo cual en ocasiones ,por ejemplo por la noche,  pueden salvarnos literalmente la vida, pues en estados de sueño profundo,   tardamos mucho en reaccionar ante señales evidentes  de posibles incendios. Personalmente creo que es una «inversión» (sobre  15€)   que merece la pena realizar , pues como vamos a ver,  no es para nada complicado su instalación.

 

 

Hay muchos tipos de detectores  diferenciándose sobre todos según al método de detección   implementado en la electronica  que contienen: los iónicos  y los ópticos .

Los menos usados , son los ser  iónicos  , mayormente usados para la detección de gases en ambientes industriales ,los cuales  no son visibles a simple vista .

Estos sensores constan de una cámara formada por dos placas y un material radiactivo (Americio 241), que ioniza el aire que pasa entre las placas,  generando  una pequeña corriente eléctrica permanente, que es medida por un circuito electrónico conectado a las placas, siendo esta  la condición «normal» del detector

 

iones.PNG

Este tipo de composición, los hace  especialmente sensibles a los humos que contienen pequeñas partículas presentes en  de fuego de crecimiento rápido y humo no visible, tal como el que se genera en fuegos de combustión rápida provocados por: gasolina, alcohol, aceites, plásticos, líquidos químicos, etc.  normalmente presentes en laboratorios, talleres, tiendas de pintura,etc.

 

Los  detectores ópticos  son en general  mayormente usados en la actualidad por  su gran fiabilidad   y  bajo precio  detectando humos visibles mediante la absorción o difusión de la luz , pudiendo ser   según la electronica :

  • De infrarrojos directos:   el humo obstaculiza  la luz producida por un led  infrarojo enfrentado a  un LDR generando una alarma
  • De láser : funcionan de un modo parecido al anterior  detectando  un oscurecimiento de una cámara de aglutinación con tecnología láser
  • De tipo puntual : es la tecnologia mas extendida por su gran fiabilidad,   estando  los detectores  puntuales  tanto el emisor y receptor alojados en la misma cámara ( es decir  no se ven al formar sus ejes un ángulo mayor de 90º)  y ademas  separados por una pantalla, de manera que el rayo emitido no alcanza el receptor. Cuando entra humo en la cámara, el haz de luz emitido se refracta en las partículas de humo y puede alcanzar al receptor, activándose la alarma.

sesnor.png

 

Normativa

NF EN 14604  es una normativa  de Noviembre de 2005 DI 89/106 / CE 21/12/1988 que indica la directiva sobre la aproximación de las disposiciones legales, reglamentarias y administrativas de los Estados miembros sobre los productos de construcción.

Esta norma europea especifica los requisitos, métodos de prueba, criterios de rendimiento e instrucciones del fabricante para dispositivos de alarma de humo que utilizan el principio de dispersión o transmisión de la luz, o ionización, para aplicaciones domésticas o similares.

La norma incluye requisitos adicionales para dispositivos de alarma de humo que también son adecuados para su uso en autocaravanas. Para probar otros tipos de dispositivos de alarma de humo o dispositivos de alarma de humo que operan bajo diferentes principios, esta norma debe usarse solo como guía. Las características especiales para alarmas de humo, como un enlace de radio, o características especiales diseñadas para riesgos específicos, no están cubiertas por este estándar. Este estándar permite, cuando sea apropiado, incluir en los dispositivos de interconexión de dispositivos de alarma de humo otros dispositivos de alarma de humo similares y / o incidentales, y desactivar la alarma. Cuando se incluyen dispositivos de esta naturaleza, esta norma especifica los requisitos aplicables. Esta norma no cubre dispositivos destinados a ser incorporados en sistemas que utilizan equipos de control e indicación separados.

 

Electrónica de un detector de humo

 

En la siguiente imagen podemos ver el interior de detector de humo fotoeléctrico de tipo  puntal .

 

 

detector fotoelectrico.jpg

Como podemos ver el circuito es muy sencillo   limitándose a  una  bateria de 9v  conectada  a  una pequeña placa donde van integrados el sensor fotoeléctrico ( suelen ir compactos en una carcasa opaca) , el buzzer piezoelectrico , el led de estado , el pulsador del test, el ajuste de sensibilidad (el trimmer amarillo)  y por supuesto la electronica de control (suele ser un único  chip especializado)

 

 

 

 

 

 

Instalación de un detector de incendios

Resumiendo ,los detectores de humo fotoeléctricos  en general son los utilizados para detectar incendios de pequeña  velocidad de propagación, y  que generan humo visible , como los que se generan en incendio donde tenemos combustibles como: maderas, cuero, lana, y la mayoría de los polímeros, es decir  todo aquellos materiales que tenemos  en  un ambiente domestico ( viviendas  y oficinas), Además estos detectores son menos propensos a falsas alarmas en ambientes controlados.

Ademas  no debemos olvidar  que los detectores iónicos utilizan un isotopo radioactivo de modo que existe el riesgo de un accidente y que este se mezcle con el medio ambiente, generando un problema de contaminación.Además  por su gran sensibilidad son mas propensos a falsas alarmas provocadas por acumulación de polvo y corrientes de aire  no olvidando ademas de que también tienen un coste mucho mayor.

 

Vemos   ahora paso a paso como  instalar  uno de los  detectores  mas sencillos de configurar : el detector de humo tipo GS506

 


Este detector de humo se utiliza para la detección temprana de humo peligroso de modo que tan pronto como el humo entre en el interior del dispositivo, sonará una alarma bastante potente  de 85 dB basados en un piezolectrico

Este  detector detecta el humo y no las llamas, pero es obvio que en casi todas las combustiones   hay presencia de humo  sobre todo si hablamos de ambientes domésticos

Cada 30-40 segundos, el detector de humo realiza un auto-test ,lo cual  puede ser notado por un breve destello del LED. En caso de fallo del sensor o de falta de batería lo indicaría mediante una señal audible

Este modelo para facilitar la instalación  contempla dos mejoras respecto a otros modelos convencionales :

  • Soporte magnético  : para no tener que taladrar nada y hacer mas sencilla su instalación  este detector incluye un  kit de fijación magnética de modo que se puede montar rápida y fácilmente sin el empleo de herramientas, tornillos o tacos.
  • Batería de Litio para 10 años: esto  puede parecer  excesivo , pero en realidad es una excelente decisión del fabricante pues  lo hace inmune a los mantenimientos periódicos producido por el agotamiento de la batería y por tanto mucho mas seguro

 

Estas  son la descripcion de producto:

  • Modelo: GS506 (detector de la alarma del humo)
  • Dimensiones: Ø 100x37mm
  • Rango de temperatura: 0°C a + 45°C
  • Volumen de alarma:  85 dB (A) dentro de los 3 metros
  • Certificaciones: EN 14604, NF
  • Fuente de alimentación: Batería de DC 9V (batería de litio: CR9V)
  • Autonómica : 10 años de batería a largo plazo
  • Advertencia de batería baja

 

 

Montaje del detector

Una vez desempaquetemos  este modelo ,en   primer colocaremos la batería de 9V de Litio,para lo cual eliminaremos precintos  de esta y la fijaremos al porta-pilas del detector.

Destacar que este tipo de baterías, vienen cargadas  obviamente  pero  son algo mas gruesas que la pilas convencionales ,pero aun así caben con un poco de  habilidad dentro del compartimiento de una pila convencional

 

IMG_20180317_132024_HDR[1].jpg

Normalmente ahora fijaríamos la base de sujeción  a la pared mediante dos tornillos para luego simplemente mediante un sistema de bayoneta fijaríamos a esta  el detector ,pero en este producto simplemente colocaremos  ahora la cubierta  quedando como enla siguiente imagen todo el conjunto:

IMG_20180317_132120_HDR[1]

Con este detector se adjunta un de kit de fijación magnética  de modo que se pueden montar rápida y fácilmente sin el empleo de herramientas, tornillos o tacos.
Las siguientes superficies no son adecuadas para la fijación:

  • Empapelado de vinilo
  • Poliestireno,
  • Superficies con revestimiento antiadherente,
  • Superficies siliconadas o recubiertas de teflón
  • Superficies que contienen partículas sueltas
  • Superficies que han sido pintadas varias veces

 

Ahora desprincintado el kit observe que hay dos juegos de chapas;

Tomaremos aquella que tiene los dos  imanes distinguibles por dos pequeños círculos:

IMG_20180317_132338_HDR[1]

Eliminaremos el plástico protector del adhesivo  y lo fijaremos   a la base del detector y  la otra pieza  a la pared o alguna superficie plástica  ( por ejemplo los cajetines de conexiones de la instalación eléctrica )

 

 

Pulse el botón de test   que tiene en el centro del detector para probar su funcionamiento normal . Si oye un fuerte pitido que cesa , !enhorabuena ya ha instalado el detector!

 

Realmente gracias  a los colores neutros, este tipo de sensores  quedan bastante disimulados  si se sitúan en las tapas de los registros o en cualquier parte que incluya algo de plástico ( incluso hay personas  que quitan la carcasa exterior  que suele ir a presión  y la pintan de otros colores).

IMG_20180318_175046[1]

Mantenimiento:

El detector fotoeléctrico está diseñado para detectar el humo dentro de una cámara con uno o dos leds ópticos y  uno o varios sensores  que informan cuando hay humo si detectan luz infaroja por la refracción del humo en su interior. El problema con este tipo de detector es que el polvo o suciedad lo puede llegar a leerse como humo creado falsas alarmas, por lo que si es posible  deberíamos  hacer un plan de mantenimiento para limpiar las cámaras de los detectores fotoeléctricos para mantenerlas limpias y evitar falsas alarmas en el sistema .

 

 

Como leer el pulso cardiaco


La esencia de estos circuitos es un sensor integrado de circuito de amplificación óptica y con un circuito de eliminación de ruido de la frecuencia cardíaca  todo ello alimentado  con una tensión de alimentación: 3.3V ~ 5 V

Lo ideal  para medir el pulso  es  poner  el sensor de pulso en el dedo o lóbulo de la oreja, directamente  o bien  mediante algún sistema mecánico que lo deje fijo como por ejemplo   alguno de los sistemas que mostramos a continuación:

 

soportes sensores.PNG

 

Estos sensores cuentan con una salida analógica   que se puede conectar por ejemplo a una entrada analógica de un  Arduino, para probar la frecuencia cardíaca

Estudiantes, artistas, deportistas, creadores, desarrolladore3s de juegos, o terminales móviles puedan desarrollar software o interactivos relacionado con el ritmo cardíaco, pero no obstante también existe  una aplicación de código abierto para la visualización en tiempo real de la gráfica de la frecuencia cardíaca en https://github.com/WorldFamousElectronics/PulseSensor_Amped_Arduino/.

 

 

El sensor de pulso cardiaco es esencialmente un fotopletismógrafo, que es un dispositivo médico conocido que se usa para controlar la frecuencia cardíaca de forma no invasiva. Asimismo  los fotopletismógrafos miden los niveles de oxígeno en la sangre (SpO2) pero no siempre lo soportan.

La señal de pulso cardíaco que sale de un fotopletismograma es una fluctuación analógica de voltaje, y tiene una forma de onda predecible, tal como estamos acostumbrados a ver ( la representación de la onda de pulso se denomina fotopletismograma o PPG).

El Sensor de pulso  amplifica la señal bruta del Sensor de pulso anterior y normaliza la onda de pulso alrededor de V / 2 (punto medio en voltaje) respondiendo a los cambios relativos en la intensidad de la luz

Tal y como esta construido ,veremos que  la luz  interna del LED verde del sensor  se refleja de nuevo en el sensor cambiando durante cada impulso, ocurriendo las siguintes casuiticas:.

  • Si la cantidad de luz incidente en el sensor permanece constante, el valor de la señal permanecerá en (o cerca de) 512 (punto medio del rango de ADC).
  •  Más luz y la señal aumentará.
  • Menos luz, todo lo contrario: el valor de la señal analógica dismuniira

El objetivo es encontrar momentos sucesivos de latido instantáneo del corazón y medir el tiempo transcurrido entre ellos, llamado intervalo Inter Beat (IBI)  pues al seguir la forma y el patrón predecibles de la onda PPG, podemos hacer exactamente eso.

Cuando el corazón bombea sangre por el cuerpo, con cada latido hay una onda de pulso (una especie de onda de choque) que viaja a lo largo de todas las arterias hasta las mismas extremidades del tejido capilar donde está conectado el sensor de pulso. La sangre real circula en el cuerpo mucho más lentamente de lo que viaja la onda de pulso.

 

Figura 1

 

Sigamos los eventos a medida que progresan desde el punto ‘T’ en el PPG a continuación. Se produce un aumento rápido en el valor de la señal a medida que la onda de pulso pasa por debajo del sensor, luego la señal vuelve a descender hacia el punto normal. A veces, la muesca dicroica (pico descendente) es más pronunciada que otras, pero, en general, la señal se establece en el ruido de fondo antes de que la siguiente onda de pulso se filtre. 

Como la onda se repite y es predecible, podríamos elegir casi cualquier característica reconocible como punto de referencia, por ejemplo, el pico, y medir la frecuencia cardíaca haciendo cálculos matemáticos sobre el tiempo entre cada pico,pero sin embargo, esto puede dar lugar a lecturas falsas desde la muesca dicroica, si está presente, y puede también ser susceptible a la imprecisión con respecto al ruido de línea base.

Existen otras buenas razones para no basar el algoritmo de detección de latidos en fenómenos de onda arbitrarios. Idealmente, queremos encontrar el momento instantáneo del latido del corazón. Esto es importante para el cálculo preciso de BPM, la variabilidad del ritmo cardíaco ( y mida la frecuencia cardíaca haciendo cálculos en el tiempo entre cada pico.

Sin embargo, esto puede dar lugar a lecturas falsas desde la muesca dicroica, si está presente, y puede también ser susceptible a la imprecisión con respecto al ruido de línea base.

.

 

Algunos investigadores del corazón dicen que es cuando la señal alcanza el 25% de la amplitud, algunos dicen que es el 50% de la amplitud, y algunos dicen que es el momento en que la pendiente es más pronunciada durante el evento ascendente.

 

El circuito que vamos  a ver es muy simple pues solo se precisa conectar  un buzzer y el sensor de pulsos cardíacos  .

Como podemos ver en el video  , el sensor de pulsos cardíacos  se conecta a la alimentación de +5V  entre el hilo rojo(+5v)   y el naranja (GND)   y del  hilo marrón obtenemos la salida analógica que conectaremos a la primera entrada analogica (A0) de cualquier placa que  soporte entradas analogicas como pueden ser Arduino o Netduino

 

arduino.PNG

Para complementar el circuito puede ser interesante reflejar el punto maximo de nivel qeu reproduciremos mediante un buzzer  conectado al pin 11 de salida binaria

 

A continuación  en este breve  ejemplo  para Arduino se puede mostrar un pulso de latido del corazón humano en directo ayudándonos por medio de «Serial Plotter» de arduino o  por ejemplo con una aplicacion móvil usando   un modulo bluetooth coenctado a nuestro arduino

 

En este pequeño programa para Arduino qeu vamos a ver , sonará un buzzer con cada latido de tu corazón al mismo tiempo que se envia el valor de la señal de forma serie (esta es la señal directa del sensor de pulso) el cual podemos visualizar en un ordenador  o si tenemos conectado un modulo bluettoth a nuestro arduino mediante un smarptphone usando una app .

 

//Programa para capturar el pulso cardiaco

// Variable para fijar el puerto donde conectaremos el buzzer 

int buzzer = 11;

// la variable pulso contiene los datos brutos entrantes pudiendo  variar entre 0-1024

int pulso;

 

// Determina qué señal «se contará como un latido» y qué señal ignorar.

int limite = 550;

 

void setup() {

//definimos donde conectamos el buzzer , que  sonará al ritmo de su corazón

pinMode(buzzer,OUTPUT);

 

// Configura la comunicación serial a 9600 dependiendo de su adaptador bluetooth como esté configurado

Serial.begin(9600);
}

void loop() {

// Lee el valor del pin analógico 0, y Asigna este valor a la variable «pulso».
pulso = analogRead(A0);

 

//Este caracter lo filtra la aplicación en APP inventor

Serial.print(«*»);

// Envíe el valor de pulso al Plotter serial. Comentar si queremos visualizar en «serial ploter»
Serial.println(pulso);
if(pulso > limite){

// Si la señal es superior a «550», entonces suena el buzzer.
digitalWrite(buzzer,HIGH);

}

else

{

// De lo contrario, deja de sonar el buzzer.
digitalWrite(buzzer,LOW);
}

//Retardo de 35ms
delay(35);
}

 

 

Envío de datos de Iot en Raspberry Pi a la nube


Hoy vamos a  ver  lo fácil  que es conectar un sensor simple conectado a una Raspberry Pi a la nube de transmisión utilizando para ello  un sensor de temperatura digital, el popular DS18B20 y dos scripts de Python simples: uno para enviar los datos del sensor a la nube y el otro para recibirlo para su uso en alguna otra aplicación.

El código  para que pueda iniciarse esta disponible en un repositorio de GitHub .

CONEXIÓN DE UN SENSOR A SU RASPBERRY PI

Primero debe conectar el sensor a su Raspberry Pi. Debe conectar conectar al sensor una resistencia de Pull Uo  de 4,7 K entre  la linea de datos (que conectaremos al GPIO4 )  y la alimentacion de 3.3V

En la imagen se describe la sencilla conexión utilizando el bus 1wire con tres pines GPIO (alimentación, tierra y el pin de datos real).

Connection diagram for ds18b20 1-wire temperature sensor to Raspberry Pi GPIO

Después de hacer las conexiones  debe asegurarse de que el módulo kernel del dispositivo de comunicación 1wire esté cargado.

El procedimiento para hacerlo es ligeramente diferente entre las versiones de Raspberry Pi antes y después de enero de 2015, cuando kernel 3.18.8 se incluyó en Raspbian , la distribución de Linux más utilizada para Raspberry Pi. En las actualizaciones recientes debe modificar el archivo /boot/config.txt como se describe aquí:

# with a pre-3.18.8 kernel:
[email protected] ~ $ sudo modprobe w1-gpio &amp;&amp; sudo modprobe w1_therm

# else:
[email protected] ~ $ uname -a
Linux raspberrypi 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l GNU/Linux
[email protected] $ sudo nano /boot/config.txt
# add this line at the bottom (and then reboot):
# dtoverlay=w1-gpio

Ahora puede buscar los dispositivos 1wire respectivos en su sistema de archivos. Cada sensor DS18B20 tiene una identificación única que aparece en este directorio de dispositivos, en nuestro caso 28-000004a365ef .

La siguiente sección muestra cómo leer los datos del sensor para que puedan publicarse en la nube.

LECTURA DE LOS DATOS DEL SENSOR

Una vez que conozca la identificación única de su DS18B20 , puede acceder a los datos del sensor de una manera más reutilizable con una función de Python como la de read_temp.py .

Al ejecutar este código también se ejecutará un ciclo corto para leer y visualizar la temperatura ambiente alrededor del sensor. Intente tocar el sensor con los dedos para ver cómo afecta las lecturas.

Ahora que el sensor está funcionando y entrega datos, es hora de enviar esos datos a la nube , la cual en esta ocasion sera ofrecida por el proveedor europeo relayr

relayr.png

Si no tiene una cuenta de desarrollador relayr , tendrá que crear una. Una vez que tenga una cuenta, puede crear un prototipo de sensor simplemente accediendo a la página de dispositivos de su dispositivo y moviendo el puntero del mouse sobre el botón con el signo más en la esquina inferior derecha.

Luego, desplácese hacia abajo y seleccione «Continuar sin un modelo» para crear el dispositivo. Ahora, cambie el lenguaje de programación a «Python» y copie el código de firmware generado, que será útil para la siguiente sección.

PUBLICACIÓN  DE SUS DATOS DE SENSOR EN LA NUBE DE RELAYR

Puede publicar sus datos usando MQTT (un protocolo para comunicar mensajes de máquina a máquina). Si aún no está instalado, tendrá que configurarlo en su Pi. El paquete paho-mqtt proporciona soporte MQTT para Python y se puede instalar fácilmente como un paquete Python con pip como este (instale pip primero si aún no lo tiene):

 pi @ raspberrypi ~ $ sudo apt-get install python-pip
 pi @ raspberrypi ~ $ sudo pip install paho-mqtt == 1.1

Sabrá si lo ha instalado con éxito si puede ejecutar esta declaración en Python sin ningún error: import paho .

A continuación, puede copiar el fragmento de muestra de Python de la página del prototipo del panel que haya visto al crear un prototipo. Para hacer esto, reemplace el ciclo while en la parte inferior del código con el de publish_temperature.py (disponible en el repositorio).

No olvide incluir la función read_temperature desde arriba y también agregar su identificación de sensor única al ciclo while (la que encontró al configurar el sensor). Alternativamente, puede usar el código en publish_data_mqtt.py , asegurándose de cambiar las credenciales (con las de su panel) y el device_id en la parte inferior de la página.

Esto le permitirá ejecutar un ciclo sin fin, leer los valores de temperatura y publicarlos uno por segundo a la nube de retransmisión.

CONSULTA DE SUS  DATOS

A medida que introduce sus datos en la nube de relayr, puede ver los valores en tiempo real a medida que cambian en el tablero de relayr.

Screen_Shot_2016-07-12_at_16.12.28.png

Ver sus datos en el tablero de instrumentos a medida que cambia es genial, pero en algún momento querrá extraer los datos para usarlos. Para ello, puede acceder a sus datos a través de MQTT de nuevo escribiendo un script simple como el Llamado fetch_data_mqtt.py en el repositorio de GitHub .

Si ejecuta esa secuencia de comandos, mostrará los mensajes MQTT en vivo que contienen los valores de datos tal como se recibieron.

Para ello, utilice el SDK de Relayr Python instalando primero los paquetes necesarios (ejecute las líneas a continuación en su pi):

sudo pip install git + https: //github.com/relayr/pythonsdk

sudo pip install relayr upgrade

Si tiene una Raspberry Pi nueva, asegúrese  de actualizar su lista de paquetes Debian e instalar algunos paquetes de desarrollador antes de instalar el paquete más nuevo de GitHub de la siguiente manera:

  pi @ raspberrypi ~ $ sudo apt-get update 
  pi @ raspberrypi ~ $ sudo apt-get install python-dev libffi-dev libssl-dev 
  pi @ raspberrypi ~ $ pip install git + https://github.com/relayr/python-sdk 

Ahora puede usar el código en receive_data.py para recibir datos de la nube. Asegúrese de cambiar la identificación de su dispositivo y el token de acceso (omitiendo la parte «Portador» del token).


En este ejemplo ha visto cómo puede conectar un sensor de temperatura simple a una Raspberry Pi y publicar sus datos en la nube de transmisión . Esto le permite ver los datos en vivo en el tablero, o exportarlos para usarlos en una aplicación. Puede usar MQTT para publicar y recibir los datos del sensor, o usar uno de los SDK de Relayr, como el SDK de Python , para acceder a los datos de manera más conveniente.

También puede usar sensores más emocionantes y publicar valores de datos más complejos que un solo flotante (es decir, una lista de tres flotantes que representan información geoespacial). Siempre que proporcione una lecturaconocida en el panel de control de relayr, mostrará sus datos en un buen widget. Y también puede publicar algo aún más complicado, como un objeto con niveles de anidación más profundos. En ese caso, el tablero mostrará un widget genérico. ¡Depende de usted y de lo que quiera hacer!

El código del ejemplo esta disponible ena GitHub (buscar relayr-raspberry-pi).

Electrónica de una lavadora LG direct drive y averias mas comunes


Ha cambiado mucho la tecnología desde las primeras lavadoras que solo incluían un simple motor agitador  a las modernas lavadoras  con tracción directa del tambor ( direct drive)  y modulo auto diagnostico basado en microcontroladores .

Un ayuda inestimable  a   la hora de resolver cualquier incidencia  de funcionamiento de nuestra lavadora  son los códigos de error los cuales   nos permiten realizar un rápido diagnóstico de sus averías  más comunes. Estos códigos de error deben ser del conocimiento del técnico en reparación y mantenimiento a lavadoras para una rápida resolución del problema , pero  afortunadamente también se incluyen  en los manuales correspondientes a cada modelo , por lo que como primer paso  deberíamos consultar el manual de lavadora para identificar  si nos esta mostrando algún tipo de error , los cuales se muestran con señales sonoras , combinaciones de leds o incluso en las que los disponen de diplay   en este  mismo los propios  códigos de error.

detalle del programador

 

Empezando por lo básico

Aunque los filtros se pueden acceder por el exterior, si tenemos una avería tarde o temprano intentaremos abrir la tapa superior  o el lateral  para intentar averiguar el origen de cualquier problema

Como podemos ver  en la imagen de abajo de una lavadora   LG F10B9QFW   ,  en el interior  se  ha sustituido  el metal por el plástico ,mucho mas ligero y por supuesto insensible a la oxidación   y corrosión

interior de una lavadora

Por orden de importancia ante cualquier problemas podemos seguir los siguientes punto

  • En primer lugar revisaremos el filtro de agua del desagüe,.En algunos modelos de lG con Display , el error es «OE»  que significa “drain error”, es decir error de vaciado de agua. Se activa si después de 5 minutos de iniciado el vaciado de agua, el sensor de llenado indica cuba llena.

Ante  cualquier contratiempo   de mal funcionamiento , ante de nada debemos comprobar que la tubería de desagüe no está torcida, doblada o aprisionada por algún elemento extraño   verificando  que el desagüe es eficaz y no existan atranques que devuelvan el agua. Revisados las tuberías,  también  debería comprobar que el filtro de la bomba está limpio y sin obstrucciones.

  • En segundo lugar, un fallo muy común es que el filtro de la toma de agua que quede obstruido por acumulaciones de sales ,por lo que es importante  limpiarlo  concienzudamente.

Lo mejor es limpiarlo  hasta incluso llegar a extraer el portafiltro  ya que  en la mayoría de modelos se puede extraer

filtro interoi

Es conveniente incluso limpiar con un bastoncillo de oídos en el interior del porta-filtro  para que limpiar  cualquier obstrucción

interior fltro

  • Si el suministro de agua está bien, el fallo puede estar motivado por una rotura en algunas de las electroválvulas.  Suelen ser  dos  y, como se ve en la imagen, están  justo en la entrada de  agua.

Se pueden comprobar su bobinados con polímetro , el cual debería  oscilar  un valor de 2 a 8 ohmios

 

electrovalvula

Otra posibilidad de avería  de las electroválvulas es que  pierdan la hermeticidad   las juntas de  goma  interiores , por lo que en efecto podemos probar que se accionen pero no cortan o no abran el flujo de agua  : esta avería es típica y se  manifiesta     llenándose el tambor incluso con la  lavadora apagada debido a las fugas de  alguna de las electroválvulas . Obviamente estos errores  obligan    a reemplazar  la  electroválvula averiada.

 

Rebosamiento de la cuba

Otro de los problemas típicos el  llenado de la cuba  incluso llegando el rebosamiento . El error se suele indicar por OE (“Overflow error”) y si es detectado  por la electrónica  la bomba de agua suele activarse automáticamente. Este mensaje, nos indica que la cuba se ha llenado de agua de manera excesiva.

El fallo puede estar en el sensor de agua que da una lectura errónea,o que la electro-válvula no cierra (por depósitos de cal, suciedad,  junta picada), lo que produce un constante llenado de agua de la lavadora como hemos visto en el punto anterior.

Existen dos tipos de sensores de presión de agua en lavadoras:

  • Sensores de presión de agua  a base de contactos eléctricos o resistivo.
  • Sensores de presión de agua electrónicos , los cuales son  más seguros al no tener contactos físicos eléctricos.

En algunos  modelos   de LG con display, un fallo de  los presostatos    se indican por  el error   «PE» (es decir  Pressure error)”, es decir error en el sensor de presión refiriéndose  a la presión del agua en el presostato, el cual puede ser verificado en modo test en algunos modelos .

Una avería muy típica  es pues que la lavadora se llena de agua y no para de llenarse  desbordándose  sin pasar al ciclo de lavado .lo cual   normalmente  puede  relacionado con el sensor de presión de agua  como vemos.

Presostato vista superior

 

Una avería típica del modelo   LG F10B9QFW es que  con el tiempo  se suelte el conducto  procedente del tambor , provocando que la lavadora  no lave pues no corta el llenado  de agua del tambor .

En este caso  simplemente arreglaremos  al avería fijando el tubo al presostato  y  como mejora colocaremos una brida para que no se  vuelva a soltar el tubo

img_20170126_1740031

 

 Obviamente si la conducción es correcta ( no esta obstruida ) y no se ha soltado , y  sigue manifestando el  mismo error de llenado del tambor hasta el limite  ,muy probablemente el sensor estará mal y  debe ser sustituido por otro.

Problemas con el vaciado  de la cuba

Si estuviese todo lo anterior correcto,otro problema  puede ser  el fallo de la bomba para lo cual, aparte de observar si se oye agua  circular por el sumidero . podemos medir con un polimetro el bobinado de la bomba que debería  tener  una resistencia de 80 a 150 Ω .
En algunos modelos de LG  el error es  DE ( es quiere decir drain error) , es decir error de vaciado de agua. Se activa si después de 5 minutos de iniciado el vaciado de agua, el sensor de llenado indica cuba llena.
bomba de lavadora

Otras averías

  • Otra avería probable es el interruptor de seguridad de la  puerta cuyo código de error  en lavadoras LG con display  suele ser DE (“door error”), es decir error en la puerta de la lavadora. Debe verificar  que la puerta de la lavadora está completamente cerrada, verificando el contacto de cierre y el retardo de apertura. En caso de que el contacto o el retardo esté mal, debe sustituirse todo el bloque.
  • Y llegamos  al motor cuyo error en las lavadoras LG suele ser «LE» (significa “Motor error”), es decir, error en el motor. El fallo está originado por una avería en los bobinados del motor, que están abiertos o en cortocircuito. La avería también se produce si el conector está mal o flojo, o los sensores Hall están dañados.

Llegados a este punto, ver este mensaje indica  una reparación bastante costosa. Verifique el bobinado del motor, quite el conector y mida con el multímetro. Las resistencias se miden entre cada bobina y deben dar una lectura entre 5 y 15 ohmios. Si las bobinas están bien, seguramente el fallo está en algún sensor Hall, los cuales deben ser cambiados.

 

detalle del motor

  • Y para terminar llegamos a la parte mas importante : la placa principal (antiguamente llamada  programador) .Si todos los elementos anteriores  están operativos un problema muy típico  puede ser cualquier aspecto relacionado con la placa principal , que en los modelos mas actuales suele  estar centralizada en una  sola  placa .

Normalmente las reparaciones de esta placa suelen consistir reemplazar por completo la placa   conllevando  ademas de un coste considerable ,asi que  si llegados  a este punto estamos seguros de que esa es la avería , tenga en cuenta que  en casi todas las reparaciones una parte muy importante se lleva la  parte de alimentación  ,( que el caso de las lavadoras va integrada en la placa) , así que es un comienzo empezar por este punto .

En la imagen a la izquierda se observa claramente el transformador , un condensador electrolítico de gran capacidad  y un puente de diodos y varios condensadores de poliester ,  por lo que un buen comienzo seria ir comprobando tensiones por esa parte ( con cuidado extremo pues esta alimentado con tensión ac 220V)

 

 

 

img_20170126_1740431

Otra causa de problema de  mal funcionamiento , suele ser los conectores  y sobre todo condensadores   por  lo  que no viene mal revisar en general el estado de estos

 

img_20170126_1740511

 

Sin duda el abanico de posibilidades es infinito ,pero hemos intentado   mostrar en este post los síntomas  mas comunes junto con su solución .!Muchísima  suerte con la reparación!

Acceso web de Sensores Analogicos para Raspberry Pi (parte 3)


En un post anterior veíamos algunas de las posibilidades de  conexión de sensores digitales  a nuestra Raspberry Pi como puede ser añadir sensores I2C con el CI DS1820 , sensores de Co2 basados en el Mq4, sensores genéricos,sensores de presión con el BMP180,sensores de temperatura basados en el TMP102, sensores de proximidad basados en el VCNL 4000o  o los sensores de luminosidad basados en el  TSL2561.

Como todos sabemos  existen también una cantidad muy alta de sensores cuya salida no es digital , los cuales en principio no se podrían conectar directamente a nuestra Raspberry, pero esto no es exactamente así porque si podemos conectarlos por medio de convertidores A/D y D/A y otros circuitos  como empezamos a  ver en  post anteriores

Hoy acabamos la entrega de conexiones analógicas  a nuestra Raspberry Pi  usando  algunos de los circuitos que se  explicaron viendo precisamente  conectándolos por fin  aun un un mundo infinitos de posibilidades.

Vemos a continuación algunos de ellos:

Termistor

Thermistor
 

Un termistor es un sensor de temperatura por resistencia basandose su funcionamiento en la variación de la resistividad que presenta un semiconductor con la temperatura. El término termistor proviene de Thermally Sensitive Resistor. Existen dos tipos de termistores:

  • NTC (Negative Temperature Coefficient) – coeficiente de temperatura negativo  .
  • PTC (Positive Temperature Coefficient) – coeficiente de temperatura positivo (también llamado posistor).

Cuando la temperatura aumenta, los tipo PTC aumentan su resistencia y los NTC la disminuyen, razon por la cual lo mas habitual es usar NTC’s  en todas las aplicaciones.

Un par de notas antes de comenzar:

  • Para poder utilizar un sensor análogo con la tenemos que utilizar un convertidor de analógico a Digital .Para este ejemplo vamos a utilizar el MCP3008 para esta tarea.
  • Asegúrese de que Raspberry Pi está apagado al conectar los cables.
  • Cuando utilice un cable de cinta GPIO, asegúrese de que está conectado el cable (es un color diferente que los otros) en la esquina de la Raspberry Pi y la parte superior de tu pastel de Pi.
  • El diagrama proporcionado es sólo un ejemplo de cómo conectar el sensor. Hay muchas maneras para conectar sensores y extensiones, así que trate de lo que funciona mejor para usted!
  • Algunas  placas de prototipos (usados en los diagramas a continuación) tienen una linea de alimentación que se separa en el medio. Si este es el caso, asegúrese de que sus sensores están conectados en la misma mitad de la placa como su  Pi.

Use el siguiente diagrama para conectar un termistor.

Paso 1
Thermistor

Conecte la línea de alimentación para el termistor a través de la resistencia  de 10K.

Paso 2
Thermistor

Conecte la línea de tierra para el termistor.

Paso 3
Thermistor

Conectar el termistor a uno de los 8 canales de la MCP3008. Para este ejemplo, CH0.

Paso 4

¡Listo! Ahora puede Agregar el termistor a su panel de control de Cayenne  usando canal del MCP3008

 

VCNL4000

Hablamos de un doble sensor de  proximidad y sensor de luminosidad integrado en una sola placa  y cuya salida puede ser procesada directamente por nuestra Pi.

Un par de notas antes de comenzar:

  • Asegúrese de que Raspberry Pi está apagado al conectar los cables.
  • Cuando utilice un cable de cinta GPIO, asegúrese de que está conectado el cable (es un color diferente que los otros) en la esquina de la Raspberry Pi y la parte superior de tu pastel de Pi.
  • El diagrama proporcionado es sólo un ejemplo de cómo conectar el sensor. Hay muchas maneras para conectar sensores y extensiones, así que trate de lo que funciona mejor para usted!
  • Algunas  placas de prototipos (usados en los diagramas a continuación) tienen una linea de alimentación que se separa en el medio. Si este es el caso, asegúrese de que sus sensores están conectados en la misma mitad de la placa como su  Pi.

 

Use el siguiente diagrama para conectar un VCNL4000 de proximidad y sensor de luminosidad.

Paso 1
VCNL4000

Conecte las líneas de energía. Conecte el 3.3V 3.3V encendido el VCNL4000 perno de la fuente (3.3) y 5V al pin emisor de IR (IR +).

Paso 2
VCNL4000

Conectar toma de tierra de laPi a VCNL4000 (GND).

Paso 3
VCNL4000

Conecte las clavijas SDA de la VCNL4000  a la Pi.

Paso 4
VCNL4000

Conecte los pines SCL de la VCNL4000  a la Pi.

Paso 5

¡Listo! Ahora puede agregar el sensor de VCNL4000 en el panel de Cayenne

Fotoresistor

Photoresistor

 

Una fotorresistencia también llamada LDR  por ssu siglas en ingles inglés light-dependent resistor  es un componente electrónico cuya resistencia disminuye con el aumento de intensidad de luz incidente. Puede también ser llamado fotorresistor, fotoconductor, célula fotoeléctrica o resistor dependiente de la luz.

Su cuerpo está formado por una célula fotorreceptora y dos patillas siendo el valor de resistencia eléctrica  bajo cuando hay luz incidiendo en él (puede descender hasta 50 ohms) y muy alto cuando está a oscuras (varios megaohmios).

Un par de notas antes de comenzar:

  • Para poder utilizar un sensor análogo con la frambuesa Pi tenemos que utilizar un convertidor de analógico a Digital. Para este ejemplo utilizaremos el MCP3008 para esta tarea. Este tutorial asume que usted ya tiene el MCP3008 conectado. Consulte el Tutorial de MCP3008 si necesita ayuda con la parte.
  • Asegúrese de que Raspberry Pi está apagado al conectar los cables.
  • Cuando utilice un cable de cinta GPIO, asegúrese de que está conectado el cable (es un color diferente que los otros) en la esquina de la Raspberry Pi y la parte superior de tu pastel de Pi.
  • El diagrama proporcionado es sólo un ejemplo de cómo conectar el sensor. Hay muchas maneras para conectar sensores y extensiones, así que trate de lo que funciona mejor para usted!
  • Algunas  placas de prototipos (usados en los diagramas a continuación) tienen una lienea de alimentación que se separa en el medio. Si este es el caso, asegúrese de que sus sensores están conectados en la misma mitad de la placa como su  Pi.

 

Use el siguiente diagrama para conectar el fotoresistor.

Paso 1
Photoresistor

Desde el pastel de Pi para alimentar la fotorresistencia.

Paso 2
Photoresistor

Conecte la fotorresistencia a tierra a través de un resistor de pull-down de 10K.

Paso 3
Photoresistor

Conecte la fotorresistencia a uno de los 8 canales de la MCP3008. Para este ejemplo, CH0.

Paso 4

¡Listo! Ahora puede agregar  la fotorresistencia a tu panel de control, utilizando el canal de MCP3008 0 para leer valores desde el sensor.

Carga analógica

Analog Load

 

 

Vamos  a a ver como procesar  la salida analógico  de los sensores de fuerza resistivo circular (fsr)

Un par de notas antes de comenzar:

  • Para poder utilizar un sensor análogo con la frambuesa Pi tenemos que utilizar un convertidor de analógico a Digital. Para este ejemplo utilizaremos el MCP3008 para esta tarea. Este tutorial asume que usted ya tiene el MCP3008 conectado. Consulte el Tutorial de MCP3008 si necesita ayuda con esa parte.
  • Dependiendo del sensor de presión utilizado, se requiera componentes adicionales para calibrar correctamente el sensor. Un ejemplo de utilizar amplificadores operacionales para calibrar un sensor de fuerza flexibles vea el siguiente video.
  • Asegúrese de que Raspberry Pi está apagado al conectar los cables.
  • Cuando utilice un cable de cinta GPIO, asegúrese de que está conectado el cable (es un color diferente que los otros) en la esquina de la Raspberry Pi y la parte superior de tu pastel de Pi.
  • El diagrama proporcionado es sólo un ejemplo de cómo conectar el sensor. Hay muchas maneras para conectar sensores y extensiones, así que trate de lo que funciona mejor para usted!
  • Algunas  placas de prototipos (usados en los diagramas a continuación) tienen una linea de alimentación que se separa en el medio. Si este es el caso, asegúrese de que sus sensores están conectados en la misma mitad de la placa como su  Pi.

 

Use el siguiente diagrama para conectar el Sensor de presión analógico.

Paso 1
Analog Load

Alimentar al sensor de presión.

Paso 2
Analog Load

Conectar toma de tierra para el sensor de presión, a través de la resistencia.

Paso 3
Analog Load

Conecte el sensor de presión a uno de los canales de entrada en el MCP3008, el canal 0 para este ejemplo.

Paso 4

¡Listo! Ahora puede añadir el sensor de presión analógico a su tablero de instrumentos, usando el  canal o de MCP3008  para leer el sensor.

 

GP2Y0A21YK

Analog Distance

 

Hablamos ahora del   Sensor de proximidad por infrarrojos de Sharp (GP2Y0A21YK).

Este dispone de un conector JST de 3 pines y proporciona un valor analógico (voltaje) según la distancia del objeto detectado.
La salida proporciona 3,1V a 10cm hasta 0,4V a 80cm por lo que cualquier microcontrolador con una entrada ADC disponible puede fácilmente interpretar su señal sin necesidad de componentes externos como vamos a ver .

Un par de notas antes de comenzar:

  • Para poder utilizar un sensor análogo con la frambuesa Pi tenemos que utilizar un convertidor de analógico a Digital. Para este ejemplo utilizaremos el MCP3008 para esta tarea. Este tutorial asume que usted ya tiene el MCP3008 conectado. Consulte el Tutorial de MCP3008 si necesita ayuda con la parte.
  • Asegúrese de que Raspberry Pi está apagado al conectar los cables.
  • Cuando utilice un cable de cinta GPIO, asegúrese de que está conectado el cable (es un color diferente que los otros) en la esquina de la Raspberry Pi y la parte superior de tu pastel de Pi.
  • El diagrama proporcionado es sólo un ejemplo de cómo conectar el sensor. Hay muchas maneras para conectar sensores y extensiones, así que trate de lo que funciona mejor para usted!
  • Algunas  placas de prototipos (usados en los diagramas a continuación) tienen una lienea de alimentación que se separa en el medio. Si este es el caso, asegúrese de que sus sensores están conectados en la misma mitad de la placa como su  Pi.

 

Use el siguiente diagrama para conectar el Sensor de proximidad analógico.

Paso 1
Analog Distance

Desde el Pi alimentar el sensor de proximidad (rojo).

Paso 2
Analog Distance

Conectar la tierra del  Pi en el sensor de proximidad (negro).

Paso 3
Analog Distance

Conecte la salida del Sensor de proximidad (amarillo) a uno de los canales de entrada en el MCP3008, el canal 0 para este ejemplo.

Paso 4

¡Listo! Ahora puede añadir el Sensor de proximidad analógicos a su tablero de instrumentos, usando canal o de MCP3008  para leer el sensor.

 

 

!!Y eso  es  todo amigos!!

Con este ultimo post  sobre el tema ,  hemos intentado cubrir  toda la serie de posibilidades que nos ofrecen  algunos circuitos Integrados para poder conectar a nuestra Raspbbery Pi un infinito abanico de sensores analógicos,,,

 

Acceso web de Sensores Analogicos para Raspberry Pi (parte 1)


En un post anterior veíamos algunas de las posibilidades de  conexión de sensores digitales  a nuestra Raspberry Pi como puede ser añadir sensores I2C con el CI DS1820 , sensores de Co2 basados en el Mq4, sensores genéricos,sensores de presión con el BMP180,sensores de temperatura basados en el TMP102, sensores de proximidad basados en el VCNL 4000o  o los sensores de luminosidad basados en el  TSL2561.

Como todos sabemos  existen también una cantidad muy alta de sensores cuya salida no es digital , lo cual en principio no se podrían conectar directamente a nuestra Raspberry,pero esto no es exactamente así porque si podemos conectarlos por medio de convertidores A/D y D/A  como vamos a ver a continuación

 

PCA9685 PWM

pca9685.png

En efecto con este CI  que podemos comprar por unos 12€  en Amazon podemos ajustar el brillo por ejemplo de 12 leds mediante PWM o por supuesto también controlar hasta 12 servos con esta placa

El  circuito contiene un controlador PWM controlado por I2C con un reloj incorporado. A diferencia de la familia TLC5940, no es necesario enviar continuamente señales pues es gestionado  utilizando sólo dos pines para controlar 16 salidas PWM de funcionamiento libre e  incluso puede encadenar 62 salidas para controlar hasta 992 salidas PWM

Funciona a 5V, lo que significa que puede controlarlo desde 3,3V y seguir con seguridad hasta 6V salidas (esto es bueno cuando se desea controlar LEDs blancos o azules con 3,4+ voltajes hacia adelante)

Lleva 3 conectores de clavija en grupos de 4, así que usted puede enchufar 16 servos a la vez (los enchufes del servo son levemente más anchos de 0.1 «por lo que usted puede apilar solamente 4 al lado de uno a en 0.1»)
La  resolución es de 12 bits para cada salida – para servos, lo que significa una resolución de 4us a 60Hz

 

Un par de notas antes de comenzar:
  • Para agregar un actuador de luminosidad necesita un controlador PWM. Para este ejemplo vamos a utilizar un regulador de la entrada-salida de PCA9685 PWM. Este tutorial asume que usted ya tiene el PCA9685 conectado. Consulte el Tutorial de PCA9685 si necesita ayuda con la parte.
  • Asegúrese de que Raspberry Pi está apagado al conectar los cables.
  • Cuando utilice un cable de cinta GPIO, asegúrese de que está conectado el cable (es un color diferente que los otros) en la esquina de la Raspberry Pi y la parte superior de tu pastel de Pi.
  • El diagrama proporcionado es sólo un ejemplo de cómo conectar el sensor. Hay muchas maneras para conectar sensores y extensiones, así que trate de lo que funciona mejor para usted!
  • Algunos placas de prototipos tamaño completo (usados en los diagramas a continuación) tienen una linea de alimntación que se separa en el medio. Si este es el caso, asegúrese de que sus sensores están conectados en la misma mitad de la placa como tu pastel de Pi.

Use el siguiente diagrama para conectar un LED a su frambuesa Pi y ajustar su brillo mediante PWM.

Paso 1

Conecte uno de los pines PWM de la PCA9685 a lo LED, a través de un resistor conectado al cable (positivo) más. En este caso, utilizaremos canal 0 en el PCA9685.
Luminosity

Paso 2

Conecte tierra del canal 0 de la PCA9685 de los LEDs más corto (negativo).
Luminosity

Paso 3

¡Listo! Ahora puede Agregar el actuador de luminosidad a su panel de control, utilizando el canal 0 en el PCA9685 para ajustar el brillo de los LEDs.

TMP36

TMP36

Antes de comenzar,para poder utilizar un sensor análogo del tipo  TMP36  con la RP Pi tenemos que utilizar un convertidor de analógico a Digital. Para este ejemplo utilizaremos el MCP3008 para esta tarea. Este tutorial asume que usted ya tiene el MCP3008 conectado.

Use el siguiente diagrama para conectar un sensor de temperatura de analógico TMP36.

 

Paso 1

Conecte la energía eléctrica desde el  Pi al TMP36 pin 1 (+ VS).
TMP36

Paso 2

Conectar la tierra de la Pi al TMP36 pin 3 (GND).
TMP36

Paso 3

Conectar la clavija de TMP36 2 (VOUT) en uno de los 8 canales de la MCP3008. Para este ejemplo, CH0.
TMP36

Paso 4

¡Listo! Ahora puede añadir el sensor TMP36 al tablero de Cayenne, usando canal de la MCP3008  para leer el valor del sensor.

 

MCP3004

MCP3004

El  MCP3004  es  un conversor A/D de canales de 10 bits de resolución

Use el siguiente diagrama para conectar su Convertidor A/D de MCP3004 con interfaz en serie SPI.

Paso 1

Desde el pastel de Pi para alimentar el pin MCP3004 14 (VDD) y 13 (VREF).
MCP3004

Paso 2

Conectar la tierra de la Pi al MCP3004 pin 7 (DGND) y 12 (AGND).
MCP3004

Paso 3

Conectar patillas SCLK de la Pi y el MCP3004 11 (CLK).
MCP3004

Paso 4

Conectar patillas MISO de la  Pi y el MCP3004 10 (DUDA).
MCP3004

Paso 5

Conectar patillas MOSI de la Pi y el MCP3004 9 (DIN).
MCP3004

Paso 6

Conecte la clavija de la entrada de la selección de chip MCP3004 8 (CS/SHDN) a uno de los pines del chip select Pi, CE0 en este ejemplo
MCP3004

Paso 7

¡Listo! Ahora puede Agregar el convertidor de MCP3004 a tu panel de control usando el chip-select 0.

MCP3204

MCP3204

Use el siguiente diagrama para conectar su Convertidor de A/D MCP3204 con interfaz en serie SPI.

Paso 1

Desde  Pi puede alimentar el pin MCP3204 14 (VDD) y 13 (VREF).
MCP3204

Paso 2

Conectar la tierra del  Pi al MCP3204 pin 7 (DGND) y 12 (AGND).
MCP3204

Paso 3

Conectar patillas SCLK del Pi y la MCP3204 11 (CLK).
MCP3204

Paso 4

Conectar patillas MISO del Pi y la MCP3204 10 (MOSI).
MCP3204

Paso 5

Conectar patillas MOSI del Pi y la MCP3204 9 (DIN).
MCP3204

Paso 6

Conecte la clavija de la entrada de la selección de chip MCP3204 8 (CS/SHDN) a uno de los pines del chip select del Pi , CE0 en este ejemplo.
MCP3204

Paso 7

¡Listo! Ahora puede Agregar el convertidor MCP3204 a su panel de control usando el chip-select 0.

MCP3208

MCP3208

El  MCP3008  es  un conversor A/D de 8 canales de 10 bits de resolución

Use el siguiente diagrama para conectar su Convertidor A/D de MCP3208 con interfaz en serie SPI.

 

Paso 1

Desde el  Pi alimentar el pin MCP3208 16 (VDD) y 15 (VREF).
MCP3208

Paso 2

Conectar la tierra del pastel de Pi al MCP3208 pin 9 (DGND) y 14 (AGND).
MCP3208

Paso 3

Conectar patillas SCLK del  Pi y el MCP3208 13 (CLK).
MCP3208

Paso 4

Conectar patillas MISO del  Pi y el MCP3208 12 (MOSI).
MCP3208

Paso 5

Conectar patillas MOSI del Pi y el MCP3208 11 (DIN).
MCP3208

Paso 6

Conecte la clavija de entrada MCP3208 chip select (CS/SHDN) de 10 a uno de los pines del chip select del Pi , CE0 en este ejemplo.
MCP3208

Paso 7

¡Listo! Ahora puede Agregar el convertidor de MCP3208 a su panel de control usando el chip-select 0.

MCP3008

MCP3008

El  MCP3008  es  un conversor A/D de 8 canales de 10 bits de resolución  de bajo coste (6€)

Use el siguiente diagrama para conectar su convertidor A/D de MCP3008 con interfaz en serie SPI.

Paso 1

Desde el Pi alimentar el pin MCP3008 16 (VDD) y 15 (VREF).
MCP3008

Paso 2

Conectar la tierra del Pi al MCP3008 pin 9 (DGND) y 14 (AGND).
MCP3008

Paso 3

Conectar patillas SCLK del Pi y el MCP3008 13 (CLK).
MCP3008

Paso 4

Conectar patillas MISO del  Pi y el MCP3008 12 (MOSI).
MCP3008

Paso 5

Conectar patillas MOSI del  Pi y el MCP3008 11 (DIN).
MCP3008

Paso 6

Conecte la clavija de entrada MCP3008 chip select (CS/SHDN) de 10 a uno de los pines del chip select Pi Zapatero, CE0 en este ejemplo.
MCP3008

Paso 7

¡Listo! Ahora puede Agregar el convertidor de MCP3008 a su panel de control, usando el chip-select 0.

ADS1115

ADS1115

El  ADS1115 es un convertidor A/D de alta resolucion de 16 bits de 4 canales de un coste muy contenido (unos 4,25€).

El ADS1115 le permite seleccionar esclavo diferentes direcciones para el convertidor. Para este ejemplo usaremos 0x48.

Use el siguiente diagrama para conectar su convertidor A/D de ADS1115.

 

Paso 1

Desde el Pi para alimentar el ADS1115.
ADS1115

Paso 2

Conectar la tierra del  Pi a la ADS1115.
ADS1115

Paso 3

Conecte los pines SCL de la ADS1115   a la  Pi.
ADS1115

Paso 4

Conecte las clavijas SDA de la ADS1115 de  la Pi.
ADS1115

Paso 5

Conecte los pines GND y ADDR en la ADS1115. Esto resultará en una dirección de I2C del 0x48.
ADS1115

Paso 6

¡Listo! Ahora puede Agregar el convertidor de ADS1115 en el tablero de Cayenne, con dirección por defecto de 0x48.

ADS1015

ADS1015

Hablamos del ADS1015  un conversor  A/D de 12 bits  de 5 canales .El ADS1015 le permite seleccionar esclavo diferentes direcciones para el convertidor. Para este ejemplo usaremos 0x48.

Use el siguiente diagrama para conectar su convertidor A/D de ADS1015.

 

Paso 1

Desde el pastel de Pi para alimentar el ADS1015.
ADS1015

Paso 2

Conectar la tierra del  Pi a la ADS1015.
ADS1015

Paso 3

Conecte los pines SCL de la ADS1015 a la Pi.
ADS1015

Paso 4

Conecte las clavijas SDA de la ADS1015 a la  Pi.
ADS1015

Paso 5

Conecte los pines GND y ADDR en la ADS1015. Esto resultará en una dirección de I2C del 0x48.
ADS1015

¡Listo! Ahora puede Agregar el convertidor de ADS1015 en el panel de Cayenne, con dirección por defecto de 0x48.

 

MCP23018

MCP23018

El MCP23018 es un convesor A/D de 12bits de 4 canales  de alta precisión .Use el siguiente diagrama para conectar su MCP23018 IO expansor.

Paso 1

Alimentar 5V desde el zapatero de Pi a VDD (pin 11) en el MCP23018.
MCP23018

Paso 2

Conectarse tierra del Pi el VSS (pin 1) en el MCP23018.
MCP23018

Paso 3

Conectar los pines SCL de la MCP23018 (pin 12)  de su Pi.
MCP23018

Paso 4

Conecte las clavijas SDA de la MCP23018 (pin 13)  a la  Pi.
MCP23018

Paso 5

Alimentar el reset (pin 16) en el MCP23018. Tira de alta Reset es necesario para el funcionamiento normal.
MCP23018

Paso 6

Conectar toma de tierra al pin de dirección (pin 15) en el MCP23018. Esto le dará el expansor de una dirección predeterminada de 0 x 20.
MCP23018

Paso 7

¡Listo! Ahora puede Agregar el MCP23018 en el panel de Cayenne, con dirección por defecto de 0 x 20.

No se preocupe  hay muchos mas posibilidades  que hablaremos en proximos post