ScadaBr - Arduinos - Influência entre as portas analógicas

Amigos,

trago aqui uma discussão, baseada na observação de slaves (escravos) que tenho instalados em uma rede de automação. O mestre dessa rede é o software chamado ScadaBR, bem discutido nos posts do LDG.

Acontece que estou procurando melhorar a exatidão dos valores obtidos para me garantir que as leituras realmente são as reais.

Observem a leitura de uma porta analógica que possui um potenciômetro ligado a ela. Durante 24h, não foi feito nenhum ajuste no potenciômetro.

Fiquei muito intrigado por essa variação. Por coincidência fui olhar a variação da leitura de um sensor de iluminação que tenho no mesmo arduino. Observem o gráfico.

Para mim ficou claro que existe uma relação. Checando no código observei que as leituras são feitas em sequência, sem intervalo. Dai fui pensar se é necessário a colocação de um delay, ou se possível, outra alternativa.

Em um outro escravo da mesma rede estou monitorando uma porta analógica ligada ao GND. Para minha surpresa o valor não ficou zerado. Observem que até caiu com o tempo. O que acontece no arduino?

Alguém tem algo a contribuir com esse assunto?

Exibições: 2994

Responder esta

Respostas a este tópico

Amigos,

Depois de fazer testes para confirmar nossa discussão constatei a solução.

Realmente as medidas sugeridas pelo grupo, especialmente a sugestão do Wiechert, se confirmaram.

Usando o artifício de ler uma porta analógica, dar um delay de 10 micro segundos, e ler novamente, evitaram a contaminação de uma porta na outra.

O gráfico abaixo mostra que o GND não foi contaminado pela leitura da porta do sensor de luz.

As portas GND e VCC (5v) não se alteraram em 24h em nenhum momento.

Detalhe, como foi falado se a tensão de referência mudar então a tensão da leitura também será alterada.

Mas pergunto uma coisa: Se a tensão lida for importante como valor real, será que se eu ler uma porta analógica o 5v, vou conseguir corrigir isso? Pelo que eu entendi não, correto?

Veja só, tenho painéis solares onde monitoro a  voltagem. Como os valores giram em torno de 18v, usei um divisor de tensão para corrigir isso e a leitura cair para a faixa de até 5v. Fiz a calibração usando um medidor de referência e o erro ficou muito pequeno, menos de 1%.

Mas quando eu leio a porta o vcc, de 5v, ele dá 1023, mas na realidade usando o medidor externo ele está dando 4,75.

Tudo isso ficou bem entendido com as discussões até agora. Mas alguem sugere uma forma de corrigir isso. Acredito que essa variação é devido a tensão de alimentação, não é?

Vamos discutir isso.

Pra provar o falado olhem o gráfico.

Sidney pode ser tosquice minha, mas cade o vcc e o GND plotado no grafico? so vejo o grafico do sensor de luminosidade 

Eu até pensei em falar isso, mas é o seguinte.

Se o valor não mudar durante o período o scadabr não fica armazenando dados atoa. Isso é algo que eu configurei.

Se quiser eu coloco assim, mas vamos ter que esperar mais 24h.

Deixa eu fazer o acrescimo do potenciômetro e faço mais um teste.

Mas gostei de ver seu nível de detalhe. Isso anima a gente a se esmerar no tópico, pois sabemos que tem gente profissional lendo.

Aguarde o próximo teste.

Tranquilo, se isso é configuração do scadabr já está bom pra mim. 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço