Sisukord:

Arduino kahe kanaliga pingeanduri moodul: 8 sammu
Arduino kahe kanaliga pingeanduri moodul: 8 sammu

Video: Arduino kahe kanaliga pingeanduri moodul: 8 sammu

Video: Arduino kahe kanaliga pingeanduri moodul: 8 sammu
Video: Начало работы с QLC+ Управление цветомузыкой с компьютера. Как управлять светом. 2024, November
Anonim
Arduino kahe kanaliga pingeanduri moodul
Arduino kahe kanaliga pingeanduri moodul
Arduino kahe kanaliga pingeanduri moodul
Arduino kahe kanaliga pingeanduri moodul
Arduino kahe kanaliga pingeanduri moodul
Arduino kahe kanaliga pingeanduri moodul

Sellest on möödunud mõni aasta, kui olen juhendi kirjutanud, mõtlesin, et on aeg tagasi tulla. Ma olen tahtnud ehitada pingeanduri, et saaksin oma pingi toiteallikaga ühendada. Mul on kahe kanaliga muutuv toiteallikas, sellel pole ekraani, seega pean pinge seadistamiseks kasutama voltmeetrit. Ma ei ole elektriinsener ega programmeerija, teen seda hobi korras. Olles öelnud, et kirjeldan seda, mida me siin ehitame, ja see ei pruugi olla parim disain ega parim kodeering, kuid annan endast parima.

Samm: projekti kohta

Projekti kohta
Projekti kohta
Projekti kohta
Projekti kohta
Projekti kohta
Projekti kohta

Esiteks on see vaid eelprojekt millegi stabiilsema ja usaldusväärsema kohta, mõned komponendid ei jõua lõpliku kujunduseni. Enamik komponente on valitud ainult saadavuse tõttu (mul olid need kodus) ja mitte nende töökindluse tõttu. See disain on mõeldud 15 V toiteallikale, kuid saate asendada mõned passiivsed komponendid ja see võib töötada mis tahes pinge või vooluga. Vooluandurid on saadaval 5A, 20A ja 30A, saate lihtsalt valida voolutugevuse ja muuta koodi, sama asi pingeanduriga saate muuta takistite väärtust ja koodi kõrgemate pingete mõõtmiseks.

PCB -l pole määratud väärtusi, kuna saate toiteallika vajaduste rahuldamiseks passiivseid komponente asendada. See on kavandatud lisamiseks mis tahes toiteallikale.

Samm: pingeandurid

Pingeandurid
Pingeandurid
Pingeandurid
Pingeandurid
Pingeandurid
Pingeandurid
Pingeandurid
Pingeandurid

Alustame pingeanduritest ja vooluanduritest. Ma kasutan vooluahelate ja koodi testimiseks Arduino Megat, nii et mõned minusugused algajad saavad lennult ise teha ja katsetada, selle asemel, et kogu moodul leivaplaadile ehitada.

Arduino analoogsisendite abil saame mõõta ainult 0–5 volti. Selleks, et saaksime mõõta kuni 15 volti, peame looma pingejaguri, pingejagurid on väga lihtsad ja neid saab luua ainult kahe takisti abil, sel juhul kasutame 30k ja 7,5k, mis annaksid meile suhe 5: 1, et saaksime mõõta väärtusi 0-25 volti.

Pingeanduri osade loend

R1, R3 30k takistid

R2, R4 7,5k takistid

Samm: praegused andurid

Praegused andurid
Praegused andurid
Praegused andurid
Praegused andurid
Praegused andurid
Praegused andurid
Praegused andurid
Praegused andurid

Praeguste andurite jaoks kasutan Allegro'i ACS712. Esimene asi, mida pean mainima, on see, et ma tean, et need andurid ei ole väga täpsed, kuid see oli mul selle mooduli kavandamisel käepärast. ACS712 on saadaval ainult pindpaigalduspakendis ja see on üks väheseid SMD komponente, mida selles moodulis kasutatakse.

Andurite praeguste osade loend

IC2, IC3 ASC712ELC-05A

C1, C3 1nF kondensaator

C2, C4 0,1uF kondensaator

Samm: temperatuuriandur ja ventilaator

Temperatuuriandur ja ventilaator
Temperatuuriandur ja ventilaator
Temperatuuriandur ja ventilaator
Temperatuuriandur ja ventilaator
Temperatuuriandur ja ventilaator
Temperatuuriandur ja ventilaator

Otsustasin lisada moodulile temperatuuri reguleerimise, kuna enamik toiteallikaid toodab korraliku koguse soojust ja vajame kaitset ülekuumenemise eest. Temperatuurianduri jaoks kasutan HDT11 ja ventilaatori juhtimiseks 5V protsessori ventilaatori juhtimiseks 2N7000 N-kanaliga MOSFET-i. Ahel on üsna lihtne, peame rakendama pinget transistori äravoolule ja rakendame väravale positiivse pinge, sel juhul kasutame selle pinge tagamiseks arduino digitaalset väljundit ja transistor lülitub sisse, võimaldades ventilaatoril pingestatud.

Kood on väga lihtne, võtame DHT11 andurilt temperatuuri näidu, kui temperatuur on kõrgem kui meie määratud väärtus, seab see väljundnõela HIGH ja ventilaator lülitub sisse. Kui temperatuur langeb alla seatud temperatuuri, lülitub ventilaator välja. Ehitan oma koodi testimiseks oma leivaplaadile vooluringi, tegin oma mobiiliga mõned kiired pildid, vabandust pole väga hea, aga skeem on kergesti arusaadav.

Temperatuuriandurite ja ventilaatorite osade loend

J2 DHT11 temperatuuriandur

R8 10K takisti

Ventilaator J1 5V

Q1 2N7000 MOSFET

D1 1N4004 diood

R6 10K takisti

R7 47K takisti

Samm: toiteahel

Toiteahel
Toiteahel
Toiteahel
Toiteahel
Toiteahel
Toiteahel

Moodul töötab 5 V toitel, seega vajame stabiilset toiteallikat. Ma kasutan L7805 pingeregulaatorit, et tagada pidev 5 V toide, selle ahela kohta pole palju öelda.

Toiteahela osade loend

1 L7805 pingeregulaator

C8 0.33uF kondensaator

C9 0.1uF kondensaator

6. samm: LCD- ja jadaväljundid

LCD ja jadaväljundid
LCD ja jadaväljundid
LCD ja jadaväljundid
LCD ja jadaväljundid
LCD ja jadaväljundid
LCD ja jadaväljundid
LCD ja jadaväljundid
LCD ja jadaväljundid

Kavandasin mooduli kasutamiseks LCD -d silmas pidades, kuid otsustasin siis silumiseks lisada seeriaväljundi. Ma ei hakka I2C LCD seadistamise üksikasjadesse laskuma, sest olen selle juba katnud eelmises juhendatavas I2C LCD -s. Lihtne viis, kuidas aktiivsuse näitamiseks lisasin LED -id Tx & Rx ridadele. Ma kasutan USB -jadaadapterit, mille ühendan mooduliga, seejärel avan Arduino IDE jadamonitori ja näen kõiki väärtusi, veendumaks, et kõik töötab nii, nagu peaks.

LCD ja jadaväljundite osade loend

I2C 16x2 I2C LCD (20x4 valikuline)

LED7, LED8 0603 SMD LED

R12, R21 1K R0603 SMD takisti

Samm 7: ISP programmeerimine ja ATMega328P

ISP programmeerimine ja ATMega328P
ISP programmeerimine ja ATMega328P
ISP programmeerimine ja ATMega328P
ISP programmeerimine ja ATMega328P
ISP programmeerimine ja ATMega328P
ISP programmeerimine ja ATMega328P

Nagu ma alguses mainisin, on see moodul mõeldud kasutamiseks erinevate konfiguratsioonide jaoks, peame lisama viisi ATMega328 programmeerimiseks ja oma visandite üleslaadimiseks. Mooduli programmeerimiseks on mitmeid viise, üks neist on kasutada Arduinot Interneti -teenuse pakkuja programmeerijana nagu ühes mu eelmises Arduino megaga käivitatavas ATMega.

Märkused:

- Interneti -teenuse pakkuja eskiisi Arduinole laadimiseks ei pea te kondensaatorit, vaid alglaaduri põletamiseks ja pingeanduri eskiisi üleslaadimiseks.

-Arduino IDE uuemates versioonides peate ühendama tihvti 10 ATMega328 nööbiga 1 RESET.

ISP ja ATMega328P vooluahela osade loend

U1 ATMega328P

XTAL1 16MHz HC-49S Crsytal

C5, C6 22pf kondensaatorid

ISP1 6 -pin päis

R5 10K takisti

Lähtesta 3x4x2 Tact SMD lüliti

8. samm: märkmed ja failid

Märkmed ja failid
Märkmed ja failid
Märkmed ja failid
Märkmed ja failid
Märkmed ja failid
Märkmed ja failid

See oli minu jaoks lihtsalt viis panna mõned ideed töötavasse seadmesse, nagu ma varem mainisin, on vaid väike täiendus minu kahe kanaliga pingitoiteallikale. Olen lisanud kõik, mida vajate oma mooduli loomiseks, kõik Eagle CAD -failid ja skeemid. Olen lisanud Arduino visandi, see on väga lihtne ja olen püüdnud seda hõlpsasti mõista ja muuta. Kui teil on küsimusi, küsige julgelt, proovin neile vastata. See on avatud projekt, ettepanekud on teretulnud. Püüan sisestada nii palju teavet kui võimalik, kuid sain Arduino võistlusest teada hilja ja tahtsin selle esitada. Ülejäänu kirjutan üsna pea, olen eemaldanud ka SMD komponendid (takistid ja LED) ja asendanud need TH komponentidega, ainus SMD komponent on praegune andur, kuna see on saadaval ainult SOIC -pakendis, ZIP -fail sisaldab failid TH komponentidega.

Soovitan: