Daftar Isi:
- Langkah 1: Video Interaksi
- Langkah 2: Pernyataan Masalah
- Langkah 3: Ikhtisar Cara Kerja
- Langkah 4: Daftar Bahan dan Alat
- Langkah 5: Mulai Membangun Dengan Breadboard
- Langkah 6: Memulai Kode
- Langkah 7: Sentuhan Akhir
Video: Pengatur Waktu Ruang Belajar: 7 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Petunjuk tentang cara membuat timer untuk ruang belajar.
Langkah 1: Video Interaksi
drive.google.com/file/d/12z5zQR52AXILX2AGb3EplfbmZWANZiCl/view?usp=drivesdk
Langkah 2: Pernyataan Masalah
Sebagian besar waktu, ruang belajar selalu diambil. Ini terjadi karena orang suka tinggal di kamar lebih lama dari yang mereka butuhkan. Kami telah merancang pengatur waktu yang memungkinkan setiap orang total 2 jam dan orang yang menunggu kemampuan untuk meminta ruangan untuk menjadi grup berikutnya. Penggunaan RGB pada Neopiksel akan menunjukkan jumlah waktu yang tersisa.
Langkah 3: Ikhtisar Cara Kerja
Timer terdiri dari bagian-bagian yang dipotong oleh pemotong laser, 3 tombol, 1 LED, 1 potensiometer.
Neopiksel dan potensiometer dihubungkan ke NodeMCU. NodeMCU diprogram untuk mengatur ulang seberapa jauh potensiometer diputar untuk mengubah jumlah LED yang menyala pada strip Neopixel melingkar. Tombol Permintaan menghentikan fungsi fungsi Mulai, Berhenti, dan Atur waktu. Warna LED pada timer di dalam ruangan sama dengan warna LED yang menyala di sisi kotak. Neopiksel di sisi kotak mewakili tampilan di lobi gedung untuk mengetahui ruangan mana yang digunakan dan berapa banyak waktu yang tersisa. 2 LED ditentukan untuk setiap ruangan, satu LED mewakili jika ruangan diambil dan led lainnya mencerminkan warna LED pada timer (hijau lebih lama, lalu kuning, lalu merah lebih sedikit waktu).
Langkah 4: Daftar Bahan dan Alat
-Akrilik Bening
-Kabel MicroUSB
www.digikey.com/product-detail/en/stewart-…
-Papan tempat memotong roti
www.amazon.com/gp/product/B01EV6LJ7G/ref=o…
-potensiometer
www.alliedelec.com/honeywell-380c32500/701…
-3 tombol
www.digikey.com/product-detail/en/te-conne…
-NodeMCU
www.amazon.com/gp/product/B07CB4P2XY/ref=o…
- 2 Strip Neopiksel
www.amazon.com/Lighting-Modules-NeoPixel-W…
-Resistor
www.digikey.com/product-detail/en/te-conne…
- Kabel
www.digikey.com/product-detail/en/sparkfun…
-1 LED
www.mouser.com/ProductDetail/Cree-Inc/C512…
-Pistol Lem Panas
www.walmart.com/ip/AdTech-Hi-Temp-Mini-Hot…
-Strip Velcro Lengket
www.amazon.com/VELCRO-Brand-90076-Fastener…
Langkah 5: Mulai Membangun Dengan Breadboard
A0 ke pin tengah pada Potensiometer
Vin untuk Menghidupkan cincin Neopixel
3v3 ke satu sisi Potensiometer
Semua alasan ke Ground di NodeMCU
D1 untuk Meminta Tombol
D2 untuk Meminta LED
D3 ke Tombol Mulai
Tombol D4 untuk Berhenti
D5 ke resistor ke Neopixel Input pada ring
D6 ke resistor ke strip Input Neopixel
Langkah 6: Memulai Kode
Ini adalah kode untuk memastikan proyek Anda berfungsi sejauh ini. Timer seharusnya hanya beberapa detik per LED pada Neopixel Ring. Setelah Anda tahu itu berfungsi sampai titik ini, yang perlu Anda lakukan hanyalah mengubah pernyataan waktu jika di bawah ini ke rentang yang Anda tentukan. Saya akan mencantumkan '#Ubah waktu' pada setiap pernyataan waktu yang perlu Anda ubah untuk alokasi waktu Anda.
Mencoba Kode:
impor waktu
waktu impor
dari mesin impor ADC
mesin impor
impor neopiksel
adc = ADC(0)
pin = mesin. Pin(14, mesin. Pin. OUT)
np = neopixel. NeoPixel(pin, 12)
pin2 = mesin. Pin(12, mesin. Pin. OUT)
np2 = neopixel. NeoPixel(pin2, 8)
l1 = mesin. Pin(4, mesin. Pin. OUT)
b1 = mesin. Pin(5, mesin. Pin. IN, mesin. Pin. PULL_UP)
b3 = mesin. Pin(2, mesin. Pin. IN, mesin. Pin. PULL_UP)
b2 = mesin. Pin(0, mesin. Pin. IN, mesin. Pin. PULL_UP)
l1.nilai(0)
def tglled(): # beralih fungsi LED 'permintaan'
jika l1.nilai() == 0:
l1.nilai(1)
lain:
l1.nilai(0)
x = 0
b1temp1 = 0
b1temp2 = 0
t = 0
b2temp1 = 0
b2temp2 = 0
b3temp1 = 0
b3temp2 = 0
s = 0
sementara Benar:
# Ini adalah tombol yang mengaktifkan LED 'permintaan'
b1temp2 = b1.nilai()
jika b1temp1 dan bukan b1temp2:
tglled()
waktu.tidur(0.05)
b1temp1 = b1temp2
# Ini gridnya
np2[0] = np[11]
jika l1.nilai() == 1:
np2[1] = (30, 0, 0)
lain:
np2[1] = (0, 0, 30)
np2.tulis()
# Di sinilah kita memilih berapa banyak waktu yang kita butuhkan
jika t == 0:
untuk saya dalam rentang (-1, 12):
jika (l1.nilai() == 0):
jika (adc.read() >= (85,34 * (i+1))):
np = (0, 0, 0)
np[11] = (0, 0, 30)
s = (i + 1)
lain:
np = (0, 0, 30)
np.tulis()
lain:
np = (0, 0, 0)
np.tulis()
# Ini adalah tombol untuk memulai penghitung waktu
jika (l1.value() == 0) dan (t == 0):
b2temp2 = b2.nilai()
jika b2temp1 dan bukan b2temp2:
x + = 1
t += (s * 100)
waktu.tidur(0.05)
b2temp1 = b2temp2
# Tombol ini mengakhiri penghitung waktu
jika (l1.nilai() == 0):
b3temp2 = b3.nilai()
jika b3temp1 dan bukan b3temp2:
x = 0
t = 0
waktu.tidur(0.05)
b3temp1 = b3temp2
# Ini adalah pengatur waktu
jika x > 0:
t + = 1
jika (t > 0) dan (t <= 100): #Ubah waktu
np[0] = (5, 30, 0)
np[1] = (5, 30, 0)
np[2] = (5, 30, 0)
np[3] = (5, 30, 0)
np[4] = (5, 30, 0)
np[5] = (5, 30, 0)
np[6] = (5, 30, 0)
np[7] = (5, 30, 0)
np[8] = (5, 30, 0)
np[9] = (5, 30, 0)
np[10] = (5, 30, 0)
np[11] = (5, 30, 0)
np.tulis()
jika (t > 100) dan (t <= 200): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (10, 30, 0)
np[2] = (10, 30, 0)
np[3] = (10, 30, 0)
np[4] = (10, 30, 0)
np[5] = (10, 30, 0)
np[6] = (10, 30, 0)
np[7] = (10, 30, 0)
np[8] = (10, 30, 0)
np[9] = (10, 30, 0)
np[10] = (10, 30, 0)
np[11] = (10, 30, 0)
np.tulis()
jika (t > 200) dan (t <= 300): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (15, 30, 0)
np[3] = (15, 30, 0)
np[4] = (15, 30, 0)
np[5] = (15, 30, 0)
np[6] = (15, 30, 0)
np[7] = (15, 30, 0)
np[8] = (15, 30, 0)
np[9] = (15, 30, 0)
np[10] = (15, 30, 0)
np[11] = (15, 30, 0)
np.tulis()
jika (t > 300) dan (t <= 400): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (20, 30, 0)
np[4] = (20, 30, 0)
np[5] = (20, 30, 0)
np[6] = (20, 30, 0)
np[7] = (20, 30, 0)
np[8] = (20, 30, 0)
np[9] = (20, 30, 0)
np[10] = (20, 30, 0)
np[11] = (20, 30, 0)
np.tulis()
jika (t > 400) dan (t <= 500): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (25, 30, 0)
np[5] = (25, 30, 0)
np[6] = (25, 30, 0)
np[7] = (25, 30, 0)
np[8] = (25, 30, 0)
np[9] = (25, 30, 0)
np[10] = (25, 30, 0)
np[11] = (25, 30, 0)
np.tulis()
jika (t > 500) dan (t <= 600): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (30, 30, 0)
np[6] = (30, 30, 0)
np[7] = (30, 30, 0)
np[8] = (30, 30, 0)
np[9] = (30, 30, 0)
np[10] = (30, 30, 0)
np[11] = (30, 30, 0)
np.tulis()
jika (t > 600) dan (t <= 700): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (0, 0, 0)
np[6] = (30, 25, 0)
np[7] = (30, 25, 0)
np[8] = (30, 25, 0)
np[9] = (30, 25, 0)
np[10] = (30, 25, 0)
np[11] = (30, 25, 0)
np.tulis()
jika (t > 700) dan (t <= 800): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (0, 0, 0)
np[6] = (0, 0, 0)
np[7] = (30, 20, 0)
np[8] = (30, 20, 0)
np[9] = (30, 20, 0)
np[10] = (30, 20, 0)
np[11] = (30, 20, 0)
np.tulis()
jika (t > 800) dan (t <= 900): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (0, 0, 0)
np[6] = (0, 0, 0)
np[7] = (0, 0, 0)
np[8] = (30, 15, 0)
np[9] = (30, 15, 0)
np[10] = (30, 15, 0)
np[11] = (30, 15, 0)
np.tulis()
jika (t > 900) dan (t <= 1000): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (0, 0, 0)
np[6] = (0, 0, 0)
np[7] = (0, 0, 0)
np[8] = (0, 0, 0)
np[9] = (30, 10, 0)
np[10] = (30, 10, 0)
np[11] = (30, 10, 0)
np.tulis()
jika (t > 1000) dan (t <= 1100): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (0, 0, 0)
np[6] = (0, 0, 0)
np[7] = (0, 0, 0)
np[8] = (0, 0, 0)
np[9] = (0, 0, 0)
np[10] = (30, 5, 0)
np[11] = (30, 5, 0)
np.tulis()
jika (t > 1100) dan (t <= 1200): #Ubah waktu
np[0] = (0, 0, 0)
np[1] = (0, 0, 0)
np[2] = (0, 0, 0)
np[3] = (0, 0, 0)
np[4] = (0, 0, 0)
np[5] = (0, 0, 0)
np[6] = (0, 0, 0)
np[7] = (0, 0, 0)
np[8] = (0, 0, 0)
np[9] = (0, 0, 0)
np[10] = (0, 0, 0)
np[11] = (30, 0, 0)
np.tulis()
jika t >= 1300: #Ubah waktu
t = 0
x = 0
Langkah 7: Sentuhan Akhir
Sekarang, setelah Anda sejauh ini, Anda harus memiliki kode kerja yang diunggah ke NodeMCU dan semua bagian terhubung ke papan tempat memotong roti. Setelah Anda mencoba kode dan memotong bagian apa pun yang Anda miliki untuk eksterior, yaitu casing potong laser, Anda sekarang dapat menyolder kabel ke NodeMCU. Penyolderan bersifat opsional tetapi dapat membuatnya lebih aman dan lebih kecil untuk casing Anda. Berikut adalah beberapa bagian laser cut yang kami buat.
Direkomendasikan:
Pengatur Waktu Pekerjaan Rumah yang Dibuat oleh Arduino: 5 Langkah
Pengatur Waktu Pekerjaan Rumah Buatan Arduino: Apakah anak Anda menulis pekerjaan rumahnya selama berjam-jam? Apakah anak Anda mudah terganggu oleh orang lain ketika dia mengerjakan pekerjaan rumahnya? Hari ini, saya mencoba melakukan solusi terbaik untuk konflik ini: timer yang dibuat oleh Arduino. Mengapa saya mencoba membuat timer ini alih-alih
Pengatur Waktu Penggiling Kopi Canggih $14: 6 Langkah
Pewaktu Penggiling Kopi Canggih $14: Proyek ini merupakan kemajuan dari Pewaktu Penggiling Kopi $7 yang Dapat Diinstruksikan yang saya terbitkan beberapa tahun yang lalu. Seiring berjalannya waktu, begitu pula kebutuhan akan mesin penggiling kopi yang semakin canggih. Mirip dengan apa yang saya nyatakan di Instructable terakhir, tujuan dari ini
Sirkuit Pengatur Waktu Tunda: 6 Langkah
Delay Timer Circuit: Pendahuluan:Hari ini kita akan membahas bagaimana Anda akan membuat Delay Timer Circuit yang mudah. cara kerja rangkaian adalah setelah anda menekan tombol push_button maka beban yang terhubung dengan rangkaian akan bekerja. Dan setelah beberapa saat, beban akan mati. th
Pengatur Waktu Dapur: 4 Langkah
Kitchen Timer: Ini fitur gen4-uLCD-35DT yang akan digunakan sebagai tampilan sekunder untuk proyek Raspberry Pi, Kitchen Timer. Ini adalah aplikasi yang berguna untuk sebagian besar ibu dan penggemar memasak di luar sana. Ini dapat digunakan untuk memantau waktu saat memasak
Mesin Pengatur Waktu Cuci Tangan DIY: 4 Langkah
Mesin Pencuci Tangan DIY Timer: Diubah dari pekerjaan luar biasa ini https://www.instructables.com/id/Simple-Handwash-Timer/ oleh Tech LabApa yang saya ubah: Ini adalah proses dan pengalaman yang sangat menyenangkan saat membuat mesin ini. Karena, saya sekarang seorang siswa, yang berarti bahwa saya akan memiliki pengeluaran yang rendah