Pesquisa Google

segunda-feira, 21 de fevereiro de 2011

Arduíno e Speaker

Brincando com a placa Arduíno e um auto falante ou em inglês “speaker”, utilizando a placa Arduíno com um circuito e um código muito simples pode-se fazer alguns sons muito interessantes e divertidos.

O circuito segue aqui em baixo:



O código também muito simples pode ser este para fazer um som com os tons indo de de 200 a 3000 tonalidades. Mas esse código pode ser modificas de acordo com a vontade para produzir sons diferentes. Segue o código:

 void setup() {
Serial.begin(9600);
 }

 void loop() {

   int i=200;
   while(i<100){
   tone(8, i, 10);
   i++;
   delay(10);
   Serial.println(i);
  
 }

Segue um vídeo do sistema funcionando:

sexta-feira, 11 de fevereiro de 2011

Fotosensor


Programa para controlar um fotosensor com a placa Arduíno, este controla o sensor que emite informações sobre a quantidade de luz no ambiente.
Neste caso foi programado para que o LED vermelho fique acesso quando tenha luz no ambiente e o LED verde quando esteja com pouca luz sendo emitida para o sensor. Outro LED aumenta e diminui seu brilho conforme a intensidade da luz emitida para o sensor, como pode ser visto na figura 1.

 
Na utilização de sensores é interessante utilizar o modo de leitura analógica que lê valores de 0 a 1023, o que é mais interessante para alguns tipos de sensores, como é o nosso caso.
Pra fazer a leitura do sensor foi utilizado o seguinte código:

“int leitor;
leitor = analogRead(pinr);
leitor = map(leitor, 0,1023,0,255);”

      Criou-se uma variável do tipo int chamada leitor, os valores são lidos na segunda linha do código com o comendo “leitor = analogRead(pinr);”, onde “pinr” é o nome do pino de leitura, os valores recebidos foram atribuídos para a variável leitor. Na linha três os valores são mapeados de 0 a 1023 para 0 255, ou seja, os valores são redimensionados. Redimensionamos os valores para emiti-los em uma porta PWM que usa apenas valores de 0 a 255, essa porta é utilizada quando se deseja mandar algum tipo de intensidade ou velocidade para algum objeto neste caso o LED de intensidade. Nas outras portas da placa Arduíno se mandarmos sinal ele apenas liga ou desliga o sinal, porem nas portas PWM podemos controlar o tamanho do sinal que varia de 0 a 255.

      Normalmente os sensores são utilizados para fazer alguma coisa, bom no nosso caso vamos ligar a apagar LEDs dependendo da intensidade da luz, parece ser algo simples mas para quem tem criatividade pode ter varias utilidades. O código abaixo mostra como é feito para ligar a desligar os LEDs:

“ if(leitor>127){
digitalWrite(pinMaior, HIGH);
digitalWrite(pinMenor, LOW);}
else{
digitalWrite(pinMenor, HIGH);
digitalWrite(pinMaior, LOW);}”

        Muito simples, foi utilizado um “if”, se os valores do leitor forem maiores que 127 então ligue o pino “digitalWrite(pinMaior, HIGH);” e desligue o pino digitalWrite(pinMenor, LOW);, HIGH é utilizado no Arduíno para ligar os pinos e LOW para deligar ou mandar um valor zero. Senão “ else” ligue o pino digitalWrite(pinMenor, HIGH); e desligue o pino digitalWrite(pinMaior, LOW);


        Para uma melhor compreensão o esquema de montagem e o código completo estão abaixo:



“int pinMaior = 7;
int pinMenor = 6;
int pinIntensidade = 9;
int pinr = 0;

void setup(){
pinMode(pinMaior, OUTPUT);
pinMode(pinMenor, OUTPUT);
pinMode(pinIntensidade, OUTPUT);
Serial.begin(9600);
}

void loop(){
int leitor;
leitor = analogRead(pinr);
leitor = map(leitor, 0,1023,0,255);
analogWrite(pinIntensidade, leitor);
if(leitor>127){
digitalWrite(pinMaior, HIGH);
digitalWrite(pinMenor, LOW);
}
else{
digitalWrite(pinMenor, HIGH);
digitalWrite(pinMaior, LOW);
}
Serial.print("Valor Lido: ");
Serial.print(leitor);
delay (10);
Serial.println("");
}”

Vídeo que mostra o sistema funcionando.