Šioje pamokoje sukursime 5 V kintamos įtampos šaltinį iš „Arduino Uno“. Tam mes naudosime ADC („Analog to Digital Conversion“) ir PWM („Pulse Width Modulation“) funkcijas.
Kai kurie skaitmeniniai elektroniniai moduliai, tokie kaip akselerometras, veikia esant 3,3 V įtampai, o kai kurie - prie 2,2 V įtampos. Kai kurie netgi dirba esant mažesnei įtampai. Tokiu būdu negalime gauti reguliatoriaus kiekvienam iš jų. Taigi čia mes sukursime paprastą grandinę, kuri užtikrins 0–5 voltų įtampą esant 0,05 V raiškai. Taigi tai galime tiksliai pateikti kitų modulių įtampą.
Ši grandinė gali užtikrinti iki 100mA srovę, todėl be vargo galime naudoti šį maitinimo bloką daugumai jutiklių modulių. Ši grandinės išvestis taip pat gali būti naudojama įkraunant AA arba AAA baterijas. Kai ekranas yra vietoje, mes galime lengvai pamatyti galios svyravimus sistemoje. Šiame kintama maitinimo bloke yra mygtuko sąsaja įtampos programavimui. Darbas ir grandinė paaiškinta žemiau.
Aparatūra: „ Arduino Uno“, maitinimo šaltinis (5v), 100uF kondensatorius (2 vnt.), Mygtukas (2 vnt.), 1KΩ rezistorius (3 vnt.), 16 * 2 simbolių skystųjų kristalų ekranas, 2N2222 tranzistorius.
Programinė įranga: „ Atmel studio 6.2“ arba „AURDINO“ kas vakarą.
Grandinės schema ir darbo paaiškinimas
Kintamos įtampos įrenginio, naudojančio „arduino “, grandinė parodyta žemiau esančioje diagramoje.
Išėjimo įtampa nėra visiškai tiesinė; tai bus triukšmingas. Norėdami išfiltruoti, triukšmo kondensatoriai dedami ant išėjimo gnybtų, kaip parodyta paveiksle. Du mygtukai yra skirti įtampai didinti ir mažinti. Ekrano blokas rodo įtampą OUTPUT gnybtuose.
Prieš eidami dirbti turime pasidomėti „ Arduino UNO“ ADC ir PWM funkcijomis.
Čia mes paimsime OUTPUT terminalo įtampą ir paduosime ją į vieną iš „Arduino“ ADC kanalų. Po perskaičiavimo imsime tą DIGITAL reikšmę ir susiesime ją su įtampa ir parodysime rezultatą 16 * 2 ekrane. Ši rodoma vertė rodo kintamą įtampos vertę.
ARDUINO turi šešis ADC kanalus, kaip parodyta paveiksle. Tuose bet kuris arba visi iš jų gali būti naudojami kaip analoginės įtampos įėjimai. UNO ADC skiriamoji geba yra 10 bitų (taigi sveikųjų skaičių reikšmės nuo (0- (2 ^ 10) 1023)). Tai reiškia, kad jis įves 0–5 voltų įvesties įtampas į sveikas skaičius nuo 0 iki 1023. Taigi kiekvienam (5/1024 = 4,9 mV) vienetui.
Čia mes naudosime UN0 A0.
|
Pirmiausia UNO ADC kanalų numatytoji atskaitos vertė yra 5 V. Tai reiškia, kad ADC konversijai bet kuriame įėjimo kanale galime suteikti maksimalią įėjimo įtampą 5 V. Kadangi kai kurie jutikliai teikia 0–2,5 V įtampą, naudojant 5 V atskaitos tašką gauname mažesnį tikslumą, todėl turime instrukciją, leidžiančią pakeisti šią atskaitos vertę. Taigi norėdami pakeisti pamatinę vertę („analogReference ();“) Kol kas ją paliekame kaip.
Pagal numatytuosius nustatymus gauname didžiausią plokštės ADC skiriamąją gebą, kuri yra 10 bitų, šią skiriamąją gebą galima pakeisti naudojant instrukcijas („analogReadResolution (bits);“). Kai kuriais atvejais šis rezoliucijos pakeitimas gali būti naudingas. Kol kas tai paliekame kaip.
Dabar, jei pirmiau nurodytos sąlygos yra nustatytos pagal numatytuosius nustatymus, mes galime nuskaityti „0“ kanalo ADC reikšmę tiesiogiai iškviesdami funkciją „analogRead (pin);“, čia „pin“ reiškia kaištį, kuriame prijungėme analoginį signalą, šiuo atveju būtų „A0“.
Vertę iš ADC galima paimti į sveiką skaičių kaip „float VOLTAGEVALUE = analogRead (A0); “, Pagal šią instrukciją vertė po ADC įrašoma į skaičių„ VOLTAGEVALUE “.
UNO PWM gali būti pasiektas bet kuriame iš kaiščių, kuriuos PCB plokštėje simbolizuoja „~“. UNO yra šeši PWM kanalai. Savo tikslams naudosime PIN3.
analogWrite (3, VALUE); |
Iš aukščiau nurodytos sąlygos mes galime tiesiogiai gauti PWM signalą prie atitinkamo kaiščio. Pirmasis skliausteliuose pateiktas parametras yra PWM signalo kaiščio skaičiaus pasirinkimas. Antrasis parametras skirtas rašymo darbo santykiui.
UNO PWM reikšmę galima pakeisti nuo 0 iki 255. Kai „0“ yra mažiausia į „255“, didžiausia. Turėdami 255 darbo santykį, gausime 5 V PIN3. Jei muito koeficientas nurodomas kaip 125, PIN3 gausime 2,5 V
Kaip minėta anksčiau, prie UN4 PIN4 ir PIN5 yra prijungti du mygtukai. Paspaudus PWM darbo santykio vertė padidės. Paspaudus kitą mygtuką, PWM darbo santykio vertė sumažėja. Taigi mes keičiame PWM signalo darbo santykį PIN3.
Šis PWM signalas, esantis PIN3, tiekiamas į NPN tranzistoriaus pagrindą. Šis tranzistorius suteikia kintamą įtampą savo spinduolyje, tuo pačiu veikdamas kaip perjungimo įtaisas.
Esant kintamam darbo santykiui PWM bazėje, emiterio išėjime bus kintama įtampa. Tai turime po ranka kintamos įtampos šaltinį.
Įtampos išvestis tiekiama į UNO ADC, kad vartotojas galėtų pamatyti įtampos išėjimą.