Automatización de bricolaje para el control de la calefacción del hogar. Parte 4

Continuamos hablando sobre el sistema de control de calefacción del hogar utilizando el termostato temporizador NM8036 (comience aquí , continúe aquí y aquí ).

NM8036

Advanced Manager es un programa que se mencionó anteriormente. La unidad de control de calefacción de una casa privada es una unidad autónoma, pero con este programa es muy conveniente realizar ajustes para la unidad NM8036 y controlar su funcionamiento.

Para tener estas comodidades y no ocupar mi automóvil, busqué en el ático mi vieja computadora, que ya tiene más de 10 años, eliminé el polvo y reinstalé el sistema. Cuando se instaló el programa que necesitaba, la unidad del sistema se instaló en una esquina cerca de la unidad de control y se conectó con un cable a través del puerto COM.

Al principio, tarareaba a mi alrededor todo el día, principalmente con el monitor apagado. Lo encendí solo cuando estaba trabajando con el programa: analicé los horarios obtenidos, perfeccioné mi programa de control de calefacción para NM8036 .

Aquí y hoy intenté mostrar todas las funciones del Administrador avanzado que he descubierto hasta ahora en este video. El autor del programa, en Runet, que se hace llamar Brokly, lo presentó de forma gratuita, tal como es, sin ninguna obligación para sí mismo y con el permiso de recomendarlo a otros usuarios. Por eso me tomé la libertad de presentárselo, Maestro.



Consideremos con más detalle.

En primer lugar, preguntan qué significan los cambios de color en las lecturas de temperatura y sensores ADC (servicio de terminal). Y esto significa la dinámica de los cambios, es decir, si la temperatura aumenta durante un cierto período, las lecturas se resaltan en naranja y, cuando disminuyen, se resaltan en azul. Y nadie lo resalta si el programa no detecta una tendencia a cambiar.



Los gourmets tienen una pista sobre cómo cambiar los parámetros de sensibilidad de estas mediciones. Hay un archivo de configuración de names.ini en el directorio del programa, muchas cosas están escritas en este archivo. Aquí, por ejemplo, tengo el principio del contenido de este archivo:

[PUERTO]
Nombre = COM1
IP = 127.0.0.1
PUERTO = 9999
[RELOAD]
VERS = Versión 1.95
LAST_RELOAD = 01/01/2001 1:01:01
[LOG]
Dirrectory = C: \ Archivos de programa \ NM_BM8036 \ Ot Brokly
Ye = 1
STATE_ON = 1
CheckLoads0 = 1
CheckLoads1 = 1
CheckLoads2 = 1
CheckLoads3 = 1
CheckLoads4 = 0
CheckLoads5 = 0
...

Las líneas enmarcadas entre corchetes son los nombres de las secciones. Todo debajo de los nombres son los nombres de las variables y sus valores. En el ejemplo que se muestra, hay tres secciones: [PUERTO], [RELOAD] y [LOG]. Hay tres variables en la sección [PUERTO]: Nombre, al que se le asigna el valor COM1, IP con el valor 127.0.0.1 y PUERTO, que contiene el número 9999.

No entraremos en más detalles, pasaremos a los detalles. Entonces, para cambiar la configuración de sensibilidad para determinar los cambios de color, hay una sección [MOSTRAR] en este archivo. Los siguientes parámetros se prescriben en esta sección:

'DCalm': retraso para restablecer el atributo de color del termómetro, predeterminado: 5;
'DSens': sensibilidad del atributo de color del termómetro, predeterminado: 500;
'ACalm': retraso para restablecer el atributo de color en la entrada analógica, predeterminado: 5;
'ASens' - sensibilidad del atributo de color en la entrada analógica, por defecto: 100;

Al cambiar estos parámetros, puede lograr cambios en la configuración de color de los sensores a su gusto, ya que le parece lo más correcto. Pero personalmente, no lo cambié, todo me conviene. Por cierto, si en el tuyo, Maestro, no hay tal sección en el archivo de inicio, pero si quieres jugar, debes crearla. Es simple: al principio o al final del archivo, escríbalo así:
[MOSTRAR]
DCalm = 5
DSens = 500
ACalm = 5
ASens = 100

Y comenzamos a jugar, en el sentido, cambiar los valores de las variables después del signo igual. Al mismo tiempo, observamos los cambios de color de los sensores.

Ahora pasaremos del servicio Terminal al servicio de Análisis Gráfico. En la parte inferior, aquí puede seleccionar el estilo del gráfico: Promedio, Máximos, Mínimos, Rango. ¿Qué significa todo esto?

El hecho es que cada punto en el gráfico corresponde a un cierto período de tiempo específico, por ejemplo, 1 minuto. Durante este minuto, el programa escribió 20 valores en el archivo de registro (la grabación se realiza de acuerdo con la configuración cada 3 segundos). ¿Cuál de estos 20 valores tomar para mostrar en el gráfico? Esto es lo que decides por la elección del estilo.

Si elige Promedio, el programa calculará el valor promedio de estos 20. Mínimos, máximos: también está claro, se mostrará el valor mínimo o máximo. En la figura, un gráfico con el estilo Mínimo seleccionado.



¿Y el rango? Y cuando selecciona Rango, se mostrará una línea vertical en lugar de este punto, desde el valor mínimo al máximo. Todo esto se puede entender jugando con la elección del estilo.

La configuración para dibujar gráficos también está disponible en el archivo de configuración de names.ini. Hay una sección [Gráfico] para estos ajustes. Hay muchas cosas, detente en otras más interesantes.



'GraphLineSize': el grosor de la línea del gráfico en píxeles. Si este valor = 1, la línea del gráfico será delgada, 1 píxel.



Puede asignar una línea más gruesa, hasta los feos 3-4 píxeles o más.



'LoadsLineSize': el coeficiente de aumento de la visualización del gráfico de carga. Por defecto, este es 1, y el gráfico de carga se parece al de la izquierda.



Y aquí el factor de aumento se establece en 3. A cualquiera le gusta.



'ShowMinMax': visualización de mínimos y máximos de valores en una leyenda. El valor predeterminado es 0 (no mostrar).



Si pone 1, se mostrarán los valores mínimo y máximo dentro del tiempo del gráfico. Por cierto, la leyenda se muestra u oculta haciendo clic derecho en cualquier parte del gráfico.



En la misma sección, puede especificar la configuración de visualización para el diseño ordenado del gráfico. Para esto, se aceptan las siguientes variables:
'Ord_XXX': asigna una línea con una temperatura determinada;
'OrdLineSize_XXX': grosor de la línea de ordenadas seleccionada en el gráfico;
'OrdLineStyle_XXX' - estilo de la línea ordenada seleccionada en el gráfico;
'OrdLineColor_XXX': color de la línea de ordenadas seleccionada en el gráfico;
'OrdLineName_XXX': nombre de la línea de ordenadas seleccionada en el gráfico.

Por ejemplo, registré las siguientes variables en la sección [Gráfico]:
Ord_005 = 40 (número asignado 005 para la línea de 40 grados);
OrdLineSize_005 = 2 (asignado un grosor de línea de 40 grados);
OrdLineStyle_005 = 2 (asignado un ancho de trazo de 2 píxeles al estilo);
OrdLineColor_005 = 65025 (color de línea asignado, verde);
OrdLineName_005 = Reg (Nombre de la línea)
Como resultado, durante 40 grados (la temperatura límite para las entradas de registro) recibí un marcado verde con el nombre Reg.



El color se forma de la siguiente manera:
(azul (0..255) * 65536) + (verde (0..255) * 256) + rojo (0..255)

Por ejemplo, azul puro = 255 * 65536 + 0 * 256 + 0 = 16711680
gris 128 * 65536 + 128 * 256 + 128 = 8421504

Y algunos secretos más. Si hace clic con el botón derecho en un área determinada del gráfico y espera el recuento, se mostrará un nuevo gráfico con el período de tiempo y los límites de los valores seleccionados con el mouse. Sin embargo, aquí, aparentemente, tengo algún tipo de error en el código del programa, porque la pieza seleccionada no se corresponde con la dada.

Si presiona el botón izquierdo en la línea, obtenemos los valores instantáneos del punto especificado en el gráfico. Si hace clic derecho, puede habilitar o deshabilitar la leyenda (aunque, como ya dije).

Si se incluyen elementos adicionales en el nombre del archivo de registro (el servicio Service Logs) al instalar los daws correspondientes, no se generará un archivo enorme y con el que sea difícil trabajar no solo para la persona, sino también para el programa, sino para diferentes archivos. Según las casillas de verificación que tengo, se forma un nuevo archivo todos los días.



Una cosa es mala, inconveniente: en la pestaña Análisis gráfico, puede seleccionar los archivos de registro analizados para mostrar el gráfico. Si no elimina manualmente las grajillas de los archivos obsoletos a tiempo, el programa, aparentemente, los contará cada medio minuto de todos modos, y esto lleva tiempo, los recursos se gastan.



Mientras tanto, si la casilla de verificación Reparar rango ... está seleccionada, sería bueno que los archivos innecesarios en la lista se eliminen automáticamente.

Sin embargo, esto es un poco, pero en general, mi opinión sobre el programa Advanced Manager se ha desarrollado de manera bastante positiva.

Y hay un chip más, que el autor puso en el programa. Es cierto que esto ya es para usuarios avanzados que pueden hacer macros en el sistema. Esto es soporte para archivos de semáforos. Semáforo: un archivo con la extensión SEM, de cualquier tamaño y contenido, que aparece en la carpeta de trabajo del programa y lleva un comando al programa de trabajo en su nombre.

Cada segundo, el programa verifica la presencia de dichos archivos en su directorio. Si se encuentra un semáforo en el directorio, el programa lo elimina inmediatamente y ejecuta el comando asignado por el semáforo. Hoy, solo conozco dos semáforos:
restart.sem - reinicia el programa
recalc.sem - vuelve a contar y cambia el tamaño de la ventana del gráfico.

El final sigue ...

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


All Articles