- Foosbar es un proyecto de mesa de futbolito totalmente autónoma donde un lado del jugador es controlado por un robot y del otro lado juega una persona
- El lado robótico puede realizar defensa, pases y tiros mediante control de motores, y su creador considera la naturaleza repetitiva de la práctica de futbolito como un buen objetivo para automatización
- El repositorio se divide en 3 componentes:
software,frontendyfirmware, y el código de operación real está principalmente ensoftwarepara control de motores frontendes una app web 3D para controlar la mesa como controlador remoto del juego, yfirmwareera código para una pantalla e-paper de marcador y para Teensy 4.1, pero es una parte antigua que no quedó completamente implementada- El código del proyecto está muy especializado para el entorno del creador, por lo que es poco probable que funcione tal cual, y tiene sobre todo el carácter de material de referencia para intentos similares
Lo que hace Foosbar
- Foosbar es una mesa de futbolito autónoma que su creador describe como “probablemente el mejor robot de futbolito del mundo, aunque no puede demostrarlo”
- Un lado de la mesa lo controla el robot, mientras que en el lado opuesto juega una persona
- El lado controlado por el robot puede realizar las siguientes acciones
-
Defensa
-
Pase
- Tiro
- El video de presentación del proyecto está disponible como video de YouTube
-
Motivación de desarrollo
- Al creador le gusta mucho el futbolito, pero como programador considera que una forma de práctica basada en repetir la misma tarea mientras mejora poco a poco la eficiencia es adecuada para automatización
- Foosbar nació como un intento de automatizar ese tipo de práctica repetitiva
- El creador dice que este proyecto mecanizó la diversión del juego para que él pudiera hacer otras cosas
Estructura del proyecto
- El repositorio se divide en 3 componentes principales
software: el código principal que controla directamente los motoresfrontend: una app web 3D para operar la mesa como controlador remoto del juegofirmware: código que buscaba mostrar la puntuación con Teensy 4.1 y una pantalla e-paper
firmwareya no es una parte central actual, y el creador aclara que nunca lo implementó por completo- Toda la estructura está ajustada al entorno de hardware específico del creador, por lo que el código del repositorio está más cerca de ser una referencia para quienes quieran intentar un proyecto similar
Compilación y ejecución
softwarerequiere compilar uWebSockets y hacer que CMake pueda encontrarlo- El creador escribió que lo instaló con
make && sudo cp ./uSockets/uSockets.a /usr/local/lib/libusockets.a - Qualisys realtime SDK también debe instalarse de manera similar
- El creador escribió que lo instaló con
- Después de instalar los requisitos, la compilación de
softwareusa el siguiente flujocd softwaremkdir build && cd buildcmake ..make./foosbar
firmwarees un proyecto estándar depioy se sube concd firmwareseguido depio run -t uploadfrontendse ejecuta concd frontendseguido denpx vite
1 comentarios
Opiniones en Hacker News
¡Realmente genial! Creo que el siguiente paso sería poner control robótico en ambos lados de la mesa y organizar un torneo online de IA de futbolito
Creo que entraría cada semana a ver cómo se enfrentan distintas IA
La construcción es excelente y el video también es entretenido. Me dio nostalgia de la época en que trabajaba presencialmente en la oficina y pasábamos muchísimo tiempo en la mesa de futbolito
En ese entonces hicimos un sistema automático de seguimiento de puntaje: etiquetabas la mesa con tu gafete, contaba los puntos con algunos sensores infrarrojos y tenía dashboard, ELO, temporadas y modo torneo. Las estadísticas y el feed de puntaje en vivo también se actualizaban automáticamente. Qué buenos tiempos
Me da mucha curiosidad cómo se habría visto si, en vez de poder gastar miles o decenas de miles de dólares en cámaras industriales de motion capture, hubieran usado un sistema de visión de presupuesto medio
Por ejemplo, usar de 2 a 4 cámaras con obturador global, aplicar un filtro visual similar al que mostraron al inicio y luego calcular la posición de la pelota con un filtro de Kalman/estimador de estado. Entiendo que siguieran el principio de “no construyas tú mismo lo que puedes comprar o conseguir por patrocinio”, pero también me gustaría ver soluciones o intentos más baratos para este problema
Es un poco irónico, porque el canal se llama From Scratch
La idea del proyecto es muy buena. Convertir varias cosas en CNC es bastante divertido, pero en algún punto se siente que ya todos vimos impresoras 3D, routers CNC, fresadoras CNC, amoladoras CNC, etc., hechas desde cero
En cambio esto se siente nuevo, y me gusta
Creo que este tipo va a llegar lejos
Si ya está abordando este tipo de problemas desde su cuarto, me pregunto qué podremos esperar de él en el futuro
“Logró mecanizar y eliminar toda la diversión que sentía en el juego, y gracias a eso ahora tengo la libertad de dedicarme a cosas más importantes y profundamente satisfactorias en la vida”
El enlace siguiente [1] demuestra que esta persona claramente es bastante buena en lo suyo :) El texto y el video también son hermosos, y el proyecto es impresionante
[1] https://github.com/misprit7/computerraria
¿Siempre hay 3 jugadores en la posición de portero? Recuerdo haber jugado antes con una configuración de 1 portero, es decir, 1-2-5-3, pero fue hace bastante tiempo
En las mesas tradicionales, las esquinas curvas son necesarias para que la pelota no se quede muerta en las esquinas. Pero con 3 porteros siempre puedes recuperar la pelota sin necesidad de esquinas curvas
En videos de la Copa Mundial de la ITSF se puede ver que ambos lados tienen un solo portero: https://m.youtube.com/watch?v=3vnrAIOWDwo&pp=ygUOaXRzZiB3b3J...
También había un documental bastante interesante sobre cómo el futbolito se volvió popular en Estados Unidos y luego decayó, y si no recuerdo mal estaba muy vinculado con la empresa que fabricó las mesas Tornado. Lo vi hace tiempo en YouTube, pero ahora no lo encuentro. Puede que haya sido “Foosballers”, pero no estoy seguro
Al menos las mesas oficiales de la International Table Soccer Federation tienen un solo portero y esquinas elevadas
https://www.tablesoccer.org/tables/leonhart.php
Ahora tengo que salir rápido de esta madriguera antes de ponerme a revisar el reglamento de 41 páginas
https://www.tablesoccer.org/rules/documents/Standard_Matchpl...
Hoy es menos común porque parte del futbolito competitivo usa una disposición trasera de 3 jugadores, aunque hay al menos una excepción. Investigué por una reunión de exalumnos de una fraternidad mixta, y las mesas clásicas con rampas eran muy difíciles de encontrar. Se dañaban mucho porque estaban hechas de aglomerado. Una empresa que usa rampas emplea una pendiente más suave en lugar de rampas de esquina empinadas añadidas
Realmente genial. Me gustaría tener uno en casa para practicar
Pero ¿este robot también puede hacer trash talk? Como alguien a quien le gusta el futbolito, intimidar al rival está profundamente arraigado en la cultura (ver Community) y es una parte importante para ganar al más alto nivel, así que debería ser el siguiente paso. Creo que algún jugador serio de futbolito podría crear la primera AGI real solo para lograr un trash talk adecuado
El futbolito no es un deporte olímpico como el tenis de mesa ni un juego de mesa con respeto cultural como el ajedrez, pero aunque hoy un robot me ganaría fácilmente al ajedrez, una mesa de futbolito robótica de punta todavía parece algo a lo que yo podría ganarle
Todo el video es deliberadamente seco y gracioso, y la escena en la que destroza a su hermano en el proceso fue especialmente divertida. Su hermano también se lo tomó muy bien
Al final no lo hice porque solo quería publicar el video, pero habría sido gracioso
Bastante genial. ¿Esta persona es algún YouTuber famoso o algo así? Me sorprende que haya conseguido patrocinio con tanto éxito como para que las empresas le enviaran componentes de alta gama
Me sonaba su cara: era la persona que hizo una CPU completa dentro del juego Terraria
https://www.youtube.com/watch?v=zXPiqk0-zDY