Daftar Isi:

Arduino Riddlebox: 4 Langkah (dengan Gambar)
Arduino Riddlebox: 4 Langkah (dengan Gambar)

Video: Arduino Riddlebox: 4 Langkah (dengan Gambar)

Video: Arduino Riddlebox: 4 Langkah (dengan Gambar)
Video: DON'T TOUCH BOX !!! - Useless box with arduino - DIY 2024, Oktober
Anonim
Arduino Riddlebox
Arduino Riddlebox

Dalam Instruksi ini saya akan menunjukkan kepada Anda bagaimana membuat Riddlebox bertenaga Arduino. Saya membuat ini untuk menambahkan sedikit kesenangan pada hadiah natal pacar saya yang sebenarnya, yang saya sembunyikan di dalam kompartemen kotak.

Setelah 5V diterapkan ke kabel USB, Arduino menyala dan LCD menunjukkan tutorial singkat dan kemudian urutan sepuluh teka-teki, yang perlu dipecahkan untuk membuka kompartemen yang dioperasikan servo, yang dapat menampung hadiah atau hadiah.

Ada juga menu pengaturan yang licik, dilindungi kata sandi, untuk mengatur ulang kemajuan dan membuka kompartemen.

Saya menggunakan apa yang dapat saya temukan di toko perangkat keras lokal saya dan sisanya dicetak 3D. Jelas Anda dapat menyesuaikan Riddlebox dengan menambahkan lebih banyak sensor atau menghilangkan beberapa bagian. Biarkan kreativitas Anda berjalan bebas.

Anda akan perlu:

  • Arduino Mega (Uno mungkin juga cukup)
  • Kabel jumper fleksibel
  • Saklar kunci
  • Papan tombol 4x4
  • I2C LCD 20x04
  • 2x motor servo SG90
  • Kasus aluminium
  • Engsel logam
  • lembaran aluminium
  • Alat gergaji atau alat putar dengan roda pemotong
  • Pistol lem panas
  • Lem ikatan tinggi
  • Flash disk
  • file logam

Langkah 1: Menyiapkan Perangkat Keras

Menyiapkan Perangkat Keras
Menyiapkan Perangkat Keras

Saya pertama kali membuat prototipe teka-teki, dengan Arduino papan tempat memotong roti dan komponen yang ingin saya gunakan, yaitu sakelar kunci dan keypad. Untuk menggunakan kode Arduino dari instruksi ini apa adanya, sambungkan bagian-bagian seperti yang dijelaskan di bawah ini. Tentu saja Anda dapat menambah dan menghapus komponen, atau menggunakan pin yang berbeda, selama Anda membuat perubahan yang sesuai pada kode.

Kebanyakan keypad memiliki pin untuk setiap baris dan setiap kolom. Cari tahu pin mana yang merupakan pin baris, dengan menguji kontinuitas antara pin yang berbeda sambil menekan tombol untuk menutup sirkuit (lihat contoh diagram). 4 pin yang tersisa harus menjadi pin kolom. (Catatan: terkadang dua pin paling luar terhubung ke isian tembaga pada PCB dan dapat diabaikan)

Hubungkan pin keypad COL0 - COL3 ke pin Arduino 12 - 9 dan ROW0 - ROW3 ke pin Arduino 8 - 5.

LCD terhubung melalui I2C, jadi hanya dibutuhkan empat pin: SDA, SCL, 5V dan GND.

Sakelar kunci memiliki tiga posisi dan enam pin: Kedua pin C (umum) terhubung ke ground, sedangkan dua pin berlabel NO (biasanya terbuka) masing-masing menuju ke pin Arduino 22 dan 23. (Catatan: input arduino ditarik tinggi, jadi kita hanya perlu menghubungkan ground ke pin umum sakelar)

Kedua servo digunakan untuk secara fisik membuka pintu kompartemen dan menguncinya melalui kait.

Hubungkan 5V dan GND dari servos ke Arduino dan hubungkan jalur sinyal sebagai berikut: kunci servo = pin 44, servo pintu = pin 45.

Langkah 2: Kode dan Teka-teki Arduino

Kode dan Teka-teki Arduino
Kode dan Teka-teki Arduino
Kode dan Teka-teki Arduino
Kode dan Teka-teki Arduino

Kode untuk Arduino terdiri dari beberapa file. Sketsa utama memulai semua perangkat keras, perpustakaan, dan variabel global. Semua teka-teki dan blok menu disimpan dalam fungsi dalam file terpisah untuk manajemen yang mudah. Status kemajuan, yang disimpan di EEPROM (yaitu aman bahkan setelah powercylce), menentukan fungsi teka-teki mana yang dipanggil dalam fungsi sakelar dari file utama.

Saya menghapus informasi pribadi apa pun dari kode dan mengganti beberapa solusi dengan solusi umum (1234…). Jangan ragu untuk mengubah kode sesuai keinginan Anda dan menambahkan beberapa solusi yang dipersonalisasi.

Teka-teki dan blok menu:

  1. Lanjutan: Menu pengaturan lanjutan dengan pengaturan ulang kemajuan dan kontrol kompartemen.
  2. Intro: Menu intro dengan teks ucapan dan tutorial.
  3. Dasar: Teka-teki untuk nomor atom yodium.
  4. Outsourcing: Pemain perlu menghubungi alamat email yang otomatis menjawab teka-teki nomor. (Teka-teki berbentuk bintang dalam gambar)
  5. Enam belas: Pemain perlu mengubah bilangan heksadesimal menjadi desimal.
  6. Pilihan: Pemain harus menyelesaikan petualangan teks yang terletak di flash drive, kata sandi untuk level berikutnya disembunyikan dalam cerita. (lihat Amnesia.rtf)
  7. Offline: Pemain harus menerima kunci untuk mengaktifkan sakelar kunci (misalnya melalui surat, cara yang bagus untuk memperlambatnya jika terlalu cepat).
  8. Tak Terlihat: Kata sandi untuk level berikutnya ditulis di selembar kertas dengan tinta tak terlihat.
  9. Kalkulus: Tugas kalkulus sederhana. (Lebih dari placeholder yang tidak pernah terisi, karena saya kehabisan waktu)
  10. Perubahan: Teka-teki singkat tentang uang kertas Euro, dapat disesuaikan dengan mata uang apa pun dengan uang kertas berwarna berbeda.
  11. Kesabaran: Pemain tidak boleh memutar kunci selama 5 menit, jika tidak, timer akan me-reset dan menggandakan. (Catatan: Memutar kunci cukup sering menyebabkan variabel meluap dan diatur ulang ke nol karena ukurannya yang terbatas.)
  12. Jawabannya: "Apa jawabannya?". Solusinya jelas 42.
  13. Layar Akhir: Selamat dan instruksi membuka kompartemen. (melalui sakelar tombol)

Saya telah menyertakan dokumentasi lebih lanjut dalam bentuk komentar dalam file kode.

FYI: menahan 'A' selama splash screen membuka menu pengaturan. Kata sandi: 2582

Langkah 3: Membangun Faceplate

Membangun pelat muka
Membangun pelat muka
Membangun pelat muka
Membangun pelat muka
Membangun pelat muka
Membangun pelat muka

Saya membeli kasing di toko perangkat keras lokal saya bersama dengan lembaran aluminium. Itu datang dengan pembagi yang kemudian saya gunakan kembali untuk membuat dinding kompartemen.

Lembaran aluminium itu terlalu lebar, jadi saya mencoret dan memperpendeknya dengan gergaji. Namun, gergaji gulir, alat putar, atau bahkan penggiling dengan roda pemotong mungkin lebih cocok, karena saya membutuhkan waktu lama dan saya mematahkan dua bilah dalam prosesnya. Celah di bagian depan kasing memang disengaja. Ini menyediakan ruang untuk menempatkan powerbank dan memory stick.

Setelah menandai di mana saya ingin semuanya pergi, saya mengebor lubang di sudut-sudut bagian yang ditandai dan memotongnya menggunakan gergaji coping lagi. Untuk bagian kompartemen saya mencoba roda potong pada penggiling, dan itu bekerja dengan sangat baik. Saya menggunakan file logam untuk memangkas bukaan agar sesuai dengan komponen dan debur mereka. Sebuah umpan cepat dengan orbital sander memberikan hasil akhir yang matte. Ini tentu saja benar-benar opsional, saya banyak menggores pelat aluminium, jadi pengamplasan sepertinya cara yang baik untuk menyembunyikannya dan menghilangkan tanda sharpie saya.

Pintu ke kompartemen hanyalah potongan lembaran aluminium yang tersisa.

Saya menempelkan engsel ke pintu dan pelat logam menggunakan lem ikatan tinggi. Ini diterapkan pada kedua permukaan, dibiarkan mengering selama 10-20 menit. dan kemudian kedua sisi ditekan bersama-sama. Ikatan itu instan dan tidak ada cara untuk menyesuaikan kedua bagian nanti.

Papan tombol dan layar LCD tetap di tempatnya dengan lem panas di sekeliling sisinya. (Catatan: Pastikan untuk mengisolasi pin komponen dari lembaran aluminium. Oleskan lem panas untuk mengatasinya)

Sakelar kunci memiliki ulir dan mur, jadi saya mengebor lubang dengan ukuran yang benar dan memasang sakelar.

Untuk membuat kompartemen terbuka secara otomatis, saya memasang pintu dan mengunci servos ke bagian bawah lembaran aluminium dengan lem panas. Kait pengunci dan tuas pembuka dan kait kunci saya tekuk untuk membentuk beberapa braket (mirip dengan pita pipa ledeng). Sekilas saya bisa dan mungkin harus mencetak 3D komponen ini karena mereka agak tipis dengan cara ini dan mungkin akan menjadi hal pertama yang gagal. Saya menempelkan bagian-bagian ini masing-masing dengan lem panas dan lem ikatan tinggi (lihat gambar).

Karena bagian depan tidak terlihat sangat cantik dengan cara ini, saya memutuskan untuk mencetak beberapa bingkai untuk mengitari komponen yang berbeda dan menempelkannya dengan lem panas juga.

Langkah 4: Menyelesaikan Kasus

Menyelesaikan Kasus
Menyelesaikan Kasus
Menyelesaikan Kasus
Menyelesaikan Kasus

Seperti yang saya sebutkan sebelumnya, kasus ini datang dengan beberapa pembagi. Saya memutuskan pengaturan untuk membuat kompartemen kasar dan beberapa ruang untuk Arduino dan kemudian menggunakan lem ikatan tinggi untuk memperbaiki semuanya di tempatnya.

Setelah menghubungkan semua komponen ke Arduino Mega dan menempelkannya dengan panas ke casing, saya memasukkan kabel USB melalui lubang kecil di antara pembagi, sehingga dapat diakses dari luar.

Setelah dengan hati-hati menjatuhkan pelat aluminium ke posisi akhirnya, saya memperbaikinya di tempatnya dengan menekan nosel pistol lem panas ke jahitan antara pelat dan kasing dan memaksa lem ke dalam celah. Pada awalnya saya skeptis tentang keaslian metode fiksasi ini tetapi itu bertahan sejauh ini.

Hal terakhir yang harus dilakukan adalah menerapkan beberapa sentuhan akhir. Saya mendesain beberapa stiker sederhana di MS Publisher yang saya cetak, gunting dan tempelkan di pelat depan dengan lem sederhana.

Tentu saja terserah Anda jika dan berapa banyak stiker yang ingin Anda buat dan tempel. Juga ini mungkin kesempatan yang baik untuk berlatih beberapa teknik pelapukan untuk membuat semuanya terlihat sedikit lebih buruk. Sayangnya ini hanya datang kepada saya saat menulis Instructable ini.

Bagaimanapun, saya harap Anda menikmati build Riddlebox ini. Jika Anda memiliki pertanyaan atau ide perbaikan, tinggalkan komentar di bawah dan saya akan mencoba menghubungi Anda sesegera mungkin.

Direkomendasikan: