LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: buu em 10 de Fevereiro de 2010, 11:23

Título: Arduino LCD screens 20x4
Enviado por: buu em 10 de Fevereiro de 2010, 11:23
Estou a fazer um projecto de moniterização de baterias e consumo do circuito, mas estou com algumas duvidas em algumas partes do codigo.

Isto é o que eu tenho feito até agora e a funcionar é isto, são 3 analizadores de voltagem 1 medidor de consumo do sistema e 1 contador de tempo de sistema ligado.

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimg130.imageshack.us%2Fimg130%2F4696%2Flcd1d.jpg&hash=5a167e21d7fb5f133f214e34c597678e)

Gostava de criar 1 segundo screen em que em vez de valores tivesse barras a indicar a quantidade de voltagem nas baterias.
Uma coisa do genero:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimg687.imageshack.us%2Fimg687%2F5782%2Flcd2n.jpg&hash=df918624ae75ec4aaa0826c72708b397)


Agora a minha pregunta :) já alguem fez uma coisa parecida, não encontro muita informação na net sobre este assunto, e como não domino muito bem a prgramação precisso de um pouco de ajuda para avançar.
Título: Re: Arduino LCD screens 20x4
Enviado por: DanBar em 10 de Fevereiro de 2010, 11:28
Tens a tua resposta aqui:

http://lusorobotica.com/index.php/topic,606.msg19385/topicseen.html#new (http://lusorobotica.com/index.php/topic,606.msg19385/topicseen.html#new)
Título: Re: Arduino LCD screens 20x4
Enviado por: metRo_ em 10 de Fevereiro de 2010, 12:30
Tens a tua resposta aqui:
http://lusorobotica.com/index.php/topic,606.msg19385/topicseen.html#new (http://lusorobotica.com/index.php/topic,606.msg19385/topicseen.html#new)

iCAR se calhar a duvida dele tem mais a ver com o criar as barras pois pelo que percebi ele tem o primeiro ecrã a funcionar.

Vamos la ver por exemplo para uma bateria de 12V. Vamos supor que carregada a bateria tem 12V e que consideramos que está descarregada com tem 10V (podia-mos considerar 0 mas vamos supor que se a bateria chegar aos 10V já não serve para a nossa aplicação).

100% -- 12V
    0% -- 10V

Medimos a tensão e o resultado é 11,3V.

tensãoPercentagem = ((11,3-10)/(12-10))*100;

Isto dá-te a percentagem no entanto era necessário ainda fazer algumas contas para transformar isto nas barras, o ideal então é colocar isto como o resultado logo das barras.
Tens:
15Barras -- 12V
  0Barras -- 10V

tensãoBarras = ((11,3-10)/(12-10))*15;

Depois fazes por exemplo um for na linha que queres do genero

for(i=6;i<tensãoBarras+6;i++){
   coloca barra;
}

i=6 por que é coluna onde começar a preencher. Para tensão igual a 10V o resultado de tensãoBarras seria igual a 0 e então 0+6=6 logo como 6 não é menor que 6 ele não colocava nenhuma barra. Para um tensão igual a 12V o resultado do tensãoBarras seria 15 e então o for ia de 6 até 6+15.
Título: Re: Arduino LCD screens 20x4
Enviado por: DanBar em 10 de Fevereiro de 2010, 12:54
É isso.  ;D
Título: Re: Arduino LCD screens 20x4
Enviado por: buu em 10 de Fevereiro de 2010, 15:35
o que eu queria era as 2 coisas que foram respondidas pelos 2  ;D muchas gracias quem sabe sabe, a noite já vou testar o codigo.

A primeira parte está toda a funcionar, tirando um pequeno problema na string da voltagem que o iCAR já explicou, a segunda parte era um segundo screen com as mesma info do 1º screen mas com um aspecto mais bonitinho.