Sabtu, 10 Desember 2022

Membuat Jam Pasir Digital (Hourglass) Arduino MAX7219 MPU6050

 

Digital Hourglass Arduino MAX7219 MPU6050
Digital Hourglass Arduino MAX7219 MPU6050

Saat saya mencari inspirasi untuk membuat sebuah proyek elektronika, saya menemukan sebuah proyek elektronika yang cukup menarik yaitu proyek jam pasir digital berbasis Arduino dengan sensor accelerometer MPU6050 sebagai pendeteksi arah putarannya dan dua buah display led matrix MAX7219 yang disusun secara diagonal sebagai tampilannya, proyek tersebut nyatanya di internet sudah banyak yang membuatnya baik yang masih menggunakan papan protoboard maupun yang sudah memakai pcb khusus dan housing cetak tiga dimensi sehingga bentuknya sudah menyerupai jam pasir konvensional sementara untuk kode programnya ternyata berasal dari kode program yang sama yang meskipun didalamnya terdapat sebuah pengaturan yang melibatkan rotary encoder namun ternyata di semua tutorial yang saya temukan tadi tidak ada satupun yang menggunakannya jadi kode program tersebut sumber aslinya belum diketahui.


Pada artikel ini saya tertarik untuk mencoba membuatnya sendiri dengan desain pcb yang unik yang tentunya akan saya desain menyerupai jam pasir konvensional dengan ukuran cukup sesuai dengan dua buah display led matrix MAX7219 sementara untuk sensor accelerometer MPU6050-nya saya tempatkan dibelakang pcb sehingga nantinya untuk kode programnya perlu penyesuaian, disamping itu karena didalam kode programnya terdapat pengaturan yang melibatkan rotary encoder sebagai pengaturan waktunya yang akan saya fungsikan namun alangkah tidak eloknya jika diaplikasikan pada bentuk yang sudah saya desain menyerupai jam pasir konvensional maka saya putuskan untuk mengubahnya menjadi tiga buah tombol yang terdiri dari tombol pilihan, tombol pengurangan dan tombol penambahan dan lagi-lagi pengubahan ini akan berdampak besar pada pengeditan untuk penyesuaian pada kode programnya, namun disamping pengeditan kode program untuk menyesuaikan dengan desain pcb saya juga menambahkan beberapa fungsi baru mulai dari mengoptimalkan penggunaan buzzer hingga menambahkan fungsi untuk pengaturan seting kecerahan layar.
Berikut ini skemanya yang kemudian saya desain menjadi sebuah pcb dual layer yang bentuknya di desain menyerupai jam pasir konvensional.


Skema Digital Hourglass Arduino MAX7219 MPU6050
Skema Digital Hourglass Arduino MAX7219 MPU6050 

Layout Arduino Hourglass Arduino
Layout Arduino Hourglass Arduino

Preview Arduino Hourglass Arduino
Preview Arduino Hourglass Arduino

Setelah selesai membuat desain PCB yang bentuknya mirip dengan jam pasir konvensional, kemudian desain pcb tersebut saya konversikan lagi menjadi file gerber agar bisa di unggah ke situ PCBWay.com untuk difabrikasi menjadi pcb dengan kualitas premium dengan harga yang cukup terjangkau yakni hanya sebesar 5 dolar saja untuk 10 keping pcb dengan ukuran 10x10cm dan berbagai pilihan warna, untuk proyek kali ini saya akan memilih warna hitam glossy. Eh iya kalau kamu belum mempunyai akun PCBWay maka ketika mendaftar akun PCBWay kamu akan mendapatkan saldo welcome bonus sebesar 5 dolar untuk biaya cetak pcbnya. Jadi ketika kamu selesai mendaftar akun maka kamu bisa langsung memesan pcb secara gratis, silakan daftar akun PCBWay disini.


Pcbway.com
PCBWay.com

Saldo welcome bonus untuk pendaftar akun PCBWay
Saldo welcome bonus untuk pendaftar akun PCBWay

PCB yang saya pesan di situs PCBWay.com telah selesai dicetak dalam waktu sekitar dua hari dan dikirim sekitar tiga hari, jadi dalam waktu seminggu saya sudah mendapatkan pcbnya dan sudah siap dipraktekkan. Dibawah ini pcb jam pasir digital berbasis Arduino cetakan PCBWay yang telah saya terima dan yang telah saya rakit.


PCB Depan Arduino Hourglass Arduino
PCB Depan Arduino Hourglass Arduino 

PCB Belakang Arduino Hourglass Arduino
PCB Belakang Arduino Hourglass Arduino

Arduino Hourglass Arduino - PCBWay
Arduino Hourglass Arduino - PCBWay

Kemudian untuk kode programnya saya siapkan untuk kamu DOWNLOAD jika ingin juga mencobanya, saya siapkan dua berkas berbeda. Satu berkas aslinya dan satu lagi berkas yang sudah saya sesuaikan untuk pcb yang saya desain ini yang tentunya sudah saya optimalisasi kan baik dari fungsi aslinya hingga fungsi yang saya tambahkan.


Selesai pembuatan PCB, penyesuaian dan optimalisasi kode program kini tiba saatnya untuk mencoba dan melihat hasilnya pada video berikut ini.