Acho que todas as pessoas modernas pelo menos uma vez se perguntaram: quanto você pode pagar por essas contas de resíduos de um apartamento comum ?! Aqui estou eu - sem exceção. Luz, gás, aquecimento, água, aluguel, elevador, remoção de resíduos sólidos, etc. etc.
Um dos motivos (longe do último) ao criar o aplicativo BARY foi a capacidade de coletar estatísticas, analisar e reduzir o consumo de energia. A Europa há muito tempo entrou em um regime de economia total, acho que esse destino não vai nos ultrapassar. Portanto, definitivamente não será supérfluo se preparar para isso com antecedência.
Proponho considerar como isso resultou na otimização dos custos de energia, juntamente com o BARY: Smart Home.
Introdução: ar condicionado e piso aquecido
A primeira otimização dos custos de energia foi ordenada no uso de piso radiante e ar condicionado. Mesmo sem uma análise detalhada, ficou claro que eles consomem muito.
Hoje, apenas os preguiçosos não escreveram sobre a prevenção de infecções virais. Mas, no entanto, a repetição é a mãe da aprendizagem. A chave para um clima antiviral saudável em um apartamento é uma temperatura de 18 a 24 ° C, uma umidade de 40 a 60%, bem como ventilação regular.
Meu ar condicionado praticamente não desligou no verão. No inverno, o mesmo acontecia com o piso radiante. Durante a ausência dos proprietários na casa, o ar condicionado era desligado apenas ocasionalmente (eu não queria voltar para o quarto abafado), e o chão quente nunca. As contas para tudo isso eram simplesmente cósmicas, e a temperatura estava longe de ser ideal. De alguma forma, era impossível desligar tudo manualmente antes de sair: não havia tempo; era simplesmente esquecido.
A maioria dos aparelhos de ar condicionado domésticos não possui sensores remotos de temperatura do ar (eu só tenho um), ou seja, eles não fornecem com precisão um determinado regime de temperatura. Mas eles podem ser ativados por qualquer sensor externo quando o limite superior de temperatura é atingido e desligado - quando o inferior é atingido. Esta foi a minha primeira automação.
De fato, é assim: o limite inferior é definido em 24,0 ° C e o limite superior é de 24,5 ° C. Assim que a temperatura no apartamento subir acima de 24,5 ° C, o ar condicionado liga e funciona até que a temperatura desça abaixo de 24,0 ° C. Para impedir que o ar condicionado ligue e desligue a cada minuto, é definida uma condição para o tempo mínimo de trabalho e descanso. Eu tenho isso por 10 minutos. Eu selecionei o significado empiricamente. Na prática, no entanto, a temperatura estava sempre dentro da faixa especificada.
Em BARY fica assim:
Fig. A regra para ligar o ar condicionado
, acho que vale a pena discutir mais detalhadamente o que a regra mostrada no exemplo faz:
- A condição do ar condicionado não mudou nos últimos 10 minutos;
- O modo de segurança está desativado;
- O ar condicionado está desligado;
- O modo de suspensão está desativado (uma regra diferente é usada no modo noturno);
- , ( , . , );
- ( , .. , );
- ( , ).
Desde aquele momento, o consumo de eletricidade pelo ar condicionado diminuiu várias vezes. Para que o ar condicionado não fique ocioso quando os proprietários estavam ausentes, um botão virtual foi criado em BARY, cujo status estava presente na automação do ar condicionado ("Segurança" do exemplo acima). O mesmo botão virtual foi para o modo noturno ("Suspensão" do exemplo acima), que também foi levado em consideração em uma regra de automação separada e ligou o ar condicionado no modo mais silencioso. Inicialmente, esses botões precisavam ser ativados manualmente.
A solução para automação foi encontrada na forma do ecossistema da Apple. Um pacote de meus dispositivos com o Homekit foi implementado e uma Apple TV foi comprada. Com sua ajuda, você pode implementar o trabalho de regras de automação no Homekit (você também pode usar um iPad, mas eu não tinha um naquele momento). No próprio Homekit, as regras são criadas: a última pessoa sai de casa; a primeira pessoa chega em casa. Os botões virtuais em BARY foram anexados a essas regras.
FIG. Regras para armar / desarmar automaticamente
No começo, eu mantinha as estatísticas, que exibiam o número de minutos trabalhados pelo ar condicionado por hora. Infelizmente, agora as estatísticas já foram perdidas, mas o tempo de operação do ar condicionado foi reduzido em quase ⅔ do valor original.
Identificação dos principais consumidores de eletricidade
Principais métodos de análise do consumidor
Para começar a otimizar custos, é necessário entender onde as folhas são utilizadas na maior parte da eletricidade.
Aqui, eu acho, pode haver diferentes abordagens:
- Usamos módulos especiais - relés. Além da função principal de ligar / desligar, eles controlam a energia consumida pelos dispositivos conectados a eles;
- Usamos medidores especiais usando transformadores de corrente;
- Medimos o consumo de eletricidade (por exemplo, usando um wattímetro) e indicamos o valor médio em BARY (esse método é completamente impreciso, mas será possível levar em consideração as leituras indicativas).
Para todos os dispositivos, exceto para o piso radiante, eu instalei: soquetes de teto da Blitzwolf, módulos nos soquetes Shelly 13h / Aqara Relay Module / Fibaro Double Switch 2. Talvez houvesse algo mais, não me lembro agora.
Para aquecimento de piso, fiz leituras com base no status do trabalho e nas taxas médias de consumo (apenas o terceiro, método não muito preciso).
Há um campo especial nas configurações do dispositivo para especificar o consumo de energia (potência do consumidor):
Fig. Configurando parâmetros de consumo de energia para o dispositivo
O consumo total de energia foi obtido no medidor de entrada usando a placa Wemos D1 e um esboço simples:
O código fonte deste esboço
#include <Wire.h>
#include <EEPROM.h>
#include <ESP8266HTTPClient.h>
#include <ESP8266WiFi.h>
#include <ArduinoJson.h>
#define WIFI_SSID "****"
#define WIFI_PASS "****"
#define API_URL "http://192.168.1.33/api/post-data"
volatile unsigned int state = 0;
volatile unsigned int kWh = 0;
volatile unsigned int blinked = 0;
int impulse = 3200;
int eeAddress = 0;
unsigned int lastMillis = 0;
int counter = 0;
int blinkMin = 10;
int timeout = 15000;
int PIN = D8;
void setup()
{
state = impulse;
EEPROM.begin(512);
counter = EEPROM.read(eeAddress);
EEPROM.write(eeAddress, counter + 1);
EEPROM.commit();
pinMode(PIN, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(PIN), blink, RISING);
Serial.begin(115200);
Serial.println(F(" "));
connectWiFi();
}
void connectWiFi()
{
WiFi.begin(WIFI_SSID, WIFI_PASS);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.println("WiFi: Waiting for connection");
}
Serial.println("WiFi: connected");
}
float roundEx(float value, int digits)
{
int newValue = value * pow(10, digits);
return (float) newValue / pow(10, digits);
}
void loop()
{
if (blinked >= blinkMin && millis() - lastMillis > timeout) {
float divider = (float) impulse * (millis() - lastMillis) / 1000 / 3600;
float power = blinked / divider;
float kWhFloat = kWh + (float) (impulse - state) / impulse;
Serial.print(F("sec="));
Serial.print(millis() / 1000);
Serial.print(F("; time="));
Serial.print((millis() - lastMillis) / 1000);
Serial.print(F("; blinkMin="));
Serial.print(blinked);
Serial.print(F("; state="));
Serial.print(state);
Serial.print(F("; kWh="));
Serial.print(kWhFloat, 3);
Serial.print(F("; power="));
Serial.print(power, 3);
Serial.println(F(" "));
blinked = 0;
lastMillis = millis();
if (WiFi.status() == WL_CONNECTED) {
StaticJsonBuffer<300> JSONbuffer;
JsonObject& JSONencoder = JSONbuffer.createObject();
JSONencoder["device"] = "main_counter";
JSONencoder["function"] = "counter";
JSONencoder["counter"] = counter;
JSONencoder["power"] = power;
JSONencoder["usage"] = kWhFloat;
char JSONmessageBuffer[300];
JSONencoder.prettyPrintTo(JSONmessageBuffer, sizeof(JSONmessageBuffer));
Serial.println(JSONmessageBuffer);
HTTPClient http;
http.begin(API_URL);
http.addHeader("Content-Type", "application/json");
int httpCode = http.POST(JSONmessageBuffer);
String payload = http.getString();
Serial.print(httpCode);
Serial.print(" ");
Serial.println(payload);
http.end();
} else {
connectWiFi();
}
}
}
void blink()
{
detachInterrupt(digitalPinToInterrupt(PIN));
attachInterrupt(digitalPinToInterrupt(PIN), lowInterrupt, FALLING);
state--;
if (state == 0 || state > impulse) {
kWh++;
state = impulse;
}
blinked++;
}
void lowInterrupt(){
detachInterrupt(digitalPinToInterrupt(PIN));
attachInterrupt(digitalPinToInterrupt(PIN), blink, RISING);
}
Qualquer medidor elétrico possui uma saída de pulso duplicada por um LED. Quando o LED pisca, o pulso passou. Se você conectar algum dispositivo, como um Arduino, à saída de pulso, poderá contar o número de pulsos. O esboço faz uma solicitação POST com as leituras atuais em BARY a cada 15 segundos (mas não com mais frequência do que o suficiente para capturar um número suficiente de pulsos) (não me lembro por que o próprio dispositivo entra no servidor e não vice-versa, naquele momento parecia conveniente) ... Os pulsos são lidos em interrupções e o esquema de conexão / desconexão estranho é implementado para suprimir o ressalto do contato. Não houve falsos positivos.
Identificação e análise de outros consumidores elétricos
Se um medidor principal for usado no sistema, os consumidores de eletricidade que não possuem medidores serão exibidos nas estatísticas como desconhecidos:
Fig. Estatísticas de consumo de energia pouco detalhadas
Depois de identificar os principais consumidores óbvios e jogar bastante com esboços de cervejas caseiras, percebi que havia muitos consumidores na classificação “Desconhecida”. Decidiu-se disparar artilharia pesada: o contador multicanal WB-MAP12H . Tornou possível identificar as linhas mais "vorazes" e diferenciar ainda mais o consumo de energia.
A maioria das despesas foi alocada para ar-condicionado (no verão), piso radiante (no inverno), respiro (no inverno), computador e multimídia. E sim, a chaleira, que sempre funciona tão ruidosamente e sopra, acabou sendo quase o consumidor mais comum.
As estatísticas de consumo de eletricidade por categoria em BARY podem ser visualizadas na
guia "Eventos" - "Estatísticas" . Estatísticas mais detalhadas sobre consumo de energia.
Muito conveniente: quando o consumo de qualquer uma das categorias excede a média, a categoria é destacada em vermelho. Como "Ar condicionado" na imagem acima. Pela plenitude dessa linha, pode-se julgar o valor do excesso como uma porcentagem da média.
Você também pode ver do que são compostas as estatísticas para uma categoria específica:
Fig. Estatísticas detalhadas por dispositivo
Como evitar a duplicação de dados
Se você usar um conjunto de dispositivos para analisar o consumo de eletricidade - um medidor em uma tomada + um medidor total por linha - as leituras serão duplicadas. BARY permite construir uma hierarquia pai-filho. É implementado da seguinte maneira: para os próprios dispositivos, definimos a categoria de consumo e o contador superior (consulte a figura "Configuração dos parâmetros de consumo de energia para o dispositivo").
Um contador de nível superior é necessário se um contador contar toda a linha e o segundo contar uma tomada específica. Ao visualizar as estatísticas, as leituras desta saída serão subtraídas das leituras do medidor superior e os dados não serão duplicados. Se fizermos leituras do medidor a montante e pontos específicos, parte dos custos (custos dos consumidores de eletricidade que pertencem às linhas do medidor a montante, mas não penduram nas tomadas com um contador dedicado) serão exibidos como desconhecidos nas estatísticas. (veja a fig. "Estatísticas pouco detalhadas do consumo de energia")
O assentamento em si não é limitado de forma alguma. Por exemplo, eu uso um esquema de até 4 anexos.
E agora o que eu posso fazer?
Digamos que terminamos o desconhecido, como podemos começar a economizar agora? Obviamente, cada casa inteligente terá suas próprias especificidades. Mas aqui estão algumas diretrizes gerais de trabalho.
Cenários de Saída / Início
Eu recomendo configurar um cenário de sair de casa! Parece ser banal, mas funciona muito bem. Incluímos neste cenário desativando tudo o que é possível. O script home de retorno, portanto, retorna tudo ao modo de trabalho.
FIG. Lista de dispositivos para desligar ao sair de casa
Cenário de boa noite
Você já se perguntou quanto consome um dispositivo em espera? Apenas conectado a uma tomada? Eu sim. Para dirigir, para dirigir =)
Por exemplo, um ar condicionado, simplesmente deixado na tomada, consome 1,4 W * h. Acontece 1,4 W * h * 24 horas * 30 dias = 1 KW * h por mês e não funciona por meio ano, pelo menos.
Claro, a figura é pequena. Mas não custa nada otimizar custos com o sistema Smart Home. E pode haver mais de um e não cinco desses dispositivos de "espera" em casa. TVs, consoles de jogos, computadores e outros dispositivos. Quanto mais dispositivos, mais consumo.
FIG. Lista de dispositivos para desconectar no modo de suspensão
Regime de temperatura
Definimos o regime de temperatura do piso radiante para o mínimo permitido. Por exemplo, no banheiro, a temperatura é ajustada em 26 ° C, é uma temperatura perfeitamente aceitável e não se gasta muita energia nesse modo. Se a umidade for excedida (alguém está tomando banho), aumentamos a temperatura (durante o banho, o piso geralmente tem tempo para aquecer de 2 a 3 graus).
Em outras salas, fazemos o desligamento automático do piso aquecido usando um sensor de movimento (por que aquecer o piso se não houver ninguém na sala?).
Se forem utilizados aquecedores elétricos separados, também vincularemos sua operação ao sensor de temperatura (como acontece com um ar condicionado). Se um respirador do tipo "Tion" for usado, no verão, tentaremos deixar o mínimo de ar possível na sala (é quente e isso é um trabalho extra para o ar condicionado), no inverno - o mesmo com o ar frio (o respirador o aquece).
Que haja luz! Mas apenas nos negócios
Se a iluminação nos banheiros, vestiários, despensas e outras salas semelhantes ainda estiver ligada e desligada manualmente, amarramos a um sensor de movimento. Dessa forma, você nunca esquecerá de desligar as luzes! Bem, você não precisará procurar um interruptor na cozinha ao lado da geladeira da meia-noite no escuro. Além disso, não é difícil fazer isso - todos possuem vários switches que funcionam em Wi-Fi / Zigbee / 433 MHz, incluindo aqueles sem linha zero.
Se você ainda usa lâmpadas incandescentes, halogênio e outras fontes de luz glutonosa, saiba:
Em 23 de novembro de 2009, foi emitida a Lei Federal nº 261-FZ "On Energy Saving", que previa que lâmpadas incandescentes com capacidade de 100 watts ou mais seriam proibidas para produção e venda a partir de 1º de janeiro de 2011, com capacidade de 75 watts ou mais serão canceladas a partir de 1º de janeiro 2013.
É hora de pensar em mudar para os mais econômicos - LED e economia de energia.
Com o mesmo fluxo luminoso de 1200Lm, uma lâmpada incandescente consome 100 W, fluorescente / economiza energia - 25-30 W e LED - cerca de 10 W. Além disso, a vida útil das lâmpadas LED e de economia de energia é muito maior do que a de uma lâmpada incandescente.
Recentemente, tivemos um gabinete de automação que usava lâmpadas incandescentes do tipo Edison. Mais de 40 lâmpadas de 60 W cada. Tendo obtido estatísticas sobre o consumo de energia por um mês, descobrimos, sem surpresa, que mais de um terço da conta de luz caiu nessas lâmpadas. Todas as lâmpadas foram imediatamente substituídas por similares, mas com LED. Eles pagaram muito rapidamente.
Epílogo
Por 5 anos de trabalho em sua casa inteligente, muitos cenários e automação foram aprimorados e passaram por mudanças significativas. A economia de energia tornou-se um hábito agradável. Agora é difícil imaginar que o piso radiante seja frito de manhã à noite e o ar condicionado esteja constantemente zumbindo. O clima na casa é confortável e os pagamentos pela luz são agradáveis aos olhos e à carteira. DIFÍCIL para economizar recursos!
Espero que você tenha achado este material útil. Se você tem seus próprios exemplos de otimização dos custos de eletricidade, compartilhe nos comentários o que e como você automatizou. E também junte-se ao nosso grupo em VK e telegramas !