Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Komponen dan Perlengkapan

Alat dan Mesin yang Diperlukan

Aplikasi dan Layanan Online

Tentang Proyek

Intro: Jam Retro Arcade - Arduino

Bangun jam meja arcade interaktif, dengan layar sentuh, dan karakter animasi arcade yang dapat merekam suara pilihan Anda untuk alarm.

Proyek ini mencakup kotak cetak 3D dan empat program terpisah untuk dipilih

  1. Arcade Clock - animasi DK Mario, Space Invaders dan Pac-Man
  2. Pacman Clock - game Pac-Man animasi interaktif dengan fungsi jam
  3. DK Clock - game DK animasi interaktif dengan fungsi jam
  4. Tumble Ghost - game hantu Pac-Man animasi berdasarkan Flappy Bird

Sangat menyenangkan untuk dibuat dan hadiah yang bagus untuk siapa pun yang ingin merasakan nostalgia karakter game arcade tahun 80-an.

Langkah 1: Kumpulkan Bahan

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Komponen pencahayaan otomatis hanya diperlukan jika jam meja:

Langkah 2: Cetak Kotak 3D

Saya mencetak kotak jam pada Creality Ender 3. Semua file cetak 3D dan instruksi untuk kotak dapat ditemukan di sini di Thingiverse.

Langkah 3: Bangun Rangkaian

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Rangkaian secara keseluruhan berisi jam real-time, Arduino Mega, modul suara, layar sentuh, dan shield layar.

1. Jam Real-Time

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Pasang jam real-time di bagian belakang Arduino Mega seperti dalam gambar yang disediakan. Saya menggunakan pistol panas dan busa kemasan untuk memastikan mereka tidak menyentuh dan ada sedikit bantal untuk menyerap gerakan. Dalam kasus saya, saya menyolder 2 kaki RTC secara langsung ke Arduino dan menggunakan kabel pasang untuk menghubungkan 5v dan GND ke Arduino.

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

2. Modul Perekaman Suara

Ini sangat keren dan mudah digunakan. Dengan cara yang sama seperti di atas, gunakan busa dan panas untuk memosisi modul dan speaker di bagian belakang Arduino sambil memastikan mereka terisolasi dari sentuhan. Modul Suara dipicu oleh D8 pada Arduino, jadi ini dan sumber daya perlu dihubungkan sesuai diagram rangkaian yang disediakan.

3. Pencerah Latar Belakang Otomatis (Opsional)

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Jika Anda bermaksud menggunakannya sebagai jam meja, maka Anda kemungkinan ingin secara otomatis memedam latar belakang di malam hari sehingga tidak mengganggu tidur Anda. (Jika tidak maka Anda dapat melewati langkah ini!) Sayangnya, lampu latar belakang layar TFT terhubung secara permanen ke +3.3v dan tidak dapat disesuaikan dengan Arduino. Ini berarti kita harus memutusnya dan menghubungkannya kembali ke pin PWM pada Arduino untuk mengontrol kecerahan lampu latar belakang. Saya ingin melakukan ini dengan kerusakan minimal pada pin atau jejak komponen jadi saya mengambil pendekatan berikut. Ikuti langkah-langkah di bawah ini dengan hati-hati

(a) Untuk mencapai ini Resistor dependen cahaya (LDR) ditempatkan di bagian belakang unit untuk mendeteksi cahaya. Lubangi dua lubang 3mm di kotak dan dorong kaki LDR melalui lubang. Gunakan panas di dalam kabinet untuk memegang kaki di tempat. Solder dua kabel di dalam kotak dan hubungkan sesuai diagram rangkaian. Tambahkan Resistor 270k Ohm ke A7 Arduino sesuai diagram rangkaian.

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

(b) Lepas Layar TFT, dan letakkan di permukaan kokoh. Identifikasi pin 19 (LED_A) dan hati-hati hapus beberapa milimeter plastik di dasar pin. Lenturkan pin menjadi rata dan jauh dari konektor seperti dalam gambar di atas. Periksa apakah TFT Shield dapat dihubungkan erat dan pin yang lentur tidak menghalangi stek atau soket.

(c) Solder Resistor 47 Ohm ke pin yang lentur dan sambungkan kabel dari resistor ke D9 Arduino Mega. Pin D9 Arduino dapat menarik hingga 40mA jadi resistor membatasi ini menjadi kurang dari itu. Pasang Dioda Zener 3.3v ke pin yang sama (LED_A) dan hubungkan ini ke tanah sesuai diagram. Tujuan dari ini adalah untuk melindungi lampu latar belakang dari tegangan berlebih karena itu akan mengatur tegangan menjadi 3.3v.

4. Layar TFT dan Arduino Shield

Hati-hati dorong konektor layar sentuh TFT 3.2 inci ke TFT Arduino Shield. Kemudian hati-hati hubungkan ke atas Arduino sesuai gambar yang disediakan. RTC memiliki baterai jadi akan mempertahankan waktu yang benar meskipun daya dicabut. Waktu alarm disimpan di Eeprom Arduino yang berarti akan dipertahankan jika ada pemadaman listrik.

Langkah 4: Muat Kode

Proyek akan memerlukan file dan perpustakaan berikut untuk dimuat sebelum akan dikompilasi dan berjalan. Kode unik dan dibangun di sekitar kemampuan perpustakaan, hardware, grafis kustom dan proyek lain yang saya pinjam dari.

Catatan: Pengembangan kode untuk proyek ini telah menggunakan IDE v1.06 dan beberapa perpustakaan yang diperlukan sudah usang. Ini berarti beberapa orang mengalami masalah dengan versi IDE baru 1.6 dan di atasnya saat memuat kode. Oleh karena itu untuk kesederhanaan, saya merekomendasikan orang menggunakan IDE v1.06 dan telah menyertakan file perpustakaan yang benar dalam file zip di bawah langkah 4 tutorial.

1. Arduino IDE

Saya telah menggunakan versi lebih awal dari Arduino IDE, jadi untuk kesederhanaan, saya merekomendasikan Anda untuk mengunduh Arduino IDE versi 1.06 di komputer desktop Anda sebelum Anda menginstal kode. Anda dapat mendapatkan versi ini dari sini.

2. Perpustakaan

Ini perlu diunduh dan ditambahkan ke IDE (Integrated Development Environment) yang berjalan di komputer Anda, digunakan untuk menulis dan mengunggah kode komputer ke papan fisik.

Kredit untuk UTFT.h dan URtouch.h diberikan kepada Rinky-Dink Electronics Saya menyertakan file zip ini karena tampaknya situs web sumber down.

4. Variasi Layar TFT

Keraguan layar TFT dan produsen telah menyebabkan catatan ini.

(a) Sainsmart - Jika Anda telah membeli layar TFT 3.2 inci yang bermerek Sainsmart di bagian belakang perangkat TFT Anda akan menemukan mereka harus memodifikasi perpustakaan untuk memecahkan masalah tampilan. Jika Anda telah membeli Layar TFT Sainsmart sudah ada perbaikan di bawah

Edit file "initlcd.h" dan modifikasi baris berikut dari

LCD_Write_COM_DATA(0x01, 0x2B3F);

ke

LCD_Write_COM_DATA(0x01, 0x3B3F);

Anda perlu memulai ulang IDE dan kemudian memuat ulang kode ke Arduino.

(b.) Chipset Pengontrol TFT - Orang yang telah membeli layar TFT 3.2 inci mungkin menemukan mereka juga dapat memiliki salah satu dari dua chipset berbeda "SSD1289" atau "ILI9341" Hal yang mengganggu adalah tidak mudah untuk membedakan perbedaannya online. Berita baik adalah mudah untuk diperbaiki. Jika Anda mendapatkan layar kosong setelah memuat kode maka mungkin karena itu adalah pengontrol ILI9341.

Untuk memperbaiki Anda perlu membuat perubahan berikut pada kode. Edit kode dan modifikasi baris kode berikut

dari

UTFT myGLCD(SSD1289, 38, 39, 40, 41); //Parameters should be adjusted to your Display/Schield model

ke

UTFT myGLCD(ILI9341_16, 38, 39, 40, 41); //Parameters should be adjusted to your Display/Schield model

Sekarang coba muat ulang kode ke Arduino.

(c.) Kontrol Layar Sentuh Terbalik

Beberapa perekayasa melaporkan bahwa tombol sumbu Y layar sentuh telah terbalik. Perbaikan untuk ini diidentifikasi di mana dua baris kode untuk diubah untuk membalikkan pembacaan layar sentuh.

Lakukan pencarian untuk: "yT = myTouch.getY();" Ubah menjadi: "yT = 240 - myTouch.getY();"

Jangan lupa untuk mencari dua kali, contoh pertama adalah untuk mengontrol pacman dalam mode jam, contoh kedua adalah untuk di menu setup.

5. File Grafis

Ada sekelompok file bitmap yang telah saya sertakan di bawah yang perlu berada di subdirektori yang sama dengan kode Arduino saat Anda mulai memuat ke Arduino. Oleh karena itu unduh file di bawah dan gunakan IDE untuk memuat.

6. Siapkan Jam

Setelah kode dimuat dengan berhasil tekan tengah layar dan ini seharusnya menampilkan layar setup. Gunakan menu untuk mengatur waktu dan alarm dalam format 24 jam. Tekan tombol SIMPAN untuk menyimpan pengaturan. RTC memiliki baterai jadi akan mempertahankan waktu yang benar meskipun daya dicabut. Waktu alarm disimpan di EEPROM yang berarti akan dipertahankan jika ada pemadaman listrik.

7. Menguji Alarm

Modul Suara digunakan untuk menyediakan Alarm. ISD1820 dikontrol oleh pin D8 Arduino. Suara dapat dengan mudah ditambahkan dengan memutar suara ke mikrofon sambil sekaligus menekan tombol rekam pada ISD1820. Dalam kasus saya, saya merekam musik introduksi Pac-Man asli dari file audio yang diputar melalui perangkat lain. Setelah suara direkam rekaman dapat diuji dengan menekan tombol PLAY-E yang seharusnya memutar suara melalui speaker. Gunakan menu setup untuk mengatur waktu jam dan waktu alarm beberapa menit terpisah. Pastikan untuk "SET" alarm dan tekan tombol menu "SIMPAN". Setelah kembali ke layar utama Alarm akan berbunyi saat waktu terjadi. Mematikan Alarm dapat dilakukan dengan menekan tengah panel layar sentuh menghasilkan Layar Setup.

8. Kalibrasi Layar Sentuh

Beberapa perekayasa telah menemukan bahwa tombol di layar setup tidak sejajar dengan kontrol sentuh TFT. Dalam kasus ini layar sentuh memerlukan kalibrasi. Ini dapat dengan mudah dilakukan dengan menggunakan kode kalibrasi layar sentuh dan instruksi yang disediakan dalam perpustakaan URtouch. Ikuti instruksi ini jika Anda mengamati masalah ini.

9. Empat Program Berbeda untuk Dipilih

  1. Arcade Clock - animasi DK Mario, Space Invaders & Pacman
  2. Pacman Clock - game Pacman/Ms Pacman animasi interaktif dengan fungsi jam
  3. DK Clock - game DK animasi interaktif dengan fungsi jam
  4. Tumble Ghost - game Hantu Pacman animasi berdasarkan Flappy Bird
1.%2BRetroArcadeClockTechKiwigadgetsV1.zip2.%2BRetro_Pacman_Clock_V10.zip3.%2BRetro_DK_Clock_V3.zip4.%2BTumble_Ghost_V10.zipDS1307RTC.zipTime.zipURTouch.zipUTFT.zip

Langkah 5: Menggabungkan Semua

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

1. Menambahkan Daya Eksternal

Langkah terakhir adalah menambahkan daya eksternal. Menggunakan bor, tambahkan lubang di bagian belakang kabinet. Masukkan kabel USB melalui panel belakang dan kemudian sambungkan kabel USB VCC, GND, D+ dan D- ke dasar konektor USB Arduino sesuai diagram rangkaian. Ini memiliki dua keuntungan, pertama masukan USB ke papan Arduino Mega memiliki perlindungan arus berlebih, dan kedua, Anda dapat menggunakan kabel USB untuk mengunggah perubahan kode tanpa harus melepaskan kotak. Tempelkan isolasi kabel daya ke bagian belakang Arduino untuk memberikan proteksi dari tegangan kabel saat merakit panel depan dan belakang. Tambahkan pegangan kabel dengan menempatkan kabel ikat erat di sekitar kabel di dalam kotak pada kabel daya 6-8 cm dari koneksi Arduino. Kabel ikat harus menghindari tegangan pada sambungan ketika kabel USB ditarik dengan menempel di dalam kotak.

2. Memasang Elektronik di dalam Kotak

Letakkan rangkaian di atas panel depan dengan empat panduan lubang yang seharusnya menyelaraskan layar secara sentral dalam potongan. Nyalakan rangkaian sehingga Anda dapat melihat layar panel depan, periksa apakah gambar layar berada di posisi yang benar lalu tempelkan ke tempat dengan panas. Hasilnya adalah pas erat dengan layar persegi yang berada di tengah lubang potongan.

3. Rangkuman Akhir

Lembut dorong panel depan ke panel belakang dan sambil menarik kabel daya USB untuk mengurangi kerendelan di panel belakang. Pegangan kabel berguna di sini dan seharusnya melindungi kerusakan pada kabel. Colokkan ke pengisi daya USB dan Anda siap.

Saya harap Anda menikmatinya!

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade
Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade
Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Code

Retro Arcade ClockC/C++

Arduino IDE - kode lengkap tersedia di bawah ini.

/* Retro Arcade Clock - TechKiwigadgets V1 - First Production Release */ 
#include <UTFT.h> 
#include <URTouch.h> 
#include <EEPROM.h> 
#include <Time.h> 
#include <Wire.h> 
#include <DS1307RTC.h> 
// Kode lengkap tersedia di bagian bawah tutorial. 

Bagian dan Enclosure Kustom

Thingiverse

https://www.thingiverse.com/thing:3017701 File CAD di thingiverse.com

Schematics

Jam Retro Arcade Berbasis Arduino: Jam Pengingat Meja Interaktif dengan Animasi Arcade

Proses manufaktur

  1. Buat Sequencer LED dengan Timer 555 & Counter 4017 – Pembagian Frekuensi & Debounce
  2. Jam Kuku: Sejarah, Kerajinan, dan Evolusi Modern
  3. Jam POV Arduino: Buat Tampilan LED Persistensi Penglihatan
  4. Generator Jam Verilog: Panduan Desain dan Implementasi
  5. Jam Kata Arduino DIY – Buat Tampilan Waktu Real-Time yang Elegan
  6. TeleBall Konsol Game Retro Tangan – Buat Sendiri Konsol Breakout dan Tenis berbasis Arduino
  7. Bangun Jam Master LED Kustom dengan Alarm – Terlihat dari Jarak 12 Meter
  8. Konsol Game Retro Ingegno – 8-Bit Gaming yang Didefinisikan Ulang
  9. Bangun Jam Kata Italia dengan Arduino Nano, NeoPixel, LCD, dan RTC
  10. Jam Kaca Tak Terbatas: Elegan Tak Terbatas Bertemu Waktu yang Akurat