Daftar Isi:
- Langkah 1: Apa yang Kita Butuhkan?
- Langkah 2: Pembuatan prototipe:
- Langkah 3: Kode:
- Langkah 4: Sekarang untuk Kasus:
- Langkah 5: Hasil Akhir Seharusnya Terlihat Seperti Ini:
- Langkah 6: Solder
- Langkah 7: Kami Selesai
Video: Interactive Touchless Light: 7 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Halo semuanya! Saya ingin berbagi proyek yang telah saya kerjakan di sini. Saya mendapat inspirasi untuk bereksperimen dengan penginderaan sentuh kapasitif melalui sebuah proyek di universitas saya. Saya mengetahui tentang teknologi ini melalui instruksi dan menggunakan hal-hal yang saya pelajari di sini dan dari tempat lain di internet untuk membuat pengontrol tanpa sentuhan saya sendiri, yang saya gunakan untuk memadukan nilai RGB yang berbeda untuk menciptakan warna cahaya yang menarik.
Sebagai permulaan, ketika saya memulai proyek ini, saya hampir tidak tahu apa-apa tentang elektronik maupun penginderaan sentuh kapasitif.
Beberapa masalah yang saya hadapi sejak awal disebabkan oleh kesalahpahaman tentang apa yang sebenarnya terjadi. Jadi pengantar singkat dari bagaimana saya memahaminya:
Sensor kapasitif menggunakan beberapa komponen, terutama:
Sebuah kapasitor (dalam proyek ini kami menggunakan aluminium foil, tetapi juga memungkinkan untuk menggunakan cairan konduktif dll), kabel (tentu saja, elektroniknya)
dan resistor, apa pun di bawah 10 MOhm adalah resistansi yang terlalu kecil untuk lebih dari sentuhan langsung.
cara kerjanya adalah dengan mengukur perbedaan waktu antara titik A dan titik B. Dari start pin mengirimkan sinyal ke endpin, waktu yang dibutuhkan diukur dengan timer. Dengan mengurangi nilai resistansi (dengan menggerakkan kapasitor (dalam hal ini tangan Anda) lebih dekat ke kapasitor sensor (aluminium foil) kali ini lebih pendek, perbedaan waktu adalah apa yang sensor berikan kembali sebagai nilai.
Karena sensor dipengaruhi oleh permukaan kapasitif, data dapat menjadi sangat tidak menentu karena gangguan. Ini dapat diselesaikan untuk sebagian besar dengan mengisolasi kapasitor dengan benar dan juga dengan menggunakan ground (saya akan menunjukkan caranya nanti).
Jadi sekarang kita bisa mulai menginventarisasi semua barang yang kita butuhkan:
Langkah 1: Apa yang Kita Butuhkan?
Elektronik:
1. 2 x 22M Ohm + resistor (semakin besar nilai resistansi semakin jauh sensor Anda bereaksi, saya pribadi menggunakan 22M Ohm, minimum untuk mendapatkan data yang dapat digunakan yang saya alami adalah 10M Ohm)
2. Resistor 3x 330 Ohm
3. Kabel
4. Papan tempat memotong roti
5. Papan sirkuit (milik saya memiliki strip tembaga terus menerus)
6. Beberapa Led RGB Katoda umum (saya menggunakan 8, tetapi Anda dapat memiliki lebih atau kurang tergantung pada seberapa banyak cahaya yang Anda inginkan)
7. Aluminium foil
8. Cling wrap
9. Arduino Uno
10. Pita
Kasus:
1. Kayu Saya menggunakan MDF 50 x 50 x 1,8 CM (Anda dapat menggunakan apa saja. Tergantung efek yang Anda inginkan dan alat yang Anda miliki)
2. Plexiglas akrilik Saya menggunakan 50 x 50 x 0,3 CM (atau bahan transparan/tembus pandang lainnya seperti kertas nasi)
3. Amplas (amplas halus)
4. Lem kayu
5.veneer (opsional)
6. Lem akrilik
Peralatan:
penari telanjang kawat
Besi solder + timah
Pisau Stanley
mengebor
Gergaji (saya menggunakan gergaji meja)
Langkah 2: Pembuatan prototipe:
Sekarang kami memiliki segalanya dan kami dapat mulai membuat prototipe untuk melihat cara kerjanya:
Pekerjaan persiapan:
Potong 4 persegi panjang dari aluminium foil (Milik saya berukuran sekitar 10 cm kali 5 cm), bungkus dengan cling wrap untuk melindunginya dari sentuhan langsung dan tempelkan kawat ke aluminium foil. Saya hanya menempelkan ujung yang dilucuti ke foil (selama mereka tetap berhubungan).
Untuk memastikan aluminium terisolasi dengan aman, saya membungkusnya dengan cling wrap dan menyetrikanya di antara kertas (hanya beberapa detik agar tidak meleleh sepenuhnya).
Kemudian atur sirkuit seperti yang terlihat pada gambar.
Pin 4 digunakan sebagai pin kirim untuk kedua sensor, sedangkan pin penerima adalah pin 2 dan 5. Anda dapat menggunakan beberapa pin pengiriman tetapi ini menyebabkan masalah karena tidak sinkron dengan sempurna.
gunakan pengaturan ini untuk tujuan debugging sebelum menyolder semuanya bersama-sama, untuk memastikan semuanya benar-benar berfungsi sebagaimana dimaksud.
Langkah 3: Kode:
Sekarang kami memiliki segalanya dan kami dapat mulai men-debug sensor.
Untuk menggunakan kode saya, Anda harus mengunduh perpustakaan penginderaan kapasitif dari Arduino dan menginstalnya sesuai dengan petunjuk yang diberikan oleh halaman referensi: Klik saya
Kode: (Saya tidak pandai coding, jadi jika Anda tahu cara melakukannya dengan lebih baik, silakan lakukan)
#include //import code library
CapacitiveSensor cs_4_2 = CapacitiveSensor(4, 2); //Kirim pin = 4, terima adalah 2 dan 5 CapacitiveSensor cs_4_5 = CapacitiveSensor(4, 5); const int pin merah = 11; const int greenPin = 10; const int pin biru = 9; const int numIndexR = 10; // ukuran array const int numIndexG = 10; int warnaR = 0; int warnaG = 0; warna mengambangB = 0; int indeksR [angkaIndeksR]; int posIndexR = 0; panjang totalR = 0; // perlu panjang karena total array saya terlalu besar untuk sebuah integer. int rata-rataR = 0; int indeksG [angkaIndeksG]; int posIndexG = 0; panjang totalG = 0; int rata-rataG = 0; void setup() { pinMode(redPin, OUTPUT); pinMode(pin hijau, OUTPUT); pinMode(bluePin, OUTPUT); for (int thisIndexR = 0; thisIndexR < numIndexR; thisIndexR++) { //set array ke 0 indexR [thisIndexR] = 0; } for (int thisIndexG = 0; thisIndexG = 4500){ // batasi nilai sensor ke maksimum yang dapat digunakan, ini tidak sama untuk setiap nilai resistor dan juga mungkin sedikit berbeda dari lingkungan ke lingkungan yang mungkin perlu Anda atur ini kebutuhan Anda sendiri. jumlah1 = 4500; } jika (total2 >= 4500){ total2 = 4500; } totalR = totalR - indexR[posIndexR]; //ini di sini membuat larik yang terus menambahkan output sensor dan menghasilkan rata-rata. indexR[posIndexR] = total1; totalR = totalR + indeksR[posIndexR]; posIndexR = posIndexR + 1; if (posIndexR >= numIndexR){ posIndexR = 0; } rata-rataR = totalR / numIndexR; //kami menggunakan rata-rata alih-alih data mentah untuk memuluskan output, ini memperlambat proses sedikit tetapi juga menciptakan aliran halus yang sangat bagus. totalG = totalG - indeksG[posIndexG]; indeksG[posIndexG] = total2; totalG = totalG + indeksG[posIndexG]; posIndexG = posIndexG + 1; if (posIndexG >= numIndexG){ posIndexG = 0; } rata-rataG = totalG / numIndexG; if (averageR >= 2000){ // kami tidak ingin nilai led terus berubah kecuali ada masukan dari tangan Anda, jadi ini memastikan semua pembacaan lingkungan yang lebih rendah tidak diperhitungkan. colorR = peta(rata-rataR, 1000, 4500, 255, 0); analogWrite (redPin, colorR); } else if (averageR = 1000){ colorG = map(averageG, 1000, 4500, 255, 0); analogWrite (pin hijau, warnaG); } else if (rata-rataG <= 1000){ colorG = 255; analogWrite (pin hijau, warnaG); } if (colorR <= 125 && colorG <= 125){ //B bekerja sedikit berbeda karena saya hanya menggunakan 2 sensor jadi saya memetakan B pada kedua sensor colorB = map(colorR, 255, 125, 0, 127.5) + map (warnaG, 255, 125, 0, 127,5); analogWrite (bluePin, colorB); } else{ colorB = peta(colorR, 255, 125, 127.5, 0) + peta(colorG, 255, 125, 127.5, 0); if (warnaB>= 255){ warnaB = 255; } jika (warnaB <= 0){ warnaB = 0; } analogWrite (bluePin, colorB); } Serial.print(milis() - mulai); //ini untuk keperluan debugging Serial.print("\t"); Serial.print(warnaR); Serial.print("\t"); Serial.print(warnaG); Serial.print("\t"); Serial.println(warnaB); penundaan (1); }
Apa yang dilakukan kode ini adalah mengekstrak data mentah dari sensor (data ini akan selalu sedikit tidak menentu karena semua faktor berbeda yang mempengaruhi sensor) dan menempatkan data mentah secara terus menerus dalam sebuah array, ketika array mencapai nilai maksimal (dalam kasus saya 10) itu membersihkan nilai terakhir dan menambahkan yang baru. Setiap kali nilai ditambahkan, ia menghitung nilai rata-rata dan memasukkannya ke dalam variabel baru. Variabel rata-rata ini digunakan untuk memetakan nilai ke nilai dari 0 hingga 255, ini adalah nilai yang kami tulis ke pin RGB untuk meningkatkan kecerahan setiap saluran (saluran menjadi RG dan B).
Sekarang jika Anda mengunggah kode Anda ke arduino dan Anda membuka monitor serial, Anda akan melihat nilai RGB lebih rendah ketika Anda mengarahkan tangan Anda ke setiap sensor juga warna lampu led akan berubah.
Langkah 4: Sekarang untuk Kasus:
Kasing: Saya membuat kasing menggunakan alat yang tersedia melalui universitas saya, jadi alur kerja ini tidak berlaku untuk semua orang. Namun tidak ada yang terlalu istimewa tentang itu, perlu lubang di satu sisi untuk port USB untuk masuk tetapi selain itu hanya kotak atasnya yang terbuka.
Dimensinya adalah sebagai berikut:
15 x 15 CM untuk atasan transparan
dan
15 x 8 CM untuk alas kayu (ketebalan kayu 1,8 CM untuk saya).
Saya menggunakan gergaji meja untuk memotong pelat MDF ke dalam dimensi yang benar yang saya butuhkan (yaitu 4 panel 15 x 8 CM dan 1 panel tanah 15 x 15 CM), setelah itu saya memotong sudut-sudutnya menjadi sudut 45 derajat. Semua bagian yang saya rekatkan menggunakan lem kayu dan klem (biarkan mengering setidaknya 30 menit), saya menggunakan prosedur yang sama untuk Plexiglas tetapi dengan mata gergaji khusus.
1 dari sisi kayu harus memiliki lubang di tengah pada ketinggian colokan USB arduino untuk memungkinkan arduino dicolokkan.
Saya menyelesaikan dasar dengan veneer. Saya memotongnya menjadi beberapa bagian sedikit lebih besar dari permukaan setiap sisi.
Ini saya rekatkan, lalu dijepit selama 30 menit untuk setiap sisinya (lebih baik lakukan satu per satu agar tidak licin dan setelah kering saya potong apa saja yang mencuat.
Tutupnya saya rekatkan menggunakan lem khusus untuk Acryl yang disebut Acryfix.
Ketahuilah bahwa jika Anda menggunakan Plexiglas akrilik, lem akan sedikit melarutkan Plexiglas, jadi lakukanlah dengan tepat dan secepat mungkin (mengering dalam beberapa menit, tetapi terkena udara dalam hitungan detik).
Untuk menyelesaikan tutupnya, saya memoles kubus dengan sandblaster tetapi Anda juga dapat menggunakan amplas halus, hanya butuh lebih banyak waktu untuk membuatnya terlihat rata. Perhatikan bahwa jika Anda menggunakan amplas, itu harus berbutir halus dan juga merekatkan bagian-bagiannya setelah prosedur pembekuan (Jadi Anda tidak merusaknya secara tidak sengaja dengan memberikan banyak tekanan)
Untuk memastikan tutupnya tidak terlalu bergeser, saya menempelkan beberapa batang kayu kecil di tepi kubus kayu.
Langkah 5: Hasil Akhir Seharusnya Terlihat Seperti Ini:
Langkah 6: Solder
Jika Anda memiliki papan sirkuit, Anda dapat mulai menyolder semua bagian bersama-sama menggunakan pengaturan yang sama dengan papan tempat memotong roti Anda.
Papan sirkuit saya memiliki strip tembaga kontinu untuk kemudahan penggunaan.
Untuk setiap sensor saya memotong kotak kecil untuk menyolder resistor dan kabel.
Kabel pengirim (kabel yang menuju dari pin 4 ke setiap sensor) disolder secara berurutan ke kotak terpisah, dengan 1 kabel yang masuk ke pin 4.
Saya menyimpan persegi panjang panjang untuk membuat strip led improvisasi (mengukurnya sehingga pas di dalam tutup tetapi di tepi alasnya). Anda bisa menyolder led secara berurutan satu sama lain (perlu diingat pada gambar saya tidak sengaja menyolder led dan resistor di sisi yang salah dari papan sirkuit, strip tembaga harus selalu di bawah).
Ketika Anda selesai menyolder bagian-bagian individual bersama-sama, masukkan ke dalam kasing. Saya tidak menyolder kabel masing-masing sehingga saya dapat menggantinya dengan mudah jika diperlukan.
Saatnya untuk memasukkan semuanya ke dalam pangkalan: Ini adalah langkah termudah, arduino harus ditempatkan terlebih dahulu dengan port USB melalui lubang di bagian belakang kasing. Sekarang tambahkan sensor, pastikan foil sensor pas dengan kayu di kedua sisi, dengan foil ground lurus ke arahnya. Ketika semuanya cocok, colokkan led RGB ke pin kanan (9, 10, 11) dan biarkan bersandar di tepi alasnya.
Langkah 7: Kami Selesai
Jika Anda telah menindaklanjuti semua ini, Anda sekarang harus memiliki lampu kerja dengan pencampuran warna sentuh kapasitif. Selamat bersenang-senang!
Direkomendasikan:
BookWorm Light-Up Book Light dan Bookmark: 13 Langkah (dengan Gambar)
BookWorm Light-Up Book Light dan Bookmark: Jadikan bookmark kutu buku yang menyenangkan ini yang berfungsi ganda sebagai lampu buku! Kami akan mencetaknya, memotongnya, mewarnai dan menghiasnya, dan mereka menggunakannya untuk menerangi malam sehingga Anda dapat membaca dalam gelap. Dia dibuat hanya dengan beberapa bahan dan membuat ci
Faucet Otomatis (Touchless) Menggunakan Arduino - Cuci Tangan dan Tetap Aman Selama Krisis COVID-19: 4 Langkah
Faucet Otomatis (Touchless) Menggunakan Arduino - Cuci Tangan dan Tetap Aman Selama Krisis COVID-19: Hai teman-teman! Saya harap Anda semua baik-baik saja dan tetap aman sekarang. Dalam posting ini, saya akan menjelaskan kepada Anda tentang prototipe saya yang saya rancang untuk mencuci tangan dengan aman. Saya membuat proyek ini dengan sumber daya yang terbatas. Mereka yang tertarik dapat membuat ulang pro ini
Faucet Touchless Dengan Sistem Kontrol Pintu untuk COVID-19: 3 Langkah
Faucet Touchless Dengan Sistem Kontrol Pintu untuk COVID-19: COVID-19 adalah pandemi serius saat ini. Virus corona menyebar dengan cepat dan mudah antar manusia. Ada cara untuk menekan penyebaran virus ini dan salah satu caranya adalah dengan mencuci tangan menggunakan sabun minimal 20 detik. Terkadang, jika orang
Animated Mood Light & Night Light: 6 Langkah (dengan Gambar)
Animated Mood Light & Night Light: Memiliki daya tarik yang berbatasan dengan obsesi terhadap cahaya, saya memutuskan untuk membuat pilihan PCB modular kecil yang dapat digunakan untuk membuat tampilan cahaya RGB dalam berbagai ukuran. Setelah membuat PCB modular, saya menemukan ide untuk mengaturnya menjadi
Shadow Light Box - Kontrol dengan IR Remote Dengan Arduino: 8 Langkah (dengan Gambar)
Shadow Light Box - Kontrol dengan IR Remote Dengan Arduino: Instruksi ini akan memandu cara membuat kotak cahaya bayangan untuk Natal berikutnya. Anda dapat membuat sendiri untuk mendekorasi kamar Anda, atau menjadikannya untuk teman Anda sebagai hadiah. Kotak bayangan ini dapat membuat berbagai macam warna dengan mencampur warna dengan warna Merah, Biru, Hijau