[Aporte] robot detector y evita obstaculos (arduino)

hoy les traigo una parte de mi proyecto de grado el cual es un robot de limpieza para el hogar o home-bot

esta es la parte de detección de obstáculos consta de
3 sensores ultrasonicos HC-SCR04 ,
1 driver IC L293D
adicional 2 servos truqueados

adjuntas imágenes del robot en protoboard

IMG_20140424_003521[1].jpg
IMG_20140424_003557[1].jpg
IMG_20140424_003623[1].jpg

esta seria la programación para el arduino :


Código:
// Ultrasonic - Library for HR-SC04 Ultrasonic Ranging Module. 


#include <Ultrasonic.h> 

Ultrasonic ultrafront(3,2); // (Trig PIN,Echo PIN) 
Ultrasonic ultraleft(4,5); // (Trig PIN,Echo PIN) 
Ultrasonic ultraright(7,6); // (Trig PIN,Echo PIN) 

int sensoradeval = 0; 
int sensoriz = 0; 
int sensordr = 0; 


void setup() { 

//Serial.begin(9600); 

pinMode(8,OUTPUT); 
pinMode(9,OUTPUT); 
pinMode(10,OUTPUT); 
pinMode(11,OUTPUT); 

} 

void loop() 
{ 

SENSORADEL(); 
SENSORIZQ(); 
SENSORDER(); 

} 

void SENSORADEL() { 

//Serial.print("Front: ") ; 
// Serial.print(ultrafront.Ranging(CM)); // CM or INC 
// Serial.print(" cm " ); 
// delay(50); 

if(ultrafront.Ranging(CM) > 15){ 

IRADELANTE(); 

} 
else 
{ 

IRATRAS(); 
delay(300); 
IRDERECHA(); 
delay(200); 
SENSORIZQ(); 
} 

} 

void SENSORIZQ() { 

//Serial.print("Left: ") ; 
//Serial.print(ultraleft.Ranging(CM)); // CM or INC 
//Serial.print(" cm " ); 
// delay(50); 

if(ultraleft.Ranging(CM) > 6){ 

SENSORADEL(); 

} 
else 
{ 
IRDERECHA(); 
//delay(200); 
SENSORDER(); 

} 

} 

void SENSORDER() { 

// Serial.print("Right: ") ; 
// Serial.print(ultraright.Ranging(CM)); // CM or INC 
// Serial.println(" cm" ); 
// delay(50); 

if(ultraright.Ranging(CM) > 6){ 

SENSORADEL(); 

} 
else 
{ 
IRIZQUIERDA(); 
//delay(200); 
SENSORIZQ(); 
} 

} 

void IRADELANTE(){ 

digitalWrite(8,LOW); 
digitalWrite(9,HIGH); 
digitalWrite(10,HIGH); 
digitalWrite(11,LOW); 

} 

void IRATRAS(){ 

digitalWrite(8,HIGH); 
digitalWrite(9,LOW); 
digitalWrite(10,LOW); 
digitalWrite(11,HIGH); 
} 

void IRIZQUIERDA(){ 

digitalWrite(8,HIGH); 
digitalWrite(9,LOW); 
digitalWrite(10,HIGH); 
digitalWrite(11,LOW); 

} 

void IRDERECHA(){ 

digitalWrite(8,LOW); 
digitalWrite(9,HIGH); 
digitalWrite(10,LOW); 
digitalWrite(11,HIGH); 

} 

void STOP(){ 

digitalWrite(8,LOW); 
digitalWrite(9,LOW); 
digitalWrite(10,LOW); 
digitalWrite(11,LOW); 
}

recuerden tener las librerías de los ultrasonicos

adjunto también la imagen de el pcb para imprimir haci como el mismo archivo pcb diseñado en pcb wizard para guiarse en las conexiones

imagen pcb final.png
Ver el archivo adjunto final obstaculos.rar


video

busca en youtube mi canal se llama jhonmixtec

es el único que aparece y hay esta la demostración de el robot

esta es la primera de las 4 partes de mi proyecto espero les guste y les sirva cualquier duda quedo atento.
 
Última edición por un moderador:
busca en youtube mi canal se llama jhonmixtec

es el único que aparece y hay esta la demostración de el robot

y el video esta como robot evita obstaculos con arduino por sixtojsbs
 
Última edición:
Atrás
Arriba