Medidor de Consumos Multicanal barato + Setup

Dada a popularidade deste tópico e o facto de eu ter tido recentemente a dificuldade de encontrar uma soluçao económica para fazer monotorizaçao de consumos em múltiplos canais do circuito, trago-vos hoje aquela que foi a soluçao pela qual optei após muitas horas de pesquisa, bem como um pequeno guia de como fazer o setup da mesma para os interessados .

Chama-se RPICT e é basicamente um HAT que podem colocar no topo dum raspberry, que tanto pode ser o 2, 3 ou 4 .

Isto torna-a numa soluçao particularmente económica para quem já tem um RPI encostado. No meu caso tinha um RPI3B que tinha trocado recentemente por uma NUC, pelo que esta soluçao fez ainda mais sentido . Devo no entanto referir que mesmo que tivessem de comprar um raspberry antigo dificilmente conseguem encontrar uma soluçao identica para monotorizar vários canais por valores inferiores .

image

Link da página do vendedor das boards :

http://lechacalshop.com/gb/13-internetofthing

No meu caso optei pelo modelo RPICT7V1 Version 3, que me permite controlar 7 circuitos diferentes e mais um canal dedicado à voltagem real .

http://lechacalshop.com/gb/13-internetofthing

Aspectos a referir acerca do vendedor :

  • Acondicionamento e embalagem perfeitos
  • Encomenda entregue após 2 semanas (Penso que terá sido superior ao normal devido a ter apanhado a altura do ano novo, etc)
  • Excelente suporte com resposta quase imediata a todos os emails de dúvidas que coloquei

Posto isto, passo a descrever a minha experiencia com o RPICT71 Version 3, desde o processo de instalaçao até à integraçao com o Home Assistant :

  1. Instalaçao da board no quadro eléctrico :

Aqui é importante ter uma tomada dentro do próprio quadro, pelo que recomendo que instalem uma ou que chamem um electricista caso nao se sintam preparados para o fazer . Vamos precisar de tomadas ou caso exista espaço para tal, de uma ficha tripla para ligar 2 transformadores, uma vez que um transformador é para o raspberry e outro é para a monotorizaçao da voltagem real .

A única dificuldade que senti aqui foi de colocar o sensor CT no cabo de fase de entrada no disjuntor, dado o pouco espaço disponível e a impossibilidade de mexer as maos no interior desse lado da caixa .

A instalaçao é de resto extremamente simples, basta seguir este guia para os passos iniciais :

http://lechacal.com/wiki/index.php?title=Howto_setup_Raspbian_for_serial_read

Eu optei por alterar a minha configuraçao / sketch, uma vez que por defeito os sketches disponíveis no website nao trazem o factor de potencia, potencia aparente e potencia estimada configurados .

Assim que para alterarem , visitem este link para fazer a vossa configuracao personalizada :

http://lechacal.com/RPICT/config/generator/v3.0/

Neste caso optei pelo sketch 3.0, pelo que toda a configuracao personalizada terá esse sketch como ponto de partida .

Eis o aspecto da minha configuracao final :

Após gerar o config, é importante alterar os valores do kcal para os correctos de acordo com a amperagem do vosso sensor CT ! No meu caso uso um CT de 30A, pelo que o valor de referencia é 26.67, de acordo com a tabela que podem encontrar aqui :

http://lechacal.com/wiki/index.php?title=Noise_level_test_RPICT_V2%263

Devem também ajustar o valor da voltagem na mesma linha, utilizando um multímetro ou outro medidor de consumos preciso para ajustar a voltagem real lida pelo transformador .

Aqui está o meu config :

[main]
format = 3
nodeid = 13
polling = 5000
vest = 230.0
xpFREQ = 50
Ncycle = 20
kcal = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 507.8 27.7 27.7 27.7 27.7 27.7 27.7 27.7
phasecal = 0
Nnode = 8
Nchan = 18
HWSCT = 7 6 5 4 3 2 1 7 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
HWMCPSCT = 10 10 10 10 10 10 10 10 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
HWVOL = 0 0 0 0 0 0 0 127 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
HWMCPVOL = 10 10 10 10 10 10 10 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
CHTYPE = 1 1 1 1 1 1 1 4 4 4 4 4 4 4 3 2 5 6 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 2$
CHID = 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 0 7 0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255$
debug = 0

  1. Configuraçao a nível de software e integraçao com EmonCMS

Para fazer uma integraçao simples com o Home Assistant optei por utilizar o EmonCMS , mas na verdade existe a flexibilidade de utilizarem MQTT, InfluxDB, etc .

Neste caso a integraçao é feita através do EmonHub, que no fundo é o canal de comunicaçao intermédio entre a porta de série do vosso raspberry e o EmonCMS .

  • Sigam inicialmente este guia para instalar o EmonCMS :
  • Após instalado o EmonCMS, sigam este guia para instalar uma versao do EmonHub que irá funcionar de forma perfeita com a porta de série do vosso RPICT :

http://lechacal.com/wiki/index.php/Use_Emonhub_with_RPICT

A nível do EmonHUB existem alguns ajustes a ser feitos, nomeadamente o interface a utilizar, que deve ser modificado para porta de série ao invés do que vem por default .

Aqui está a configuraçao que utilizo :

[hub]
### loglevel must be one of DEBUG, INFO, WARNING, ERROR, and CRITICAL
### see here : http://docs.python.org/2/library/logging.html
loglevel = DEBUG #(default:WARNING)

[interfacers]

[[SerialDirect]]
  Type = EmonHubSerialInterfacer
  [[[init_settings]]]
      com_port = /dev/ttyAMA0
      com_baud = 38400
    [[[runtimesettings]]]
     pubchannels = ToEmonCMS,

[[emoncmsorg]]
   Type = EmonHubEmoncmsHTTPInterfacer
   [[[init_settings]]]
   [[[runtimesettings]]]
       subchannels = ToEmonCMS,
       url = http://localhost/emoncms #uncomment to save on local pi
       apikey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
       senddata = 1                    # Enable sending data to Emoncms.org
       sendstatus = 1                  # Enable sending WAN IP to Emoncms.org MyIP > https://emoncms.org/myip/list
       interval= 10                # Bulk send interval to Emoncms.org in seconds


[nodes]

[[13]]
  nodename = my_RPICT7V1
  [[[rx]]]
     names = RP1, RP2, RP3, RP4, RP5, RP6, RP7, Irms1, Irms2, Irms3, Irms4, Irms5, Irms6, Irms7, Vrms, AP1, EP1, PF1
     scales = 1,1,1,1,1,1,1,0.001,0.001,0.001,0.001,0.001,0.001,0.001,1,1,1,1
     units =W,W,W,W,W,W,W,mA,mA,mA,mA,mA,mA,mA,V,W,W
     datacode = 0

Aspectos importantes a considerar :

DataInterval está incorrecto no config default e deve ser modificado para Interval ou o vosso EmonCMS nao vai receber os dados !

Devem ajustar as scales para corresponder ao nº de canais totais que querem monotorizar ! No meu caso sao 7 canais de potencia / watts, 7 canais de IRMS (corrente) e 1 canal de voltagem . Além disso acrescentei 3 canais para monotorizar factor de potencia, potencia estimada e potencia aparente, de acordo com o sketch de configuraçao descrito no passo 2 ! Eu optei por apenas utilizar estas 3 variáveis para o canal 1 (aquele que uso para monotorizar o circuito geral) , pelo que se quisessem faze-lo para cada canal independente, teriam de acrescentar em scales o valor 1 pela ordem correcta !

No caso dos IRMS usei uma scale de 0.001 porque quero os valores em amperes, e nao em mA …

Feito isto, devemos ter os novos inputs criados no EmonCMS !

Agora resta-nos apenas criar feeds através de cada input !

Existem muitos outros guias para isso mas é algo básico de fazer .

  1. Finalmente temos tudo pronto para integrar com o Home Assistant !

Só nos resta utilizar a integraçao nativa do HA com EmonCMS no nosso config :

sensor:

  - platform: emoncms
    api_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    scan_interval: 10
    id: 1
    unit_of_measurement: "W"
    include_only_feed_id: 
      - 11
  - platform: emoncms
    api_key:  xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    id: 2
    scan_interval: 10
    unit_of_measurement: "kWh"
    include_only_feed_id:
      - 13
  - platform: emoncms
    api_key:  xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    id: 3
    scan_interval: 10
    unit_of_measurement: "A"
    include_only_feed_id: 
      - 14
  - platform: emoncms
    api_key:  xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    id: 4
    scan_interval: 10
    unit_of_measurement: "V"
    include_only_feed_id:
      - 15
  - platform: emoncms
    api_key:  xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    id: 5
    scan_interval: 10
    unit_of_measurement: "W"
    include_only_feed_id:
      - 16
  - platform: emoncms
    api_key:  xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    id: 6
    scan_interval: 10
    unit_of_measurement: "W"
    include_only_feed_id:
      - 17
  - platform: emoncms
    api_key:  xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    url: http://192.168.0.182/emoncms
    id: 7
    scan_interval: 10
    include_only_feed_id:
      - 18

Reboot e … voilá !!!

Os sensores estao agora todos disponíveis e podem integrar no vosso Interface do HA .

Aqui está o meu :

De referir que estou extremamente satisfeito com esta aquisiçao, as leituras parecem ser bastante precisas e com um desvio muito pequeno dos valores reais, é super estável e penso que foi muito simples de configurar !

Aguardo agora o resto dos sensores que mandei vir da China (tem de ser os SCT013-000) para ficar com todos os circuitos controlados individualmente .

Penso que sem DIY esta é claramente a melhor solucao disponível no mercado a um preço razoável :wink:

3 Likes

Obrigado pelo detalhe na partilha.
Sem dúvida interessante.

1 Like

@Tripton Obrigado pela partilha :wink:

O CT que estás a utilizar no geral devia ser de um valor superior. Tens no geral contratado 30A e o CT que estás a utilizar é de 30A. É possível ter picos de consumo superior aos 30A sem que o limitador da EDP se desligue e com esse CT não vais conseguir ter essas medições.
Compra um de 50A para o geral e utiliza os de 30A nos restantes circuitos.

Fica só a faltar uma caixa para fixação na calha DIN e fica mesmo 5 estrelas :+1:

@FSousa de nada :slight_smile:

A escolha do CT de 30A foi intencional porwue nunca ultrapasso esse valor aqui em casa (somos so 2 num T2 e n me recordo de alguma vez ultrapassar os 5000w) e quanto mais baixa a amperagem do CT maior a precisao, pelo menos de acordo com algumas pesquisas que fiz …

Quanto a caixa ainda pensei em imprimir em 3D mas nao creio ter espaço suficiente por baixo do disjuntor, pelo que à partida ficará mesmo assim em cima dum plástico daqueles almofadados.

Como vai levar a tampa em principio n há problema em ficar assim :wink:

Se achas que nuca passas os 5KW tudo bem… Até porque o CT de 30A é mais pequeno…

Quanto à precisão, por essa ordem de ideias, um CT de 2000A não tem precisão nenhuma…
Trabalho com CTs de mais de 2000A que fazem medição de 1 em 1A.
A precisão está no equipamento onde está ligado o CT.

A caixa em 3D é que ficava bem, nem que fosse colocada no fundo do quadro.
Se vais deixar assim, se ainda não tiveres feito, isola o tubo que vem do exterior com o cabo de alimentação por causa das humidades.

Mais uma vez, parabéns pela partilha e descrição de todo o processo de configuração. :+1:


Copyright © 2017-2020. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade