[Aporte] Medidor de CO2 conectado a Internet

Saludos.
Comparto con ustedes este código fuente con el que es posible fabricarse un medidor de CO2 conectado a ThingSpeak.
De esta forma podemos ver los valores en un gráfico e incluso verlos desde el móvil.
conexiones co2led.jpg
Comprensión.jpg
Espero que os guste. Un saludo.
 

Adjuntos

  • CO2-Wifi-Sensor-master.zip
    18.3 KB · Visitas: 9
Hoy están proyectando utilizar medidores de CO2 en las aulas de las escuelas , si aumenta mucho , a ventilar . . .
 
¿Por que no usar el GND del WS2812?
No encontré referencias en los datasheets, de dicho modulo LED, de que sea capaz de recuperar alimentación proveniente por el cable de datos (uso de dos cables para datos y alimentación). Aunque generalmente, en ese tipo de transmisión, suele ir GND y datos, se recupera el positivo.

Puedo conjeturar tres cosas:

1. No va a andar, quizá es un error deliberado para ver si le copiaron el esquema.
2. "Anda" de milagro. (osea que "anda" pero lo va a hacer probablemente erráticamente).
3. Se usa la tierra de una maceta y por eso no hace falta conectarla :LOL:
 
Además, de que entre el diagrama y, la foto del artilugio; no corresponde...uno tiene un LED y, en contraparte un OLED. Ojala nuestro compañero @provotector nos aclare un poco como va la cosa.
 
Última edición:
Encontré el manual de instrucciones el cual puede ayudarnos un poco... lo adjunto, además encontré el video de funcionamiento...

Según el comentario del canal de Youtube, el LED que ustedes tienen duda, menciona esto:
"Es un tipo especial de LED RGB direccionable. Cada LED lleva un circuito integrado y se comunica con la PCB por el propio pin de alimentación."

Supongo que será LED i2c

1612535311669.png

Aquí el video
Código:
https://www.youtube.com/watch?v=x2a2iRNfipQ


 

Adjuntos

  • instrucciones_co2_led.pdf
    246.6 KB · Visitas: 2
Última edición:
Según el comentario del canal de Youtube, el LED que ustedes tienen duda, menciona esto:
"Es un tipo especial de LED RGB direccionable. Cada LED lleva un circuito integrado y se comunica con la PCB por el propio pin de alimentación."

Estaría bueno una explicación mas detallada sobre eso, ya que según el manual de datos de ese LED jamas menciona que se puede usar con 2 pines.

La comunicación no es I2C, eso necesitara 4 pines, dos de datos y dos de alimentación. No creo que el protocolo I2C admita la transmisión sola de alimentación con la recuperación de datos (Si... me di cuenta que antes lo dije al revés), incluso si eso fuera posible, necesitaría 3 cables datos, reloj y tierra.

Esos LED funcionan mas bien como la codificación de los mandos infrarrojos. Es asincrónica y la diferencia entre el dato 0 y el 1 es el ancho de la señal.

En la transmisión de datos por el cable de alimentación normalmente se envía la tierra y se embebe los datos sobre la linea de alimentación positiva. Se puede hacer lo mismo al revés pero es muy raro verlo, al menos jamás lo he visto echo de esa forma.

Incluso para que eso sea posible tiene que haber un circuito que separe los datos de la alimentación y en las hojas de datos jamas se menciona eso y no lo veo en la placa.

No digo que no funcione, solo que, de funcionar, es porque el circuito interno esta siendo usado de una forma no prevista por el fabricante y eso puede generar muchísimas inestabilidades.

Estaría bueno un poco mas de "luz" sobre el circuito para saber como es que realmente funciona y así aprender.
 
Pues puedes consultarle en su canal de Youtube, donde gustosamente podrían responderte...
Y pues este proyecto es Free según el sitio web que lo tiene a la venta, y no, no hay más información al respecto del hardware que ellos venden
 
Pues puedes consultarle en su canal de Youtube, donde gustosamente podrían responderte...

Siendo que el titulo dice "aporte" no veo el porque de preguntar en otro lado (ya sea youtube o a la casa que vende esto). Se supone que el que hace el aporte sabe como funciona el circuito.

Yo solo hago las preguntas para que el que lo arme y se este volviendo loco pueda encontrar un poco de información.
 
¿Y tu lo harias?
Yo tengo un NodeMCU y podría implementarlo y ver si funciona, el LED que ellos hacen referencia, no lo he encontrado... Pero te respondí por tu comentario #5 por tus conjeturas... Y la información que yo encontré lo pongo como complemento del aporte.
 
Esta bueno que se agregue información. En lo personal yo no lo haría, me parece una implementación inútil (mas bien exageradamente complicada para lo que hace).

Con un simple microcontrolador, un par de LEDs y un buzzer se obtiene lo mismo. Incluso ni siquiera hace falta un microcontrolador, con un circuito analógico y extremadamente mucho mas barato se puede obtener resultados similares.

Se supone que mas que presentar un numero y colores bonitos debería funcionar como alarma.

Obvio que hay aplicaciones donde puede llegar a ser útil, por ejemplo en lugares muy alejados y donde no hay nadie cerca. Pero, aun en ese caso, el LED o el display salen sobrando.

Igual no cuestiono eso, hay cientos de heladeras, por ejemplo, que se conectan a internet para que sea mas bonito pero de poca utilidad practica (en mi punto de vista). Mi problema es que si esa conexión es un error se esta ayudando a propagarlo y si no es un error me interesa saber como es que anda.
 
Incluso en el manual del Neopixel, osea el "verdadero" y no los clones chinos dice esto:

Pagina 37: "and – (minus or GND) on the strip must connect to both the minus (–) terminal on the DC supply and a GND pin on the
Arduino (there are usually several — any will do)."

Pagina 40: "Avoid connecting NeoPixels to a live circuit. If you simply must, always connect ground first, then +5V, then data.
Disconnect in the reverse order"

Que básicamente viene a decir: GND debe estar conectado y que si se va a conectar el Neopixel a una fuente encendida primero hay que conectar el pin GND luego los demás para no dañarlo.

En ningún lado, a menos que se me haya escapado dice que se puede usar con 2 cables.

Lo peor de todo es que no es un pin de datos, puntos de GND hay millones ahí, no tiene ningún sentido eliminarlo, no se esta ganando nada. ¿Tal vez 4 cm de cable sea demasiado gasto ?

Y aun mas triste es que buscando: "LED WS2812B two wires" no aparece nada salvo esta pagina: Usando 2 cables

Que es una modificación agregando un diodo y un capacitor (Osea recuperando datos embebidos en la linea de alimentación, pero se agrega componente porque el LED no lo soporta) y usa VCC y GND. :LOL:
 
Wow, tan abusiva su respuesta? Con razón no venden nada...

Entendí estos párrafos y los he traducido a español, veamos:

Además, es posible tener un "componente de dos conductores" que se parece un poco a su LED estándar de 5 mm, pero que puede iluminar casi cualquier color, a pedido. Es trivial extenderlo a un componente de 2 derivaciones con un número arbitrario de caras. Esto se puede hacer usando WS2812B discretos, o la tira de LED comúnmente disponible.

Otra ventaja es la capacidad de "apagar" fácilmente la tira / matriz cuando no está en uso. Los LED consumen ~ 0.5 a 1mA de corriente de reposo cada uno, en condiciones normales (corriente más baja en el voltaje rectificado más bajo)

Un diodo del pin de datos (lo llamo 5D normalmente, ya que combina efectivamente +v y datos) realiza la rectificación en la matriz de LED. Un diodo SOD123 como el 1N4148 encaja a la perfección en la parte posterior del WS2812B






Entonces el Data es como el +Vcc según entiendo y si, tienen un Circuito Integrado...

1612812621697.png

Aquí el video:


La tira LED WS2812B es distinta de otras tiras LED debido a que permite variar el color de cada LED de forma individual (a diferencia de las tiras RGB convencionales en las que todos los LED cambian de color de forma simultánea). Esto debido a que cada LED posee un integrado que permite acceder a cada pixel de forma individual. Por esta razón este tipo de LED se le llama “individual addressable”. Esta tira está basada en el LED 5050 (de un tamaño de 5.0 x 5.0 mm) y es un LED de bajo consumo y alto brillo, que incorpora en un único encapsulado los 3 colores RGB.

Características generales

  • 60 LEDs por metro
  • Cubierta removible IP65 a prueba de agua (no sumergible, solo salpicaduras)
  • Máximo 5V a 60mA por cada 0.65" de segmento (todos los LEDs en su brillo máximo)
  • 5VCD requeridos (no exceder 6VCD) - Sin protección de polaridad
  • Cada LED puede ser controlable de forma independiente
  • Longitud de onda de los LED: 630nm/530nm/475nm
También puedes crear proyectos como pantallas LED con esta útil tira LED.
 
Wow, tan abusiva su respuesta? Con razón no venden nada...

Es que, de todas formas, suena a comercial este post. (Ojala no sea así y no termine siendo como plaquetodo: Si no te anda es porque no nos compraste las cosas a nosotros y/o lo armaste mal).

Estaría bueno que si alguien lo prueba, al menos diga si el software anda, que es lo ultimo que faltaría para coronarlo con una frutilla :LOL:.

Entendí estos párrafos y los he traducido a español, veamos:

Además, es posible tener un "componente de dos conductores" que se parece un poco a su LED estándar de 5 mm, pero que puede iluminar casi cualquier color, a pedido. Es trivial extenderlo a un componente de 2 derivaciones con un número arbitrario de caras. Esto se puede hacer usando WS2812B discretos, o la tira de LED comúnmente disponible.

Otra ventaja es la capacidad de "apagar" fácilmente la tira / matriz cuando no está en uso. Los LED consumen ~ 0.5 a 1mA de corriente de reposo cada uno, en condiciones normales (corriente más baja en el voltaje rectificado más bajo)

Un diodo del pin de datos (lo llamo 5D normalmente, ya que combina efectivamente +v y datos) realiza la rectificación en la matriz de LED. Un diodo SOD123 como el 1N4148 encaja a la perfección en la parte posterior del WS2812B

Entonces el Data es como el +Vcc según entiendo y si, tienen un Circuito Integrado...


El circuito al que se refieren es algo así:
circuito.png
Pero, como se ve, el negativo tiene que estar conectado si o si. Luego la velocidad de datos depende mucho del capacitor usado, si la linea de alimentación esta mucho tiempo en bajo, el capacitor se descargará a un nivel que hará que el chip interno se resetee.
 
Atrás
Arriba