Potenciômetro e PWM

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Potenciômetro e PWM

Mensagem por andreirs em Seg 26 Ago 2013, 4:51 pm

Potenciômetro e PWM

Gravei este vídeo para servir de exemplo para quem ainda não conhece a tecnologia PWM (Pulse-Width Modulation), que é, basicamente, uma técnica que torna possível transferirmos um sinal analógico para algumas das portas digitais; eu digo 'algumas' pois apenas 6 delas podem receber sinais analógicos, são elas '3,5,6,9,10 e 11'.
   Criei uma estrutura completamente manual, onde eu utilizo dos valores recebidos do meu potenciômetro (Atualizando o seu valor mínimo para 0 e o máximo para 255), e escrevendo estes valores na saída 3 que é onde o LED se encontra. Na serial é escrito a porcentagem da tensão escrita na porta (0 ~ 255 (100%)). Note que apenas as novas versões do Arduíno tem suporte a esta tecnologia.
   
   Para quem quiser saber mais sobre esta tecnologia, sugiro que acesse os seguintes links:




Circuito


Código-Fonte
   
   Usamos o comando analogWrite(led_porta,result) para escrever os valores na porta analógica número 3, e isto faz com que recebamos este sinal na terceira porta digital também.


Código:
float potenciometro;
int potenciometro_porta = 5;
int led_porta = 3;
float result;
int porcentagem;
int anterior;
int proximo;

void setup()
{
    Serial.begin(9600);
    anterior = 0;
}

void loop()
{
    potenciometro = analogRead(potenciometro_porta);
    result = potenciometro * 255;
    result = result / 1023;
    delay(1);
    analogWrite(led_porta,result);
    porcentagem = (int) result;
    porcentagem = porcentagem * 100;
    porcentagem = porcentagem / 255;
    proximo = porcentagem;
    if (proximo != anterior) {
      Serial.print("Luz em ");
      Serial.print(porcentagem);
      Serial.println("%");
      anterior = proximo;
   }
}
Vídeo

   Para quem quiser ver uma demonstração, postei este vídeo no youtube.


_________________
/**
* @author Ândrei
* @title YottaByte
*/

http://codigomestre.forumbrasil.net/

andreirs
YOTTABYTE
YOTTABYTE

Mensagens : 33
Reputação : 8
Data de inscrição : 14/07/2013
Idade : 24
Localização : Porto Alegre

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum