Daftar Isi:

Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino: 13 Langkah (dengan Gambar)
Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino: 13 Langkah (dengan Gambar)

Video: Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino: 13 Langkah (dengan Gambar)

Video: Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino: 13 Langkah (dengan Gambar)
Video: Membuat Jam Digital Bisa Untuk Alarm Bisa Mengukur Suhu Ruangan dan Kelembaban Udara 2024, Juli
Anonim
Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino
Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino
Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino
Jam Prakiraan Cuaca Menggunakan Alarm Lama dan Arduino

Saya memiliki jam alarm rusak tergeletak di sekitar dan datang dengan ide untuk mengubahnya menjadi jam dan stasiun prakiraan cuaca.

Untuk proyek ini Anda akan membutuhkan:

  • Jam alarm melingkar tua
  • Arduino Nano
  • Modul sensor BME280 (suhu, kelembaban, tekanan)
  • Modul tampilan LCD dari Nokia 5110
  • DS1307 RTC jam
  • Pengisi daya baterai lithium TP4056
  • Baterai Li-ion lama diselamatkan dari ponsel
  • Modul penguat 3.7v hingga 5v kecil
  • Light Dependent Resistor (LDR - pengukur cahaya)
  • Buzzer (bekas bekas dari PC lama)
  • 3 tombol tekan
  • Sekelompok resistor (2x10k, 270 ohm) dan transistor (2N2222A atau serupa)
  • Beberapa tabung menyusut lebar
  • skrap PCB untuk digunakan sebagai dekorasi pelat depan
  • Kabel ekstensi Micro-USB (sisi perempuan dan laki-laki adalah Micro-USB)
  • Papan prototipe 2x8cm dan beberapa kabel

Langkah 1: Bongkar Semuanya

Bongkar Semuanya
Bongkar Semuanya

Pertama saya membongkar jam tua. Lonceng, motor, mekanisme jam rusak…

Langkah 2: Tombol untuk Pengaturan Digital

Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital
Tombol untuk Pengaturan Digital

Karena jam baru akan sepenuhnya digital dengan komputer mini di dalamnya, saya menambahkan 3 tombol sederhana yang terlihat bagus di samping.

Dengan menggunakan potongan aluminium, saya memotong lapisan untuk membuat label. Huruf untuk label dibuat dengan menggunakan letter-punches dan spidol hitam.

Langkah 3: Kapasitor untuk Motor

Kapasitor untuk Motor
Kapasitor untuk Motor

Saya akan menyimpan lonceng tua untuk menyalakan alarm dengan motor. Mekanisme jam rusak lama memiliki kapasitor keramik dengan label 104. Saya melepaskannya dari papan sirkuit dan menyoldernya langsung ke motor - ini akan membantu mencegah lonjakan daya saat menyalakan motor selama alarm. Juga penting untuk dicatat adalah bahwa motor akan dikendalikan melalui transistor tetapi lebih lanjut tentang ini nanti.

Langkah 4: Wajah Baru untuk Jam

Wajah Baru untuk Jam
Wajah Baru untuk Jam
Wajah Baru untuk Jam
Wajah Baru untuk Jam

Karena saya memutuskan untuk membuat wajah baru untuk jam - saya mengambil papan sirkuit dari tumpukan tempat sampah saya dan menggunakan heatgun builder untuk menghapus semua komponen dengan cepat. Lubang di tengah dibuat untuk layar digital jam baru.

Langkah 5: Tampilan Digital Dari Ponsel Lama

Tampilan Digital Dari Ponsel Lama
Tampilan Digital Dari Ponsel Lama
Tampilan Digital Dari Ponsel Lama
Tampilan Digital Dari Ponsel Lama

Untuk proyek ini saya memutuskan untuk menggunakan layar LCD dari ponsel Nokia 5110 lama. Layar ini tersedia secara luas untuk dijual sebagai modul, mereka menggunakan daya yang sangat kecil dan ada perpustakaan yang bagus untuk Arduino. Jika Anda membeli modul baru dengan layar 5110 - Anda menyelamatkan planet ini karena semua modul baru dibuat dari ponsel 5110, 3110, dan 3210 yang diselamatkan!

Langkah 6: Menghubungkan Sirkuit

Menghubungkan Sirkuit
Menghubungkan Sirkuit
Menghubungkan Sirkuit
Menghubungkan Sirkuit
Menghubungkan Sirkuit
Menghubungkan Sirkuit

Anda mungkin sudah menebak bahwa saya berencana menggunakan papan Arduino untuk mengontrol jam ini. Proyek ini mudah diulang bahkan untuk penggemar Arduino pemula karena saya tidak membuat papan sirkuit sendiri. Ini adalah papan Arduino Nano dengan modul yang terhubung dengannya - sensor suhu, tekanan dan kelembaban BME280, jam DS1307 RTC, pengisi daya baterai Lithium TP4056, modul booster kecil 3.7v hingga 5v, Light Dependent Resistor (LDR - pengukur cahaya) dan bel (diambil dari PC lama).

Lihat juga sketsa - mereka menunjukkan semua koneksi. Saya pikir semuanya sangat mudah dibaca dan dipahami tetapi jika Anda memiliki pertanyaan, tanyakan saja di komentar di bawah.

Beberapa catatan tentang pengaturan:

  • Motor terhubung langsung dari baterai melalui transistor. Arduino mengontrol transistor melalui resistor dan pin PWM D5.
  • Pin D7-12 digunakan untuk konektor LCD. Ground dan VCC terhubung ke rel di papan persimpangan.
  • LDR dipasang pada permukaan jam dan resistor + 3 kabel keluar disolder tepat di bagian belakang tampilan jam.
  • Untuk koneksi tombol saya menggunakan fungsi PULLUP internal di dalam Arduino. Tombol Menu terpasang ke interupsi dan saya baru menyadari kemudian bahwa Anda juga dapat menggunakan PULLUP internal untuk interupsi juga. Interupsi untuk tombol Menu diperlukan agar kode tidak memindai status tombol sepanjang waktu.
  • Jam akan memantau dan menampilkan juga status baterai sehingga baterai langsung terhubung ke pin A0. Tegangan baterai tidak pernah lebih tinggi dari 4.2V sehingga aman untuk menghubungkan baterai langsung ke pin analog Arduino.
  • Buzzer terhubung langsung ke pin PWM D6. Meskipun ini bukan praktik yang baik, saya lolos karena Arduino Nano dapat menangani spesifikasi yang lebih tinggi dari yang disebutkan dan juga karena bel tidak akan terus bekerja. Pengaturan yang sama akan dengan mudah membakar pin pada papan ESP sehingga dalam kasus tersebut saya sarankan menggunakan kontrol transistor.
  • Jam sudah memiliki saklar jadi saya memutuskan untuk menggunakannya. Terlihat natural di bagian belakang.

Langkah 7: Papan Persimpangan untuk Koneksi yang Mudah

Papan Persimpangan untuk Koneksi yang Mudah
Papan Persimpangan untuk Koneksi yang Mudah
Papan Persimpangan untuk Koneksi Mudah
Papan Persimpangan untuk Koneksi Mudah

Semua modul memerlukan koneksi positif dan ground, jadi saya memutuskan untuk menggunakan papan prototipe 2x8cm dan menyolder 5V dan rel Ground ke sana. Saya juga membuat rel I2C kecil di sana juga karena saya memiliki beberapa modul menggunakan antarmuka I2C.

Di sisi lain saya menyolder pin standar sehingga saya dapat menghubungkan dan melepaskan modul saat diperlukan.

Beberapa komponen tambahan juga disolder disana seperti transistor dan resistor untuk kontrol motor dan resistor untuk tombol Menu yang menggunakan Interrupt. Saya menunjukkan skema di bagian sebelumnya.

btw Bisa lihat sensor LDR sudah terpasang di muka jam di gambar pertama?

Langkah 8: Menyiapkan Daya

Menyiapkan Kekuatan
Menyiapkan Kekuatan

Saya menggunakan baterai Lithium-ion lama dari ponsel saya untuk menyalakan jam ini. Biasanya baterai ponsel yang diganti masih memiliki kapasitas yang baik (minimal setengah dari saat baru). Keuntungan mereka adalah mereka memiliki sirkuit perlindungan pelepasan built-in dan mereka juga sangat tipis sehingga dapat digunakan dalam skenario ruang kecil.

Untuk menghubungkan baterai Anda cukup menyolder kabel ke pin + dan - pada baterai. Jangan khawatir, Anda tidak akan merusak sel karena ada pengontrol dan beberapa ruang kosong antara pin dan bahan kimia sel.

Pada gambar ini Anda dapat melihat baterai dan juga pengontrol pengisian daya TP4056 serta penguat 5V yang terhubung bersama dan ke baterai. Saya menggunakan beberapa tabung shrink-wrap untuk membuat semuanya terisolasi dan kompak.

Langkah 9: Micro USB untuk Mengisi dan Memperbarui Firmware

Micro USB untuk Mengisi dan Memperbarui Firmware
Micro USB untuk Mengisi dan Memperbarui Firmware

Setelah saya menyolder semuanya, saya menempelkan bel dan sensor suhu/tekanan/kelembaban di panel belakang. Mereka semua dipasang dengan baik di slot yang ada dari kontrol dial jam lama.

Sekarang saatnya memasang port Micro USB di bagian belakang. Mengapa Micro USB jika Nano menggunakan Mini USB? Hanya karena di rumah tangga, kebanyakan kabel USB berasal dari ponsel dan akan lebih nyaman jika jam juga bisa mengambilnya.

Karena saya ingin menggunakannya untuk mengisi dan memperbarui fungsi jam dan stasiun cuaca - saya melepas kabel USB, mengarahkan kabel daya melalui pengisi daya TP4056 dan kabel Data+/Data- langsung ke soket USB Arduino Nano. Anda dapat melihat ini pada skema yang saya tunjukkan di bagian sebelumnya.

Langkah 10: Majelis Akhir

Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir

Sekarang saatnya untuk mengemas semuanya kembali ke jam aslinya. Saya menggunakan tabung menyusut untuk mengisolasi komponen dan modul. Bahkan Arduino dibungkus dalam tabung menyusut.

Arahkan kursor ke foto pertama untuk melihat di mana setiap komponen ditempatkan.

Langkah 11: Kode

Seperti yang Anda lihat, jam itu penuh sesak di dalam. Ini memungkinkan untuk membuat sesuatu yang lebih canggih daripada jam lama yang saya miliki - mengingat ada beberapa keterampilan pemrograman tentu saja. Saya menulis kode awal tetapi meminta teman saya untuk masuk dan membantu saya.

Sejauh ini, selain jam itu sendiri, ini adalah fungsi yang sudah didukung oleh proyek ini:

  • Tampilan waktu dan tanggal (serta waktu dan aktivasi alarm pada layar yang sama)
  • Layar menyala dalam kondisi gelap atau saat terdeteksi gerakan (berdasarkan perubahan cahaya)
  • Prakiraan cuaca (Cerah, Berawan, Hujan)
  • Tampilan suhu, tekanan dan kelembaban (untuk kelembaban akan menunjukkan apakah terlalu kering)
  • Menu untuk pengaturan: alarm, mengubah waktu, mengaktifkan/menonaktifkan tampilan tanggal, mengaktifkan/menonaktifkan pemberitahuan suara perubahan cuaca, dan beralih antara unit imperial dan metrik
  • Pengaturan alarm - hidup/mati, pengaturan waktu, pengaturan melodi dan/atau lonceng untuk notifikasi

Kode terbaru:

Kode akan diperbarui di masa mendatang dengan fitur-fitur baru jadi pastikan untuk memeriksa kembali pembaruan firmware:-)

Jika Anda baru mengenal dunia Arduino, ini adalah langkah-langkah yang saya sarankan untuk dilakukan:

  • Instal driver USB untuk board Anda (mis. CH340)
  • Instal Arduino IDE
  • Instal perpustakaan yang digunakan dalam proyek ini
  • Unduh dari GitHub dan unggah kode Proyek terbaru ke jam menggunakan kabel Micro USB (Anda dapat menggunakannya dari ponsel)

Algoritma peramalan adalah sebagai berikut:

Arduino Nano mendapatkan data baru dari sensor BME280 setiap 12 menit. Siklus pengukuran adalah 3 jam. Setelah 3 jam rentang pemantauan tekanan (nilai maks dan min selama 3 jam) bergeser relatif terhadap nilai rata-rata selama rentang saat ini dan nilai tekanan saat ini. Setiap jam arah perubahan tekanan dengan nilai tekanan saat ini disimpan. Satuan kPa digunakan untuk perhitungan prakiraan.

Karena keterbatasan memori Nano, algoritma peramalan harus disederhanakan. Namun meskipun disederhanakan, ia mampu memperkirakan curah hujan dalam 12-24 jam ke depan meskipun prakiraan sekarang lebih pesimis - nilai defaultnya adalah "Cuaca Mendung".

"Cuaca Cerah" - nilai tekanan saat ini lebih tinggi dari norma sebesar 7 poin, tekanan tidak turun dan perbedaan antara nilai min dan maks selama 3 jam terakhir tidak lebih dari 2 poin.

Kemungkinan curah hujan "Cuaca Hujan" - tekanan saat ini 15 poin lebih rendah dari norma dan perbedaan antara nilai min & maks lebih dari 2 poin ATAU Tekanan turun dan perbedaan antara nilai saat ini dan norma adalah 3 - 30 poin.

Untuk meningkatkan kualitas peramalan, disarankan untuk mengubah "ketinggian" Anda di file kode utama. Anda bisa mendapatkan ketinggian Anda misalnya di sini:

Langkah 12: Video langkah demi langkah

Image
Image

Jika sulit untuk mengikuti apa yang saya lakukan di atas, ini juga versi video dengan semua langkah yang ditampilkan.

Langkah 13: Kata-kata Terakhir

Secara keseluruhan, dari sudut pandang saya, tingkat kesulitan proyek ini tidak tinggi dan siapa pun bisa membuatnya. Jika Anda tidak memiliki jam tua, Anda dapat menemukan jam murah di pasar loak setempat.

Semua komponen harganya murah dan tersedia di Sparkfun/Aliexpress/eBay/Amazon.

Saya harap tutorial ini menarik bagi Anda dan akan berterima kasih jika Anda dapat mendukung Instructable pertama saya dalam kontes Jam.

Kontes Jam
Kontes Jam
Kontes Jam
Kontes Jam

Runner Up dalam Kontes Jam

Direkomendasikan: