viernes, 7 de diciembre de 2018

LABORATORIO_16

SEGUIDOR DE LINEAS CON SENSOR ULTRASONICO

OBJETIVOS:
1.                 Identificar las partes del ELEGOO y verificar las conexiones de los sensores infrarrojos y del sensor ultrasónico en los manuales correspondientes.
2.                 Realizar la programación para que el carro realice la trayectoria por las líneas diseñadas por el docente además de evadir el obstáculo puesto en el camino.
3.                 Identificar el comportamiento del sensor ultrasónico.
4.                 Identificar el funcionamiento de los sensores infrarrojos

MARCO TEÓRICO

Carro ELEGOO
: Es un kit educativo para principiantes para obtener experiencia práctica sobre la programación de Arduino, ensamblaje de componentes electrónicos y conocimiento de robótica. Es una solución de integración para el aprendizaje de la robótica y está hecha para la educación Arduino
Tiene más  de 10 actualizaciones: como el sensor remoto IR integrado en la placa, 3 módulos de seguimiento de línea en una placa, también se puede instalar sensores adicionales en la misma placa de extensión.

VISTA CARRO ELEGOO

   ACCESORIOS DEL CARRO ELEGOO



  
                                    
LOS SENSORES INFRARROJOS


son unos componentes electrónicos compuestos normalmente de un LED infrarrojo y un fototransistor colocados uno al lado del otro, de forma que el LED actúa como emisor y el fototransistor como receptor. El LED infrarrojo emite luz infrarroja, o sea, de mayor longitud de onda (o menor frecuencia) que la podemos ver los humanos, así que para nosotros es invisible. Si esta luz choca contra una superficie blanca se reflejará y llegará al fototransistor. Si por el contrario golpea en una superficie negra, el material absorberá la mayoría de la luz y no llegará al fotorreceptor.



Este sensor tiene 3 pines de conexión, 5V y GND para la alimentación y OUT para enviar la señal al Arduino que nos indicará si está llegando o no el reflejo del LED al fototransistor, y además incorpora un LED y un potenciómetro. Funciona de esta forma:

  • Si está llegando la luz al fotorreceptor se ilumirá un LED en el sensor y enviará una señal LOW  al exterior.
  •  Si no está llegando no se iluminará el LED y enviará una señal HIGH.
  •   Mediante el potenciómetro ajustamos la sensibilidad del fotorreceptor.




SENSOR ULTRASONICO 

El sensor ultrasónico es un tipo de sensor acústico, el sensor emite un sonido y mide el tiempo que la señal tarda en regresar. Estos reflejan en un objeto, el sensor recibe el eco producido y lo convierte en señales eléctricas.


CARACTERÍSTICAS

•    Voltaje de Funcionamiento: 5V (DC)
•    Corriente Stand By: <2 mA
•    Consumo en Funcionamiento: 15mA
•    Frecuencia de Funcionamiento: 40KHz
•    Señal de salida: Tren de Pulsos, nivel alto a 5V, nivel bajo a 0V
•    Ángulo Eficaz de Detección: < 15°
•    Distancia de Detección: 2 – 450 cm
•    Resolución: 0,3 cm
•    Señal de Entrada para Disparo (Trigger): TTL pulso 10us
•    Señal de Salida para Eco (Echo) a: Señal PWL de TTL


CONEXIÓN DEL SENSOR ULTRASÓNICO CON EL ARDUINO




TRAYECTORIA 




VÍDEO DE FUNCIONAMIENTO





VÍDEO DE SOFTWARE



PROGRAMA REALIZADO


  • Al iniciar nuestra programación utilizamos ciclos while y break los cuales confundieron al evasor de obstáculos hacienda que nuestro programa no funcione de manera adecuada.
  • El cargado de las pilas influye en la velocidad del motor y está en el cálculo de evasión de obstáculos.
  • El sensor ultrasónico que contiene el robot tiene dos señales, una que emite y otra que recepciona los cuales son llamadas con las letras T(emisor) y R(receptor).
  • Para realizar un cambio en la velocidad a la que avanza el motor debemos crear una variable y darle un numero como máximo 250db.
  • Para calcular la distancia que debe medir el sensor ultrasónico debemos usar la siguiente formula  L = ½ * T * C  donde L es la distancia a la cual queremos que el objeto sea detectado, T es el tiempo que demorara en hacerlo y C es la velocidad del sonido que es de 343.2 m/s esta ecuación es multiplicada por ½ ya que representa el tiempo de emisión y de recepción.

CONCLUSIONES

  • Realizamos la programación para un seguidor de línea con dos sensores infrarrojos, además de evadir los obstáculos con un sensor ultrasónico.
  • Fue necesario separar en otro "if" las instrucciones del evasor de obstáculos y las del seguidor de línea.
  • Realizamos el cálculo de tiempos para evadir el obstáculo utilizando las subrutinas adelante, derecha e izquierda
  • La velocidad con la que trabajamos es de 125, ya que cada cálculo para la evasión es distinta para cada velocidad
  • Se creó una nueva variable llamada “ABS” a la cual le dimos un valor de 125, esta variable regula la velocidad a la cual el carro avanza.
  • En la instrucción “void setup” declaramos la variable Echo como entrada, las variables in, ENA, ENB y trig  como salidas.
  • El void “_mForward” hace que el carro vaya hacia adelante en la cual habilitamos la variable de velocidad y los ENA Y ENB.
  • La subrutina void “_mleft” hace que el carro gire hacia la izquierda pero solo sobre su eje, esto puede ser modificado dándole un tiempo limitado de giro para evadir los objetos que tenga enfrente.
  • La subrutina void “_mright” le permite al carro girar hacia la derecha, esta instrucción se utilizó para evadir un objeto siguiendo una secuencia de giros
  • Creamos una instrucción llamada “_stop” que apaga todas los habilitadores “ENA-ENB”, esto con el fin de detener el carro por un pequeño tiempo cuando este frente a un objeto.
  • Creamos variables de tipo booleano para en número de sensores.
  • Creamos las subrutinas para que el carrito vaya hacia adelante, atrás, izquierda, derecha y parada.
  • Determinamos el modo del pin, los sensores como entradas y los motores y habilitadores como salidas.
  • Trabajamos con un tipo de transmisión serial con una velocidad de 9600 bps.


Integrantes

  • Mendiola Espinoza Gilmar Jose
  • Ticona Condori Nicol Stephanie



jueves, 6 de diciembre de 2018

LABORATORIO_15

SEGUIDOR DE LINEAS

OBJETIVOS:
  1. Identificar las partes del ELEGOO y verificar las conexiones en los manuales correspondientes.
  2. Realizar la programación para que el carro realiza la trayectoria por las líneas diseñadas por el docente.
  3. Identificar el funcionamiento de los sensores infrarrojos.
MARCO TEÓRICO

Carro ELEGOO: Es un kit educativo para principiantes para obtener experiencia práctica sobre la programación de Arduino, ensamblaje de componentes electrónicos y conocimiento de robótica. Es una solución de integración para el aprendizaje de la robótica y está hecha para la educación Arduino
Tiene más  de 10 actualizaciones: como el sensor remoto IR integrado en la placa, 3 módulos de seguimiento de línea en una placa, también se puede instalar sensores adicionales en la misma placa de extensión.


                                                           VISTA CARRO ELEGOO

                                   

                                                   ACCESORIOS DEL CARRO ELEGOO

                                     


Los sensores infrarrojos.- son unos componentes electrónicos compuestos normalmente de un LED infrarrojo y un fototransistor colocados uno al lado del otro, de forma que el LED actúa como emisor y el fototransistor como receptor. El LED infrarrojo emite luz infrarroja, o sea, de mayor longitud de onda (o menor frecuencia) que la podemos ver los humanos, así que para nosotros es invisible. Si esta luz choca contra una superficie blanca se reflejará y llegará al fototransistor. Si por el contrario golpea en una superficie negra, el material absorberá la mayoría de la luz y no llegará al fotorreceptor.



Este sensor tiene 3 pines de conexión, 5V y GND para la alimentación y OUT para enviar la señal al Arduino que nos indicará si está llegando o no el reflejo del LED al fototransistor, y además incorpora un LED y un potenciómetro. Funciona de esta forma:
  • Si está llegando la luz al fotorreceptor se ilumirá un LED en el sensor y enviará una señal LOW  al exterior.
  •  Si no está llegando no se iluminará el LED y enviará una señal HIGH.
  •   Mediante el potenciómetro ajustamos la sensibilidad del fotorreceptor.




TRAYECTORIA DE LÍNEAS


PROGRAMA REALIZADO


VIDEO  GENERAL


EXPLICACIÓN DE SOFTWARE 


CONCLUSIONES
  • Cargamos el programa de prueba el cual trabaja con 3 sensores, verificando que este funcione correctamente.
  • Realizamos un programa seguidor de líneas en el cual utilizamos dos sensores ópticos reflectivos que emiten un haz de luz y esta se refleja en objetos de color blanco y se pierde en objetos de color negro.
  • Incluimos las librerías de seguidor de líneas para dos sensores.
  • Creamos variables de tipo entero para los motores, habilitadores y velocidad de motor. Adicionalmente incluimos la variable denominado control, esta serviría para el funcionamiento en ambos sentidos. Sin embargo, no fue posible realizar el seguimiento de líneas en ambos sentidos en el segundo circuito, debido a que contábamos con solo dos sensores.
  • Creamos variables de tipo booleano para en número de sensores.
  • Creamos las subrutinas para que el carrito vaya hacia adelante, atrás, izquierda, derecha y parada.
  • Determinamos el modo del pin, los sensores como entradas y los motores y habilitadores como salidas.
  • Trabajamos con un tipo de transmisión serial con una velocidad de 9600 bps.
  • Al iniciar el programa en “void loop”, lo primero que hacemos determina la lectura de los sensores con “digitalRead” y la guardamos en las variables num1 y num2.
  • Utilizamos la función “if” para preguntar “(!num1 && num2)”; donde “!num1” pregunta si el sensor 1 está en el color blanco y “num2” pregunta si el sensor 2 está en el color negro. De esta manera aseguramos que el carro se encuentra en el borde del camino. Y, si esto ocurre el carro ira hacia adelante.
  • Si los sensores detectan “(num1 && !num2)”; donde “num1” pregunta si el sensor 1 está en el color negro y “!num2” pregunta si el sensor 2 está en el color blanco. De esta manera verificamos que el carro se encuentra en una curva. Y, si esto ocurre el carro ira hacia la izquierda.
  • Finalmente si los sensores detectan” (!num1 && !num2)” ; donde “num1” pregunta si el sensor 1 está en el color blanco y “!num2” pregunta si el sensor 2 está en el color blanco. De esta manera verificamos que el carro se encuentra fuera de la pista. Y, si esto ocurre el carro ira hacia la derecha. 

OBSERVACIONES
  • El sensor infrarrojo se basa en la combinación de un emisor y un receptor próximos en ellos, normalmente forman parte de un mismo circuito integrado, el emisor es un diodo LED infrarrojo y el componente receptor el fotodiodo
  • El color negro absorbe la luz y el color blanco lo refleja.
  • El sensor utilizado emite un haz de luz infrarrojo y este haz es reflejado si se encuentra un material blanco y se pierde en un material de color negro.
  • El signo “!” niega una variable como en el “num1” el cual indica color negro y “!num1” que indica color blanco.
  • En caso de que el recorrido tenga un doble camino o líneas entrecortadas en carro debe ser capaz de tomar la mejor decisión.
  • La programación utilizó la instrucción "if" para determinar si se cumple una condición e "if else" para determinar si se cumple la otra condición y por último se usó la instrucción "else" para cumplir una condición diferente a las anteriores.

INTEGRANTES
  • Mendiola Espinoza Gilmar Jose
  • Ticona Condori Nicol Stephanie