terça-feira, junho 30, 2015

SERVOMOTOR E LDR EM ARDUINO

Este sketch tem a função de apresentar os servomotores e suas funcionalidades. Aqui o servo terá como objetivo seguir a luminosidade, para isso usará os resultados obtidos de dois LDR’s e a biblioteca do Servo.


/*
***********************************************
PROJETO ROBÓTICA NA ESCOLA 2015 
               SERVOMOTOR E LDR                  
        EE DR PEDRO VELHO – RN/BR         
***********************************************
*/
#include <Servo.h> //Biblioteca do Servo Motor
#define servo 6 //Servo motor no pino 6
 Servo servoP; //Varíavel do servo motor
 int pos = 90;  //Posicão do servo
 int ldr1 = 0;  //Valor do LDR 1
 int ldr2 = 0;  //Valor do LDR 2
 void setup()
 {
  Serial.begin(9600);
  servoP.attach(servo); //Configura o pino do Servo Motor
  servoP.write(pos); //Servo na posição inicial
 }
 void loop()
 {
  ldr1 = analogRead(0);
  ldr2 = analogRead(1);
  Serial.println("LDR1:");
  Serial.println(ldr1);
  Serial.println("LDR2:");
  Serial.println(ldr2);
  delay(200);
  if (ldr1 > ldr2 && pos > 0)
    {
    servoP.write(pos--); //Decresce a cada passagem no looping
    }
  else if (ldr1 < ldr2 && pos < 180)
    {
    servoP.write(pos++); //Aumenta a cada passagem no looping
    }
}

//FIM DO SKETCH

6 comentários:

  1. como fazer a alimentação da plataforma nesse caso

    ResponderExcluir
    Respostas
    1. A alimentação pode ser feita por fonte ou bateria com conexão na placa Arduino.
      Obrigado pela visita.

      Excluir
  2. Boa noite, estou realizando um protótipo parecido, porém, com liberdade de rotação horizontal e vertical. Minha dúvida é: Onde os seus 2 LDRs foram posicionados? E qual a melhor forma pra eu posicionar no meu caso (4 LDRs).
    Desde já agradeço,
    Mateus Honório.

    ResponderExcluir
    Respostas
    1. Mateus os LDR’s foram posicionados na protoboard como mostra o esquema. Com luz em um deles o servo se movimenta até 0° ou 180°. Ao retirar a fonte de luz ocorre a volta aos 90°. Pode usar 4 ou mais LDR’s desde que adapte o ângulo para cada um. Para adaptar o modelo a um local (sala por ex.) você só terá que dispor de fiação suficiente para poder conectar os LDR’s à placa Arduino, luz que chegue até eles (laser por ex.) e encontrar uma funcionalidade para o giro do servo. Obrigado pela visita.

      Excluir
  3. qual o valor do resistor usado?

    ResponderExcluir
    Respostas
    1. Faixas marrom, preta e laranja identificam o resistor de 10k.
      Obrigado pela visita.

      Excluir