Innehållsförteckning:
- Steg 1: Delar
- Steg 2: Anslut LCD -skärmen och låt ditt skapande prata med världen
- Steg 3: Anslutning av LCD fortsätter
- Steg 4: Datarader
- Steg 5: Strömma MaHaHaHa
- Steg 6: Gör en kapacitiv sensor
- Steg 7: Programmering
- Steg 8: Saker
Video: Bygga en kapacitiv vätskesensor: 8 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:48
En kapacitiv vätskesponsor förlitar sig på att kapacitansen eller laddningen mellan 2 metallplattor kommer att förändras (i detta fall öka) beroende på vilket material som är mellan dem. Detta gör att vi kan skapa en nivåsensor som är säker att använda med alla vätskor, den här kommer att användas i en vagn med bensin (bensin). En platta hakas till marken. Den andra ansluter till stift 23. Det finns ett 820K ohm motstånd från stift 22 till 23. Sensorn fungerar genom att ladda kondensatorn (vattenflaskan) och mäta hur lång tid det tar att tömma genom motståndet.
Steg 1: Delar
1. En lödfri brödbräda behövs absolut inte, men gör det mycket enklare, särskilt om du planerar att lägga till andra saker senare. 2. Arduino, jag använder en Arduino mega men en standard bör ha tillräckligt med stift. 3. LCD -teckenvisning. 4. Några odds och ändar inklusive lite tråd och ett 1MΩ motstånd. 5. En dator, du vet, det du använder för att läsa mina instruktioner med. 6. Tålamod.
Steg 2: Anslut LCD -skärmen och låt ditt skapande prata med världen
Liksom varje steg i denna instruerbara finns det många sätt att göra detta. Jag visar dig min favorit.
Din LCD -skärm har 16 lödkuddar i hål så det första är att fästa några stift. Om ditt patent rekommenderar jag att du köper en rubrik som denna https://www.sparkfun.com/commerce/product_info.php?products_id=117. Men om du vill bli klar så snabbt som möjligt (som jag) kan du använda tråd. Enkelt skär 16 bitar av tråd på ca 1/2 (13 mm (längre är okej)). Löd sedan dem på brädet.
Steg 3: Anslutning av LCD fortsätter
Synder Jag använder specialtecken Jag kommer att ansluta alla ledningar.
Pin 1 Ground Pin 2 +5 Volt Pin 3 Kontrastjustering Pin 4 RS Pin 5 R/W Går till Ground Pin 6-14 Data Pin 15 Back-light Power Pin 16 Back-light Ground
Steg 4: Datarader
Nu måste du ansluta Arduino till LCD -skärmen. Det spelar ingen roll vilka stift du använder, men jag rekommenderar att du följer schemat.
Steg 5: Strömma MaHaHaHa
USB-porten på din dator har tillräckligt med ström för att köra Arduino och ledd bakgrundsbelysning så bara anslut marken och strömskenorna på ditt brödbräda till strömmen på Arduino-kortet.
Steg 6: Gör en kapacitiv sensor
För testning använde jag aluminiumfolie och en vattenflaska av plast, det fungerar med alla behållare så länge det inte är metall.
Du kan använda vilken typ av tråd som helst, men alla oskärmade linjer ger dålig prestanda. Du kan använda valfri 2 stift, jag valde 22 och 23. Anslut ena sidan till marken och den andra till en motståndare och 2 I/O -stift.
Steg 7: Programmering
Du måste lägga till 2 biblioteksfiler för att få detta att fungera LiquidCrystal.h https://arduino.cc/en/Tutorial/LiquidCrystalCapSense.h https://www.arduino.cc/playground/Main/CapSenseCopy och förbi detta till Arduino 0017 eller nyare. // Kapacitiv vätskesensor // Vadim 7 december 2009 #include #include // Detta är för att ställa in storleken på lcd const int numRows = f = 4; const int numCols = 20; // Detta anger stiften för lcd (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 block [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 ("Bränsle"); lcd.setCursor (0, 3); lcd.print ("E"); } void loop () {long fuel; lcd.createChar (2, block); lång start = millis (); bränsle = cs_22_23.capSenseRaw (200); // Temratue gör lite skillnad så låt den gå i 5 minuter innan du ställer in. // Justera detta nummer så att utgången är så nära noll som möjligt. bränsle = bränsle - 7200; // Fyll sedan på conataner // Avmarkera och justera detta så att utmatningen, när behållaren är full, // är så nära 100 som möjligt. // bränsle = bränsle /93; lcd.setCursor (0, 0); lcd.print (""); lcd.setCursor (0, 0); lcd.print (bränsle); if (bränsle> = 6) {lcd.setCursor (1, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (1, 3); lcd.print (""); } if (bränsle> = 12) {lcd.setCursor (2, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (2, 3); lcd.print (""); } if (bränsle> = 17) {lcd.setCursor (3, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (3, 3); lcd.print (""); } if (bränsle> = 23) {lcd.setCursor (4, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (4, 3); lcd.print (""); } if (bränsle> = 28) {lcd.setCursor (5, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (5, 3); lcd.print (""); } if (bränsle> = 34) {lcd.setCursor (6, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (6, 3); lcd.print (""); } if (bränsle> = 39) {lcd.setCursor (7, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (7, 3); lcd.print (""); } if (bränsle> = 44) {lcd.setCursor (8, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (8, 3); lcd.print (""); } if (bränsle> = 50) {lcd.setCursor (9, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (9, 3); lcd.print (""); } if (bränsle> = 55) {lcd.setCursor (10, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (10, 3); lcd.print (""); } if (bränsle> = 60) {lcd.setCursor (11, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (11, 3); lcd.print (""); } if (bränsle> = 64) {lcd.setCursor (12, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (12, 3); lcd.print (""); } if (bränsle> = 69) {lcd.setCursor (13, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (13, 3); lcd.print (""); } if (bränsle> = 74) {lcd.setCursor (14, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (14, 3); lcd.print (""); } if (bränsle> = 78) {lcd.setCursor (15, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (15, 3); lcd.print (""); } if (bränsle> = 83) {lcd.setCursor (16, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (16, 3); lcd.print (""); } if (bränsle> = 87) {lcd.setCursor (17, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (17, 3); lcd.print (""); } if (bränsle> = 92) {lcd.setCursor (18, 3); lcd.print (2, BYTE); } annat {lcd.setCursor (18, 3); lcd.print (""); } if (bränsle> = 96) {lcd.setCursor (19, 3); lcd.print ("F"); } annat {lcd.setCursor (19, 3); lcd.print (""); } fördröjning (50); }
Steg 8: Saker
Detta är perfekt för mätning av flyktiga vätskor, fungerar även inuti en propantank. Ha så kul. All information är endast för utbildningsändamål och jag kan inte hållas ansvarig om du spränger dig själv.
Rekommenderad:
Bygga en automatisk solspårare med Arduino Nano V2: 17 steg (med bilder)
Bygga en automatisk solspårare med Arduino Nano V2: Hej! Denna instruerbara är tänkt att vara en del två i mitt Solar Tracker -projekt. För en förklaring av hur solspårare fungerar och hur jag utformade min första spårare, använd länken nedan. Detta kommer att erbjuda sammanhang för detta projekt. Https://www.instructables.co
VÄTSKESENSOR: 5 steg
FLUIDIC RATE SENSOR: Har du märkt att när du flyttar en vattenslang från sida till sida drar vattenstrålen slangriktningen och anpassar sig till den när rörelsen stoppas. Att bestämma vattenstrålens vinkelavböjning vid slangens utgång skulle ge en
ESP32 kapacitiv pekingång med "metallhålspluggar" för knappar: 5 steg (med bilder)
ESP32 kapacitiv pekingång med "metallhålspluggar" för knappar: När jag slutförde designbeslut för ett kommande ESP32 WiFi Kit 32 -baserat projekt som kräver tre knappar, var ett märkbart problem att WiFi Kit 32 inte har en enda mekanisk tryckknapp, ändå ensam tre mekaniska knappar, f
Kom igång med att bygga en PM -övervakningsstation: 3 steg (med bilder)
Börja bygga en PM -övervakningsstation: Jag är särskilt intresserad av luftföroreningar, eftersom jag bor i Kina och medan min stad, Shenzhen, förmodligen är en av de renaste städerna i Kina, har den fortfarande sina dåliga dagar. Så, jag ville bygga min egen för att jämföra med ett halvt dussin luft
Kapacitiv beröring med Evive (Arduino Based Controller): 6 steg (med bilder)
Kapacitiv beröring med Evive (Arduino -baserad styrenhet): Vet du hur din smarttelefons pekskärm fungerar? Smarttelefonen har en mängd beröringssensorer under glasskärmen. Numera är det baserat på kapacitans beröringsavkänningsteknik och till och med en mild beröring lätt att upptäcka. Kapacitiv beröring känns