Ebben az oktatóanyagban kifejlesztünk egy 5 V-os változó feszültségű forrást az Arduino Uno-tól. Ehhez az ADC (analóg-digitális átalakítás) és a PWM (impulzusszélesség-moduláció) funkciót fogjuk használni.
Néhány digitális elektronikus modul, például a gyorsulásmérő 3,3 V-os feszültségen működik, és néhány 2,2 V-os feszültségen. Néhányan alacsonyabb feszültségen is dolgoznak. Ezzel nem kaphatunk mindegyikhez szabályozót. Tehát itt egy egyszerű áramkört készítünk, amely 0-5 V feszültség kimenetet biztosít 0,05 V felbontás mellett. Tehát ezzel pontosan megadhatjuk a feszültséget a többi modul számára.
Ez az áramkör akár 100mA áramot is képes biztosítani, így ezt a tápegységet az érzékelő modulok többségéhez gond nélkül használhatjuk. Ez az áramkör kimenete AA vagy AAA újratölthető elemek töltésére is használható. A kijelző helyén könnyen láthatjuk a rendszer energiaingadozásait. Ez a változó tápegység gomb-interfészt tartalmaz a feszültség programozásához. A működést és az áramkört az alábbiakban ismertetjük.
Hardver: Arduino Uno, tápegység (5v), 100uF kondenzátor (2 db), gomb (2 db), 1KΩ ellenállás (3 db), 16 * 2 karakteres LCD, 2N2222 tranzisztor.
Szoftver: Atmel studio 6.2 vagy AURDINO nightly.
Áramköri ábra és működési magyarázat
Az arduino- t használó változó feszültségű egység áramköre az alábbi ábrán látható.
A kimeneti feszültség nem teljesen lineáris; zajos lesz. A zajkondenzátorok kiszűréséhez a kondenzátorokat a kimeneti kapcsokon helyezzük el, az ábra szerint. A két gomb itt a feszültség növelésére és csökkentésére szolgál. A kijelző egység mutatja az OUTPUT csatlakozók feszültségét.
Mielőtt munkába állnánk, meg kell vizsgálnunk az Arduino UNO ADC és PWM funkcióit.
Itt fogjuk venni az OUTPUT terminálon biztosított feszültséget, és betáplálni az Arduino egyik ADC csatornájába. Az átalakítás után ezt a DIGITAL értéket vesszük fel, majd a feszültséghez kapcsoljuk és az eredményt 16 * 2-es kijelzőn mutatjuk be. Ez a kijelzőn látható érték a változó feszültség értékét képviseli.
Az ARDUINO-nak hat ADC csatornája van, amint az az ábrán látható. Ezekben bármelyik vagy mindegyik használható analóg feszültség bemenetként. Az UNO ADC 10 bites felbontású (tehát a (0- (2 ^ 10) 1023 értékekből származó egész értékek). Ez azt jelenti, hogy a 0 és 5 volt közötti bemeneti feszültségeket 0 és 1023 közötti egész értékekre fogja feltérképezni. (5/1024 = 4,9 mV) egységenként.
Itt az UNO A0-ját fogjuk használni.
|
Először is az UNO ADC csatornák alapértelmezett referenciaértéke 5 V. Ez azt jelenti, hogy bármilyen bemeneti csatornán maximális 5 V bemeneti feszültséget adhatunk az ADC konverzióhoz. Mivel egyes érzékelők 0-2,5 V feszültséget szolgáltatnak, 5 V referenciával kisebb pontosságot kapunk, ezért van egy utasításunk, amely lehetővé teszi számunkra a referenciaérték megváltoztatását. Tehát a referenciaérték megváltoztatásához („analogReference ();”) Mostantól így hagyjuk.
Alapértelmezés szerint a kártya maximális 10 bites felbontását kapjuk meg, ez a felbontás az utasítás használatával megváltoztatható („analogReadResolution (bit);”). Ez a felbontásváltozás bizonyos esetekben jól jöhet. Egyelőre így hagyjuk.
Ha a fenti feltételeket alapértelmezés szerint állítjuk be, akkor a „0” csatorna ADC-jéből leolvashatjuk az értéket az „analogRead (pin);” függvény közvetlen meghívásával, itt a „pin” azt a csapot jelenti, ahová analóg jelet csatlakoztattunk, ebben az esetben „A0” lenne.
Az ADC-ből származó érték egész számba vehető, mint „float VOLTAGEVALUE = analogRead (A0); ”, Ezzel az utasítással az ADC utáni érték a„ VOLTAGEVALUE ”egész számba kerül.
Az UNO PWM-je a NYÁK-kártyán „~” szimbólumokkal jelölt csapok bármelyikénél elérhető. Az UNO-ban hat PWM csatorna található. Célunkhoz a PIN3-at fogjuk használni.
analogWrite (3, VALUE); |
A fenti feltételből közvetlenül megkapjuk a PWM jelet a megfelelő csapnál. A zárójelben található első paraméter a PWM jel pin számának kiválasztására szolgál. A második paraméter az írási terhelési arányra vonatkozik.
Az UNO PWM értéke 0-ról 255-re változtatható. A „0” legalacsonyabb a „255” a legmagasabb értékre. 255-ös terhelési aránnyal 5 V-ot kapunk a PIN3-nál. Ha az illetékarány 125-ként van megadva, akkor a PIN3-nál 2,5 V-ot kapunk
Mint korábban említettük, két gomb van csatlakoztatva az UNO PIN4 és PIN5 kódjaihoz. Nyomásra a PWM vámrátája megnő. Másik gomb megnyomásakor a PWM teljesítményaránya csökken. Tehát változtatjuk a PWM jel terhelési arányát a PIN3-on.
Ez a PWM jel a PIN3-on az NPN tranzisztor bázisához kerül. Ez a tranzisztor változó feszültséget biztosít az emitterén, miközben kapcsolóeszközként működik.
Ha a változó PWM teljesítményarány az alapon változó feszültség lesz az emitter kimenetén. Ezzel kéznél van egy változó feszültségű forrás.
A feszültség kimenete az UNO ADC-be kerül, hogy a felhasználó láthassa a feszültség kimenetét.