Isi kandungan:

Jam Kata Pelangi Dengan Kesan Pelangi Penuh dan Banyak Lagi: 13 Langkah (dengan Gambar)
Jam Kata Pelangi Dengan Kesan Pelangi Penuh dan Banyak Lagi: 13 Langkah (dengan Gambar)

Video: Jam Kata Pelangi Dengan Kesan Pelangi Penuh dan Banyak Lagi: 13 Langkah (dengan Gambar)

Video: Jam Kata Pelangi Dengan Kesan Pelangi Penuh dan Banyak Lagi: 13 Langkah (dengan Gambar)
Video: Asteroid Jatuh Kebumi😱😱 #short #shortsvideo #shorts #viral #fypシ 2024, November
Anonim
Jam Kata Pelangi Dengan Kesan Pelangi Penuh dan Banyak Lagi
Jam Kata Pelangi Dengan Kesan Pelangi Penuh dan Banyak Lagi

Matlamat

1) Ringkas

2) Tidak mahal

3) Sekerap tenaga mungkin

Jam Kata Pelangi dengan kesan pelangi penuh.

Senyum pada Jam Kata.

Alat kawalan jauh IR sederhana

Kemas kini LDR 03-nov-18 untuk Kawalan Kecerahan Neopixels

Kemas kini 01-jan-19 Mengurangkan penggunaan kuasa WS2812B.

Kemas kini 15-jan-19 Smiley.

Kemas kini Kod 23-jan-19 1.6

Kemas kini pautan Perpustakaan 10-mar-19

Kemas kini 14-apr-19 versi 1.7 Pilihan senyum on / off collor rainbow / fix enz.

Kemas kini terakhir kawalan jauh 01-jun-19 versi 2.0 IR dan reka bentuk semula kod

Langkah 1: Kes Jam

Kes untuk Jam
Kes untuk Jam
Kes untuk Jam
Kes untuk Jam
Kes untuk Jam
Kes untuk Jam

Dengan beberapa alat mudah dan sedikit kemahiran, tidak sukar untuk membuat jam suratSaya menggunakan bahan yang tersedia untuk saya.

Untuk kes itu, saya menggunakan batang pinus kasar di mana saya melihat beberapa bingkai. Ini akan membuat empat sisi kotak, yang dilekatkan bersama dan diperkuat dengan sepotong kecil kayu di sudut. Kemudian kayu memerlukan pengamplasan dan lukisan.

Surat-surat itu dipotong dari kerajang oleh pencetak dengan tulisan cermin. Kerajang berada di bahagian belakang plat kaca dan ditutup dengan kertas corak lapisan dua untuk pengedaran cahaya yang lebih baik. Kaca terpaku oleh sealant silikon.

Langkah 2: Neopixels

Neopixels
Neopixels
Neopixels
Neopixels
Neopixels
Neopixels
Neopixels
Neopixels

LED Neopixels disusun di atas pinggan kayu. Di sini anda mula-mula menggerudi lubang 3 mm. Di bahagian depan mereka diperbesar hingga ukuran huruf hingga kedalaman 3/4. Selepas itu 3 mm di bahagian belakang ditingkatkan menjadi 10 mm, ini adalah ukuran Neopixel. Untuk sebilangan watak antara lain W, lubang harus sedikit disesuaikan.

Saya menggunakan papan lapis yang cepat pecah, MDF mungkin lebih baik.

Dengan LED individu anda tidak terikat pada jarak yang tetap, seperti halnya jalur LED. LED mesti dihubungkan antara satu sama lain. Anda boleh melakukan ini dengan semua kepingan wayar pendek. Tetapi sambungan dua min (-) sama seperti sambungan dua tambah (+) yang dihubungkan secara dalaman, jadi sambungan yang sama.

Anda boleh menjimatkan banyak kerja dengan menyisipkan sekeping wayar ke LED kiri dan kemudian ke LED kanan. Kemudian pateri yang perantaraan.

Sambungan data tentu saja dengan potongan pendek kerana keluarnya data masuk ke data.

Langkah 3: Melaraskan Teks Depan

Melaraskan Teks Depan
Melaraskan Teks Depan
Melaraskan Teks Depan
Melaraskan Teks Depan
Melaraskan Teks Depan
Melaraskan Teks Depan

Plat depan kini dalam bahasa Belanda, tetapi hanya untuk menukar dalam bahasa apa pun.

LED NeoPixels ditukar berturut-turut di sini dari 0-167. Penomboran bermula dari baris pertama di kiri atas ke kanan dan kemudian ke baris kedua dari kanan ke kiri dll. Penyesuaian boleh dilakukan mengikut keperluan anda sendiri. Bilangan NeoPixels ditentukan oleh jumlah watak. Kurang atau lebih Neopixels dapat disesuaikan dalam baris berikut

#define NUMPIXELS 168 // Berapa banyak NeoPixels yang dilekatkan pada Arduino?

168 adalah nombor lain. Penomboran bermula pada 0. Anda boleh membuat teks. Sekiranya anda menukar teks, anda juga perlu menyesuaikan perkataan yang sesuai. Penomborannya tetap sama.

Sebagai contoh, DRIE minit, ditentukan dalam kod

batal zetmDrie () {

Led_Aan [56] = 1, Led_Aan [57] = 1, Led_Aan [58] = 1, Led_Aan [59] = 1; // min-drie

}

Sekiranya anda ingin membuat perkataan Arduino maka ia seperti ini:

batal zetArduino () {

Led_Aan [38] = 1, Led_Aan [50] = 1, Led_Aan [56] = 1, Led_Aan [93] = 1;

Led_Aan [120] = 1, Led_Aan [135] = 1, Led_Aan [147] = 1; // Perkataan-arduino

}

Oleh itu, anda boleh membuat kata-kata antara.

Untuk kata jam, ia berguna jika mereka membentuk perkataan bersebelahan tetapi tidak semestinya diperlukan. Huruf yang tidak digunakan tidak memerlukan Neonpixels. Saya mempunyai semuanya untuk penggunaan kemungkinan masa depan selain masa yang ditunjukkan.

Sekiranya anda menukar titik permulaan atau menukar urutan penggantian, penomboran harus berubah dengan sewajarnya.

Langkah 4: Kesan Pelangi Penuh

Kesan Pelangi Penuh
Kesan Pelangi Penuh

Jam sekarang diprogramkan sehingga terdapat beberapa kali per detik dihitung berapa banyak neopixsel yang dihidupkan.

Jumlah spektrum adalah mengenai bilangan terbahagi dan kemudian sedikit beralih. Hasilnya, setiap Neopixel mempunyai warna yang berbeza yang terus berubah. Neopixel nr 1 dan nr 167 saling mengikut beberapa warna melibatkan.

Sekiranya anda lebih suka warna yang berbeza pada masa yang sama, ini mudah disesuaikan. Warna berubah pada keseluruhan spektrum tetapi dengan bahagian yang lebih kecil. Neopixel nr 1 dan nr 167 tidak lagi mengikut satu sama lain beberapa warna melibatkan.

Kecerahan dapat diatur dalam baris berikut, piksel.setBrightness (150);

Nombor yang lebih kecil kurang dan bilangan yang lebih besar lebih banyak kecerahan.

Langkah 5: Pelbagai Komponen

Pelbagai Komponen
Pelbagai Komponen
Pelbagai Komponen
Pelbagai Komponen
Pelbagai Komponen
Pelbagai Komponen

Komponen berikut saya gunakan

Arduino Pro Mini ATMEGA328 5V / 16MHz

Modul Jam DS3231

168 keping Neopixels LED WS2812 LED Chip & Heatsink 5V 5050 RGB WS2811 IC Built-in

Stensil surat kerajang

Penerima DCF77

Langkah 6: Kod untuk Jam

Inilah kodnya. Menambah kawalan kecerahan dan mematikan apabila tidak ada yang hadir dan pada waktu malam.

Sensor Gerakan Gelombang Mikro Radar RCWL-0516 (cari RADAR)

Selepas 10 minit tidak bergerak, NeoPixels keluar.

Mengenai versi 2.0

Penggunaan memori terlalu banyak, dengan amaran memori kehabisan dalam penyusun. Itulah sebabnya saya telah mengubah kodnya sepenuhnya, tetapi operasi tetap sama dan penerima IR telah ditambahkan.

Terdapat sekeping kod untuk menyediakan data EEPROM. Jalankan ini sekali dengan membuang / * dan * /. Cari => jalankan sekali ini untuk memberikan data EEPROM

Pada permulaan gelung void adalah kod untuk membaca kod dari alat kawalan jauh anda sendiri. Anda boleh menjalankannya dengan membuang sementara / / dan * /, jangan lupa untuk meletakkannya kembali selepas itu. Anda juga boleh menentukan butang anda sendiri. Kod yang dibaca mesti dimasukkan dalam => Tentukan butang anda sendiri di sini

Alat kawalan jauh Samsung berfungsi lebih baik daripada yang mudah (sangat murah).

Langkah 7: Penerangan Perkakasan

Penerangan Perkakasan
Penerangan Perkakasan
Penerangan Perkakasan
Penerangan Perkakasan
Penerangan Perkakasan
Penerangan Perkakasan

Terdapat pelbagai versi Arduino Pro Mini. Harap maklum, sambungannya mungkin berbeza.

Menambah Sensor Gerakan Gelombang Mikro RCWL-0516.

Selagi ada pergerakan di sekitar jam, NeoPixel tetap aktif

dan setelah tidak ada pergerakan lagi, NeoPixel akan hilang selepas beberapa minit.

Dalam versi 2.0, penerima DCF77 dibekalkan dengan kuasa melalui pin 13. Pin ini ditakrifkan sebagai output dan ditetapkan tinggi ketika rutin DCF77 ditangani. Penerima DCF77 menggunakan 0.28 mA dan hanya diperlukan selama beberapa minit sehari.

Mematikan menyimpan

5 Volt * 0.28 mA / 1000 * 24 jam * 365 hari * 1 / 0.85 bekalan kuasa kecekapan = 14.4 watt setahun.

Ini nampaknya tidak banyak, tetapi sedikit sebanyak membantu.

Langkah 8: LDR untuk Kawalan Kecerahan Neopixels

LDR untuk Kawalan Kecerahan Neopixels
LDR untuk Kawalan Kecerahan Neopixels
LDR untuk Kawalan Kecerahan Neopixels
LDR untuk Kawalan Kecerahan Neopixels

Menambah LDR untuk kawalan kecerahan neopixel.

Saya telah melekatkan LDR ke ruang neopixel 103. Yang ini tidak digunakan dalam paparan masa dan oleh itu tidak mempengaruhi peraturan. Kertas itu menyekat cahaya kejadian, tetapi itu tidak menjadi masalah.

Pembahagi voltan LDR dan perintang 20 kohm menuju ke A0 Arduino Pro Mini. Voltan adalah penunjuk keamatan cahaya dan oleh itu juga penunjuk jumlah cahaya yang harus diberikan oleh neopixel.

Rumus yang saya gunakan memberi saya kawalan cahaya yang baik, ia dapat disesuaikan bergantung pada keadaan. Bergantung pada kuantiti cahaya, voltan boleh berbeza antara 0 dan 5 volt yang ditukar menjadi 0 hingga 1024 kiraan yang berada di "LDRValue".

Sekiranya nilai yang diukur baru lebih besar daripada nilai yang dikira terakhir, intensiti meningkat sebanyak 1, jika lebih rendah daripada dikurangkan oleh 1 dan jika sama, tidak ada yang dilakukan. Untuk membuat nilainya bergerak perlahan, sehingga tidak ada efek berkedip, hanya 1 yang ditingkatkan atau dikurangkan dan kerana pengiraannya dalam gelung, ia hanya dikira semula setelah melintasi gelung 25 kali.

Intensiti secara teorinya minimum 20 dan maksimum 1024/7 + 45 = 191. Nilai maksimum yang saya ukur adalah 902, yang berjumlah intensiti 173. Ini sangat sesuai dengan 150 yang saya tetapkan sebagai nilai lalai. (lihat piksel.setBrightness (150))

Pada versi 2.0, anda dapat mengatur kontrol melalui alat kawalan jauh. Parameter berikut telah ditambahkan: Brightness_min sebagai minimum dan Brightness_max sebagai pengaturan maksimum dan Brightness_Offset sebagai parameter pengaturan. Brightness_min dan _max adalah nilai yang boleh bergantung pada keadaan anda sendiri. Brightness_Offset adalah nilai yang dapat diatur dengan alat kawalan jauh dan dengan mana lebih banyak kecerahan dapat diatur.

Terdapat juga band mati 3 antara nilai LDRValue yang diukur dan nilai BerLDRValue yang dikira.

Gunakan pernyataan cetak di BrightnessControl yang kosong untuk memeriksa tetapan kecerahan.

Langkah 9: Mengurangkan Penggunaan Tenaga WS2812B

Mengurangkan Penggunaan Tenaga WS2812B
Mengurangkan Penggunaan Tenaga WS2812B

Pemacu pada neopixel yang dapat dialamatkan WS2812B melukis arus walaupun neopixel dimatikan, ditetapkan ke warna 0 (tidak ada unsur neopixel yang menyala).

Apabila semua 169 neopixel keluar, saya mengukur 69 mA ke neopixel. Dengan andaian bahawa jam dimatikan 12 jam sehari, jumlah keseluruhan tutup kemudian menjimatkan: 5 (Bekalan kuasa volt) * 69/1000 (Miliampere / 1000 = Ampere) * 12 (Bilangan jam sehari) * 365 (Bilangan hari dalam satu jam) tahun) = 1511 Watt jam. Jadi secara tahunan 1.5 Kwh. Saya setuju, itu tidak banyak, tetapi banyak yang kecil menjadikannya besar.

Litarnya sederhana. Tambahan bekalan kuasa ditukar oleh saluran MosFet saluran-P. Sensor radar menentukan sama ada neopixel hidup atau mati. Saya telah meletakkan dua parrelel MosFet untuk mengekalkan rintangan ON serendah mungkin kerana kehilangan MosFets. Dalam penggunaan biasa saya mengukur 4, 5 mili volt di atas MosFets. Pintu dikawal oleh output 4 dari Arduino melalui 470 perintang Kohm. Sekiranya output menjadi rendah (0) secara digital, neopixel dihidupkan dan pada tinggi (1) mereka mati.

Langkah 10: Smiley pada Word Word

Smiley pada Word Word
Smiley pada Word Word
Smiley pada Word Word
Smiley pada Word Word

Senyum pada Jam Kata.

Kadang-kadang muncul Smiley pada jam. Itu membuat anda gembira.

Smiley dipicu oleh sensor radar. Frekuensi pergerakan (boleh disesuaikan) adalah ukuran penampilan Smiley. Tanda-tanda% menunjukkan bahawa gerakan telah dikesan. Dengan setiap pergerakan kesepuluh (laras), Smiley hadir dengan Winky Face dan setelah tiga kali Winky Face muncul untuk kali keempat Smiley Face menjulurkan lidah.

The Smiley adalah perubahan kecil dalam kod.

Langkah 11: Perpustakaan Mana Yang Digunakan

Perpustakaan mana yang digunakan.

Saya menggunakannya di Windows 7 dengan Arduino IDE 1.6 dan mereka juga telah diuji di Windows 10 dengan Adruino IDE 1.8.8

RTClib-master

Arduino-DS3231-master

Adafruit_NeoPixel-master

Arduino-DCF77-master

Perpustakaan IRremote Ken Shirriff

Oleh kerana selalu ada kekeliruan mengenai perpustakaan yang digunakan, saya menambah yang saya gunakan.

Perpustakaan IRremote menggunakan banyak memori. Di IRremote.h ditunjukkan bahawa anda boleh mematikan protokol yang tidak digunakan

// Setiap protokol yang anda sertakan termasuk memori kos dan, semasa penyahkodan, biaya masa // Lumpuhkan (tetapkan ke 0) semua protokol yang anda tidak perlukan / mahukan!

Saya telah melumpuhkan segalanya kecuali protokol NEC dan Samsung. Ini memberikan penjimatan memori sebanyak 10%. Pada masa ini tidak ada lagi masalah dengan jumlah memori, jadi untuk sementara waktu penonaktifan tidak diperlukan.

Langkah 12: Alat Kawalan Jauh IR Mudah

Alat kawalan jauh IR ringkas
Alat kawalan jauh IR ringkas
Alat kawalan jauh IR ringkas
Alat kawalan jauh IR ringkas
Alat kawalan jauh IR sederhana
Alat kawalan jauh IR sederhana

Perhimpunan

Seperti yang anda lihat dalam foto, lubang untuk LED 132 ternyata terlalu besar. Saya menggunakan ini dengan baik dan menambahkan penerima IR ke dalamnya. Sambungkan pin data penerima IR VS1838 ke pin 7 Arduino. Selanjutnya sambungkan bekalan kuasa tambah dan tolak. Penerima IR menggunakan 0.21 mA dan juga dapat disambungkan ke bekalan kuasa tambah setelah suis FET. Ini menghasilkan penjimatan, jika jam menggunakan 50% masa, 5 Volt * 0.21 mA / 1000 * 12 jam * 365 hari * 1 / 0.85 bekalan kuasa kecekapan = 5.4 watt setahun. Ini nampaknya tidak banyak, tetapi sedikit sebanyak membantu.

Operasi adalah seperti berikut

Tekan sebarang kekunci pada alat kawalan jauh IR dan kemudian kekunci OK. Kali pertama anda menekan, anda akan berakhir dalam pemprosesan IR dan kali kedua anda akan mengesan apakah itu permintaan yang dibenarkan. Kali kedua OK mesti mengikuti tekan kekunci pertama dengan cepat kerana jika tidak, ia akan kembali lagi. Saya membuat pembinaan ini sehingga saya tidak mendapat kod pertama yang disahkod dengan betul dan oleh itu tidak berakhir dalam pengendalian IR.

Sekali dalam pengendalian IR maka sejumlah LED menyala untuk mendapatkan maklumat, untuk penjelasan dibaca lebih lanjut dan lihat gambar pertama.

Penerangannya adalah untuk alat kawalan jauh yang mudah tetapi anda boleh menggunakan alat kawalan jauh dan menentukan kunci anda sendiri. Saya juga menggunakan alat kawalan jauh Samsung.

Empat kekunci pertama sesuai dengan empat baris LED teratas. Empat LED berpusing ke kiri atau kanan bergantung pada tetapannya. Apabila kekunci 1 hingga 4 ditekan, keadaan terbalik dan disimpan dalam memori.

1 warna tetap atau kesan pelangi

Pusing kilat 2 saat atau denyar kedua menyala

3 senyuman senyum dihidupkan

Matikan 4 DCF77 atau hidup DCF77

Nombor kunci ditunjukkan pada kekunci berikut

5 kaunter senyuman

Lebar spektrum pelangi 6

7 betulkan tetapan merah

8 betulkan tetapan hijau

9 betulkan tetapan biru

Baris 6, 7 dan 8 LED sekarang sesuai dengan nilai yang ditetapkan, baris 6 menunjukkan unit, baris 7 puluhan dan baris 8 ratus. Setiap baris bermula dengan nilai sifar. Jadi led pertama di baris adalah 0 yang kedua adalah 1 dll.

Tetapan masa 0

/ / tetapan kecerahan

Apabila butang 0 ditekan, LED "sepuluh" menyala untuk menunjukkan bahawa anda ingin menetapkan waktu dan ketika anda menekan 0 kali kedua, waktu yang ditetapkan muncul di paparan.

Masa sekarang dapat ditetapkan dan ditunjukkan di paparan.

Tetapkan masa yang betul dan kemudian jika minitnya sama pada jam rujukan, tekan butang OK.

Masa disesuaikan.

Sekiranya anda tidak menggunakan butang minit atau jam, tidak akan ada perubahan masa. Sekiranya anda menekannya, masanya akan ditetapkan dengan segera.

Nilai untuk kunci 5 hingga 9 boleh diubah dengan kunci

betul ialah tambah 1

kiri adalah tolak 1

hadapan adalah tambah 10

terbalik ialah tolak 10.

dan untuk tetapan masa

betul tambah 1 minit

kiri adalah minus 1 minit

maju adalah tambah 1 jam

terbalik adalah minus 1 jam

Kadang-kadang berlaku bahawa penekanan kekunci tidak dikenali atau dilakukan dua kali. Oleh itu, perhatikan jika tetapan berjalan dengan baik jika tidak, cuba atau betulkan lagi. Alat kawalan jauh Samsung yang juga saya uji berfungsi jauh lebih baik daripada alat kawalan jauh sederhana (sangat murah).

Semasa menetapkan warna, anda akan melihat perubahannya secara langsung pada keseluruhan paparan. Untuk laman web dengan gambaran keseluruhan warna, lihat https://www.helderester.nl/kleurentabel.html. Anda tentu saja boleh menetapkan sebarang nilai.

Sekiranya lebar spektrum pelangi mempunyai nilai 0, spektrumnya sangat sempit dan paparan mempunyai satu warna yang sentiasa berubah.

Kelemahan menetapkan waktu dengan cara ini adalah anda tidak dapat mengira peralihan musim panas / musim sejuk kerana tarikhnya salah. Tidak penting untuk jam itu sendiri kerana kita tidak menggunakannya sekarang.

Langkah 13: Apa Seterusnya?

Apa Seterusnya?
Apa Seterusnya?

Apa yang berikut, suara, jika memori bebas masih mencukupi.

Saya sudah mempunyai kotak pembesar suara. Mereka dari komputer riba lama.

Disyorkan: