#define LED 7
#define LDR 0
int luz = 0;
int valor_sensor = 0;
int dtect=6;
int sense=A1;
int buzzpin=5;
//Variables motor A
int ENA=10;
int in1=11;
int in2=12;
//Variables motor B
int ENB=9;
int in3=13;
int in4=8;
int vel=0;
void setup() {
Serial.begin(9600);
pinMode(LED,OUTPUT);
pinMode(LDR,INPUT);
pinMode(dtect,OUTPUT);
pinMode(sense,INPUT);
pinMode(buzzpin,OUTPUT);
digitalWrite(dtect,HIGH);
for (int x=8; x<=13; x++){
pinMode (x,OUTPUT);
}
}
void loop () //Configuracion de los valores
{
int val=analogRead(sense);
Serial.println(val);
if(val>=1005)
{
buzz(50);
}
valor_sensor = analogRead(LDR);
luz = (5.0 * valor_sensor * 100.0)/1024.0;
Serial.print(luz);
Serial.println(" Luz");
delay(100);
analogWrite(ENA,50);
analogWrite(ENB,50);
if (luz <= 490)
{
digitalWrite (LED, LOW);
atras();
}
if (luz > 490) //Si es mayor que 490
{
digitalWrite (LED, HIGH); //El led se eniende y el motor avanza
adelante();
}
}
void adelante(){
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}
void atras(){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}
void detener(){
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
}
void buzz(unsigned char time)
{
analogWrite(buzzpin,170);
delay(time);
analogWrite(buzzpin,0);
delay(time);
}
No hay comentarios:
Publicar un comentario