Tabla de contenido:

Mesa de futbolín autónoma: 5 pasos (con imágenes)
Mesa de futbolín autónoma: 5 pasos (con imágenes)

Video: Mesa de futbolín autónoma: 5 pasos (con imágenes)

Video: Mesa de futbolín autónoma: 5 pasos (con imágenes)
Video: JUEGO de MESA de FÚTBOL, cómo se hace | Te Digo Cómo 2024, Mes de julio
Anonim
Mesa de futbolín autónoma
Mesa de futbolín autónoma
Mesa de futbolín autónoma
Mesa de futbolín autónoma
Mesa de futbolín autónoma
Mesa de futbolín autónoma

El objetivo principal del proyecto era completar un prototipo funcional para una mesa de futbolín autónoma (AFT), donde un jugador humano se enfrenta a un oponente robótico. Desde la perspectiva humana del juego, la mesa de futbolín es muy similar a una mesa normal. Los jugadores del lado humano se controlan a través de una serie de cuatro manijas que se pueden mover hacia adentro y hacia afuera y girarse para mover a los jugadores linealmente a través del campo de juego y patear la pelota hacia la portería del oponente. El lado autónomo consta de:> Ocho servomotores que se utilizan para manipular los mangos del futbolín> Un microcontrolador para activar los servomotores y comunicarse con la computadora> Una cámara web montada en la parte superior para rastrear la pelota y los jugadores> Una computadora para procesar las imágenes de la cámara web, implementar inteligencia artificial y comunicarse con el microcontrolador Las restricciones presupuestarias para el prototipo ralentizaron un poco el proyecto y mantuvieron su funcionalidad al mínimo. Se descubrió que los motores adecuados para mover a los jugadores a una velocidad competitiva eran muy costosos, por lo que se tuvieron que usar servos de gama baja. Si bien esta implementación en particular estaba limitada por el costo y el tiempo, una relación de transmisión más grande produciría un robot de juego más rápido, aunque hacerlo costaría más que el precio base de $ 500 (precio sin fuente de alimentación y computadora).

Paso 1: Montaje de la placa de control del motor

Montaje de la placa de control del motor
Montaje de la placa de control del motor
Montaje de la placa de control del motor
Montaje de la placa de control del motor
Montaje de la placa de control del motor
Montaje de la placa de control del motor
Montaje de la placa de control del motor
Montaje de la placa de control del motor

Las imágenes adjuntas son un esquema de circuito completo, así como una imagen del producto final para la placa de control del motor. Todas estas piezas requeridas se pueden comprar en la mayoría de las principales tiendas de electrónica en línea (incluidas Digi-Key y Mouser. Como nota al margen, todas las piezas utilizadas aquí fueron pasantes y, por lo tanto, las piezas se pueden ensamblar en una protoboard / protoboard, o usando el diseño de PCB adjunto. Se podría crear un paquete mucho más pequeño usando varias piezas de montaje en superficie. Cuando implementamos el diseño, dividimos los controles del motor en 2 circuitos, aunque no hay ninguna ventaja en hacerlo más que cualquier esquema de cableado particular utilizado La pequeña placa azul implementa el circuito de control PWM, que es básicamente un PIC-12F sincronizado con algún código especializado.

Paso 2: Ensamblaje del servomotor

Ensamblaje del servomotor
Ensamblaje del servomotor
Ensamblaje del servomotor
Ensamblaje del servomotor
Ensamblaje del servomotor
Ensamblaje del servomotor

Se utilizan dos tipos diferentes de servos. Primero, el movimiento lateral es controlado por un grupo de cuatro servos de alto torque: Robotis Dynamixel Tribotix AX-12. Estos cuatro se ejecutan en una sola línea serial y brindan una funcionalidad asombrosa. El alto par permite que estos servos se engranen de tal manera que proporcionen una alta velocidad tangencial para el movimiento lateral. Pudimos encontrar un juego de engranajes y orugas de 3.5 pulgadas para acompañarlos de Grainger a un costo de aproximadamente $ 10 por cada uno. Los servos brindan protección contra sobrecarga de par, un esquema de direccionamiento de servo individual, comunicaciones rápidas, monitoreo de temperatura interna, comunicaciones bidireccionales, etc. La desventaja de estos servos es que son costosos y no muy rápidos (aunque los engranajes los ayudan). Entonces, para obtener un movimiento más rápido para patear, se utilizan los Hitec HS-81. Los HS-81 son relativamente económicos, tienen una velocidad angular decentemente rápida y son fáciles de conectar (PWM estándar). Sin embargo, los HS-81 solo giran 90 grados (aunque es posible, y no se recomienda, intentar modificarlos a 180 grados). Además, tienen engranajes internos de nailon que se quitan fácilmente si intentas modificar el servo. Valdría la pena el dinero para encontrar un servo giratorio de 180 grados que tenga este tipo de velocidad angular. Todo el sistema está unido con piezas de tablero de fibra de densidad media (MDF) y tablero de fibra de alta densidad (HDF). Esto fue elegido por su bajo costo (~ $ 5 por una hoja de 6'x4 '), facilidad de corte y capacidad para interactuar con prácticamente cualquier superficie. Una solución más permanente sería mecanizar soportes de aluminio para mantener todo junto. Los tornillos que sostienen los servos PWM en su lugar son tornillos de máquina estándar (# 10s) con tuercas hexagonales que los sujetan desde el otro lado. Tornillos de máquina métrica de 1 mm, de aproximadamente 3/4 de largo, sostienen el AX-12 en el MDF que conecta los dos servos juntos. Un riel de cajón de doble acción sostiene todo el conjunto hacia abajo y en línea con el riel.

Paso 3: software

Software
Software

El último paso es instalar todo el software utilizado en la máquina. Este consta de algunas piezas de código individuales:> El código se ejecuta en la PC de procesamiento de imágenes> El código se ejecuta en el microcontrolador PIC-18F> El código se ejecuta en cada uno de los microcontroladores PIC-12F Hay dos requisitos previos para instalar en el procesamiento de imágenes ORDENADOR PERSONAL. El procesamiento de imágenes se realiza a través de Java Media Framework (JMF), que está disponible a través de Sun aquí. También disponible a través de Sun, la API de comunicaciones de Java se utiliza para comunicarse con la placa de control del motor, a través del puerto serie de la computadora. La belleza de usar Java es que * debería * ejecutarse en cualquier sistema operativo, aunque usamos Ubuntu, una distribución de Linux. Contrariamente a la opinión popular, la velocidad de procesamiento en Java no es tan mala, especialmente en el bucle básico (que el análisis de visión usa bastante). Como se ve en la captura de pantalla, tanto la pelota como los jugadores oponentes son rastreados en cada actualización de cuadro. Además, el contorno de la mesa se ubica visualmente, por lo que se utilizó cinta de pintores azul para crear un contorno visual. Los goles se registran cuando la computadora no puede ubicar la pelota durante 10 cuadros consecutivos, lo que generalmente indica que la pelota cayó dentro de la meta, fuera de la superficie de juego. Cuando esto sucede, el software inicia un byte de sonido para animarse a sí mismo o abuchear al oponente, dependiendo de la dirección del gol. Un sistema mejor, aunque no tuvimos tiempo para implementarlo, sería utilizar un simple par emisor / sensor de infrarrojos para detectar la caída de la pelota en la portería. Todo el software utilizado en este proyecto está disponible en un solo archivo zip., aquí. Para compilar el código Java, use el comando javac. El código PIC-18F y PIC-12F se distribuye con el software MPLAB de Microchip.

Paso 4: Montaje de la cámara web

Montaje de cámara web
Montaje de cámara web

Se utilizó una cámara web Philips SPC-900NC, aunque no se recomienda. Las especificaciones de esta cámara fueron falsificadas por el personal de ingeniería o de ventas de Philips. En cambio, cualquier cámara web barata funcionaría, siempre que sea compatible con el sistema operativo. Para obtener más información sobre el uso de cámaras web en Linux, consulte esta página. Medimos la distancia requerida por la distancia focal de la cámara web para que quepa toda la mesa de futbolín en el marco. Para este modelo de cámara, ese número resultó ser de poco más de 5 pies. Usamos estanterías disponibles en cualquier ferretería importante para construir un soporte para la cámara. Los estantes de las estanterías se extienden hacia arriba desde cada una de las cuatro esquinas de la mesa y están reforzados por soportes de aluminio en ángulo. Es muy importante que la cámara esté centrada y no tenga rotación angular, ya que el software asume que los ejes xey están alineados con la mesa.

Paso 5: Conclusión

Todos los archivos del proyecto relacionados se pueden descargar en este sitio. Puede encontrar una copia de seguridad de la mayor parte del contenido del sitio aquí, en mi proveedor de alojamiento web personal. Esto incluye el informe final, que tiene un análisis de marketing, así como las cosas que cambiaríamos, nuestros objetivos originales y una lista de las especificaciones que realmente se alcanzaron. El proyecto NO pretende ser el jugador más competitivo del mundo. Es una buena herramienta para mostrar más de los pasos utilizados en el diseño de una bestia así, así como un prototipo decente de este tipo de robot construido a un costo increíblemente bajo. Hay otros robots de este tipo en el mundo y, ciertamente, muchos de ellos "vencerían" a este robot. Este proyecto fue diseñado por un grupo de cuatro ingenieros eléctricos / informáticos en Georgia Tech como un proyecto de diseño senior. Ningún ingeniero mecánico recibió ayuda y no se utilizó financiación de terceros. Fue un gran proceso de aprendizaje para todos nosotros y un uso decente del tiempo del curso de diseño de alto nivel., por no disuadirnos de intentar un proyecto más ambicioso> James Steinberg y Edgar Jones, administradores sénior del laboratorio de diseño, por su ayuda constante en el pedido de piezas, la resolución de problemas y la búsqueda de "cosas interesantes" para incorporar al proyecto a bajo costo y alta funcionalidad> Y por supuesto, los otros tres miembros de mi equipo, de los cuales nada de esto hubiera sido posible: Michael Aeberhard, Evan Tarr y Nardis Walker.

Recomendado: