Sadržaj:
- Korak 1: Zahtjevi hardvera
- Korak 2: Mikrokontroler CloudX M633
- Korak 3: Pin veze
- Korak 4: Dijagram kruga
- Korak 5: Načelo rada
- Korak 6: Softverski program
Video: Digitalni voltmetar s CloudX -om: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Baterije pružaju čistiji oblik istosmjerne (istosmjerne) snage kada se koriste u krugovima. Njihova niska razina buke uvijek ih čini savršenim za neke vrlo osjetljive krugove. Međutim, u trenucima kada im razina napona padne ispod određene granične točke, krugovi - (za koje se misli da ih napajaju) mogu ući u nestabilno ponašanje; pogotovo kad nisu dobro osmišljeni za to.
Stoga se javlja potreba za redovitim praćenjem snage baterije kako bi nas pravilno vodili do kada treba dovršiti potpunu zamjenu ili punjenje - u slučaju punjive baterije. Stoga ćemo u ovom DIY (Uradi sam) dizajnirati jednostavan mjerač napona baterije koristeći CloudX - koristeći 7Segment kao zaslon.
Korak 1: Zahtjevi hardvera
Modul mikrokontrolera CloudX
CloudX USB
SoftCard
7Segmentni prikaz
Otpornici
Jedinica za napajanje
Oglasna ploča
Kratkospojne (spojne) žice
Korak 2: Mikrokontroler CloudX M633
Modul mikrokontrolera CloudX
CloudX modul hardverski je alat za dizajn elektronike koji vam omogućuje mnogo prikladan i jednostavan način povezivanja s fizičkim svijetom putem jednostavne ploče mikrokontrolera. Cijela se platforma temelji na fizičkom računarstvu otvorenog koda. Njegova jednostavnost IDE-a (Integrirano razvojno okruženje) doista ga čini savršenim za početnike, a ipak zadržava dovoljno funkcionalnosti kako bi naprednim krajnjim korisnicima omogućila navigaciju. U ljusci ljuske, CloudX omogućuje znatno pojednostavljen postupak rukovanja mikrokontrolerom-apstrahiranjem uobičajenih složenih detalja povezanih s njim; dok u isto vrijeme nudi vrlo bogatu platformu za korisničko iskustvo. Nalazi široku primjenu u svim oblastima: škole, kao odlično obrazovno oruđe; industrijski i komercijalni proizvodi; i kao izvrstan alat u rukama hobista.
Korak 3: Pin veze
7-segmentni pinovi: A, B, C, D, E, F, G, 1, 2 i 3 spojeni su na pin1, pin2, pin3, pin4, pin4, pin5, pin6, pin7, pin8, pin9, pin9, iglu CloudX-MCU pin10 odnosno pin11.
Korak 4: Dijagram kruga
Modul mikrokontrolera, koji je ovdje u središtu pozornice, može se uključiti:
bilo putem točaka Vin i Gnd (tj. povezivanjem s +ve i –ve priključcima vaše vanjske jedinice za napajanje) na ploči;
ili putem vašeg CloudX USB modula meke kartice
. Štoviše, kao što se lako moglo vidjeti iz gornjeg dijagrama kruga, ulazni napon baterije povezan je s modulom MCU (mikrokontroler) tako da je –točka mreže razdjelnika napona (koju čine i) spojena na A0 MCU pina.
i biraju se na način da:
ograničiti količinu struje koja teče kroz mrežu;
granica unutar sigurnog raspona (0 - 5) V za MCU.
Koristeći formulu: VOUT = (R2/(R1+R2)) * VIN; i lako se može ocijeniti.
Voutmax = 5V
a za ovaj projekt biramo: Vinmax = 50V;
5 = (R2/(R1+R2)) * 50 R1 = 45/5 * R2 Uzmimo za primjer R2 = 10 kΩ; R1 = 45/5 * 10 = 90 kΩ
Korak 5: Načelo rada
Kad se očitani ulazni izmjereni napon očita putem VOUT točke mreže razdjelnika napona, podaci se dalje obrađuju u MCU -u radi procjene do konačne stvarne vrijednosti koja se prikazuje na segmentnoj jedinici. On (dizajn sustava) je automatski postavljač decimalne točke, po tome što (decimalna točka) zapravo pomiče položaj na samoj jedinici prikaza u skladu s onim što float vrijednost diktira u bilo kojem datom trenutku. Zatim se cijela hardverska 7-segmentna jedinica prikaza povezuje u multipleksnom načinu rada. To je poseban raspored prema kojem ista sabirnica podataka (8 pinova podataka) iz MCU-a napaja tri aktivna 7-segmenta u jedinici zaslona. Slanje uzorka podataka u svaki sastavni dio postiže se postupkom koji se naziva Skeniranje. Skeniranje je tehnika koja uključuje slanje podataka u svaki od 7-segmenata komponente; te im omogućiti (tj. uključiti) brzo uzastopno po dolasku odgovarajućih podataka. Brzina rješavanja svakog od njih učinjena je tako da uspije zavarati ljudsku viziju da vjeruje da su svi oni (sastavni dijelovi) omogućeni (adresirani) u isto vrijeme. Ono (skeniranje) jednostavno, zapravo, koristi fenomen poznat kao Persistence Of Vision.
Korak 6: Softverski program
#uključi
#uključi
#uključi
#define segment1 pin9
#define segment2 pin10
#define segment3 pin11
plovak batt_voltage;
int decimalPoint, batt;
/*nizovi koji pohranjuju segmentni uzorak za svaku datu znamenku*/
char CCathodeDisp = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
char CAnodeDisp = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90};
int disp0, disp1, disp2;
prikaz() {
nepotpisani char i;
if (decimalna točka <10) {
disp0 = (int) batt_voltage /100; // dohvaća MSD (najznačajnija znamenka)
// s najvećom težinom
/* dohvaća sljedeću ponderiranu znamenku; i tako dalje */
disp1 = ((int) batt_voltage % 100)/10;
disp2 = ((int) batt_voltage % 10);
}
drugo {
disp0 = (int) batt_voltage /1000;
disp1 = ((int) batt_voltage % 1000)/100;
disp2 = ((int) batt_voltage % 100)/10;
}
/*Uzorci se izlijevaju za prikaz; i 0x80 znak koji dodaje decimalni zarez
ako pridruženi uvjet vrijedi*/
za (i = 0; i <50; i ++) {
pin9 = pin10 = pin11 = HIGH;
if (decimalna točka <10)
portWrite (1, CCathodeDisp [disp0] | 0x80);
else portWrite (1, CCathodeDisp [disp0]);
segment1 = NISKO;
segment2 = VISOKO;
segment3 = VISOKO;
kašnjenjeMs (5);
pin9 = pin10 = pin11 = HIGH;
if ((decimalna točka> = 10) && (decimalna točka <100))
portWrite (1, CCathodeDisp [disp1] | 0x80);
else portWrite (1, CCathodeDisp [disp1]);
segment1 = VISOKO;
segment2 = NISKO;
segment3 = VISOKO;
kašnjenjeMs (5);
pin9 = pin10 = pin11 = HIGH;
if (decimalna točka> = 100)
portWrite (1, CCathodeDisp [disp2] | 0x80);
else portWrite (1, CCathodeDisp [disp2]);
segment1 = VISOKO;
segment2 = VISOKO;
segment3 = NISKO;
kašnjenjeMs (5);
}
}
setup () {// postavljanje ovdje
analogSetting (); // analogni port inicijaliziran
portMode (1, OUTPUT); // Pinovi od 1 do 8 konfigurirani kao izlazi
/ * pinovi za skeniranje konfigurirani kao izlazni pinovi */
pin9Mode = OUTPUT;
pin10Mode = OUTPUT;
pin11Mode = OUTPUT;
portWrite (1, LOW);
pin9 = pin10 = pin11 = HIGH; // pinovi za skeniranje (koji su aktivni-niski)
// onemogućeni su na početku
loop () {// Program ovdje
batt_voltage = analogRead (A0); // uzima izmjerenu vrijednost
batt_voltage = ((batt_voltage * 5000) / 1024); // faktor pretvorbe za 5Vin
batt_voltage = (batt_voltage * 50)/5000; // faktor pretvorbe za 50Vin
decimalPoint = napon batta; // označava mjesto u kojem se nalazi decimalna točka
// izvorna vrijednost prije manipulacije podacima
prikaz();
}
}
Preporučeni:
Waveshare E-ink zaslon precizan voltmetar (0-90v DC) s Arduino Nano: 3 koraka
Waveshare E-ink zaslon precizan voltmetar (0-90v DC) s Arduino Nano: U ovom Instructable-u koristim 2,9-inčni zaslon Waveshare E-papira s Arduino Nano, razdjelnikom napona i ADS1115 za prikaz preciznih napona do 90 volti DC na zaslonu e-papira. Ova instrukcija kombinira ova dva prethodna projekta:- Ardui
Arduino precizni i točni voltmetar (0-90V DC): 3 koraka
Arduino precizni i točni voltmetar (0-90V DC): U ovom uputstvu sam izgradio voltmetar za mjerenje visokog napona DC (0-90v) s relativnom preciznošću i točnošću pomoću Arduino Nano. Testna mjerenja koja sam obavila bila su dovoljno točna, uglavnom unutar 0,3v od stvarnog napona izmjerenog s
Digitalni Arduino voltmetar: 3 koraka
Digitalni Arduino voltmetar: Voltmetar ili mjerač napona mjerni je instrument koji se koristi za mjerenje napona
Punjivi digitalni voltmetar pomoću ICL7107 ADC -a: 7 koraka (sa slikama)
Punjivi digitalni voltmetar pomoću ICL7107 ADC -a: U ovom vodiču ću vam pokazati kako napraviti super jednostavan digitalni voltmetar koji može mjeriti napone od 20 mV do 200V. Ovaj projekt neće koristiti nijedan mikrokontroler poput arduina. Umjesto toga, ADC, tj. ICL7107 će se koristiti s nekim passom
Digitalni voltmetar: 5 koraka
Digitalni voltmetar: Ovo je jednostavan za korištenje i jeftin DIY voltmetar. Ukupni troškovi izrade ovog projekta manji su od 200 INR ili samo 2,5 USD