BZ2200BI-BR com STATUS em branco e sem alarme
Software não oficial para controle de nobreak APC do Brasil
Brought to you by:
wpopov
Olá pessoal,
Primeiramente muito obrigado pelo projeto.
Esses nobreaks sao caro e sairia muito mais caro quando eu percebi que nao daria para se comunicar com ele.
Gostaria de saber se alguem pudesse me ajudar em três problemas.
1) Nao aparece nada no campo STATUS
2) O comando /sbin/apctest -d 100
fica parado aqui.
3) Outros scripts nao executam. commok
offbattery
...etc
Infos:
CentOS 7.7
Linux apcups 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
apcctrl-0.8.21.tar.gz
/dev/ttyACM0 - APC_BY_SCHNEIDER_ELECTRIC_APC_USB_SERIAL_CONVERTER.
> APC : 001,018,0443
> DATE : 2020-09-12 14:47:45 -0400
> HOSTNAME : apcups
> VERSION : 0.8.21 (May 10 2019) redhat
> UPSNAME : myups
> CABLE : Custom Cable Simple
> DRIVER : BRAZIL UPS Driver
> UPSMODE : Stand Alone
> STARTTIME: 2020-09-12 14:47:26 -0400
> STATUS :
> MBATTCHG : 25 Percent
> MINTIMEL : 10 Minutes
> MAXTIME : 0 Seconds
> NUMXFERS : 0
> TONBATT : 0 Seconds
> CUMONBATT: 0 Seconds
> XOFFBATT : N/A
> STATFLAG : 0x05000000
> END APC : 2020-09-12 14:55:24 -0400
2) O comando /sbin/apctest -d 100
fica parado aqui.
[root@apcups apcctrl]# /sbin/apctest -d 100
2020-09-12 14:56:36 apctest 0.8.21 (May 10 2019) redhat
Checking configuration ...
0.000 apcctrl: newups.c:102 write_lock at drivers.c:117
0.000 apcctrl: drivers.c:119 Looking for driver: brazil
0.000 apcctrl: drivers.c:123 Driver dumb is configured.
0.000 apcctrl: drivers.c:123 Driver apcsmart is configured.
0.000 apcctrl: drivers.c:123 Driver net is configured.
0.000 apcctrl: drivers.c:123 Driver usb is configured.
0.000 apcctrl: drivers.c:123 Driver snmplite is configured.
0.000 apcctrl: drivers.c:123 Driver brazil is configured.
0.000 apcctrl: drivers.c:126 Driver brazil found and attached.
0.000 apcctrl: newups.c:108 write_unlock at drivers.c:143
0.000 apcctrl: drivers.c:145 Driver ptr=0x1a0e400
0.000 apcctrl: drivers.c:146 Attached to driver: brazil
sharenet.type = Network & ShareUPS Disabled
cable.type = Custom Cable Simple
mode.type = BRAZIL UPS Driver
Setting up the port ...
1.000 apcctrl: brazildriver.c:120 Opening port /dev/ttyACM0
1.388 apcctrl: brazildriver.c:127 Chamando a função fcntl
1.388 apcctrl: brazildriver.c:132 Carregando o oldtio
1.388 apcctrl: brazildriver.c:136 Definindo a newtio
1.388 apcctrl: brazildriver.c:160 Primeiro tcflush
1.388 apcctrl: brazildriver.c:163 Setando a newtio na porta
1.388 apcctrl: brazildriver.c:166 Segundo tcflush
3.389 apcctrl: brazildriver.c:215 Setup UPS myups to load specific model.
4.390 apcctrl: brazildriver.c:456 Lendo a porta USB/Serial. GetEvents = false
Acabei de ver que dava para aumentar o debug.
Carlos, boa tarde.
Pode enviar um grande trecho de log com o debug em 200?
Att,
Wagner
Em sáb, 2020-09-12 às 19:38 +0000, carlos escreveu:
Related
Tickets: #5
Ola @wpopov ! Obrigado pela resposta.
No momento fiz 2 testes.
O Centos7 está numa VM dentro do ESXI 6.7 com USB passthrough.
Nao deveria ter problemas mas só pra validar estou fazendo o mesmo teste num raspberry também. Os dois aprensentam o mesmo problema.
rpi
uname -a
Linux raspberrypi 4.4.11+ #888 Mon May 23 20:02:58 BST 2016 armv6l
GNU/LinuxOs dois com
/dev/ttyACM0 - APC_BY_SCHNEIDER_ELECTRIC_APC_USB_SERIAL_CONVERTER.
Estou enviando 2 logs em anexo.
centos.log
rpi.log
Carlos, fiz uma análise superficial no log que você enviou. Tudo indica que o protocolo de comunicação é o mesmo que já era usado no modelo 2200bi-br, mas aparentemente existe alguma variação no código de identificação que eu desconhecia. A APC usa os códigos de identificação para diferenciar os vários modelos.
Criei uma branch no repositorio git e peço que você teste ela. O comportamento esperado é que o nobreak será identificado mas os níveis de tensão podem ficar fora do esperado. Isso não causará nenhum problema porque o apcctrl não tem a capacidade de executar absolutamente nada que possa ser danoso. O máximo que pode acontecer em algum momento é o software iniciar o processo de shutdown por considerar que a baterias estão com a carga baixa.
O nome da branch no repositório git é bz2200bi-br_code_191.
Passos básicos para baixar a branch:
git clone ssh://wpopov@git.code.sf.net/p/apcctrl/git apcctrl-git
git checkout bz2200bi-br_code_191
Interessante é que assim q eu removo o USB ele dá o aviso.
@wpopov funcionou!!
Muito obrigado pelo suporte super rapido!!
Posso confiar nesses valores de
OUT ACT POWER
eOUT CURRENT
?Eu sei que os valores não são precisos mas posso utilizá-los como parametro que pelo menos está aumentando ou diminuindo certo?
Mais uma vez muito obrigado pela ajuda.
Carlos, quando você executou os teste habita alguma carga conectada no
nobreak?
O log parece indicar que não havia nada conectado.
Esses valores de potência de saída são muito importantes para o cálculo da
autonomia. Por isso, eles precisam ser corrigidos.
Se possível, tente executar o teste de bateria do apctest
T+
Wagner
Em dom, 13 de set de 2020 12:00, carlos agunicat@users.sourceforge.net
escreveu:
Related
Tickets: #5
Ola @wpopov
Se nao me engano nao havia nada.
Para executar o teste eu preciso deixar alguma coisa conectada?
Estranho estava fazendo uns testes de desligamento etc. e os únicos valores que mudam sao:
BATTV BCHARGE TIMELEFT e TIMEONBATT.
O BCHARGE só vai de 0 -> 50 -> 100.
Mesmo com TIMEONBATT 0 -> 15 -> 30.
Deixei um ventilador USB e uma IP CAM conectados e vou fazer o teste.
Seria esse certo?
8) Test battery health
Obrigado.
C.
Falei errado.
Seria TIMELEFT 0 -> 15 -> 30.
Acabei de ver..
Vou recomeçar o teste.
Me tira uma dúvida por favor.
Eu iniciei os testes com devices consumindo nas tomadas (ventilador USB girando por exemplo).
Mas depois que começou o teste ele desligou as tomadas.
Agora está em andamento mas como as tomadas estão desligadas acho que nunca vai sair de 100% certo?
Carlos, isso é muito estranho. O teste do deveria desligar a entrada do
nobreak. O teste desconecta automaticamente o nobreak da rede elétrica e
reconecta automaticamente.
Se ele estiver conectado na rede elétrica ele nunca vai sair de 100%.
Agora, se ele estivesse desconectado da rede elétrica ele deveria consumir
a bateria MESMO "sem" carga porque o circuito de chaveamento e o
transformador não são perfeitos e eles vão consumir, pelo menos, uns 15% da
potência máxima.
Pelo visto o seu modelo vai exigir um trabalho maior de investigação.
Vou pensar em um teste para testar se os comandos de desligamento são
diferentes.
O protocolo APC americano antigo permitia alterar a tensão e o do seu
nobreak não permite. Por isso não há risco nesses testes.
Em seg, 14 de set de 2020 11:59, carlos agunicat@users.sourceforge.net
escreveu:
Related
Tickets: #5
O nobreak está conectado à rede elétrica.
Mas pelo que entendi o teste desconectaria e conectaria automaticamente isso? Deveria tirar?
Esse comportamento eu "acho" que se deve ao fato que o nobreak não está mostrando os valores do BCHARGE entre 0-50-100.
Tem uma foto do grafana que postei lá em cima e ele mostra indo de 50% pra 100% assim que, acredito eu, ele bateu 100%.
ou seja agora a Carga deve estar abaixo de 100% mas vai mostrar 100% até chegar em 50%.
Faz sentido?
Se precisar de alguma informação adicional pode perguntar. Vou tentar providenciar.
Muito obrigado pela ajuda.
Essa questão de 50% e 100% é normal. Deus eu explico.
Você não precisa desconectar da rede elétrica. O teste deveria desconectar
sozinho
Em seg, 14 de set de 2020 12:26, carlos agunicat@users.sourceforge.net
escreveu:
Related
Tickets: #5
Em relação ao bcharger ocorre porque o nobreak o nobreak informa que está
carregando a bateria. Mas ele não informa qual a intensidade da corrente de
carregamento e a tensão da bateria quando o nobreak está conectado a rede
elétrica é na verdade a tensão do carregador de bateria e não a tensão da
bateria. Ou seja, o bcharger é informado que está em 50% como uma forma de
reportar que a bateria não está completamente carregada. Só seria possível
informar um valor mais correto se o apcctrl monitorar a última carga da
bateria sem conexão elétrica. Por exemplo: O nobreak estava funcionando com
as baterias e a carga atingiu 80% e então a rede elétrica voltou a
alimentar. Nesse ponto, a bateria estaria sendo carregada, mas poderíamos
presumir que a carga da bateria seria de pelo menos 80%. Mas essa
funcionalidade não foi implementada.
Em seg, 14 de set de 2020 12:26, carlos agunicat@users.sourceforge.net
escreveu:
Related
Tickets: #5
Entendi obrigado pela explicação.
Nao sei o que aconteceu mas agora parece que está indo!
Estava indo tudo bem até a carga 81.8%
muito tempo depois continua assim
Carlos,
A maior parte dos paramentos que o nobreak envia estão contidos dentro de
um único byte e é preciso utilizar um valor de offset e uma taxa para
converter o valor.
Por exemplo:
A tensão que você lê na bateria é calculada +- assim:
Tensão = 20 + byte * 0,05
Observe que a tensão nunca vai ficar abaixo de 20V e nunca maior que 32,75V.
Se essas constantes não estiverem corretas o valor que o software vai te
informar podem estar completamente errados...
Melhor você deixar o nobreak carregando e não executar mais testes.
Você consegue me passar todo o log de todo o teste? Ele é útil para achar
os valores dessas constantes.
Em seg, 14 de set de 2020 22:47, carlos agunicat@users.sourceforge.net
escreveu:
Related
Tickets: #5
Ola @wpopov.
Ok estou enviando todo o log do apctest
apctest_all.log =
apctest 2>&1 | tee apctest_all.log
os outros sao os do programa.
segue em anexo.
Vou deixar ele quieto por ora. Ja cansei de ouvir o apito tambem rsrs
Abs,
C.
Olá Pessoal, tudo bem?
Primeiramente agradeço muito o empenho e dedicação em criar essas extensões para o apcupsd, trabalho sensacional! Parabéns!
Após dar uma olhada nos dados todos trocados aqui nesse ticket, consegui fazer o nobreak 2200VA funcionar com o apcctrl usando o branch específico, porém observa-se que os dados não batem (tenho um de 1500VA ligado na mesma linha).
Gostariam que eu tirasse um log dos dados de ambos para podermos calibrar as equações? Como posso ajudar? Tenho experiência em programação, se me der um caminho posso tentar fazer um patch.
Obrigado mais uma vez!
Abraços!
Thiago