Pessoal,
Conforme prometido na Aula 14 do Curso Arduino Advanced, segue o código do Dimmer Digital AC com TRIAC:
int UP = 7;
int DOWN = 8;
int LAMP = 3;
int dimming = 128;
int counts = 7;
int dimmer[7] = { 1, 105, 100, 75, 50, 25, 10 };
int i = 0;
void setup()
{
//Serial.begin(9600);
//delay(1000);
pinMode(UP, INPUT);
pinMode(DOWN, INPUT);
pinMode(LAMP, OUTPUT);
digitalWrite(UP, HIGH);
digitalWrite(DOWN, HIGH);
attachInterrupt(0, zero_crosss_int, RISING);
}
void loop()
{
if (!digitalRead(UP) || !digitalRead(DOWN))
{
if (verifica_botao(UP))
{
if (i < (counts - 1)) i++;
//Serial.print("UP: ");
//Serial.println(i, DEC);
}
else if (verifica_botao(DOWN))
{
if (i > 0) i--;
//Serial.print("DOWN: ");
//Serial.println(i, DEC);
}
}
//Serial.print("VALOR: ");
// Serial.println(i, DEC);
dimming = dimmer[i];
delay(100);
}
void zero_crosss_int()
{
int dimtime = (65 * dimming);
delayMicroseconds(dimtime);
digitalWrite(LAMP, HIGH);
delayMicroseconds(8.33);
digitalWrite(LAMP, LOW);
}
byte verifica_botao(byte botao)
{
if (!digitalRead(botao))
{
unsigned long tempo = millis() + (150 - dimming);
while(tempo > millis())
{
if (digitalRead(botao)) return LOW;
}
return HIGH;
}
else
return LOW;
}
terça-feira, 31 de julho de 2012
Assinar:
Postar comentários (Atom)
Renato, obrigado pelos ótimos tutoriais. Onde eu posso comprar um protoboard e jumpers cables baratos em são paulo? Só acho protoboards de 30 reais ou mais ou baratas mas com frete caro ou retirada em locais muito fora do centro.
ResponderExcluirRenato
ResponderExcluirbom dia
fiquei interessado no curso que você mostra no youtube, e preciso de um favor se possivel, por acaso conhece ou recomendaria alguma apostila para servir de consulta em caso de duvida nas suas tele-aulas
agradeço a atenção
Obrigado pelo comentário!!!
ResponderExcluirVoce encontra todas os itens utilizados no Curso Arduino no Youtube (http://www.youtube.com/user/graccula?feature=guide), na loja do curso Arduino,
http://www.seriallink.com.br/loja
Abraços
Renato
Ola Renato, meus parabéns pelo blog e pelas aulas , sua didática é realmente fantástica !!
ResponderExcluirSeguinte, estou desenvolvendo um projeto de uma arremessadora de bolas de Baseball de baixo custo, e preciso controlar um motor AC (mono ou trifásico, ainda não está definido).O mais comum é usar o inversor de frequência, mas gostaria de tentar fazer na raça.
É possível utilizar essa sua aula de triacs para o controle desses tipos de motores ? (a potência será por volta de 1/4 cv) ou existe alguma forma de utilizar PWM para eles ?
Mais uma vez parabéns pelo trabalho !
Boa Noite Renato
ResponderExcluirPrimeiramente parabéns pelo seu curso é ótimo acompanho cada passo, e estou quase chegando ao meu objetivo, porém agora estou com mais uma dificuldade e preciso da sua ajuda.
na aula 14 você monta o esquema do Dimmer com botões, eu preciso que ao invés de botoes eu possa digitar valores na porta serial para aumentar e diminuir a intensidade da luz, por exemplo, para 25% digito 25, para 50% digito 50 e assim por diante. Minha maior dificuldade está no código, como ficaria você poderia me ajudar?
Abç
Olá Renato,
ResponderExcluirEstou com uma dúvida...montei este circuito e funcionou muito bem. Entretanto, quando tentei fazê-lo 'em dobro', ou seja, montei dois circuitos com duas lâmpadas, não deu muito certo. Você acha que utilizar a mesma rede elétrica em dois circuitos tem algum problema? Porque parece que a lâmpada perde o sincronismo, ela fica acendendo e apagando muito rapidamente.