quarta-feira, 10 de abril de 2013

5º Projeto: LDR integrado ao servomecanismo buscando maior luminosidade

     No 5º projeto de nosso blog continuaremos a estudar um pouco mais na prática uma das formas de uso do servomecanismo, nesse exemplo coloquei na ponta do servo um resistor LDR cuja função e comparar o valor da luminosidade local com um valor do programa se esse valor for maior o servo deverá travar sua posição até que a luminosidade mude.

Material:

    - Arduino
    - Protoboard
    - Fios Jumpers
    - Resistor LDR
    - 1 Resistor 10kohms
    - 1 servomecanismo

Esquema:





Código:



 /*Projeto desenvolvido por Felipe Souza Amaral com apoio de Cleiton Mittmann  
 Este projeto e a junção de um servomecanismo com um resistor LDR, cuja a  
 a função é o servomecanismo interpretar o valor do LDR e estacionar neste an-  
 gulo */  
 #include <Servo.h> //inclusão da biblioteca servo  
 Servo myservo; //nome do servo  
 int servopos = 0; //posição inicial do servo  
 int ldr = A0; //pino de ligação do ldr 1  
 int servoPin = 5; //pino de ligação do servo  
 int val; //variavel val  
 void setup(){   
   myservo.attach(servoPin); //posição de ataque do servo  
   Serial.begin(9600); //Abertura de cominucação serial  
 }  
 void loop(){      
      for(servopos=0; servopos<180 ; servopos +=10){ //Laço de varredura do servo   
       myservo.write(servopos); //posição do servo    
       delay(500); //delay de envio de dados do arduino com o serial    
       val = analogRead(ldr); //valor de leitura do LDR 1  
       Serial.print("Valor do 1 LDR \n");  
       Serial.println(val); //escrita do LDR ao monitor  
       if(val > 60){ //condição de estacionamento do servo  
            servopos = val; //posição que o servo irá estacionar  
       }  
      }  
    }  

Vídeo:

Comentário: 

    Esse projeto - como o próprio comentário do programa já fala - teve um apoio de um novo mas grande camarada que foi o Cleiton. Ele foi bastante atencioso e prestativo em minhas dúvidas.
    Devo comentar também que sofri muito com alguns "bugs" da biblioteca de servo, algumas vezes tentava executar alguns comandos  simples e o servo "pirava".


Um comentário:

  1. ola , gostei muito mais to com um problema , como que faço para descobrir os valores ?.

    ResponderExcluir