Daftar Isi:
Video: Membangun Sensor Cair Kapasitif: 8 Langkah (dengan Gambar)
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Sponsor cairan kapasitif bergantung pada fakta bahwa kapasitansi atau muatan antara 2 pelat logam akan berubah (dalam hal ini meningkat) tergantung pada bahan apa yang ada di antara keduanya. Hal ini memungkinkan kita untuk membuat sensor level yang aman untuk digunakan dengan cairan apapun, yang satu ini akan digunakan di buggy dengan bahan bakar bensin (bensin). Satu piring terhubung ke tanah. Yang lain terhubung ke pin 23. Ada resistor 820K ohm dari pin 22 hingga 23. Sensor bekerja dengan mengisi kapasitor (botol air) dan mengukur berapa lama waktu yang dibutuhkan untuk mengalir melalui resistor.
Langkah 1: Bagian
1. Papan roti tanpa solder sama sekali tidak diperlukan tetapi membuatnya jauh lebih mudah, terutama jika Anda berencana untuk menambahkan barang lain nanti. 2. Arduino, saya menggunakan mega Arduino tetapi yang standar harus memiliki cukup pin. 3. Tampilan karakter LCD. 4. Beberapa peluang dan tujuan termasuk beberapa kawat dan resistor 1MΩ. 5. Komputer, Anda tahu, benda yang Anda gunakan untuk membaca instruksi saya. 6. Kesabaran.
Langkah 2: Menghubungkan LCD dan Membiarkan Kreasi Anda Berbicara kepada Dunia
Seperti setiap langkah dalam instruksi ini, ada banyak cara untuk melakukan ini. Saya akan menunjukkan favorit saya.
LCD Anda memiliki bantalan solder 16 lubang sehingga hal pertama adalah memasang beberapa pin. Jika paten Anda maka saya sarankan membeli header seperti ini https://www.sparkfun.com/commerce/product_info.php?products_id=117. Tetapi jika Anda ingin menyelesaikannya secepat mungkin (seperti saya) maka Anda dapat menggunakan kawat. Potong sederhana 16 potong kawat sekitar 1/2 (13mm (lebih panjang tidak apa-apa)). Kemudian solder ke papan.
Langkah 3: Menghubungkan LCD Lanjutan
Dosa Saya menggunakan karakter khusus Saya akan menghubungkan semua kabel.
Pin 1 Ground Pin 2 +5 Volt Pin 3 Kontras menyesuaikan Pin 4 RS Pin 5 R/W Menuju ke Ground Pin 6-14 Data Pin 15 Lampu Belakang Power Pin 16 Lampu Belakang Ground
Langkah 4: Jalur Data
Sekarang Anda perlu menghubungkan Arduino ke lcd. Tidak masalah pin apa yang Anda gunakan, tetapi saya sarankan mengikuti skema.
Langkah 5: Kekuatan MaHaHaHa
Port usb di komputer Anda memiliki daya yang cukup untuk menjalankan Arduino dan lampu latar yang dipimpin, jadi cukup sambungkan ground dan rel daya di papan roti Anda ke daya keluar di papan Arduino.
Langkah 6: Buat Sensor Kapasitif
Untuk pengujian saya menggunakan aluminium foil dan botol air plastik, Ini akan bekerja dengan wadah apa pun asalkan bukan logam.
Anda dapat menggunakan jenis kabel apa pun, tetapi saluran tanpa pelindung apa pun akan memberikan kinerja yang buruk. Anda dapat menggunakan 2 pin apa saja, saya memilih 22 dan 23. Hubungkan satu sisi ke ground dan sisi lainnya ke resistor dan 2 pin I/O.
Langkah 7: Pemrograman
Anda perlu menambahkan 2 file perpustakaan untuk membuat ini berfungsi LiquidCrystal.h https://arduino.cc/en/Tutorial/LiquidCrystalCapSense.h https://www.arduino.cc/playground/Main/CapSenseCopy dan tempelkan ini ke Arduino 0017 atau lebih baru. //Sensor Cairan Kapasitif //Vadim 7 Desember 2009 #include #include //Ini untuk mengatur ukuran lcd const int numRows = f=4; const int numCols = 20; //Ini mengatur pin untuk lcd (RS, Enable, data 0-7) LiquidCrystal lcd (53, 52, 51, 50, 49, 48, 47, 46, 45, 44); #define Tempin 0x48 #define Tempot 0x49 CapSense cs_22_23 = CapSense(22, 23); uint8_t blok[8] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; uint8_t tl[8] = {0x0F, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0F, 0x0F}; uint8_t tr[8] = {0x16, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1D, 0x15}; uint8_t bl[8] = {0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F}; uint8_t br[8] = {0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x12, 0x18}; void setup() { lcd.begin(numRows, numCols); lcd.createChar(4, tl); lcd.createChar(5, tr); lcd.createChar(6, bl); lcd.createChar(7, br); lcd.setCursor(18, 0); lcd.print(4, BYTE); lcd.setCursor(19, 0); lcd.print(5, BYTE); lcd.setCursor(18, 1); lcd.print(6, BYTE); lcd.setCursor(19, 1); lcd.print(7, BYTE); lcd.setCursor(0, 2); lcd.print("Bahan Bakar"); lcd.setCursor(0, 3); lcd.print("E"); } void loop() { bahan bakar panjang; lcd.createChar(2, blok); mulai lama = milis(); bahan bakar = cs_22_23.capSenseRaw(200); //Suhu membuat sedikit perbedaan jadi biarkan berjalan selama 5 menit sebelum menyetel. //Sesuaikan angka ini sehingga output sedekat mungkin dengan nol. bahan bakar = bahan bakar - 7200; //Kemudian isi conataner //Batalkan komentar dan sesuaikan ini sehingga output, ketika kontainer penuh, //mendekati 100 mungkin. //bahan bakar = bahan bakar / 93; lcd.setCursor(0, 0); lcd.print(""); lcd.setCursor(0, 0); lcd.print(bahan bakar); if (bahan bakar >= 6) { lcd.setCursor(1, 3); lcd.print(2, BYTE); } else { lcd.setCursor(1, 3); lcd.print(""); } if (bahan bakar >= 12) { lcd.setCursor(2, 3); lcd.print(2, BYTE); } else { lcd.setCursor(2, 3); lcd.print(""); } if (bahan bakar >= 17) { lcd.setCursor(3, 3); lcd.print(2, BYTE); } else { lcd.setCursor(3, 3); lcd.print(""); } if (bahan bakar >= 23) { lcd.setCursor(4, 3); lcd.print(2, BYTE); } else { lcd.setCursor(4, 3); lcd.print(""); } if (bahan bakar >= 28) { lcd.setCursor(5, 3); lcd.print(2, BYTE); } else { lcd.setCursor(5, 3); lcd.print(""); } if (bahan bakar >= 34) { lcd.setCursor(6, 3); lcd.print(2, BYTE); } else { lcd.setCursor(6, 3); lcd.print(""); } if (bahan bakar >= 39) { lcd.setCursor(7, 3); lcd.print(2, BYTE); } else { lcd.setCursor(7, 3); lcd.print(""); } if (bahan bakar >= 44) { lcd.setCursor(8, 3); lcd.print(2, BYTE); } else { lcd.setCursor(8, 3); lcd.print(""); } if (bahan bakar >= 50) { lcd.setCursor(9, 3); lcd.print(2, BYTE); } else { lcd.setCursor(9, 3); lcd.print(""); } if (bahan bakar >= 55) { lcd.setCursor(10, 3); lcd.print(2, BYTE); } else { lcd.setCursor(10, 3); lcd.print(""); } if (bahan bakar >= 60) { lcd.setCursor(11, 3); lcd.print(2, BYTE); } else { lcd.setCursor(11, 3); lcd.print(""); } if (bahan bakar >= 64) { lcd.setCursor(12, 3); lcd.print(2, BYTE); } else { lcd.setCursor(12, 3); lcd.print(""); } if (bahan bakar >= 69) { lcd.setCursor(13, 3); lcd.print(2, BYTE); } else { lcd.setCursor(13, 3); lcd.print(""); } if (bahan bakar >= 74) { lcd.setCursor(14, 3); lcd.print(2, BYTE); } else { lcd.setCursor(14, 3); lcd.print(""); } if (bahan bakar >= 78) { lcd.setCursor(15, 3); lcd.print(2, BYTE); } else { lcd.setCursor(15, 3); lcd.print(""); } if (bahan bakar >= 83) { lcd.setCursor(16, 3); lcd.print(2, BYTE); } else { lcd.setCursor(16, 3); lcd.print(""); } if (bahan bakar >= 87) { lcd.setCursor(17, 3); lcd.print(2, BYTE); } else { lcd.setCursor(17, 3); lcd.print(""); } if (bahan bakar >= 92) { lcd.setCursor(18, 3); lcd.print(2, BYTE); } else { lcd.setCursor(18, 3); lcd.print(""); } if (bahan bakar >= 96) { lcd.setCursor(19, 3); lcd.print("F"); } else { lcd.setCursor(19, 3); lcd.print(""); } penundaan (50); }
Langkah 8: Barang
Ini sempurna untuk mengukur cairan yang mudah menguap, bahkan bekerja di dalam tangki propana. Selamat bersenang-senang. Setiap dan semua informasi hanya untuk tujuan pendidikan dan saya tidak bertanggung jawab jika Anda meledakkan diri.