Inicio

lunes, 4 de junio de 2018

ROBOTICA

ROBOT  ESQUIVA OBJETOS

OBJETIVO: 

En esta ocasión  traemos un post para desarrollar tu propio robot capaz de esquivar objetos. Este robot es una opción estupenda para los que quieran iniciarse en el mundo de la robótica ya que usa motores de corriente continua, controlador de motores, Arduino y sensor de distancia por ultrasonidos que te puede medir las distancias entre obstáculos y otros.

MATERIALES:

25 cables de 20cm macho-hembra:

 Nos servira como un conductor

Bateria de 9v


La pila 9 voltios (o pila 9V) es una pila eléctrica de nueve voltios. Es llamada regularmente pila a transistor debido a su gran utilización en las primeras radios a transistores. La pila tiene la forma de un prisma rectangular con las aristas redondeadas con un connector que posee dos teminales uno positivo y uno negativo sobre un de sus lados.


 Arduino


Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.


Características de un Microcontrolador:

  • Velocidad del reloj u oscilador
  • Tamaño de palabra
  • Memoria: SRAM, Flash, EEPROM, ROM, etc..
  • I/O Digitales
  • Entradas Analógicas
  • Salidas analógicas (PWM)
  • DAC (Digital to Analog Converter)
  • ADC (Analog to Digital Converter)
  • Buses
  • UART
  • Otras comunicaciones.
Fuente para la bateria

 Las fuentes de alimentación autónomas proporcionan alimentación auxiliar de apoyo a sistemas de control de incendio que no pueden alimentarse desde la fuente de alimentación principal del panel de control por falta de capacidad o para evitar pérdidas de potencia a lo largo del cableado.








Chasis de robot 2WD

Uno de los mejores y mas prácticos chasis de robot con ruedas. Imprescindible para todo aquel que desee iniciarse en el mundo de la robótica. Es de fácil montaje y manejo.

Sensor ultrasonido

Este sensor mide la distancia a la que se encuentran los objetos calculando el tiempo que tarda una señal de ultrasonidos en ir y volver a un objeto.
Características:
-Tensión de funcionamiento: 5V.
-Distancia de detección: 1 a 500 cm.
-Ángulo de detección: 20º.
-4 pines (Vcc, Echo, Triger, Gnd.)

 Pernos y tuerca

Está relacionada con el tornillo, pero tiene un extremo de cabeza redonda, una parte lisa, y otro extremo roscado para la chaveta,tuerca, o remache, y se usa para sujetar piezas en una estructura, por lo general de gran volumen. Un espárrago, en cambio, es unperno sin cabeza, roscado en sus dos extremos.

Modulo bluetooth

 con antena integrada, es un modulo de comunicación qeu trabaja a 5VDC, incluye maestro y esclavo integrados en un mismo dispositivo, muy facil de usar, ideal para principiantes.


PRIMER AVANCE


  • Trabajando con el sensor ultrasonido:


SEGUNDO AVANCE

  • Ensamblaje de nuestro robot





  • Video evidencial



  • Programa para el funcionamiento de nuestro robot

int AN = 5; 

int A = 6; 
int BN = 9; 
int B = 10; 

int GO =  120;            
int estado = 'G';   

int led1 = 2;
int led2 = 3;

int eco = 7;            
int trig = 8;            
int duracion, distancia;  

void setup()
  Serial.begin(9600);    
  
  pinMode(A, OUTPUT);
  pinMode(AN, OUTPUT);
  pinMode(B, OUTPUT);
  pinMode(BN, OUTPUT);
  
  pinMode(eco, INPUT);    
  pinMode(trig,OUTPUT);   
  pinMode(13,OUTPUT);
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);

void loop() 

  if(Serial.available()>0)
  {        
    estado = Serial.read();
  }
  if(estado=='A')
  {           
    analogWrite(A, GO);     
    analogWrite(AN, 0); 
    analogWrite(B, GO);  
    analogWrite(BN, 0);

    digitalWrite(led1, HIGH);
    digitalWrite(led2, LOW);
    
  }

  if(estado=='B')
  {           
    analogWrite(A, GO);     
    analogWrite(AN, 0); 
    analogWrite(B, 0);  
    analogWrite(BN, 0);

    digitalWrite(led1, LOW);
    digitalWrite(led2, LOW);
  }
  
if(estado=='C')
  { 
    digitalWrite(led1, LOW);          
    analogWrite(A, 0);     
    analogWrite(AN, 0); 
    analogWrite(B, 0);  
    analogWrite(BN, 0);

    digitalWrite(led2, HIGH);
    delay(200);
    digitalWrite(led2, LOW);
    delay(100);
    
  }
  
  if(estado=='D')
  {           
    analogWrite(A, 0);     
    analogWrite(AN, 0); 
    analogWrite(B, GO);  
    analogWrite(BN, 0);

     digitalWrite(led1, LOW);
    digitalWrite(led2, LOW);
  }

  if(estado=='E')
  {           

    digitalWrite(led1, LOW);
    analogWrite(A, 0);     
    analogWrite(AN, GO); 
    analogWrite(B, 0);  
    analogWrite(BN, GO);
    
    digitalWrite(led2, HIGH);
    delay(200);
    digitalWrite(led2, LOW);
    delay(100);
  }
  
  if (estado =='F')
  {           
  
     digitalWrite(trig, HIGH);   
     delay(0.01);
     digitalWrite(trig, LOW);
     
     duracion = pulseIn(eco, HIGH);              
     distancia = (duracion/2) / 29;           
     delay(10); 
     
     if (distancia <= 15 && distancia >=2)
     {   
        digitalWrite(13,HIGH);                 
        
        analogWrite(A, 0);     
        analogWrite(AN, 0); 
        analogWrite(B, 0);  
        analogWrite(BN, 0); 
        delay (200);

        digitalWrite(led1, HIGH);
        delay(150);
        digitalWrite(led1, LOW);
        delay(100);
        
        analogWrite(A, GO);               
        analogWrite(B, GO); 
        delay(500);           
        
        analogWrite(A, 0);     
        analogWrite(AN, GO); 
        analogWrite(B, 0);  
        analogWrite(BN, GO);  
        delay(600);
        analogWrite(A, 0);     
        analogWrite(AN, 0); 
        analogWrite(B, 0);  
        analogWrite(BN, GO);
        delay(1000);
        
        digitalWrite(13,LOW);
        digitalWrite(led1, LOW);
     }
     else
     {   
     
      digitalWrite(led1, HIGH);
        delay(150);
        digitalWrite(led1, LOW);
        delay(100); 
                         
         analogWrite(A, GO);     
         analogWrite(AN, 0); 
         analogWrite(B, GO);  
         analogWrite(BN, 0); 
     }
  }
    if(estado=='G')
    {           
      analogWrite(A, 0);     
      analogWrite(AN, 0); 
      analogWrite(B, 0);  
      analogWrite(BN, 0);

       digitalWrite(led1, LOW);
    digitalWrite(led2, LOW);
   
    }



PRESENTACIÓN FINAL:








Conclusiones:
  • Se presentaron algunos inconvenientes al momento de crear la programación, aunque al principio nos fue un poco complicada la programación, se logró terminar.
  • Se aprendió a manejar el programa ARDUINO.
  • Mediante este trabajo, pudimos concretar invaluable conocimiento sobre la puesta en marcha de motores electicos mediante un “puente H” y la programación de unPIC16F84A. Con este ensamble del puente H, podemos controlar el sentido de giro de los motores, de igual manera, la necesidad de utilizar una fuente de voltaje regulada, para tener 5V de salida y así alimentar el PIC.
  • Una vez culminado nuestro proyecto se nos iso mas fácil modificar y probarlo al mismo tiempo nuestro programa.




RECOMENDACIONES:

- La recomendación mas básica  seria, empezar por la mecánica  tomando en cuenta por supuesto, la potencia de los motores, que deben tener la suficiente fuerza para soportar al chasis, cabe destacar que todo debe estar alineado, de la forma mas precisa posible, ya que, de lo contrario, el control tendrá que lidiar con esos defectos en la alineación.

- Algo que es muy importante, es el peso, ya que mientras menos peso exista, menor sera la inercia a vencer, tanto en el arranque como en las curvas. con menos peso también, los motores tendrán que hacer menos esfuerzo y al hacer menos esfuerzo, necesitaran menos corriente, al necesitar menos corriente, se podrán ocupar baterías mas pequeñas y al usar baterías mas pequeñas, se podrá tener menos peso.

- Parte del diseño de la mecánica  debe ser el tipo de pilas a ocupar, para que estas, no queden mal puestas o desequilibren el centro de gravedad del móvil, así que se les debe considerar desde el principio.

- Recomendamos amplia mente las baterías  según nuestra experiencia son las de ion de litio o polímero de litio, ya que son ligeras, tienen una tasa de descarga alta y se recargan rápidamente.

- Algo mas que se debe considerar desde el diseño de la mecánica  son las llantas y los motores, en este caso se recomiendan llantas pequeñas para que el centro de gravedad del móvil tenga poca altura y los motores, de preferencia que sean de bajo voltaje, para no tener que ocupar pilas muy grandes.







No hay comentarios:

Publicar un comentario