Arduino DIY - Limiter 500mA strujno ograničenje uz shutdown opciju - II deo

Ovo je Arduino UNO uradi sam projekat za limitaciju potrošnje jednosmerne električne struje limitirano na 500mA, ovo je nastavak teksta, pri čemu ovde nastavljamo sa analogno digitalnim konvertorom, uopšteno govoreći obzirom da je isti integrisan u MCU Arduino pločice. Konkretno razmatramo MCP3204/3208 ADC integrisano kolo. Recimo na starijim razvojnim pločama, MCP IC je eksterno vezan za MCU preko SPI komunikacije što će biti objašnjeno, kao i to koji će se koncept merenja koristiti za rešenje limitera potrošnje struje do 500mA.

ADC - Analogno digitalni konvertor

Više puta sam pisao o ADC tj. analogno digitalnom konvertoru. Ulaz ovog elektronskog kola je analogni signal a izlaz je pravougaoni analogni signal tj. povorka bitova što je ujedno SPI signal za komunikaciju između ADCa i MCUa, kako bi MCU uradio dalju obradu digitalnog signala (jednom prilikom sam pisao da je digitalni signal zapravo klasa analognih signala koji su pravougaoni po prirodi ali ih inženjeri zovu digitalnim, zapravo digitalni signal je analogni te samim tim i nemamo digitalnu elektorniku osim što se u tzv. elektronici koriste analogni signali pravougaonog oblika, tako je recimo i mirkoprocesor PC računara zapravo analogni uređaj koji obrađuje analogne pravougane signale). Bez obzira da li je ADC eksterni ili je integrisan u MCU radi se o istom konceptu tj. da ADC digitalni broj prosleđuje integirsanom procesoru mikrokontrolera na dalju obradu, skladištenje, analizu itd.

MCP3204/3208

MCP je eksterni ADC koji reprezentuje način funkcionisanja analogno digitalnog konvertora i za šta sve isti možemo da koristimo, u ovom primeru isti ću korisiti da bih uradio merenje pada napona na šant otporniku kako bih nakon toga uz dobijene podatke sa jednačinom I = U / R izračunao da li je potrošnja u granicama od 500 mA (kako recimo imamo na USB izlazima). Slika dole je koncept šema analogno digitalnog konvertora koju ću objasniti.

Blok šema ADC analogno digitalnog konvertora.

Za razumevanje ovog projekta bitno je razumeti princip rada analogno digitalnog konvertora kako bi se izvršio postupak merenja pada napona na šant otproniku. CH0, CH1, … , CH7 su analogni ulazi u ADC integrisano kolo. To su ulazi visoke impendanse što znači da nema ulaza električne struje u kolo, te ukoliko povežemo CH0 i CH1 na jedan kraj šant otpornika a drugi na drugi kraj otpornika, neće proticati elektična struja u kanale ADCa jer su isti na visokoj impendansi, to je beskonačno velika otpornost te samim tim i ADC kolo kao eksterna elektronika ne remeti proticanje struje kroz granu za napajanje koja treba da daje maksimum 500mA. Pošto je MCP ekstrni ADC komunikacija se odvija putem SPI serijske veze, što znači da mi prvo moramo da odradimo merenje napona na kanalu CH0, a zatim uradimo merenje na kanalu CH1. Te dve vrednosti smeštamo u okviru Arduino programskih promenljivih radi dalje obrade. Koji kanal ADCa se trenutno sempluje se definiše kroz Din. Nakon što se odredi kanal radi se semplovanje tj. uzima se uzorak vrednosti napona sa kraja otpornika i vrednost se smešta u Hold kolo što je zapravo kondenzator koji memoriše pod znacima navoda vrednost potencijala na kraju otpornika. Sa kondenzatora se semplovani potecijal vodi na komparator gde ulogu igra i Vref, gde je Vref maksimum potencijala koji možemo da merimo na kraju otpornika. Ako je Vref povezano na Vcc od Arduina a to je ujedno i 5V zo znači da možemo imati maksimum merenje pada napona na šant otporniku od 5V što je dovoljno za ovaj projekat. Detalje o Vref kao i ostalim parametrima se mogu pogledati u kataloškim podacima proizvođača ADC integrisanog kola, evo link MCP. Zatim, putem šift registra, izmenerena digitalna vrednost se odvodi na Dout što dalje ide ka MCU radi obrade. Izmerene vrednosti će se smeštati u okviru promenljivih Arduino programa, što će biti naknadno pisano u ostalim delovima bloga koji slede.

Primene ADC konvertora

Osim što se ovde ADC konverzija koristi za merenje pada napona na šant otporniku od jednog oma, ADC možemo koristiti i kao logičke analizatore. Dok radimo praktično često koristimo digitalni multimetar kako bi odredili na kojem potencionalnom nivou je data tačka elektičnog kola. Sa ADC možemo napraviti jednostavni analizator sa izvodima za merenje i LED diodama koje bi signalizirale da li se radi o 3.3V, 5V, 12V itd. Način kako može logički analizator da se implementira sa Arduinom biće naknadno objašnjen - LED indikacija zapravo daje o kom potencijalu je reč. Obzirom da Vref ima limite recimo 5 volti, dobro je pitanje kako može da se napravi analizator da detektuje 30 volti, o čemu će biti reči u nekom od blogova koji slede. Ukratko sa otpornom mrežom razdelnika napona, znači otporna mreža na red otpornika svodi ulazni napon koji se meri, recimo od 30 volti na raspon od 0 do 5 volti pri čemu možemo programski zaključiti o čemu je reč, o ovome će biti reći kasnije. Kao što sam napisao, konceptualno poznavanje rada ADCa je od važnosti za razumevanje i realizaciju rešenja kola za limitiranje potrošnje električne struje do maksimum 500 mA.

Autor: Vladimir Savić
zilsel-invent

Referentni linkovi:

Comments

Popular posts from this blog

Electrolytic capacitors and design rules

Fake VC830L digital multimeter

How to design LM324 Astable Multivibrator