Lectura del medidor de inicio

En un artículo anterior , hablé sobre cómo tomé lecturas de medidores de agua. Han pasado varios años desde entonces. El dispositivo continúa funcionando y durante todo este tiempo no lo toqué. Pero no me pareció suficiente, porque Había otros dispositivos en la casa de los cuales era necesario tomar lecturas. Quiero hablar sobre esto


Medidor de electricidad


Cada apartamento tiene un medidor de electricidad y sus lecturas también deben entregarse a tiempo. Tuvimos el mismo problema con esto que con los medidores de agua: recordamos constantemente sobre él cuando estábamos bastante lejos. Era necesario resolver de alguna manera este problema. Aquí hay un contador que he instalado en el escudo en el rellano.



Cada contador indica el número de pulsos que realiza en 1kW * h. Tengo un viejo medidor de electricidad instalado y no tiene conclusiones especiales para contar estos pulsos. Pero tiene un LED que parpadea al ritmo de estos pulsos. Por lo tanto, debemos determinar de alguna manera que el LED parpadeó. Para esto, decidí usar un fototransistor, que cambia su resistencia dependiendo de su iluminación. Para reaccionar solo al LED, el fototransistor se instaló en un fragmento de un bloque cuadrado de madera y se pegó con cinta adhesiva al mostrador. Al final resultó que, se puede ver en la foto de abajo.



Incluso durante la reparación en el departamento, en el escudo general, instalé un zócalo y sostuve un par trenzado dentro del escudo del apartamento con un voltaje bajo. Instalé el dispositivo en este escudo (también tiene una toma de corriente) y a través de la placa base conecté el fototransistor a mi dispositivo. Y de esta forma, todo ha estado funcionando durante más de seis meses.


Sensor de fugas de agua


Como muestra, tomé un sensor de fugas GIDROLOCK WSP convencional. Su principio de funcionamiento es similar al de un fototransistor, solo que cambia su resistencia al agua que ingresa.


Revisión de la junta


Modifiqué un poco el viejo tablero. Ahora el circuito es el siguiente



Se han realizado los siguientes cambios:


  1. El chip CP2102 se agrega al circuito para que pueda conectarse directamente a la placa sin adaptadores
  2. El número de salidas se ha incrementado a 4 (M1, M2, M3, M4), lo que le permite conectar simultáneamente un mayor número de contadores
  3. Se agregaron resistencias auxiliares (R1..R8), lo que permitió configurar las salidas según sea necesario

Ahora cada salida se puede configurar para:


  • conectar LED
  • botones de conexión
  • conexión de contadores (sensores)

Cuando se usa un fototransistor y un sensor de fugas, su resistencia mínima puede no ser suficiente para que el voltaje caiga al nivel de cero lógico. Para hacer esto, se agregó un divisor de voltaje a cada terminal.



Usemos el sensor de fugas como ejemplo para calcular el divisor de voltaje. Supongamos que un sensor está conectado al pin M1. Tiene resistencias auxiliares R1 y R2. Tensión de alimentación (U) ESP 3.3V. La resistencia del sensor de fugas (Rd) cuando entra agua se convierte en 10kOhm. Necesitamos asegurarnos de que el voltaje U2estaba por debajo del voltaje cero lógico. Para ESP es 0.8V, tome 0.6V. R1no necesitamos, respectivamente, tomamos igual a 0. La fórmula para calcular el voltaje U2:


U2=U fracRdR2+Rd


Destacar R2:


R2=Rd fracUU2U2


donde RdEs la resistencia del sensor


Sustituir los valores conocidos en la fórmula.


R2=10000 cdot frac3.30.60.6=45000Ohm


, redondea al más grande más cercano y obtén 47kOhm.
Para un fototransistor, el cálculo es similar, solo Rd es igual a la resistencia del fototransistor cuando se ilumina con un LED.


Firmware


Como antes, el firmware se ensambló utilizando el constructor en línea . El antiguo script fue modificado para 2 modos de operación: tomar lecturas de medidores de agua y tomar lecturas de un medidor eléctrico. En consecuencia, hay 2 ventanas de configuración:



Si lo desea, puede combinar todo y agregar algo propio. Al depurar, conecté simultáneamente 2 medidores de agua, un sensor de fugas y un LED.
En el modo de tomar lecturas de medidores de agua, los datos se transmiten cada 60 segundos, siempre que haya habido cambios en las lecturas. En el modo de lectura del medidor, los datos se transmiten cada 20 segundos sin ninguna condición. Los datos aún se transmiten a thingspeak.com
Porque en el nuevo esquema no hay un botón para ingresar al modo de configuración, se decidió al inicio cambiar el dispositivo al modo de configuración durante 60 segundos. Si dentro de 60 segundos no hay nadie conectado al dispositivo, entonces comenzamos el modo de lectura. Si alguien se conecta, salga del modo de configuración guardando datos en la página o reiniciando el dispositivo.


Revisión de solicitud


Las lecturas del medidor de electricidad debían transferirse a un canal separado, por lo que en la nueva versión de la aplicación agregué la capacidad de agregar varios canales. Todos los datos se almacenan en una base de datos SQL local para que pueda crear gráficos de manera fácil y rápida. Porque Envié datos en el medidor de electricidad cada 20 segundos, lo que afectó la cantidad de datos y, en consecuencia, la velocidad de su recepción. A modo de comparación, durante todo el tiempo de tomar lecturas en medidores de agua, se acumularon aproximadamente 72,000 registros, y en el medidor de electricidad en aproximadamente 7 meses, aproximadamente 2.6 millones. Después de optimizar las consultas a la base de datos, logramos aumentar la velocidad de muestreo en varios miles de veces (no esperaba tal crecimiento).
En la nueva versión se agregaron:


  1. widget de medidor de electricidad
  2. gráficos lineales
  3. la capacidad de compartir un widget o gráfico con otras personas
  4. la capacidad de trabajar con múltiples canales
  5. optimización de velocidad

Total


Después de todas las mejoras, puedo obtener la siguiente información:


  1. lectura de contador actual
  2. consumo actual
  3. Información sobre el consumo y el consumo de electricidad durante un determinado período de tiempo.

Por supuesto, la pregunta plantea por qué no hice que el dispositivo sea independiente (hay varios artículos sobre este tema en el concentrador). Si hace que el dispositivo sea autónomo, entonces necesita transferir datos varias veces al día, pero quería ver los datos casi en tiempo real.
La aplicación se puede usar no solo con mi dispositivo, sino simplemente como cliente de thingspeak.com para mostrar gráficos o valores. Por el momento, la aplicación muestra maravillosamente las lecturas de los medidores de agua y electricidad, si alguien tiene otras ideas que puede agregar, escríbame en PM.


Enlaces utiles



Fotos del dispositivo

Source: https://habr.com/ru/post/es428844/


All Articles