Mündəricat:

Kapasitiv bir maye sensoru qurmaq: 8 addım (şəkillərlə birlikdə)
Kapasitiv bir maye sensoru qurmaq: 8 addım (şəkillərlə birlikdə)

Video: Kapasitiv bir maye sensoru qurmaq: 8 addım (şəkillərlə birlikdə)

Video: Kapasitiv bir maye sensoru qurmaq: 8 addım (şəkillərlə birlikdə)
Video: Настройка 3D-принтера с помощью MKS sGen L v1.0 Часть 3 2024, Noyabr
Anonim
Kapasitiv bir maye sensoru qurmaq
Kapasitiv bir maye sensoru qurmaq

Kapasitiv bir maye sponsoru, aralarındakı materialdan asılı olaraq 2 metal lövhə arasındakı kapasitansın və ya yükün dəyişəcəyinə (bu halda artacaq) əsaslanır. Bu, hər hansı bir maye ilə istifadə üçün təhlükəsiz bir səviyyə sensoru yaratmağımıza imkan verir, bu, benzinli (benzinli) arabada istifadə ediləcək. Bir boşqab yerə yapışdırılır. Digəri pin 23 -ə qoşulur. 22 -dən 23 -ə qədər 820K ohm müqavimətçi var. Sensor kondansatörü (su şüşəsini) dolduraraq və rezistordan nə qədər boşalacağını ölçməklə işləyir.

Addım 1: hissələr

Hissələri
Hissələri

1. Lehimsiz çörək lövhəsinə ciddi ehtiyac yoxdur, ancaq işi daha da asanlaşdırın, xüsusən də sonradan başqa şeylər əlavə etməyi planlaşdırırsınızsa. 2. Arduino, bir Arduino mega istifadə edirəm, amma standart birində kifayət qədər sancaqlar olmalıdır. 3. LCD xarakterli ekran. 4. Bir az tel və 1MΩ müqavimət də daxil olmaqla bəzi bahis və sonlar. 5. Bir kompüter, bilirsən ki, mənimlə oxumaq üçün istifadə etdiyin şey. 6. Səbir.

Addım 2: LCD -yə qoşulun və Yaradılışınızın Dünya ilə Danışmasına İzn Verin

LCD -yə qoşulmaq və Yaradıcılığınızı Dünya ilə Danışmaq
LCD -yə qoşulmaq və Yaradıcılığınızı Dünya ilə Danışmaq

Bu təlimatda hər addımda olduğu kimi, bunu etmək üçün bir çox yol var. Ən sevdiyimi sizə göstərəcəm.

Lcd -də 16 ədəd çuxurlu lehim yastıqları var, buna görə ilk şey bir neçə pin bağlamaqdır. Patentiniz varsa, belə bir başlıq almağı məsləhət görürəm https://www.sparkfun.com/commerce/product_info.php?products_id=117. Ancaq mümkün qədər tez işləmək istəyirsinizsə (mənim kimi), teldən istifadə edə bilərsiniz. Təxminən 1/2 (13 mm (daha yaxşıdır)) ölçüdə 16 ədəd tel kəsin. Sonra lövhəyə lehimləyin.

Addım 3: LCD -yə qoşulma davam edir

LCD -yə qoşulma davam edir
LCD -yə qoşulma davam edir
LCD -yə qoşulma davam edir
LCD -yə qoşulma davam edir

Günahlar Xüsusi simvollardan istifadə edirəm bütün telləri bağlayacağam.

Pin 1 Topraklama Pimi 2 +5 Volt Pin 3 Kontrast tənzimləmə Pimi 4 RS Pin 5 R/W Torpaq Pininə gedir 6-14 Məlumat Pin 15 Arxa işıq Güc Pimi 16 Arxa işıq Torpaq

Addım 4: Məlumat Xətləri

Məlumat xətləri
Məlumat xətləri
Məlumat xətləri
Məlumat xətləri

İndi Arduino'yu lcd -yə bağlamalısınız. İstifadə etdiyiniz sancaqların əhəmiyyəti yoxdur, amma sxematik qaydalara riayət etməyi məsləhət görürəm.

Addım 5: MaHaHaHa Gücü

Güc MaHaHaHa
Güc MaHaHaHa

Kompüterinizdəki usb portu Arduino'yu idarə etmək üçün kifayət qədər gücə malikdir və arxa işığı arxa tərəfə aparır, buna görə çörək lövhəsindəki yer və elektrik raylarını Arduino lövhəsindəki gücə bağlayın.

Addım 6: Kapasitiv Sensor hazırlayın

Kapasitiv Sensor hazırlayın
Kapasitiv Sensor hazırlayın
Kapasitiv Sensor hazırlayın
Kapasitiv Sensor hazırlayın

Test üçün alüminium folqa və plastik bir su şüşəsi istifadə etdim, metal olmadığı müddətdə hər hansı bir qabla işləyəcək.

İstənilən növ teldən istifadə edə bilərsiniz, lakin heç bir qoruyucu olmayan xətlər zəif performans təmin edəcək. İstənilən 2 sancaqdan istifadə edə bilərsiniz, mən 22 və 23 -ü seçdim. Bir tərəfi yerə, digər tərəfini isə müqavimətçiyə və 2 I/O sancağına bağlayın.

Addım 7: Proqramlaşdırma

Proqramlaşdırma
Proqramlaşdırma

Bu işi etmək üçün 2 kitabxana faylını əlavə etməlisiniz. və ya daha yeni. // Kapasitiv Maye Sensoru // Vadim 7 Dekabr 2009 #include #include // Bu, lcd const int numRows = f = 4 ölçüsünü təyin etmək üçündür; const int numCols = 20; // Bu, lcd üçün pinləri təyin edir (RS, Enable, data 0-7) LiquidCrystal lcd (53, 52, 51, 50, 49, 48, 47, 46, 45, 44); #define Tempin 0x48 #define Tempout 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 çap (5, BYTE); lcd.setCursor (18, 1); lcd çap (6, BYTE); lcd.setCursor (19, 1); lcd.print (7, BYTE); lcd.setCursor (0, 2); lcd.print ("Yanacaq"); lcd.setCursor (0, 3); lcd.print ("E"); } void loop () {uzun yanacaq; lcd.createChar (2, blok); uzun başlanğıc = millis (); yanacaq = cs_22_23.capSenseRaw (200); // Temratue bir az fərqlənir, buna görə tənzimləmədən əvvəl 5 dəqiqə işləsin. // Bu nömrəni elə tənzimləyin ki, çıxış mümkün qədər sıfıra yaxın olsun. yanacaq = yanacaq - 7200; // Sonra konteyneri doldurun // Şərh yazmayın və konteyner dolduqda çıxışı // mümkün qədər 100-ə yaxın olacaq şəkildə tənzimləyin. // yanacaq = yanacaq /93; lcd.setCursor (0, 0); lcd.print (""); lcd.setCursor (0, 0); lcd çap (yanacaq); əgər (yanacaq> = 6) {lcd.setCursor (1, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (1, 3); lcd.print (""); } əgər (yanacaq> = 12) {lcd.setCursor (2, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (2, 3); lcd.print (""); } əgər (yanacaq> = 17) {lcd.setCursor (3, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (3, 3); lcd.print (""); } if (yanacaq> = 23) {lcd.setCursor (4, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (4, 3); lcd.print (""); } əgər (yanacaq> = 28) {lcd.setCursor (5, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (5, 3); lcd.print (""); } əgər (yanacaq> = 34) {lcd.setCursor (6, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (6, 3); lcd.print (""); } if (yanacaq> = 39) {lcd.setCursor (7, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (7, 3); lcd.print (""); } əgər (yanacaq> = 44) {lcd.setCursor (8, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (8, 3); lcd.print (""); } əgər (yanacaq> = 50) {lcd.setCursor (9, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (9, 3); lcd.print (""); } əgər (yanacaq> = 55) {lcd.setCursor (10, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (10, 3); lcd.print (""); } əgər (yanacaq> = 60) {lcd.setCursor (11, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (11, 3); lcd.print (""); } əgər (yanacaq> = 64) {lcd.setCursor (12, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (12, 3); lcd.print (""); } əgər (yanacaq> = 69) {lcd.setCursor (13, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (13, 3); lcd.print (""); } əgər (yanacaq> = 74) {lcd.setCursor (14, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (14, 3); lcd.print (""); } əgər (yanacaq> = 78) {lcd.setCursor (15, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (15, 3); lcd.print (""); } əgər (yanacaq> = 83) {lcd.setCursor (16, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (16, 3); lcd.print (""); } əgər (yanacaq> = 87) {lcd.setCursor (17, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (17, 3); lcd.print (""); } əgər (yanacaq> = 92) {lcd.setCursor (18, 3); lcd çap (2, BYTE); } başqa {lcd.setCursor (18, 3); lcd.print (""); } əgər (yanacaq> = 96) {lcd.setCursor (19, 3); lcd.print ("F"); } başqa {lcd.setCursor (19, 3); lcd.print (""); } gecikmə (50); }

Addım 8: Əşyalar

Uçucu mayeləri ölçmək üçün idealdır, hətta bir propan çəninin içərisində işləyir. Əylənin. Bütün məlumatlar yalnız təhsil məqsədlidir və özünüzü partlatsanız məsuliyyət daşımayacağam.

Tövsiyə: