jueves, 24 de mayo de 2012

Mover servomotor con Sensor de Aproximidad

Intro.
Para esta entrada, busque hacer la implementación del sensor de aproximidad en la puerta, en la cual buscaría que al momento de pasar el usuario esta se abriera y al momento de salir del rango del sensor se cerrara (la idea es trollearlo un rato y que no pueda pasar).

Material:
El material a utilizar ya lo hemos utilizado en entradas anteriores así que no hay algo diferente.
  • Arduino Uno
  • Cable USB
  • Servomotor Futaba S3010
  • Sensor de Proximidad SHARP GP2Y0A21YK 



Desarrollo:
El desarrollo empleado como se menciono es el mismo que en entradas anteriores, la única diferencia es que se buscará unir estas, para que al momento de detectar algo esta abra o cierre la puerta.
 entradas anteeriores sensor proximidad y mover sevomotor


Código
#include <Servo.h>
int ledPin = 2; // LED pin
boolean LEDON = false; //LED status flag
Servo myservo;
int pos = 90;
int sensorPin = 0; //pin analogico 0
//int ledPin = 13;
int varSensor = 0;
void setup(){
pinMode(ledPin, OUTPUT);
//enable serial datada print
Serial.begin(9600);
myservo.attach(5);
myservo.write(pos);
}
void loop(){
varSensor = analogRead(sensorPin);
Serial.print("Sensor indica: ");
Serial.print(varSensor);
if(varSensor < 300){ //Si el valor obtenido es menor a 300 la puerta estara cerrada
Serial.println(" = La puerta se cierra..");
digitalWrite(ledPin, HIGH); //mandamos senal para prender el le
if( pos > 0)
pos = 10;
myservo.write(pos); //Regresamos nuestro servomotor a la posicion 10
delay(varSensor);
}
else{
Serial.println(" = Abriendoo"); Delo contrario, abriremos la puerta
if( pos < 180)
pos = 170;
myservo.write(pos);
}
digitalWrite(ledPin, LOW);
delay(varSensor);
}
view raw gistfile1.c hosted with ❤ by GitHub


Resultados
El resultado obtenido, lo pueden ver en el siguiente video:


2 comentarios: