Por primera vez el equipo Bunker-Tech tubo participación en la Feria Mexicana de Ciencias e Ingeniería 2014, en las instalaciones de el Planetario "Mtro. Germán Martínez Hidalgo" en la ciudad de Puebla los días 22, 23 y 24 de octubre del año en curso.
El proyecto registrado fue "Robot autónomo tipo SCARA capaz de jugar gato" el cual se dividió en tres áreas para su realización:
- Diseño Mecánico
- Visión Artificial
- Algoritmo de toma de decisiones
Diseño Mecánico.
El sistema se compone de un brazo manipulador tipo Scara sujeto a un ambiente de trabajo que posee un tablero y un arco encima del mismo para soportar una cámara que permite realizar operaciones con imágenes digitales. Tanto la estructura del brazo como la del arco están construidas con partes del kit educativo Tetrix de PITSCO.
El sistema se compone de un brazo manipulador tipo Scara sujeto a un ambiente de trabajo que posee un tablero y un arco encima del mismo para soportar una cámara que permite realizar operaciones con imágenes digitales. Tanto la estructura del brazo como la del arco están construidas con partes del kit educativo Tetrix de PITSCO.
Figura 1.- Brazo tipo SCARA y arco para sujeción de cámara web. |
Nota: El no contar con el Kit Educativo PITSCO no es un impedimento para el proyecto ya que es fácil sustituirlo con perfiles de aluminio.
Visión Artificial.
Las operaciones sobre las imágenes digitales capturadas por la cámara, se llevan a cabo con herramientas de visión artificial de MATLAB. El algoritmo activa la cámara y permite aclarar la imagen para después tomar una foto actual del tablero del gato.
Figura 2. Imagen procesada en Matlab de reconocimiento de objetos azules. |
Figura 3. Imagen procesada en Matlab de reconocimiento de objetos rojos. |
En la Figura 2 y 3, el algoritmo encierra en un recuadro el objeto (azul o rojo según sea el caso) y nos muestra un par de coordenadas en pixeles que permitirán programar el rango de los mismos en cada casilla para saber en que parte del tablero está el objeto; por otra parte las coordenadas son enlazadas con el punto de referencia cartesiano del robot.
Algoritmo de toma dedecisiones.
Una vez que
el software “sabe” la situación actual del tablero, decide que casilla es la
mejor para la elaboración de la jugada
siguiente. Se ha dotado al robot de un algoritmo de “inteligencia media”, según la habilidad del contrincante humano, el resultado del juego puede ser una victoria, empate o
derrota.
Calculada la mejor tirada para el brazo, se
envía ésta información a otro algoritmo,
el cual por medio de cinemática inversa envía a cada
servomotor el ángulo necesario para orientar cada eslabón y alcanzar la casilla
deseada. Para lograr este proceso, se obtuvo el modelo cinemático inverso del
robot por medio del método de Denavit-Hartenberg. Las ecuaciones obtenidas para la cinemática inversa son:
Donde:
θ1:
Ángulo del primer eslabón.
θ2:
Ángulo del segundo eslabón.
Una tarjeta
Arduino recibe la información y envía la señal a los servomotores, cuando el
extremo del brazo se encuentra justo encima de la casilla, MATLAB le envía a Arduino la señal para que mueva el servomotor (actuador final) para dejar caer una esfera en la casilla determinada.
Como se aprecia en la figura 4, el proceso de
juego de gato es un control de lazo cerrado, por lo tanto después de que el
brazo tire, esperará a que el humano haga su tirada y nuevamente tomará una
imagen para procesarla y saber el estado actual del juego, comenzando
nuevamente el ciclo.
Figura 5. Equipo Bunker-Tech. Giovanni Ortega Muños , Benjamín López Tello y Mario Josué Pérez Cruz |
Equipo Bunker-Tech
No hay comentarios.:
Publicar un comentario