Isi kandungan:

Kotak Permainan Arduino Arcade Lego: 19 Langkah (dengan Gambar)
Kotak Permainan Arduino Arcade Lego: 19 Langkah (dengan Gambar)

Video: Kotak Permainan Arduino Arcade Lego: 19 Langkah (dengan Gambar)

Video: Kotak Permainan Arduino Arcade Lego: 19 Langkah (dengan Gambar)
Video: Working Lego Skibidi Toilet #lego 2024, Julai
Anonim
Image
Image
Kotak Permainan Arduino Arcade Lego
Kotak Permainan Arduino Arcade Lego
Kotak Permainan Arduino Arcade Lego
Kotak Permainan Arduino Arcade Lego

Sekiranya anda mempunyai anak, anda mungkin menghadapi masalah yang sama seperti yang kami lakukan dengan set Lego yang anda beli untuk mereka. Mereka berkumpul dan bermain dengan mereka tetapi selepas beberapa ketika set berubah menjadi timbunan batu bata. Anak-anak membesar dan anda tidak tahu apa yang harus dilakukan dengan timbunan ini.

Kami memutuskan untuk mengitar semula batu bata Lego yang tidak diingini dan membuat permainan arcade.

Panduan langkah demi langkah ini adalah hasil kerja beberapa bulan untuk menjadikan permainan berulang dan kosnya sangat rendah. Hampir semua orang dapat mengulangi projek ini! Kod tersebut ditulis sedemikian rupa sehingga tidak memiliki ketergantungan dan akan dikompilasi pada papan Arduino mana pun. Dan tentu saja permainan telah diuji secara intensif oleh anak-anak kita:-)

Bagaimana permainan ini berbeza dengan permainan lain yang pernah diterbitkan sebelumnya?

Pertama sekali, terdapat 5 permainan yang terdapat di dalamnya:

  • Memory Game (seperti "Simon-Says", mirip dengan permainan Touch Me)
  • Permainan reaksi (serupa dengan permainan Whack-a-Mole)
  • Permainan Peraduan / Pertandingan (untuk 2-4 pemain)
  • Melody Game (mod bebas Push and Play untuk balita dan yang lebih kecil)
  • Permainan perang (untuk 2-4 orang dewasa)

Kedua, ia mempunyai reka bentuk yang hebat (dari perspektif kita) dan dapat diulang dengan mudah.

Dan ketiga, ia mesra bumi kerana membolehkan anda mengitar semula plastik.

Di akhir panduan ini terdapat juga video langkah demi langkah sekiranya anda lebih suka format video.

Langkah 1: Senarai Bahagian

Senarai Bahagian
Senarai Bahagian
Senarai Bahagian
Senarai Bahagian

Sekiranya anda menyukai projek ini tetapi tidak mempunyai timbunan bata Lego yang tidak diingini, yang paling mudah ialah membeli set Lego Classic 10704 dengan 900 keping di dalamnya.

Berikut adalah senarai item yang anda perlukan untuk membuat projek ini:

  • 1kg (2lb) batu bata Lego yang Tidak Diingini (atau batu bata serupa dari jenama lain seperti Mega Bloks)
  • Plat asas 25 x 25 cm untuk Lego (atau serupa dari jenama lain). Pangkalan Lego mempunyai 32 x 32 titik. Sekiranya anda tidak memilikinya - asasnya berharga sekitar 3 $ termasuk wang pos jika anda membeli dalam talian (istilah carian "32 25 blok")
  • Potongan plexiglass lutsinar 30 x 30 cm (tebal 5 atau 6mm)
  • 4 x Butang tekan 60mm gaya Arcade Besar (saya cadangkan Merah, Hijau, Biru, Kuning) (istilah carian untuk kedai dalam talian: "butang arked 60mm"). Mereka adalah komponen termahal dalam binaan ini dengan harga sekitar $ 2 setiap satu.
  • 2 x Butang tekan sesaat radius 16mm (saya cadangkan Putih dan Hitam) (istilah carian: "butang tekan 16mm")
  • Power mount / Off rocker switch ukuran pemasangan 27x21mm (saya cadangkan merah telus dengan 4 pin) (istilah carian: "rocker switch 16a")
  • Arduino Nano
  • 1602 paparan LCD dan modul sambungan I2C
  • Pembesar suara 2 x 4ohm 5W, berukuran 30 x 70 mm (anda boleh menggunakan yang lain kecil tetapi lukisan CAD dilakukan untuk 30x70mm)
  • Papan prototaip 8 x 6 cm atau papan roti 830 pin
  • Bateri boleh dicas semula 2x18650 (boleh dikitar semula dari bateri komputer riba yang mati)
  • Pemegang bateri berkembar 18650 (istilah carian: "pemegang 2 x 18650")
  • Pengawal cas dan pelindung pelepasan TP4056
  • Penukar langkah 5V (500mA terkecil akan dilakukan)
  • Barang-barang kecil: beberapa wayar, kabel Mini-USB atau palam diy, soket Mikro-USB pada pelarian PCB, bolt / mur / pencuci M3, 4 x skru penutup atas
  • Perintang:

    • 6 x 100 ohm
    • 1 x 1k
    • 3 x 10k

Langkah 2: Membina Kotak

Membina Kotak
Membina Kotak
Membina Kotak
Membina Kotak
Membina Kotak
Membina Kotak

Ini adalah bahagian paling mudah dalam projek yang boleh anda berikan kepada anak-anak anda.

Ambil plat bawah titik Lego 32x32 dan letakkan dinding menggunakan bahagian yang dikitar semula. Anda harus mempunyai sekitar 9 lapisan secara keseluruhan. Kami memilih warna kelabu muda untuk pangkalan sehingga dinding bata warna rawak menjadi fokus utama.

Tiada kotak yang serupa. Jadilah kreatif semasa anda membina lapisan. Kitar semula walaupun bahagian kecil - ia kelihatan sejuk. Bentuk yang tidak teratur juga kelihatan bagus. Tambahkan tingkap, cermin depan dari kereta, pintu dan kotak.

Kotak itu mesti mempunyai sekurang-kurangnya satu pintu Lego bersaiz penuh. Ini diperlukan untuk memasang suis rocker di dinding.

Langkah 3: Membuat Penutup Teratas

Membuat Penutup Teratas
Membuat Penutup Teratas
Membuat Penutup Teratas
Membuat Penutup Teratas
Membuat Penutup Teratas
Membuat Penutup Teratas
Membuat Penutup Teratas
Membuat Penutup Teratas

Penutup atas dibuat dari plexiglas 5 atau 6 mm (kepingan akrilik telus). Muat turun gambar CAD, letakkan di stik USB dan pergi ke kedai CNC yang terdekat - mereka akan mengusahakannya untuk anda. Lukisan CAD juga merangkumi plat pemasangan suis rocker (lihat gambar).

Anda perlu melakukan penamat bahagian atas. Lekatkan tepi dengan kertas pasir dan bongkah kayu. Lubang juga lubang untuk memasang pembesar suara dan paparan 1602. Paparan 1602 juga memerlukan segitiga kecil yang digiling di sisi tingkap LCD di lembaran akrilik (lihat foto). Saya melakukan ini pada separuh mendalam menggunakan alat putar (dremel) dan sedikit penghala kecil.

Langkah 4: Tambahkan Semua Komponen ke Bahagian Atas

Tambahkan Semua Komponen ke Bahagian Atas
Tambahkan Semua Komponen ke Bahagian Atas
Tambahkan Semua Komponen ke Bahagian Atas
Tambahkan Semua Komponen ke Bahagian Atas
Tambahkan Semua Komponen ke Bahagian Atas
Tambahkan Semua Komponen ke Bahagian Atas

Pasang butang 4 arcade besar, 2 butang ganti / pilih permainan, 2 pembesar suara dan modul 1602 LCD + I2C. Semuanya diperbaiki dengan skru M3 + mesin basuh M3 dan mur di bahagian belakang.

Sebelum anda memasang butang arked - tanggalkan pemegang lampu LED. Anda perlu mengubahnya sedikit - lihat langkah seterusnya.

Langkah 5: Mengubah LED di Arcade Button

Mengubah LED dalam Butang Arcade
Mengubah LED dalam Butang Arcade
Mengubah LED di Arcade Button
Mengubah LED di Arcade Button
Mengubah LED di Arcade Button
Mengubah LED di Arcade Button

Butang arked ini direka untuk beroperasi pada 12V. Mereka akan berfungsi dengan 5V yang merupakan voltan lalai untuk projek ini tetapi terlalu redup. Oleh itu, saya mengeluarkan soket LED dari butang arked, melepaskan pemegang LED dan mengeluarkan LED dengan perintang. Perintang 460ohm perlu disolder dan diganti dengan 100ohm. Setelah selesai, saya memasang kembali semuanya dan memasang LED dengan pemegang ke dalam butang.

Langkah 6: (pilihan) Label Butang Kawalan

(pilihan) Label Butang Kawalan
(pilihan) Label Butang Kawalan

Anda mungkin melihat label pada 2 butang kawalan. Versi pertama kami tidak memilikinya tetapi saya memutuskan untuk menambahkannya ketika saya mengulangi binaan kali kedua.

Kedua-dua butang mempunyai pelbagai fungsi bergantung pada keadaan permainan. Butang putih memulakan permainan yang dipilih atau mengesahkan pemilihan semasa beberapa permainan. Butang hitam mengubah permainan yang dipilih atau keluar semasa permainan.

Untuk membuat label bulat, anda memerlukan kepingan aluminium nipis (tebal maksimum 1mm), gerudi lubang gergaji, bit gerudi bertingkat dan pukulan huruf (lihat gambar). Mula-mula anda memotong bulatan menggunakan gergaji lubang. Kemudian anda memperbesar diameter dalaman dengan bit yang dilangkah dan kemudian anda menggunakan pukulan huruf untuk membuat label. Untuk menjadikan huruf lebih kelihatan, gunakan penanda hitam kekal (sharpie).

Langkah 7: Membuat Breakout Board

Membuat Breakout Board
Membuat Breakout Board
Membuat Breakout Board
Membuat Breakout Board

Anda mempunyai dua pilihan di sini. Sama ada menggunakan papan roti dan kawat Arduino dengan kabel melalui papan roti atau memasang pelindung kecil di bahagian belakang panel LCD.

Untuk binaan pertama kami menggunakan papan roti (lihat gambar). Untuk binaan kedua, kami memutuskan untuk meluangkan lebih banyak masa untuk membuat breakout board. Fungsinya tidak berubah, tetapi terdapat lebih sedikit wayar dan pelarian tersembunyi di bawah panel LCD.

Sekiranya anda memilih untuk menggunakan papan pelarian, ambil papan prototaip 8x6 dan potong seperti yang ditunjukkan pada gambar. Bahagian yang lebih besar akan digunakan untuk pelarian dan lebih kecil untuk membuat bekalan kuasa.

Solder Arduino Nano ke papan proto ini.

Langkah 8: Pendawaian Sambungan

Pendawaian Sambungan
Pendawaian Sambungan
Pendawaian Sambungan
Pendawaian Sambungan
Pendawaian Sambungan
Pendawaian Sambungan

Sediakan beberapa kabel dan pasangkan penyediaan, suis dan sambungan anda ke Nano mengikut rajah.

Sejak saya mula menggunakan kabel pasangan terpintal Ethernet - saya lupa tentang sakit kepala di mana sumber wayar untuk projek saya. Mereka berbeza warna dan pelbagai warna sehingga tidak mudah pecah. Satu-satunya perkara yang perlu anda jaga semasa bekerja dengan mereka ialah pematerian perlu sangat cepat supaya anda tidak membakar penebat.

Perhatikan pada gambar kedua bagaimana perintang 100ohm disambungkan untuk sambungan ke pembesar suara.

Beberapa nota mengenai sambungan:

  • Butang Kawalan Hitam / Putih disambungkan dari pin D2 / 3 terus ke Ground kerana perintang Pull-up Dalaman digunakan di Nano.
  • A4 / 5 disambungkan ke pin SDA / SCL I2C. Ini diperlukan untuk modul LCD I2C.
  • Pembesar suara mesti disambungkan ke D10 / 11 kerana pin ini diaktifkan PWM.
  • Dianjurkan untuk menambahkan garis tembaga kecil sebagai landasan untuk memudahkan penyambungan semua kabel Ground (akan ada sekitar 5 daripadanya).

Langkah 9: Pendawaian Butang

Pendawaian Butang
Pendawaian Butang
Pendawaian Butang
Pendawaian Butang

Semua Tombol Arcade disambungkan ke satu pin A1 melalui rangkaian perintang. A1 disediakan sebagai Penarikan Analog Dalaman. Ini adalah salah satu ciri Arduino yang kurang dikenali yang membantu kami menjimatkan bilangan wayar yang keluar ke butang.

Jadi penyediaannya adalah seperti berikut: dari butang A1 hingga pertama melalui perintang 1k. Dari butang1 hingga butang2 hingga 10k. Dari butang2 hingga butang3 hingga 10k dan dari butang3 hingga butang4 hingga 10k. Setiap butang pada seluar pendek "tutup" ke Tanah. Oleh kerana sudah ada Ground pada setiap butang untuk LED, pin kedua setiap suis disambungkan ke ground dari LED. Lihatlah rajah untuk memahami pendawaian.

Pada hakikatnya, memasang kabel Mini-USB ke Arduino Nano akan membolehkan anda bermain permainan setelah memuat naik lakaran. Yang anda perlukan hanyalah bekalan kuasa untuk menjadikan permainan mudah alih.

Langkah 10: Memasang Bateri

Memasang Bateri
Memasang Bateri

Saya menggunakan dua sel 18650 kitar semula dari bateri komputer riba yang mati. Ini adalah kapasiti yang lebih rendah (sekitar 600mAh) yang saya tidak mahu gunakan untuk aplikasi beban yang lebih tinggi. Peranti tidak benar-benar menggunakan banyak tenaga sehingga ini cukup untuk menjalankan permainan selama berhari-hari.

Bateri dipasang di dudukan bateri berkembar 18650 dan ada penyambung untuk mudah dipasang ke bekalan kuasa.

Langkah 11: Memasang USB Socket Extender

Memasang USB Socket Extender
Memasang USB Socket Extender
Memasang USB Socket Extender
Memasang USB Socket Extender
Memasang USB Socket Extender
Memasang USB Socket Extender

Permainan harus dapat mengisi semula dan menaik taraf firmware tanpa pembongkaran. Oleh itu, saya menggerudi salah satu blok untuk menyembunyikan penyambung Mikro-USB.

Untuk memanjangkan USB dari dinding bata ke Arduino Nano, saya mengambil kabel Mini-USB dan memotong hujung USB-A (penyambung USB yang besar) dan menanggalkan wayar. Dalam kes saya, merah / hitam berkuasa dan putih / hijau adalah sambungan D +/-.

D +/- perlu disolder ke pelarian Mikro-USB. 5V dan ground (merah / hitam) perlu melalui bekalan kuasa.

Mengapa pelarian Mikro-USB dipilih jika Nano menggunakan Mini-USB? Hanya kerana Mikro-USB ada di mana-mana di rumah kita - ia digunakan untuk mengecas telefon dan peranti lain. Oleh itu, anda akan dapat mengecas permainan dan meningkatkan firmware dengan kabel telefon anda:-)

Langkah 12: Membuat Bekalan Kuasa

Membuat Bekalan Kuasa
Membuat Bekalan Kuasa
Membuat Bekalan Kuasa
Membuat Bekalan Kuasa
Membuat Bekalan Kuasa
Membuat Bekalan Kuasa

Saya mengambil papan prototaip yang lebih kecil dan menyolder tepat ke atasnya modul pengecas dan perlindungan bateri TP4056 dan juga booster 5V.

Input ke TP4056 masuk dari soket Micro-USB. Kabel bateri dipasang pada pin TP4056 yang ditandai sebagai B +/-. Pin yang ditandai sebagai OUT +/- masuk ke suis rocker. Dari suis rocker, sambungan +/- masuk ke modul penggalak 5V dan dari keluaran penggalak wayar merah / hitam dari kabel USB yang dilucutkan disambungkan.

Lihat rajah untuk memahami pendawaian.

Langkah 13: Epoksi Pelarian USB Mikro

Epoksi Pelarian USB Mikro
Epoksi Pelarian USB Mikro
Epoksi Pelarian USB Mikro
Epoksi Pelarian USB Mikro

Saya menggunakan beberapa epoksi untuk memperbaiki pelarian mikro-USB di bata Lego. Setelah sembuh, soketnya akan lebih kuat daripada yang terdapat di telefon bimbit sehingga anak-anak dapat mengisi ulang permainan dan tidak akan pecah.

Saya cadangkan untuk menggunakan epoksi penawar cepat untuk bahagian ini. Sekiranya anda tidak memilikinya, tambahkan sedikit pengeras ke dalam resin dan biarkan seketika.

Langkah 14: Pasang Rocker Switch, Sambungkan Power Harness

Pasang Rocker Switch, Sambungkan Power Harness
Pasang Rocker Switch, Sambungkan Power Harness
Pasang Rocker Switch, Sambungkan Power Harness
Pasang Rocker Switch, Sambungkan Power Harness
Pasang Rocker Switch, Sambungkan Power Harness
Pasang Rocker Switch, Sambungkan Power Harness

Suis ini sangat besar. Ia direka untuk voltan utama 250V. Tetapi saya masih menggunakan model ini kerana ia kelihatan hebat dan sangat sesuai dengan pintu Lego City standard. Oleh itu, saya memasukkan suis ke dalam pelekap pelekap dan kemudian memasang piring di dinding bata menggunakan 2 skru (dinding sudah digerudi).

Harness juga akhirnya dapat dipasang dan juga pelarian Micro-USB yang disekat ke bata Lego. Perhatikan bagaimana beberapa bata tambahan digunakan untuk memasang komponen ke pangkalan.

Langkah 15: Menutup Tudung

Menutup Tudung
Menutup Tudung

masukkan kabel Mini-USB ke dalam Arduino Nano yang terpaku pada penutup atas dan tutup penutupnya.

Saya telah membuat 4 lubang di dinding dan menggunakan 4 skru untuk memasang bahagian atas kotak.

Langkah 16: Kodnya

Kod tersebut
Kod tersebut

Versi pertama permainan telah ditulis oleh saya diikuti oleh 4 versi baru dari rakan saya Alex yang menambah 4 permainan lagi dan membersihkan kodnya dengan sempurna. Kami juga menggunakan karya Reyboz untuk bunyi - tahap suara yang dihasilkan menggunakan kod ini sangat mengagumkan berbanding dengan apa yang datang secara lalai menggunakan perpustakaan Tone Arduino.

Seperti disebutkan, kod tersebut telah dioptimumkan selama berbulan-bulan setelah pengujian QA yang luas oleh anak-anak dan saat ini kami telah memuat naik versi 4 ke GitHub.

Versi terkini Kod Sumber:

Yang perlu anda lakukan ialah memasang perpustakaan 1602 I2C LCD (tersedia dalam pengurus perpustakaan Arduino IDE) dan kemudian memuat naik kod kami.

Mula-mula anda memuat naik butang-kalibrasi.ino dan membuat catatan pada sehelai kertas nilai yang dihasilkan setiap Arcade Button. Skrip ini juga akan menghapus EEPROM sehingga skor teratas diset semula.

Selepas itu anda menukar dalam Game-Settings.h nilai butang yang anda kalibrasi dan muat naik fail Lego-Games-Box.ino utama dan anda boleh mula bermain (dengan syarat anda menghubungkan semuanya mengikut skema yang diberikan di atas).

Catatan: jika Anda membuat permainan ini untuk anak-anak, hapus di Game-setting.h entri terakhir dari String GameTitle = {"Memory Game", "Reaction Game", "Tournament Game", "Melody Game", " Permainan Perang Nuklear "}; Entri terakhir ini mempunyai peraturan di mana setiap pemain memilih musuh dan mungkin terlalu memusuhi anak-anak.

Langkah 17: Video Cara Terperinci

Sekiranya anda lebih senang menonton video daripada membaca arahan, berikut adalah versi video versi ini.

Langkah 18: Peraturan Permainan

Image
Image

Pada masa ini terdapat 5 permainan yang dilaksanakan. Sekiranya anda mempunyai lebih banyak idea mengenai permainan yang boleh dibuat menggunakan kotak ini - sila beritahu kami dalam komen. Saya akan mengulas secara ringkas setiap permainan yang menerangkan peraturan dan cara bermain.

Balik suis rocker di sebelah untuk menghidupkan Lego Arcade Games Box. Semua permainan disertakan dengan bunyi dari permainan nostalgia Mario. Pada permulaan anda harus mendengar melodi permulaan permainan Mario.

Setelah bermula, anda akan melihat pada paparan LCD permainan yang dipilih sekarang. Untuk menukar permainan, tekan pada butang hitam.

Apabila memutuskan permainan mana yang ingin anda mainkan, tekan butang Putih untuk memulakan.

Sekiranya anda ingin keluar dari permainan yang sudah berjalan - anda perlu menekan butang hitam.

Pada permulaan anda boleh mematikan suara (mod malam) dengan menekan butang merah.

Memory Game (seperti "Simon-Says", mirip dengan permainan Touch Me)

Peraturannya terkenal dan mudah. Permainan menunjukkan urutan nota / lampu dan anda perlu mengulanginya. Setiap kali satu nada / cahaya ditambah ke urutan. Semakin lama anda bertahan, semakin baik ingatan anda. Sangat baik untuk melatih ingatan jangka pendek kanak-kanak dan orang dewasa.

Permainan reaksi (serupa dengan permainan Whack-a-Mole)

Anda perlu cukup pantas untuk menekan setiap butang yang menyala. Semakin lama anda bermain, semakin cepat butang menyala. Ini bagus untuk latihan reaksi kanak-kanak dan orang dewasa.

Permainan Peraduan / Pertandingan (untuk 2-4 pemain)

Anda diberi 5 pusingan. Setiap orang harus menekan butangnya dengan pantas setelah isyarat diberikan (Coin tune dari Mario). Sesiapa yang menekan butang terlebih dahulu akan menang pusingan. Jumlah kemenangan dikira pada akhir 5 pusingan dan pemenang diumumkan.

Melody Game (Mod bebas Push and Play untuk balita dan yang lebih kecil)

Yang ini sangat baik untuk kanak-kanak kecil - ia memainkan lagu bergantian apabila anda menekan dan menahan butang. Selepas ujian awal dengan kanak-kanak, kami menyedari bahawa anak kecil kami yang berusia 1 tahun benar-benar mahu bermain tetapi tidak faham BAGAIMANA. Peraturan permainan ini adalah - TIADA PERATURAN. Anda boleh menekan butang mana pun dan ia akan mengeluarkan bunyi.

Permainan perang (untuk 2-4 orang dewasa)

Rakan saya Alex, yang memprogram versi kotak permainan ini menghasilkan idea untuk permainan ini semasa krisis Trump / Kim mengenai siapa yang mempunyai butang nuklear yang lebih besar. Peraturannya memerlukan video yang berasingan untuk penjelasan (anda boleh mencarinya di sini dan di sini) tetapi secara ringkasnya, anda memilih jumlah pemain pada awal dan semasa setiap pusingan setiap orang memilih musuhnya. Setelah semua orang memilih musuhnya, peluru berpandu mula terbang. Orang yang telah dipilih sebagai musuh mempunyai beberapa saat untuk menekan butang untuk menghantar peluru berpandu persimpangan dan menyelamatkan negaranya. Pusingan berterusan sehingga hanya tinggal satu negara.

Langkah 19: Keputusan Akhir

Keputusan akhir
Keputusan akhir
Keputusan akhir
Keputusan akhir
Keputusan akhir
Keputusan akhir

Kami adalah 3 rakan yang menghabiskan masa untuk membina permainan untuk anak-anak kami. Kami sangat berharap anda akan menyukai permainan ini sehingga anda akan membina versi anda sendiri menggunakan arahan ini. Sekiranya anda mempunyai pertanyaan atau cadangan - sila hantarkannya di komen.

Pertandingan Kehidupan Permainan
Pertandingan Kehidupan Permainan
Pertandingan Kehidupan Permainan
Pertandingan Kehidupan Permainan

Hadiah Kedua dalam Pertandingan Kehidupan Permainan

Disyorkan: