Panašūs jutikliai egzistuoja tiek, kiek RC generatoriai. Bet paaiškėja, kad jūs galite „išmokyti“, kaip išmatuoti kintančią jutiklio talpą Arduino - programinė įranga, išorinis generatorius tam nereikalingas. Ir jūs galite padaryti jutiklį pats daryk pats - apie tokius naminis pasakoja „Instructable“ autorius slapyvardžiu luismorales-navarro.
Vedlys sukuria keturias jutiklio detales ir įkelia gautus failus į „Tinkercad“ svetainę: vidinis vamzdis, jos viršelis, išorinis vamzdis ir jos viršelis. Spausdina šias dalis 3D spausdintuve.
Apvynioja vamzdžius aliuminio folija, pritvirtina prie jų laidus. Nuo vario iki aliuminio - jūs taip pat galite paveikti tikslumą, viskas. Maitinimo grandinėse tai neįmanoma, net jei yra „tik dešimtys miliamprų“.
Meistras surenka jutiklį, užsandarina jį karšto lydalo klijais, įsitikina, kad jis nesandarus ir skystis niekur neliečia folijos. Galų gale reikalaujama, kad jutiklis būtų talpinis, o ne varžinis.
Prisijungiama prie Arduino, kaip parodyta žemiau. Iš papildomų komponentų reikia tik vieno rezistoriaus. Aišku, instrukcija gali būti pavadinta taip: „Sensacija! Vieno rezistoriaus lygio matuoklis!“, Tačiau iškart aišku, kad tai „košė iš kirvio“.
Meistras patikrina jutiklio veikimą naudodamas paprasčiausią programą, kuriai reikalinga „CapacitiveSensing“ biblioteka:
/ * * „CapitiveSense“ bibliotekos demonstracinis eskizas
* Paul Badger 2008 * Naudojamas didelės vertės rezistorius, pvz. 10 mln. Tarp siuntimo ir gavimo PIN
* Rezistoriaus poveikio jautrumas, eksperimentuokite su vertėmis, 50K - 50M. Didesnės rezistoriaus vertės suteikia didesnes jutiklio reikšmes.
* Priėmimo kaištis yra jutiklio kaištis - išbandykite skirtingus folijos / metalo kiekius ant šio kaiščio
* /
„CapacitiveSensor“ cs_4_2 = „CapacitiveSensor“ (4.2);
// 10M rezistorius tarp 4 ir 2 kaiščių, 2 kaiščiai yra jutiklio kaiščiai, pridėkite laidą ir arba foliją, jei norite, negaliojate () {cs_4_2.set_CS_AutocaL_Millis (0xFFFFFFFF);
// 1 kanale išjunkite automatinį kalibravimą - kaip „Serial.begin“ (9600) pavyzdį; } void loop () {ilga pradžia = millis (); long total1 = cs_4_2.capacitiveSensor (30); Serial.print (millis () - pradžia);
// našumo patikrinimas milisekundėmis Serial.print ("\ t");
// skirtuko „vėluojama“ tarpai skirtuko simbolis „Serial.print“ (viso1);
// spausdinimo jutiklio išėjimas 1 Serial.print ("\ t"); vėlavimas (10);
// savavališkas delsimas apriboti duomenis iki nuosekliojo prievado}
Nenustebkite, kad trūko linijų tiekimų - štai ką padarė originalas. Matavimų duomenys siunčiami į nuosekliojo prievado monitorių. Ateityje siūlomą fragmentą galima integruoti į sudėtingesnius eskizus, kuriuose įgyvendinamas aliarmas apie per aukštą ar žemą skysčio lygį, pavarų valdymas.