Queria fazer um pequeno projecto para medir a voltagem de baterias de litium 18650 e serie e necessitava que fizesse uma leitura rigorosa a decima pois a mesma irá trabalhar entre os 3v a 4,2V. Ate ao momento não encontrei nada que ofereça rigor na leitura à decima.
O Arduino vai estar alimentado com que tensão?
Se for com 5V, o máximo e precisão que podes atingir é 5/1023.
Se precisares de mais, aconselho baixares a tensão de alimentação do conversor AD e utilizares um amplificador operacional para converter a tensão de 3 a 4.2V para algo entre 0 e 3V. Assim conseguirás bastante mais precisão, mas talvez seja mais do que precisas.
bubulindo:
O Arduino vai estar alimentado com que tensão?
Se for com 5V, o máximo e precisão que podes atingir é 5/1023.
Se precisares de mais, aconselho baixares a tensão de alimentação do conversor AD e utilizares um amplificador operacional para converter a tensão de 3 a 4.2V para algo entre 0 e 3V. Assim conseguirás bastante mais precisão, mas talvez seja mais do que precisas.
Bubulino,
Penso que necessito de maior precisao como referes as minhas bases é que sao fracas para avançar por ai… dai pedir o vosso apoio e ajuda…
tecnisol:
Eu adquiri uma pequena board http://www.ebay.com/itm/191736125167?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT que penso ser o que referes mas não deu a precisao que pretendia, porque os valores de coparação sao entre os 3,00V a 4,20V entre celulas depois pretendo as balancear mas sem conseguir uma leitura correcto de cada não consigo avançar para o proximo passo
Viva.
Se os valores que consegui ler nas resistência do link estao correcta, 30k e 7.5k, tenta este meu codigo, uma funcao que tenho:
alteras
R1 para 30000
R2 para 7500
e vref, medes a voltagem que tens no pino saida dos 5vts do arduino.
`e provável. So aqui postei a função, as definicoes das varavies e a chamada da funcao.
So postei a parte de codigo do meu monitor de AP´s, sao mas de 600 linhas.
Pega no exemplo do IDE AnalogInput/analogRead e alteras o com a minha funcao, mas fácil nao ha.
graças a vossa ajuda em especial ao codigo do arssant consegui este codigo e esta a dar valores muito aceitaveis… obrigado assim ja posso avançar um pouco mais no projecto.
const byte vinInput = 3; // pino do arduino onde ligas o out do sensor (S)
float vout = 0.0;
float vin = 0.0;
const float R1 = 30000.0; // resistance of R1 (30M)
const float R2 = 7500.0; // resistance of R2 (7,5M)
const float vref = 3.26;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
vin = volts();
Serial.println(vin);
delay (20);
}
Mediste a voltagem no pino dos 5 vts do arduino ?
OS valores variam muito pouco entre os 5.1 e 4.8 vts.
Acho que acertas-te com o pino dos 3.3vts
Boas usei com 5v mas depois coloquei a placa a trabalhar assim com 3,3v estão os valores muito mais correctos comparando com um multimetro deram-me sempre os mesmos com os 5v dava-me como anteriormente +/-
O meu problema é que não tou a conseguir ler a segunda celula deu tipo 14 e os fios aqueciam imenso
Até aposto que sao os fios do sensor da direita que estao a aquecer, certo ?
Se me recordo das aulas de "electricidade" na faculdade, nao sera a forma indicada para ter isso assim ligado.
Tenta assim: medes a bateria do lado esquerdo da maneira que se encontra, mas a do lado direito; ligas o VCC do do sensor a bateria do lado direito (+) e o GND desse mesmo sensor ao (-) da bateria da esquerda.
No calculo final, fazes vindadireira = vinddasduas - vindaesquerda
basicamente medes a da esquerda, o total das duas, e no final subtrais ao total o valor da esquerda para saber o valor da direita.
TEsta assim, deveras ter algum resultado satisfatório.