Daftar Isi:

Game Dot Jump (tanpa Menggunakan Arduino): 6 Langkah
Game Dot Jump (tanpa Menggunakan Arduino): 6 Langkah

Video: Game Dot Jump (tanpa Menggunakan Arduino): 6 Langkah

Video: Game Dot Jump (tanpa Menggunakan Arduino): 6 Langkah
Video: Tonton Sampai Habis !!! Belajar Arduino Di Jamin Bisa 2024, November
Anonim
Game Dot Jump (tanpa Menggunakan Arduino)
Game Dot Jump (tanpa Menggunakan Arduino)

Gambaran

Hai, yang di sana! Saya Shivansh, seorang mahasiswa di IIIT-Hyderabad. Saya di sini dengan instruksi pertama saya yang merupakan game yang terinspirasi dari game Dinosaur Jump Google Chrome. Gim ini sederhana: Melompati rintangan yang masuk untuk mencetak poin. Jika Anda bertabrakan, Anda kalah dan skor diatur ulang.

Fitur utama dari proyek ini adalah tidak menggunakan Arduino atau mikrokontroler lainnya. Ini murni berasal dari komponen listrik dasar dan melibatkan implementasi Finite State Machines (FSM) dengan bantuan diagram logika, dll.

Tertarik? Mari kita mulai.

Prasyarat:

  • Pengetahuan dasar tentang komponen listrik seperti Resistor, Kapasitor, Sirkuit Terpadu (IC).
  • Pengetahuan dasar Gerbang Logika (AND, OR, NOT, dll.)
  • Pengetahuan tentang kerja Flip-Flop, Counter, Multiplexer, dll.

CATATAN: Prasyarat yang tercantum di atas adalah untuk memahami keseluruhan kerja proyek. Seseorang yang tidak memiliki pengetahuan mendalam tentang hal yang sama juga dapat membangun proyek dengan mengikuti langkah-langkah dalam instruksi.

Langkah 1: Mengembangkan Model Kerja

Mengembangkan Model Kerja
Mengembangkan Model Kerja
Mengembangkan Model Kerja
Mengembangkan Model Kerja

Tugas pertama adalah membuat model kerja untuk proyek tersebut. Hanya dengan begitu kami dapat memutuskan bahan yang dibutuhkan untuk proyek tersebut. Seluruh proyek dapat dipecah menjadi tiga bagian.

Bagian-1: Pembuatan rintangan

Pertama, kita perlu membuat rintangan acak agar Dot dapat melompati. Hambatan juga akan berupa pulsa titik yang bergerak dari satu ujung Array LED ke ujung lainnya.

Untuk menghasilkan hambatan, kami menggunakan dua Sirkuit Timer (diagram sirkuit terlampir), satu dengan Frekuensi Tinggi (Pewaktu HF) dan lainnya dengan Frekuensi Rendah (Pengatur Waktu LF). Bagian 'keacakan' ditangani oleh Timer HF yang outputnya terlihat pada setiap sisi naik dari timer LF (yang diambil sebagai input CLK). Instruksi Pembuatan Hambatan adalah status Timer HF pada setiap sisi naik dari Timer LF (1 -> Hasilkan Hambatan | 0 -> Jangan Hasilkan Hambatan). Timer HF RESET pada setiap 'JUMP' untuk memastikan pembangkitan rintangan acak. Output dari Timer HF diberikan sebagai input-D ke D Flip Flop (untuk menyimpan instruksi untuk siklus berikutnya) dengan input CLK sebagai Output Timer LF.

Setelah instruksi biner untuk pembangkitan hambatan keluar, kita perlu membangkitkan 'pulsa hambatan' pada Array LED. Kami melakukannya dengan bantuan Counter 4-bit yang outputnya diberikan ke demultiplexer 4x16 (DeMUX). Output dari DeMUX akan membuat 16 LED masing-masing menyala.

Bagian-2: JUMP

Untuk JUMP Action, kita akan menggunakan Input Push Button sebagai instruksi. Setelah instruksi diberikan, LED objek in-line berhenti menyala dan LED lain di atasnya menyala, menandakan lompatan.

Bagian-3: Hasil

Hasilnya akan seperti: Jika objek crash, RESET game; lain, menambah skor.

Tabrakan dapat dinyatakan sebagai ANDing dari keduanya, sinyal rintangan dan sinyal objek untuk posisi tanah rintangan. Jika tabrakan tidak terjadi, Penghitung Titik bertambah yang ditampilkan pada sepasang tampilan 7-segmen.

Langkah 2: Mengumpulkan Komponen

Komponen yang dibutuhkan adalah sebagai berikut:

  • PCB x 1, Papan tempat memotong roti x 3
  • LED: Hijau(31), Merah(1), BiColor:Merah+Hijau (1)
  • Tombol Tekan x 2
  • Tampilan 7-segmen x 2
  • IC 555 x 3 [untuk Rangkaian Timer]
  • IC 7474 x 1 (D FlipFlop)
  • IC 7490 x 2 (Penghitung Dekade) [untuk menampilkan skor]
  • IC 7447 x 2 (BCD to 7-segment decoder) [untuk menampilkan skor]
  • IC 4029 x 1 (4-bit Counter) [untuk tampilan hambatan]
  • IC 74154 x 1 (DeMUX) [untuk tampilan rintangan]
  • IC 7400 x 3 (Gerbang BUKAN)
  • IC 7404 x 1 (gerbang NAND)
  • IC 7408 x 1 (Gerbang DAN)
  • soket IC
  • Sumber Tegangan (5V)

Alat yang dibutuhkan:

  • Solder Besi
  • Alat pemotong kawat

Langkah 3: Pembuatan Rintangan: Bagian-A

Generasi Hambatan: Bagian-A
Generasi Hambatan: Bagian-A
Generasi Hambatan: Bagian-A
Generasi Hambatan: Bagian-A

Pertama, kita perlu mengatur sirkuit timer untuk menghasilkan Sinyal Pembangkit Hambatan (TINGGI/RENDAH).

Rangkaian akan diatur sesuai dengan teori yang telah dibahas sebelumnya. Diagram sirkuit untuk hal yang sama terlampir di atas. Sirkuit diimplementasikan pada papan tempat memotong roti (meskipun juga dapat diimplementasikan pada PCB) sebagai berikut:

  • Tempatkan dua IC 555 dan D Flip Flop (IC 7474) melintasi pembagi papan tempat memotong roti dengan beberapa ruang kosong (4-5 kolom) di antaranya.
  • Hubungkan baris atas papan tempat memotong roti dengan terminal positif Sumber Tegangan dan baris bawah dengan terminal negatif.
  • Buat koneksi lebih lanjut mengikuti diagram sirkuit. Setelah koneksi yang diperlukan, rangkaian akan terlihat seperti gambar terlampir di atas.

CATATAN: Nilai resistansi R1 & R2 dan kapasitansi C dihitung menggunakan persamaan berikut:

T = 0,694 x (R1 + 2*R2) * C

di mana T diperlukan Periode Waktu.

D = 0,694 x [(R1 + R2)/T] *100

dimana D adalah Duty Cycle yaitu rasio ON Time terhadap Total Time.

Dalam proyek ini, untuk Timer Frekuensi Tinggi, T = 0,5 detik dan untuk Timer Frekuensi Rendah, T = 2 detik.

Langkah 4: Pembuatan Rintangan: Bagian-B

Generasi Hambatan: Bagian-B
Generasi Hambatan: Bagian-B
Generasi Hambatan: Bagian-B
Generasi Hambatan: Bagian-B
Generasi Hambatan: Bagian-B
Generasi Hambatan: Bagian-B

Sekarang kita tahu kapan harus menghasilkan hambatan, sekarang kita perlu menampilkannya. Kami akan menggunakan counter 4-bit, Demultiplexer, timer dan array 16 LED. Mengapa 16? Itu karena kita akan memetakan output 4-bit dari counter ke 16 LED menggunakan demultiplexer. Artinya counter akan menghitung 0 sampai 15 dan demultiplexer akan menyalakan LED dengan indeks tersebut.

Peran timer adalah untuk mengatur kecepatan penghitungan, yaitu kecepatan gerakan rintangan. Rintangan akan bergeser satu posisi dalam Satu Periode Waktu dari pengatur waktu. Anda dapat bermain-main dengan nilai R1, R2, dan C yang berbeda menggunakan persamaan pada langkah sebelumnya untuk mendapatkan kecepatan yang berbeda.

Untuk matriks LED, solder 16 LED secara linier dengan kesamaan. Terminal positif masing-masing LED akan dihubungkan ke DeMUX (setelah dibalik menggunakan gerbang NOT, karena DeMUX memberikan output LOW).

Diagram sirkuit untuk hal yang sama terlampir di atas.

Langkah 5: JUMP dan HASILnya

JUMP dan HASILnya
JUMP dan HASILnya
JUMP dan HASILnya
JUMP dan HASILnya
JUMP dan HASILnya
JUMP dan HASILnya

Hal berikutnya adalah tindakan melompat. Untuk menampilkan lompatan, cukup tempatkan LED dengan warna berbeda di atas matriks, ardekan, dan pasang terminal +ve-nya ke sebuah tombol. Pasang ujung lain dari tombol tekan ke sumber tegangan.

Juga, ambil tombol tekan lain, ditempatkan berdekatan dengan yang sebelumnya dan pasang salah satu terminalnya ke +5V. Terminal lainnya menuju Gerbang NAND (IC 7404) dengan input Gerbang NAND lainnya sebagai input ke LED tepat di bawah LED JUMP (yaitu LED objek). Output Gerbang NAND menuju RESET (PIN 2 dan 3 dari kedua Penghitung BCD) dari penghitung skor. Dengan ini yang kita lakukan adalah mereset skor jika kedua sinyal OBYEK LED (di posisi dasar) dan sinyal OBSTACLE diberikan pada saat yang sama, yaitu objek dan halangan bertabrakan.

Buat beberapa pengaturan untuk memastikan bahwa kedua tombol tekan ditekan bersamaan. Anda dapat menggunakan koin dan menempelkan kedua tombol ke sana.

Untuk menyiapkan penghitung skor, ikuti diagram sirkuit yang terlampir di atas (Sumber gambar: www.iamtechnical.com).

CATATAN: Hubungkan pin 2 dan 3 ke output Gerbang NAND untuk mengatur ulang skor jika terjadi tabrakan dengan rintangan

Langkah 6: Selamat Bermain

Selamat Bermain!
Selamat Bermain!
Selamat Bermain!
Selamat Bermain!
Selamat Bermain!
Selamat Bermain!

Itu dia. Anda selesai dengan proyek Anda. Anda dapat menambahkan beberapa finishing untuk itu agar terlihat bagus. Istirahat baik-baik saja.

NIKMATI..!!

Direkomendasikan: