Medir corrente célula fotovoltaica com Arduino

Caps

Membro
Boa tarde colegas....

A minha duvida é a seguinte, quero medir a quantidade de energia produzida pelo meu painel solar, no entanto estou com alguma dificuldade na obtenção do valor da corrente (A) gerada.

Adquiri para o efeito um sensor de B43 MAx 471 ( que mede volt e amp)

hqdefault.jpg


o qual se encontra ligado da seguinte forma , sem nenhum "LOAD" ligado
U3488.jpg


Código ( Foi feito por outro colega, penso que o problema não esteja no codigo mas....)

/* Connection pins:

Arduino Current Sensor B43
A0 VT
A1 AT
+5V VIN
+5V VOUT
GND GND
*/


#include <Wire.h>

#define VT_PIN A0 // connect VT
#define AT_PIN A1// connect AT

#define ARDUINO_WORK_VOLTAGE 5.0

void setup()
{
Serial.begin(9600);
Serial.println("Voltage (V) / Current (A)");
}

void loop()
{
int vt_temp = analogRead(VT_PIN);
int at_temp = analogRead(AT_PIN);

double voltage = vt_temp * (ARDUINO_WORK_VOLTAGE / 1023.0) * 5;
double current = at_temp * (ARDUINO_WORK_VOLTAGE / 1023.0);
Serial.print("Analog0: ");
Serial.print(vt_temp);
Serial.print(" / ");
Serial.print("Analog1: ");
Serial.print(at_temp);
Serial.print(" ----- ");
Serial.print(voltage);
Serial.print(" / ");
Serial.println(current);
delay(1000);
}


Voltes (V) não tive problema.

Nos Amperes quando chego á parte de ligar o sensor liguei o + e o - dos cabos da "LOAD" de volta ao painel de forma a simular um "load" mas não deu nada....

Para testar, com multimetro efectuei a medição , na escala de amperes, com as ponteiras no + e no - do painel e registou a amperagem. ( Penso que esteja certo o procedimento).

Posto este blá blá todo, devo estar a fazer alguma coisa mal ou tudo mal, pois infelizmente tenho poucos conhecimentos de electronica/electricidade apesar de me esforçar por aprender....


Agradecia a vossa ajuda para tentar solucionar este pequeno grande problema..... :)

Abraços
 
Nos Amperes quando chego á parte de ligar o sensor liguei o + e o - dos cabos da "LOAD" de volta ao painel de forma a simular um "load" mas não deu nada....

Para testar, com multimetro efectuei a medição , na escala de amperes, com as ponteiras no + e no - do painel e registou a amperagem. ( Penso que esteja certo o procedimento).
Quando ligas o multimetro na escala de amperes tem um curto circuito entre as ponteiras, ou seja tens a voltagem gerada pelo painel a passar numa resistencia muito pequena e é assim que é sao medidos os amperes.
Esse circuito que tens ai é a mesma coisa, tens de ligar o painel no VIN e depois ligar uma carga na parte do "load" para fechares o circuito e corrente poder passar, se ligares por exemplo "vout" a "ground" vais ter um curto circuito e vao passar o maximo de amperes que o painel consegue dar.

Imagina que "Vin" e o "Vout" sao duas ponteiras de um multimetro ligado em amperes.
 
... se ligares por exemplo "vout" a "ground" vais ter um curto circuito e vao passar o maximo de amperes que o painel consegue dar.

Imagina que "Vin" e o "Vout" sao duas ponteiras de um multimetro ligado em amperes.

Boa Tarde Ruben!


Experimentei como referiu o Vout com Ground e deu valor "0" nos amperes e para alem disso faz-me curto no resto do circuito, ficando também a parte dos volt a "0" .

Para evitar de fazer curo para tras do Vout secalhar é melhor ligar um diodo no Vout e assim já evita que o curto retorne para o VIN... ( será que estou a pensar bem?)

Nas mesmas condições com o multímetro e dava 0,5A
 
Boa Tarde Ruben!


Experimentei como referiu o Vout com Ground e deu valor "0" nos amperes e para alem disso faz-me curto no resto do circuito, ficando também a parte dos volt a "0" .

Para evitar de fazer curo para tras do Vout secalhar é melhor ligar um diodo no Vout e assim já evita que o curto retorne para o VIN... ( será que estou a pensar bem?)

Nas mesmas condições com o multímetro e dava 0,5A
O objectivo nao é fazer curto circuito, quando mencionei isso era para tentar explicar o funcionamento do aparelho.

Devias explicar bem o que queres fazer e o material que tens para nos percebermos melhor.

Eu tambem nao me estou a fazer entender, vamos la ver se consigo:

Esse tal B43 é apenas um voltimetro e amperimetro no mesmo pcb, tens a ligaçao "Vin" e "GND" que alimentam o voltimetro (está em paralelo com a carga) e quando ligas alguma voltagem nesses 2 pinos o valor é lido e enviado para o pino "vt" que aparenta estar configurado para 1V=1V, o amperimetro esta ligado entre o "Vin" e "Vout" (em serie com a carga) e mede a corrente que passa entre esses 2 pinos e envia para o pino "at" como 1A=1V, os 2 pinos "Gnd" estao ligados entre si. Ou seja para medires voltagens basta ligares "Vin" e "Gnd" á tua fonte de voltagem, mas para medires corrente tens de completar o circuito ligando uma carga entre "Vout" e "Gnd", por exempo uma resistencia e um led.

Tens de ter cuidado para nao ultrapassar os 5V no "Vin" e 3A de corrente senao ainda estragas o arduino ou o B43.

Sugiro que ligues o painel no "Vin" e "Gnd" e metas uma resistencia nao muito grande (10 ohms por exemplo) ligada a "Vout" e "Gnd", confirma a ligaçao dos pinos do arduino.
 
Uhhh uma pergunta basica se meter uma resistencia do Vout ao Gnd não vou estar a medir o consumo dessa resistencia???

A ideia é a seguinte:

1º é a saber, volt, amp e watts/h que o painel está a produzir.
2º com um sistema identico (replicar) verificar volt, amp e watts/h que o arduino e restante sistema ( solar tracker) consome, para dimensionar quer o painel caso necessário quer o power bank.


Obrigado!!!!
 
Uhhh uma pergunta basica se meter uma resistencia do Vout ao Gnd não vou estar a medir o consumo dessa resistencia???

Claro, e vais medir o que o painel consegue produzir ao mesmo tempo. É impossivel medir a corrente do painel sem ele estar ligado a alguma coisa, nao podes "produzir" amperes, amperes é o que se gasta num circuito, produçao = consumo os amperes tem de ir para algum lado.

Observa:
IV-ISC.gif


O painel vai a A=0 vai ter a voltagem maxima, e em curto circuito (V=0) vai ter a corrente maxima, ambos os valores sao quase inuteis porque nao te interessa teres nenhuma corrente a passar, nem teres 0 volts, precisas de um ponto intermedio, digamos 5V a 0.02A.
 
nao podes "produzir" amperes

São estas pequenas coisas que me falham...

precisas de um ponto intermedio, digamos 5V a 0.02A.

Como o obtenho?


Então se ligar um led ele vai-me dar os seguintes valores 2,4v 0,014A ( Agora não tenho sol, mas penso que seja +- isto)

Isto quer dizer que a produção do painel é 2,4v e 0.0336 Watts??? ou é o consumo do LED????



A intenção é saber quanta energia estou a produzir/consumir, assim sendo a unidade em comum será os Watts?


Aceito sugestões para a resolução do meu problema!!!!


PS. Não estou a pedir que façam as coisas por mim, estou aqui para aprender pois o objectivo não é copy and paste mas sim aprender com estes pequenos projectos!!!!


Abraço......
 
Boas actualizando com dados....

20170122_145509.jpg


20170122_145647.jpg



De acordo com os dados neste caso estou a consumir de 15 a 20 mA led ou o painel esta a produzir 15 a 20mA ?



20170122_152918.jpg




Depois tenho ainda esta situacao, quando o painel esta com pouca exposição solar e produz inferior a 2v da me uma leitura muito alta em Amp neste caso superior a 1A como posso ler esta informacao? "Noise" ou tem haver
Com a representacao grafica em cima que me tentavas explicar 0v ->max A | 0 A -> max V )




(A falta de conhecimentos da nisto, confusão )


Obrigado
 
Última edição:
De acordo com os dados neste caso estou a consumir de 15 a 20 mA led ou o painel esta a produzir 15 a 20mA ?

Tudo o que o painel produz é consumido, ou seja se ele produz 20mA o led está a consumir 20mA (não é totalmente assim pois existem perdas que não estão contabilizadas, mas não interessa para o caso).

De qualquer modo o led não é a melhor carga para fazeres testes com consumos.
Usa antes uma resistência.
Não sei quais as caracteristicas do teu painel, mas pelos valores que mostras sugeria uma resistência por exemplo de 220 ohm.

Quanto ao arduino, está a ser alimentado por outra fonte de alimentação sem ser o painel, certo?
 
O meu painel actual de teste é de 6v 5.2w. Mas Para calibrar estou a utilizar uma fonte de 5.5v de 0.66A,

Para o arduino utilizo uma fonte externa. Usb

Acabei por utilizar 2 resistencias de 12omh em paralelo, no entanto ja encomendei de 220 para exprimentar porque estas de 12 aquecem muito, e so posso ter uns segundos ligadas.

Queria chegar a um compromisso de nao ter muitas perdas com o uso das resistencias pois estamos a falar de valores baixos de produção e qq consumo em excessivo pode comprometer a autonomia do sistema.

Pode me ajudar, explicar como se calcula o valor ideal da resistência?

Seria?

5.2w = 0.866A

R= V / I

R= 6/0.866

R= 7omh (6,93 omh )

Isto nao significa que estou a criar mais resistencia a passagem de corrente e deste modo nao iria aquecer ainda mais a resistência? Produzindo mais calor e desperdício de energia?
 
Última edição:
O uso da resistência é só para validação das medições de consumo e testes.
Num ambiente real não se pôem as resistências.
Se usaste 2 resistências de 12 ohm em paralelo então na verdade estavas a ligar ao painel 6 ohm.
É um valor muito baixo e por isso além de aquecerem muito vão tentar consumir mais corrente do que o painel pode fornecer.

Se o painel é de 5.2W a 6V então a corrente máxima que ele consegue fornecer são cerca de 800 mA (P = V x I)
Não existe um valor ideal de resistência. Sugeri 220 ohm porque como iria consumir apenas cerca de 27 mA a resistência não iria aquecer muito e também não puxas tanto pelo painel.

Como já deves saber a tensão num painel fotovoltaico varia com a quantidade de luz e com a corrente que se está a consumir dele.
Por isso o ponto de maior rendimento é na sua tensão nominal, ou seja os 6V.

E afinal os valores medidos no arduino estão mais coerentes ou nem por isso?
 
Boa Noite,

Foi comprar uma resistência de 220 ohm como sugeriu e ja nao aqueceu como tinha dito no entanto com a resistência a funciona como carga no sistema e o valor obtido nao é os amp gerados mas sim consumidos pela resistência. E o que pretendo é o valor de producao. Neste caso o projecto é para incluir num painel fotovoltaico no entanto agora para teste estou a utilizar uma fonte DC de 5.5v e 660mA

No entanto o meu problema é como é que consigo ler os 660mA com o arduino.

Depois descubrir e funionar correctamente, pretendo ligar ao painel para saber a quantidade de energia que esta a produzir....

Agora como chego a esse ponto é que ta a custar.... alguma sugestão?

Obrigado
 
Como já lhe tinha dito a corrente gerada pelo painel é a corrente consumida pela carga (como por exemplo a resistência).
Um painel se não estiver ligado a nada o valor de produção é zero. O que ele gera são volts, mas se não houver carga nenhuma a corrente é zero e por isso a potência produzida é zero (P=V*I).
Dizes que estás a usar uma fonte de 5.5V 660mA, mas o que isso quer dizer é que produz 5.5V e permite um consumo MÁXIMO de 660mA.
não está sempre a fornecer 660mA, depende claro da carga.
Acho que estás um pouco confuso com as definições de termos eléctricos, sugiro dares uma leitura sobre o assunto para conseguires situar-te melhor ;)

A ligação da resistência neste caso é para simular a carga que vais ter quando ligares o painel àquilo que ele vai alimentar na verdade.
Com isto consegues validar se as medições com o arduino têm valores correctos.
 
Obrigado diogo....

Realmente é verdade os meus conhecimentos de electricidade e electronica sao basicamente nulas, apesar de me esforçar por aprender tudo a base de google e youtube mas....

As tuas pequenas palsvras acima fizeram me perceber 2 coisas muito importantes.

Que o painel apenas produz volt e os amp e watts é uma reflexão do consumo associado ao consumo das cargas...

Ou seja nao vou conseguir obter o valor de amp max que o painel vai disponibilizar no momento X

Imaginemos que tenho um led e ele consome 20mA e o painel neste mesmo momento tem disponivel 100mA,

Nao tenho como calcular esse valor?
 
Exacto, basicamente é isso.

Não tens como calcular o valor máximo que o painel tem disponivel num dado momento.

O que normalmente se usa nos paineis solares são circuitos MPPT:
https://en.wikipedia.org/wiki/Maximum_power_point_tracking

O que estes circuitos fazem é ajustar o consumo que está a ser feito ao painel de modo a conseguir obter a máxima potência que ele pode fornecer num dado momento.
Por exemplo para carregar uma bateria. Começa a carregar com uma corrente baixa, depois vai aumentando a corrente de carga até ver onde o painel aguenta, ou seja até a tensão no painel começar a diminuir abaixo da sua tensão nominal.
 
Back
Topo