- Nepieciešamās sastāvdaļas:
- Ķēdes skaidrojums:
- 555 taimera IC bāzes kvadrātveida viļņu ģenerators:
- Šmita trigera vārti:
- Arduino mēra kapacitāti:
- Kopsavilkums un testēšana:
Kad mēs saskaramies ar iepriekš izstrādātiem shēmām vai izņemam to no vecā televizora vai datora, mēģinot to salabot. Dažreiz mums ir jāzina konkrētā kondensatora kapacitāte plāksnē, lai novērstu kļūdu. Tad mēs saskaramies ar problēmu iegūt precīzu kondensatora vērtību no plates, it īpaši, ja tā ir virsmas montāžas ierīce. Mēs varam iegādāties aprīkojumu kapacitātes mērīšanai, taču visas šīs ierīces ir dārgas un ne visiem. Paturot to prātā, mēs izstrādāsim vienkāršu Arduino kapacitātes mērītāju, lai mērītu nezināmu kondensatoru kapacitāti.
Šo skaitītāju var viegli izgatavot un tas ir arī rentabls. Mēs izgatavosim kapacitātes mērītāju, izmantojot Arduino Uno, Schmitt sprūda vārtu un 555 IC taimeri.
Nepieciešamās sastāvdaļas:
- 555 taimera IC
- IC 74HC14 Schmitt sprūda vārti vai NAV vārti.
- 1K Ω rezistors (2 gab.), 10KΩ rezistors
- 100nF kondensators, 1000µF kondensators
- 16 * 2 LCD,
- Maizes dēlis un daži savienotāji.
Ķēdes skaidrojums:
Kapacitātes mērītāja shēma, izmantojot Arduino, parādīta zemāk redzamajā attēlā. Ķēde ir vienkārša, LCD displejs ir savienots ar Arduino, lai parādītu kondensatora izmērīto kapacitāti. Kvadrātveida viļņu ģeneratora shēma (555 režīmā Astable) ir savienota ar Arduino, kur mēs esam pievienojuši kondensatoru, kura kapacitāte ir jāmēra. Schmitt sprūda vārti (IC 74LS14) tiek izmantoti, lai nodrošinātu, ka Arduino tiek padots tikai taisnstūrveida vilnis. Trokšņa filtrēšanai esam pievienojuši pāris kondensatorus pāri jaudai.
Šī shēma var precīzi izmērīt kapacitātes diapazonā no 10nF līdz 10uF.
555 taimera IC bāzes kvadrātveida viļņu ģenerators:
Pirmkārt, mēs runāsim par kvadrātveida viļņu ģeneratoru 555 Timer IC, vai man jāsaka 555 Astable Multivibrator. Mēs zinām, ka kondensatora kapacitāti nevar tieši izmērīt ciparu ķēdē, citiem vārdiem sakot, UNO nodarbojas ar digitālajiem signāliem, un tas nevar tieši izmērīt kapacitāti. Tāpēc kondensatora savienošanai ar digitālo pasauli mēs izmantojam 555 kvadrātveida viļņu ģeneratora shēmu.
Vienkārši runājot, taimeris nodrošina kvadrātveida viļņu izeju, kuras frekvence tieši attiecas uz tam pievienoto kapacitāti. Tātad vispirms mēs iegūstam kvadrātveida viļņu signālu, kura frekvence ir nezināmā kondensatora kapacitātes reprezentatīva, un padodam šo signālu UNO, lai iegūtu atbilstošu vērtību.
Vispārējā konfigurācija 555 režīmā Astable, kā parādīts zemāk redzamajā attēlā:
Izejas signāla frekvence ir atkarīga no RA, RB rezistoriem un kondensatora C. Vienādojums ir norādīts kā
Frekvence (F) = 1 / (Laika periods) = 1,44 / ((RA + RB * 2) * C).
Šeit RA un RB ir pretestības vērtības, un C ir kapacitātes vērtība. Ievietojot pretestības un kapacitātes vērtības iepriekš vienādojumā, mēs iegūstam izejas kvadrātveida viļņu biežumu.
Mēs savienosim 1KΩ kā RA un 10KΩ kā RB. Tātad formula kļūst, Frekvence (F) = 1 / (Laika periods) = 1,44 / (21000 * C).
Pārkārtojot pašreizējos nosacījumus, Kapacitāte C = 1,44 / (21000 * F)
Mūsu programmas kodā (skat. Zemāk), lai precīzi iegūtu kapacitātes vērtību, esam aprēķinājuši rezultātu nF, iegūtos rezultātus (farādos) reizinot ar “1000000000”. Arī mēs izmantojām '20800', nevis 21000, jo RA un RB precīzās pretestības ir 0,98K un 9,88K.
Tātad, ja mēs zinām kvadrātveida viļņa biežumu, mēs varam iegūt kapacitātes vērtību.
Šmita trigera vārti:
Taimera ķēdes radītie signāli nav pilnīgi droši, lai tos tieši nodotu Arduino Uno. Paturot prātā UNO jutīgumu, mēs izmantojam Schmitt trigeri. Schmitt trigera vārti ir digitālās loģikas vārti.
Šie vārti nodrošina OUTPUT, pamatojoties uz INPUT sprieguma līmeni. Schmitt trigerim ir THERSHOLD sprieguma līmenis, kad vārtiem pievienotā INPUT signāla sprieguma līmenis ir lielāks nekā loģisko vārtu THRESHOLD, OUTPUT iet HIGH. Ja INPUT sprieguma signāla līmenis ir zemāks par THRESHOLD, vārtu izeja būs LOW. Līdz ar to mēs parasti nesaņemam Schmitt trigeri atsevišķi, mums vienmēr ir NOT vārti, kas seko Schmitt trigerim. Schmitt Trigger darbība ir izskaidrota šeit: Schmitt Trigger Gate
Mēs izmantosim 74HC14 mikroshēmu, šai mikroshēmai ir 6 Schmitt Trigger vārti. Šie seši vārti ir savienoti iekšēji, kā parādīts attēlā.
Patiesība tabula Invertēts Schmitt Trigger vārtiem ir parādīt zemāk attēlā, ar šo mums ir ieprogrammēt UNO lai apgriežot pozitīvās un negatīvās periodus pie tās termināļiem.
Mēs savienojam taimera ķēdes radīto signālu ar ST vārtiem, pie izejas būs taisnstūrveida apgrieztu laika periodu vilnis, kuru droši var dot UNO.
Arduino mēra kapacitāti:
Uno ir īpaša funkcija pulseIn , kas ļauj mums noteikt konkrēta taisnstūra viļņa pozitīvā stāvokļa vai negatīvā stāvokļa ilgumu:
Htime = pulssIn (8, HIGH); Ltime = pulssIn (8, LOW);
Funkcija pulseIn mēra laiku, kurā Uno PIN8 ir augsts vai zems līmenis. Par pulseIn funkciju pasākumi šajā High laiks (Htime) un zema laiks (Ltime) ar mikro sekundēs. Pievienojot Htime un Ltime kopā, mums būs cikla ilgums, un, to apgriežot, mums būs frekvence.
Kad mums ir frekvence, mēs varam iegūt kapacitāti, izmantojot iepriekš apspriesto formulu.
Kopsavilkums un testēšana:
Tātad, rezumējot, mēs savienojam nezināmo kondensatoru ar 555 taimera ķēdi, kas ģenerē kvadrātveida viļņu izeju, kuras frekvence ir tieši saistīta ar kondensatora kapacitāti. Šis signāls tiek dots UNO caur ST vārtiem. ANO mēra biežumu. Ja frekvence ir zināma, mēs ieprogrammējam UNO, lai aprēķinātu kapacitāti, izmantojot iepriekš apspriesto formulu.
Apskatīsim dažus iegūtos rezultātus, Kad es pievienoju 1uF elektrolītisko kondensatoru, rezultāts ir 1091,84 nF ~ 1uF. Rezultāts ar 0.1uF poliestera kondensatoru ir 107.70 nF ~ 0.1uF
Tad es pievienoju 0,1uF keramisko kondensatoru, un rezultāts ir 100,25 nF ~ 0,1uF. Arī rezultāts ar 4.7uF elektrolītisko kondensatoru ir 4842.83 nF ~ 4.8uF
Tātad tieši tā mēs varam vienkārši izmērīt jebkura kondensatora kapacitāti.