Kapacitiv Sensor för flytande (10 / 14 steg)
Steg 10: Lägga till hjärnan
Barebone arduino
Nu är det dags att lägga till hjärnan av sensorn, mikrokontroller. Mikrokontroller måste vara så nära som möjligt till sensorn, så den är monterad precis ovanför den. Jag har på denna punkt att erkänna att jag något felbedömt det tillgängliga utrymmet i toppen av sensorn. Jag ville inledningsvis använda en Arduino nano, men att man passar inte. Då jag försökt en prydnadssak 5V, men som saknade några viktiga interna maskinvara så att den inte kunde mäta kapacitansen. Jag sprang snabbt ut ur alternativ.
Jag gick till sista sak jag hade kvar i lager som jag visste skulle fungera, en barebone Arduino Uno. Det är i grunden en Arduino uno, men utan allt som inte är helt avgörande, som en USB till seriell, en PCB och makten kretsar. Programmering, är lite mer av jobbigt, men alla som använder detta instructable skulle förmodligen har bara programmera den en gång. Klicka här för mer information om barebone Arduino. -> (även här) <-
Nu för den sista frågan, vänligen inte skrika åt mig för att använda I2C, det är den enklaste 2-vägs protokoll jag kunde använda och för kabellängden jag har, det kommer att göra fint. I en perfekt värld skulle jag snarare används RS485 protokollet också, men det kräver ytterligare hårdvara, som jag inte vill lägga till. I2C fungerar upp till 4-5 meter utan någon ytterligare elektronik, och jag hade inga problem med denna sensor.
Med denna information och ursäkt ur vägen, gå låter vidare till framgång.
Mäta kapacitans
För att mäta kapacitans, använder vi CapacitiveSensor biblioteket på Arduino (http://playground.arduino.cc/Main/CapacitiveSensor?from=Main.CapSense). Använder den som det var tänkt skulle vara ganska meningslöst och lämnar ett felaktigt värde, men biblioteket har en egenskap som är verkligen användbart för oss. Det tar en mätbar mängd tid mäter kapacitans och genom att köra massor (eller 100) av prover och mäta hur lång tid det tog, vi kan få en tydlig och konsekvent mätning av kapacitansen. Min sensor körs 100 prover för varje mätning och det tar ungefär 400ms att prestera alla dessa cykler när röret är tom. När röret fylls stiger detta värde till 690ms för 800mm.