- Foosbar adalah proyek meja foosball sepenuhnya otonom yang mengendalikan satu sisi pemain dengan robot sementara sisi lain dimainkan manusia
- Sisi robot dapat melakukan bertahan, mengoper, dan menembak melalui kendali motor, dan pembuatnya melihat sifat repetitif latihan foosball sebagai target yang cocok untuk otomatisasi
- Repositori dibagi menjadi 3 komponen:
software,frontend, danfirmware, dengan kode operasi aktual terutama berada disoftwareuntuk kendali motor frontendadalah aplikasi web 3D untuk mengoperasikan meja sebagai pengendali game jarak jauh, danfirmwareadalah kode untuk layar e-paper penampil skor serta Teensy 4.1, tetapi merupakan komponen lama yang belum sepenuhnya diimplementasikan- Kode proyek ini sangat spesifik terhadap lingkungan pembuatnya sehingga kecil kemungkinan bisa langsung dijalankan apa adanya, dan lebih bersifat sebagai referensi untuk percobaan serupa
Apa yang dibuat Foosbar
- Foosbar adalah meja foosball otonom yang oleh pembuatnya disebut sebagai “mungkin robot foosball terbaik di dunia, meski tidak bisa dibuktikan”
- Satu sisi meja dikendalikan robot, sementara sisi seberangnya dimainkan manusia
- Sisi kendali robot dapat melakukan tindakan berikut
-
Bertahan
-
Mengoper
- Menembak
- Video perkenalan proyek tersedia di video YouTube
-
Motivasi pembuatan
- Pembuatnya sangat menyukai foosball, tetapi sebagai programmer ia menilai metode latihan berupa mengulang pekerjaan yang sama sambil sedikit demi sedikit meningkatkan efisiensi sangat cocok untuk diotomatisasi
- Foosbar dibuat sebagai upaya untuk mengotomatisasi latihan repetitif semacam itu
- Pembuatnya menggambarkan proyek ini sebagai cara memekanisasi kesenangan permainan agar ia bisa mengerjakan hal lain
Struktur proyek
- Repositori dibagi menjadi 3 komponen utama
software: kode utama yang langsung mengendalikan motorfrontend: aplikasi web 3D untuk mengoperasikan meja sebagai pengendali game jarak jauhfirmware: kode yang dimaksudkan untuk menampilkan skor menggunakan Teensy 4.1 dan layar e-paper
firmwarebukan lagi komponen inti saat ini, dan pembuatnya menyatakan bahwa bagian ini tidak pernah sepenuhnya diselesaikan- Keseluruhan susunan proyek disesuaikan dengan lingkungan perangkat keras spesifik milik pembuat, sehingga kode repositori ini lebih dekat sebagai referensi bagi orang yang ingin mencoba proyek serupa
Build dan menjalankan
softwaremengharuskan uWebSockets dibangun dan dapat ditemukan oleh CMake- Pembuatnya menulis bahwa ia memasangnya dengan cara
make && sudo cp ./uSockets/uSockets.a /usr/local/lib/libusockets.a - Qualisys realtime SDK juga perlu dipasang dengan cara serupa
- Pembuatnya menulis bahwa ia memasangnya dengan cara
- Setelah dependensi terpasang, build
softwaremenggunakan alur berikutcd softwaremkdir build && cd buildcmake ..make./foosbar
firmwareadalah proyekpiostandar dan diunggah dengancd firmwarelalupio run -t uploadfrontenddijalankan dengancd frontendlalunpx vite
1 komentar
Opini Hacker News
Benar-benar keren! Menurutku langkah berikutnya adalah membuat kedua sisi meja dikendalikan robot, lalu menggelar turnamen AI foosball online
Sepertinya aku bakal masuk tiap minggu untuk menonton AI yang berbeda saling bertanding
Pembuatannya bagus sekali dan videonya juga menarik. Jadi kangen masa-masa dulu saat masih bekerja langsung di kantor, menghabiskan banyak sekali waktu di meja foosball
Waktu itu kami membuat sistem pelacakan skor otomatis: cukup tag meja dengan badge, beberapa sensor inframerah menghitung skor, lengkap dengan dashboard, ELO, musim, dan mode turnamen. Statistik dan feed skor real-time juga diperbarui otomatis; masa-masa yang menyenangkan
Aku benar-benar penasaran seperti apa jadinya jika alih-alih menghabiskan ribuan hingga puluhan ribu dolar untuk kamera motion capture industri, mereka memakai sistem visi dengan anggaran menengah
Misalnya memakai 2–4 kamera global shutter, menjalankan filter visual yang mirip dengan demo awal, lalu menghitung posisi bola dengan filter Kalman/estimator keadaan. Aku paham prinsip “jangan membuat sendiri sesuatu yang bisa dibeli atau diberikan sponsor”, tapi aku juga ingin melihat solusi atau percobaan yang lebih murah untuk masalah ini
Agak ironis memang, mengingat nama channel-nya From Scratch
Ide proyeknya benar-benar bagus. Menjadikan berbagai benda sebagai CNC memang cukup menyenangkan, tapi pada titik tertentu rasanya semua orang sudah pernah melihat orang membuat 3D printer, CNC router, CNC mill, CNC grinder, dan sebagainya dari nol
Tapi yang ini terasa baru, dan aku suka
Sepertinya orang ini akan jadi besar ke depannya
Kalau dia sudah menangani masalah-masalah seperti ini dari kamarnya sendiri, aku jadi bertanya-tanya apa yang bisa kita harapkan darinya di masa depan
“Ia berhasil memekanisasi dan menghilangkan semua kesenangan yang dulu kurasakan dari game, sehingga aku bebas mengejar hal-hal yang lebih penting dan jauh lebih memuaskan dalam hidup”
Tautan terkait [1] menunjukkan bahwa orang ini jelas cukup hebat di bidangnya :) Tulisan dan videonya juga indah, dan proyeknya luar biasa
[1] https://github.com/misprit7/computerraria
Apakah posisi kiper selalu diisi 3 pemain? Aku ingat dulu pernah bermain dengan susunan 1 kiper, yaitu 1-2-5-3, tapi itu sudah cukup lama
Pada meja tradisional, sudut melengkung diperlukan agar bola tidak mati di pojok. Tapi dengan 3 kiper, bola selalu bisa diambil tanpa sudut melengkung
Di video Piala Dunia ITSF, kamu bisa melihat kedua sisi hanya punya satu kiper: https://m.youtube.com/watch?v=3vnrAIOWDwo&pp=ygUOaXRzZiB3b3J...
Ada juga dokumenter yang cukup menarik tentang naik dan turunnya foosball di AS, dan kalau ingatanku benar, dokumenter itu terkait erat dengan perusahaan pembuat meja Tornado. Dulu aku menontonnya di YouTube, tapi sekarang tidak bisa menemukannya. Mungkin judulnya “Foosballers”, tapi aku tidak yakin
Setidaknya meja resmi International Table Soccer Federation hanya punya satu kiper dan sudutnya dinaikkan
https://www.tablesoccer.org/tables/leonhart.php
Sekarang aku harus cepat keluar dari rabbit hole ini sebelum mulai menyelami buku aturan 41 halaman
https://www.tablesoccer.org/rules/documents/Standard_Matchpl...
Sekarang itu kurang umum karena sebagian foosball kompetitif memakai susunan 3 pemain di belakang, meski ada setidaknya satu pengecualian. Aku pernah menelitinya untuk reuni alumni perkumpulan sosial campuran, dan meja klasik dengan ramp sangat sulit ditemukan. Soalnya meja-meja itu dibuat dari particle board sehingga mudah rusak. Salah satu perusahaan yang memakai ramp menggunakan kemiringan yang lebih landai, bukan ramp sudut curam yang ditambahkan
Benar-benar keren. Aku ingin punya satu di rumah untuk latihan
Tapi apakah robot ini juga bisa trash talk? Sebagai orang yang suka foosball, menjatuhkan mental lawan sudah sangat mengakar dalam budayanya (lihat Community) dan menjadi bagian besar untuk menang di level tertinggi, jadi itu seharusnya jadi langkah berikutnya. Pemain foosball yang serius mungkin bisa membuat AGI pertama yang sesungguhnya demi trash talk yang layak
Foosball memang bukan cabang Olimpiade seperti tenis meja atau permainan meja yang dihormati secara budaya seperti catur, tapi meski robot masa kini bisa dengan mudah mengalahkanku di catur, meja foosball robot mutakhir ini masih terlihat seperti sesuatu yang mungkin bisa kukalahkan
Sepanjang video, humornya sengaja dibuat kering, dan adegan ketika ia menghajar adiknya dalam proses itu sangat lucu. Adiknya juga menerimanya dengan baik
Pada akhirnya aku hanya ingin merilis videonya, jadi tidak kulakukan, tapi sepertinya akan lucu kalau jadi
Cukup keren. Apakah orang ini semacam YouTuber terkenal? Mengejutkan bahwa ia berhasil mendapatkan sponsor sampai perusahaan-perusahaan mau mengirimkan komponen kelas atas seperti ini
Pantas wajahnya terasa pernah kulihat; ternyata dia orang yang membuat CPU lengkap di dalam game Terraria
https://www.youtube.com/watch?v=zXPiqk0-zDY