Arduino sangat popular untuk membangun projek dan permainan hobi, dan sebelumnya kami telah menggunakan Arduino untuk membangun permainan Snake, permainan Ping pong, game Space race, dan lain-lain. Hari ini kami sedang membangun satu permainan yang lebih popular menggunakan permainan kawat Arduino- Buzz atau permainan tangan Steady.
Untuk projek ini, kami akan menggunakan Arduino Uno, Buzzer, dan dua wayar Aluminium. LCD 16x2 juga dihubungkan untuk memaparkan status permainan. Kedua-dua hujung wayar labirin akan dihubungkan ke pin digital 2 & 3 Arduino, dan wayar pemegang disambungkan ke pin Arduino. Pin digital ditakrifkan sebagai pin INPUT_PULLUP. Oleh itu, apabila wayar pemegang menyentuh wayar labirin, ia mengubah keadaan pin digital menjadi rendah, dan bel mengeluarkan bunyi.
Diod dihubungkan di hujung wayar labirin, jadi apabila anda melewati dioda itu dan menyentuh wayar labirin dengan wayar pemegang bulat, hanya satu pin (Pin 3) yang akan rendah. Dalam keadaan itu, teks ucapan selamat (Syukurlah) akan dipaparkan di LCD.
Komponen Diperlukan
- Arduino Uno
- Kawat Aluminium
- LCD 16x2
- Modul I 2 C
- Papan roti
- Buzzer
- Diod
Rajah Litar
Gambarajah litar untuk Arduino Buzz Wire Game diberikan di atas. Pin SCL dan SDA modul I2C disambungkan ke pin A5 dan A4 Arduino sementara pin V CC dan GND modul I2C disambungkan ke pin Arduino 5V dan GND. Rel positif Buzzer disambungkan ke pin digital 4 Arduino dan rel negatif disambungkan ke GND. Potong wayar aluminium dan bengkokkan dalam bentuk Zig-Zag. Pateri diod di satu hujung wayar. Kemudian potong wayar lain untuk membuat pemegang dan bengkokkan satu hujungnya ke dalam gelung.
LCD 16x2 juga dapat dihubungkan dengan Arduino tanpa menggunakan modul I2C.
Sambungkan pin D2 & D3 Arduino ke kedua-dua hujung wayar Zig-Zag dan sambungkan wayar pemegang ke pin GND Arduino.
Penjelasan Kod
Kod lengkap untuk Arduino Buzz Wire Game ini diberikan di akhir dokumen.
Mulakan kod anda dengan memasukkan fail perpustakaan untuk modul LCD. Perpustakaan LiquidCrystal_I2C.h digunakan untuk komunikasi I2C antara modul Arduino dan LCD.
#sertakan
Selepas itu, tentukan pin Arduino untuk bel, titik permulaan wayar, dan titik akhir wayar.
const int startPin = 2; const int endPin = 3; const int buzzer = 4;
Kemudian tentukan dua pemboleh ubah mula & akhir_. Pemboleh ubah ini akan digunakan untuk menyimpan bacaan wayar.
int permulaan, akhir_;
Sekarang tentukan pin buzzer sebagai output dan pin wayar sebagai INPUT_PULLUP . Arduino mempunyai perintang penarik dalaman dengan nilai sekitar 20k ohm. Perintang ini boleh disambungkan secara dalaman menggunakan INPUT_PULLUP . Mendefinisikan INPUT_PULLUP berfungsi sama seperti menyambungkan perintang ~ 20k ohm antara pin dan + 5V.
pinMode (buzzer, OUTPUT); pinMode (startPin, INPUT_PULLUP); pinMode (startPin, INPUT_PULLUP);
Di dalam gelung kekosongan, baca status pin dawai.
mula = digitalRead (startPin); end_ = digitalRead (endPin);
Sekarang bandingkan bacaan pin wayar. Sekiranya kedua-dua pin rendah, ini bermaksud, anda telah menyentuh wayar sehingga buzzer akan mengeluarkan suara, dan jika pin permulaan wayar tinggi dan pin akhir rendah itu bererti anda mencapai titik akhir.
jika (mula == RENDAH && akhir _ == RENDAH) {digitalWrite (buzzer, TINGGI); kelewatan (1000); digitalWrite (buzzer, RENDAH); lcd.setCursor (0,0); lcd.print ("Cuba Lagi"); Serial.print ("Cuba Lagi"); } lain jika (mula == TINGGI && akhir _ == RENDAH) {lcd.setCursor (0,0); lcd.print ("Selesai"); Serial.print ("Selesai"); }
Menguji Buzz Wire Game
Setelah menyambungkan perkakasan dan memuat naik kod yang diberikan, anda boleh mula bermain permainan. Oleh itu, pegang wayar dengan bulatan di tangan anda dan cuba pasangkan wayar dengan bulatan hingga ke diod yang disolder dengan wayar zig-zag tanpa membiarkan wayar bulat menyentuh di mana sahaja. Sekiranya anda menyentuh wayar, buzzer akan mengeluarkan suara dan LCD akan memaparkan " Cuba lagi ". Dan jika anda menyelesaikan permainan tanpa menyentuh wayar, maka ia akan menunjukkan " Bagus ".
Ini adalah bagaimana anda boleh Membuat Buzz Wire Game Dengan Arduino. Video yang berfungsi dan kod lengkap diberikan di bawah.