1 Punkte von GN⁺ 2024-06-07 | 1 Kommentare | Auf WhatsApp teilen
  • Foosbar ist ein Projekt für einen vollautonomen Tischfußballtisch, bei dem auf einer Seite ein Roboter den Spieler steuert und auf der anderen ein Mensch spielt
  • Die Roboterseite kann per Motorsteuerung verteidigen, passen und schießen; der Ersteller sieht die Wiederholbarkeit des Tischfußball-Trainings als geeignetes Ziel für Automatisierung
  • Das Repository ist in die drei Komponenten software, frontend und firmware aufgeteilt; der tatsächlich laufende Code befindet sich hauptsächlich in der motorsteuernden software
  • frontend ist eine 3D-Web-App, die den Tisch als Remote-Game-Controller steuert, und firmware war Code für ein E-Paper-Display zur Punkteanzeige und für den Teensy 4.1, ist aber eine veraltete Komponente, die nicht vollständig umgesetzt wurde
  • Der Projektcode ist stark auf die Umgebung des Erstellers zugeschnitten, sodass er sich vermutlich nicht direkt ausführen lässt und vor allem den Charakter von Referenzmaterial für ähnliche Versuche hat

Was Foosbar baut

  • Foosbar ist ein autonomer Tischfußballtisch, den der Ersteller als „den vermutlich besten Tischfußball-Roboter der Welt, auch wenn ich das nicht beweisen kann“ bezeichnet
  • Eine Seite des Tisches wird vom Roboter gesteuert, auf der gegenüberliegenden Seite spielt ein Mensch
  • Die robotergesteuerte Seite kann folgende Aktionen ausführen
    • Verteidigen

    • Passen

      • Schießen
      • Ein Vorstellungsvideo des Projekts ist als YouTube-Video verfügbar

Motivation für den Bau

  • Der Ersteller liebt Tischfußball sehr, ist aber als Programmierer der Ansicht, dass sich eine Trainingsmethode, bei der dieselbe Aufgabe wiederholt und schrittweise effizienter ausgeführt wird, gut für Automatisierung eignet
  • Foosbar entstand aus dem Versuch, ein solches Wiederholungstraining zu automatisieren
  • Der Ersteller beschreibt das Projekt so, dass es den Spaß am Spiel mechanisiert habe, damit er andere Dinge tun könne

Projektaufbau

  • Das Repository ist in drei Hauptkomponenten gegliedert
    • software: der Hauptcode, der die Motoren direkt steuert
    • frontend: eine 3D-Web-App, die den Tisch als Remote-Game-Controller bedient
    • firmware: Code, der mit einem Teensy 4.1 und einem E-Paper-Display den Spielstand anzeigen sollte
  • firmware ist nicht mehr Teil der aktuellen Kernkomponenten, und der Ersteller sagt, dass er sie nie vollständig umgesetzt hat
  • Die gesamte Struktur ist auf die spezifische Hardware-Umgebung des Erstellers zugeschnitten, daher ist der Repository-Code eher als Referenz für Personen gedacht, die ein ähnliches Projekt versuchen möchten

Build und Ausführung

  • Für software muss uWebSockets gebaut werden, damit CMake es finden kann
    • Der Ersteller schreibt, dass er es mit make && sudo cp ./uSockets/uSockets.a /usr/local/lib/libusockets.a installiert hat
    • Auch das Qualisys realtime SDK muss auf ähnliche Weise installiert werden
  • Nach der Installation der Anforderungen wird software mit folgendem Ablauf gebaut
    • cd software
    • mkdir build && cd build
    • cmake ..
    • make
    • ./foosbar
  • firmware ist ein Standard-pio-Projekt und wird nach cd firmware mit pio run -t upload hochgeladen
  • frontend wird nach cd frontend mit npx vite gestartet

1 Kommentare

 
GN⁺ 2024-06-07
Meinungen auf Hacker News
  • Wirklich cool! Der nächste Schritt wäre meiner Meinung nach, beide Seiten des Tisches von Robotern steuern zu lassen und ein Online-Turnier für Foosball-KIs zu veranstalten.
    Ich würde wohl jede Woche reinschauen, um zu sehen, wie verschiedene AIs gegeneinander antreten.

    • In anderen Bereichen hatte ich diese Idee schon, aber bei Foosball war ich nicht darauf gekommen. In der Praxis wirkt es wie ein hervorragender Anwendungsfall.
    • Sieht deutlich unterhaltsamer aus als AWS DeepRacer.
  • Großartige Umsetzung und ein unterhaltsames Video. Ich vermisse die Zeit, als ich früher noch im Büro gearbeitet habe und wir unglaublich viel Zeit am Foosball-Tisch verbracht haben.
    Damals hatten wir ein automatisches Scoring-System gebaut: Man taggte sich mit dem Badge am Tisch ein, ein paar Infrarotsensoren zählten die Punkte, dazu gab es Dashboard, ELO, Saisons und Turniermodus. Statistiken und Live-Score-Feed wurden ebenfalls automatisch aktualisiert – gute Zeiten.

  • Ich frage mich wirklich, wie es ausgesehen hätte, wenn sie statt Tausende bis Zehntausende Dollar für industrielle Motion-Capture-Kameras auszugeben ein Vision-System mit mittlerem Budget gewählt hätten.
    Zum Beispiel mit 2–4 Global-Shutter-Kameras, einem ähnlichen visuellen Filter wie in der ersten Demo und anschließend einem Kalman-Filter/Zustandsschätzer zur Berechnung der Ballposition. Ich verstehe die Regel „Baue nicht selbst, was du kaufen kannst oder was dir ein Sponsor stellen kann“, aber ich würde gern günstigere Lösungen oder Versuche für dieses Problem sehen.

    • Ich bin der Erbauer, und ja, das stimmt schon. Zumindest ich wollte mich beim Bau eines Foosball-Roboters aber auf den interessanten Teil konzentrieren – „Foosball“ – und nicht darauf, „an einem selbstgebauten Vision-System herumzufummeln, das nicht richtig funktioniert“.
      Etwas ironisch, da der Kanal From Scratch heißt.
    • Vor einiger Zeit gab es auf HN einen Beitrag über Positions-Tracking mit einer PlayStation-Eye-Kamera für 5 Dollar und Infrarot-LEDs, also möglich ist es definitiv.
  • Wirklich gute Projektidee. Verschiedene Dinge zu CNC-isieren ist ziemlich spaßig, aber irgendwann hat man gefühlt schon gesehen, wie Leute von Grund auf 3D-Drucker, CNC-Router, CNC-Fräsen, CNC-Schleifer usw. bauen.
    Das hier ist dagegen neu, und es gefällt mir.

  • Der Typ wird es noch weit bringen.

    • Durch die Auslassungspunkte kann es sarkastisch wirken. Falls du dich gefragt hast, woher die Downvotes kommen, dürfte es daran liegen.
    • Die Downvotes nehme ich demütig hin, aber ich meinte es wirklich positiv.
      Wenn er solche Probleme schon in seinem Zimmer angeht, fragt man sich, was man in Zukunft noch erwarten kann.
    • Wie alt ist er?
  • „Er hat erfolgreich all den Spaß, den ich an dem Spiel hatte, wegmechanisiert und mir dadurch die Freiheit gegeben, wichtigere und tiefer erfüllende Dinge im Leben zu verfolgen.“
    Der verlinkte Link [1] zeigt, dass diese Person in ihrem Bereich definitiv ziemlich gut ist :) Text und Video sind schön, und das Projekt ist beeindruckend.
    [1] https://github.com/misprit7/computerraria

  • Gibt es auf der Torwartposition immer drei Spieler? Ich erinnere mich, früher mit einer Aufstellung mit einem Torwart gespielt zu haben, also 1-2-5-3 – ist aber schon ziemlich lange her.

    • Das ist ein Merkmal der in den USA vor allem verbreiteten Tornado-Tische. Es wurde als Kostensparmaßnahme eingeführt, weil die vier zusätzlichen Figuren billiger sind als ein gewölbtes Spielfeld.
      Bei traditionellen Tischen sind gewölbte Ecken nötig, damit der Ball nicht in der Ecke liegen bleibt. Mit drei Torhütern kann man den Ball aber auch ohne gewölbte Ecken immer erreichen.
      In Videos vom ITSF World Cup sieht man, dass beide Seiten jeweils nur einen Torwart haben: https://m.youtube.com/watch?v=3vnrAIOWDwo&pp=ygUOaXRzZiB3b3J...
      Es gab auch eine ziemlich interessante Dokumentation darüber, wie Foosball in den USA groß wurde und dann wieder zurückging; wenn ich mich richtig erinnere, war sie eng mit der Firma verbunden, die Tornado-Tische herstellte. Ich habe sie früher auf YouTube gesehen, finde sie aber jetzt nicht mehr. Vielleicht hieß sie „Foosballers“, aber ich bin nicht sicher.
    • Nach mehreren Antworten könnte es wohl auch ein USA/Europa-Unterschied sein.
      Zumindest die offiziellen Tische der International Table Soccer Federation haben nur einen Torwart und erhöhte Ecken.
      https://www.tablesoccer.org/tables/leonhart.php
      Ich sollte jetzt schnell aus diesem Kaninchenbau aussteigen, bevor ich mich durch ein 41-seitiges Regelbuch grabe.
      https://www.tablesoccer.org/rules/documents/Standard_Matchpl...
    • Ich habe in meinem Leben noch nie einen Tisch gesehen, bei dem auf der Torwartposition drei Spieler stehen.
    • Die Tische mit nur einem Torwart, die ich gesehen habe, hatten erhöhte Ecken, damit der Ball nicht in den Ecken hängen bleibt. Nach meiner Erfahrung sieht man das häufiger bei günstigeren Tischen.
    • Ein einzelner Torwart mit Eckrampen war ein Trend von Ende der 1970er bis in die 80er.
      Heute ist es weniger verbreitet, weil ein Teil des Wettbewerbs-Foosballs hinten eine Dreierreihe nutzt, aber es gibt mindestens eine Ausnahme. Ich habe dazu wegen eines Alumni-Treffens einer gemischten Studentenverbindung recherchiert, und klassische Rampentische waren sehr schwer zu finden. Sie bestanden aus Spanplatte und gingen deshalb leicht kaputt. Eine Firma, die Rampen verwendet, nutzt statt angesetzter steiler Eckrampen eine sanftere Neigung.
  • Wirklich cool. Ich hätte gern so einen zum Üben zu Hause.
    Aber kann dieser Roboter auch Trash Talk? Als Foosball-Fan finde ich, dass das Einschüchtern des Gegners tief in der Kultur verankert ist (siehe Community) und ein großer Teil davon ist, auf höchstem Niveau zu gewinnen – das sollte also der nächste Schritt sein. Vielleicht baut ein ernsthafter Foosball-Spieler ja die erste echte AGI nur für richtig guten Trash Talk.
    Foosball ist weder olympisch wie Tischtennis noch ein Tischspiel mit kulturellem Respekt wie Schach, aber während mich heutige Roboter im Schach problemlos schlagen, sieht ein hochmoderner Roboter-Foosball-Tisch immer noch so aus, als könnte ich ihn besiegen.
    Das ganze Video ist bewusst trocken-humorvoll, und die Szene, in der er dabei seinen Bruder abzieht, war besonders lustig. Sein Bruder hat es auch gut aufgenommen.

    • Ich hatte überlegt, ein oder zwei Stunden lang eine Chatbot-API anzuschließen und ihr Echtzeit-Positions- und Punktedaten zu schicken, damit sie maßgeschneiderte Sticheleien ausgibt.
      Am Ende wollte ich das Video einfach veröffentlichen und habe es gelassen, aber es wäre lustig gewesen.
    • „Du machst das gut, egal was die anderen sagen.“
  • Ziemlich cool. Ist diese Person so etwas wie ein bekannter YouTuber? Ich finde es erstaunlich, dass sie erfolgreich Sponsoring bekommen hat, sodass Firmen ihr derart hochwertige Bauteile schicken.

    • Das habe ich mich auch gefragt; auf diesem Account ist das erst das zweite Video.
    • Ein bekannter YouTuber hätte auch gleich ein Bündel Geldscheine verlangt.
  • Ich wusste doch, dass mir das Gesicht bekannt vorkommt: Das ist die Person, die in dem Spiel Terraria eine vollständige CPU gebaut hat.
    https://www.youtube.com/watch?v=zXPiqk0-zDY