Obsah:
- Krok 1: Hardwarový požadavek
- Krok 2: Mikrokontrolér CloudX M633
- Krok 3: Připojení pinů
- Krok 4: Schéma zapojení
- Krok 5: Princip činnosti
- Krok 6: Softwarový program
Video: Digitální voltmetr s CloudX: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Při použití v obvodech poskytují baterie čistší formu stejnosměrného (stejnosměrného) proudu. Jejich nízká hladina hluku z nich vždy dělá perfektní volbu pro některé velmi citlivé obvody. Ve chvílích, kdy úroveň jejich napětí klesne pod určitý prahový bod, se však mohou obvody - (které mají napájet) začít chovat nevyrovnaně; zvláště když nejsou dobře navrženi, aby to zvládli.
Proto vyvstává potřeba pravidelně monitorovat úroveň nabití baterie, aby nás správně vedla, kdy je třeba provést úplnou výměnu nebo nabíjení - v případě nabíjecí baterie. Proto v tomto DIY (udělej si sám) navrhneme jednoduchý měřič napětí baterie pomocí CloudX - pomocí displeje 7Segment.
Krok 1: Hardwarový požadavek
Modul mikrokontroléru CloudX
CloudX USB
SoftCard
7 Segmentový displej
Rezistory
Napájecí jednotka
Prkénko
Propojovací (propojovací) dráty
Krok 2: Mikrokontrolér CloudX M633
Modul mikrokontroléru CloudX
Modul CloudX je hardwarový nástroj pro návrh elektroniky, který vám umožňuje velmi pohodlný a snadný způsob propojení s fyzickým světem prostřednictvím jednoduché desky mikrokontroléru. Celá platforma je založena na open-source fyzických počítačích. Díky své jednoduchosti IDE (Integrated Development Environment) je opravdu ideální pro začátečníky a přitom si zachovává dostatek funkcí, které umožňují pokročilým koncovým uživatelům procházet se skrz. Stručně řečeno, CloudX poskytuje značně zjednodušený proces manipulace s mikrokontrolérem-abstrahováním běžných složitých detailů, které jsou s ním spojeny; a zároveň nabízí velmi bohatou platformu uživatelského zážitku. Najde široké uplatnění napříč všemi oblastmi: školy jako skvělý vzdělávací nástroj; průmyslové a komerční produkty; a jako skvělý nástroj v rukou fandy.
Krok 3: Připojení pinů
7segmentové piny: A, B, C, D, E, F, G, 1, 2 a 3 jsou připojeny ke kolíku 1, pin2, pin3, pin4, pin5, pin6, pin7, pin8, pin9, pin10 respektive pin11.
Krok 4: Schéma zapojení
Modul mikrokontroléru, který je zde ve středu, lze zapnout:
buď prostřednictvím bodů Vin a Gnd (tj. jejich připojením ke kladným a záporným svorkám vaší externí napájecí jednotky) na desce;
nebo prostřednictvím vašeho modulu SoftCard CloudX USB
. Navíc, jak lze snadno vidět z výše uvedeného schématu zapojení, je vstupní napětí baterie propojeno s modulem MCU (mikrokontrolér) tak, že –bod sítě děliče napětí (tvořený a) je připojen k A0 pinu MCU.
a jsou vybrány tak, aby:
omezit množství proudu, který protéká sítí;
limit v bezpečném rozsahu (0 - 5) V pro MCU.
Pomocí vzorce: VOUT = (R2/(R1+R2)) * VIN; a lze je snadno vyhodnotit.
Voutmax = 5V
a pro tento projekt volíme: Vinmax = 50V;
5 = (R2/(R1+R2)) * 50 R1 = 45/5 * R2 Například R2 = 10kΩ; R1 = 45/5 * 10 = 90 kΩ
Krok 5: Princip činnosti
Když je vstupní měřené napětí načteno přes bod VOUT sítě děliče napětí, data jsou dále zpracována v MCU, aby byla vyhodnocena konečná skutečná hodnota, která se zobrazuje na segmentové jednotce. It (the system design) is a automatic decimal point placer, in that it (decimal point) actually shifters position on the display-unit itself according to what what the float value dictits at any given point in time. Poté je celá hardwarová 7segmentová zobrazovací jednotka zapojena do multiplexního režimu. Jedná se o speciální uspořádání, kdy stejná datová sběrnice (8 datových pinů) z MCU napájí tři aktivní 7 segmenty v zobrazovací jednotce. Odesílání datového vzoru do každé ze součástí se provádí procesem označovaným jako skenování. Skenování je technika zahrnující odesílání dat napříč každým ze 7 segmentů komponenty; a umožnění (tj. zapnutí) v rychlém sledu za sebou, jak dorazí jejich příslušná data. Míra oslovení každého z nich je taková, že se mu podaří oklamat lidskou vizi a uvěřit, že všechny (součásti) jsou povoleny (adresovány) současně. Jednoduše (skenování) ve skutečnosti využívá jev známý jako Persistence Of Vision.
Krok 6: Softwarový program
#zahrnout
#zahrnout
#zahrnout
#definujte segment 1 pin9
#definovat segment2 pin10
#definujte segment3 pin11
float batt_voltage;
int decimalPoint, batt;
/*pole, která ukládají segmentový vzor pro každou danou číslici*/
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;
Zobrazit() {
nepodepsaný znak i;
if (decimalPoint <10) {
disp0 = (int) batt_voltage /100; // načte MSD (nejvýznamnější číslice)
// je nejvyšší váha
/* načte další váženou číslici; a tak dále */
disp1 = ((int) batt_voltage % 100)/10;
disp2 = ((int) batt_voltage % 10);
}
jinak {
disp0 = (int) batt_voltage /1000;
disp1 = ((int) batt_voltage % 1000)/100;
disp2 = ((int) batt_voltage % 100)/10;
}
/*Vzory se vylévají pro zobrazení; a 0x80 znak s přidáním desetinné čárky
pokud přidružená podmínka platí*/
pro (i = 0; i <50; i ++) {
pin9 = pin10 = pin11 = VYSOKÝ;
if (decimalPoint <10)
portWrite (1, CCathodeDisp [disp0] | 0x80);
else portWrite (1, CCathodeDisp [disp0]);
segment1 = NÍZKÝ;
segment2 = VYSOKÝ;
segment3 = VYSOKÝ;
delayMs (5);
pin9 = pin10 = pin11 = VYSOKÝ;
if ((decimalPoint> = 10) && (decimalPoint <100))
portWrite (1, CCathodeDisp [disp1] | 0x80);
else portWrite (1, CCathodeDisp [disp1]);
segment1 = VYSOKÝ;
segment2 = LOW;
segment3 = VYSOKÝ;
delayMs (5);
pin9 = pin10 = pin11 = VYSOKÝ;
if (decimalPoint> = 100)
portWrite (1, CCathodeDisp [disp2] | 0x80);
else portWrite (1, CCathodeDisp [disp2]);
segment1 = VYSOKÝ;
segment2 = VYSOKÝ;
segment3 = NÍZKÝ;
delayMs (5);
}
}
setup () {// nastavení zde
analogSetting (); // analogový port inicializován
portMode (1, VÝSTUP); // Piny 1 až 8 nakonfigurované jako výstupní piny
/ * skenovací piny nakonfigurované jako výstupní piny */
pin9Mode = VÝSTUP;
pin10Mode = VÝSTUP;
pin11Mode = VÝSTUP;
portWrite (1, LOW);
pin9 = pin10 = pin11 = VYSOKÝ; // skenování pinů (které jsou aktivní-nízké)
// jsou na začátku deaktivovány
loop () {// Programujte zde
batt_voltage = analogRead (A0); // vezme naměřenou hodnotu
batt_voltage = ((batt_voltage * 5000) / 1024); // převodní faktor pro 5Vin
batt_voltage = (batt_voltage * 50)/5000; // převodní faktor pro 50Vin
decimalPoint = batt_voltage; // značky, kde se zobrazuje desetinná tečka
// původní hodnota před manipulací s daty
Zobrazit();
}
}
Doporučuje:
Štít pro Arduino ze starých ruských VFD trubek: hodiny, teploměr, voltmetr : 21 kroků (s obrázky)
Štít pro Arduino ze starých ruských VFD trubek: hodiny, teploměr, voltmetr …: Dokončení tohoto projektu trvalo téměř půl roku. Nedokážu popsat, kolik práce bylo věnováno tomuto projektu. Samotné provedení tohoto projektu by mi trvalo věčnost, takže jsem měl pomoc od svých přátel. Zde můžete vidět naši práci sestavenou v jednom velmi dlouhém návodu
Retro analogový voltmetr: 11 kroků
Retro analogový voltmetr: Úvod Než byly LED diody a počítačové obrazovky běžnými metodami pro zobrazování informací, záviseli inženýři a vědci na analogových panelových měřičích. Ve skutečnosti se dodnes používají v řadě dispečinků, protože: lze je vyrobit
Digitální voltmetr Arduino: 3 kroky
Digitální voltmetr Arduino: Voltmetr nebo měřič napětí je měřicí přístroj, který se používá k měření napětí
Dobíjecí digitální voltmetr pomocí ICL7107 ADC: 7 kroků (s obrázky)
Dobíjecí digitální voltmetr pomocí ICL7107 ADC: V tomto tutoriálu vám ukážu, jak vytvořit super jednoduchý digitální voltmetr, který dokáže měřit napětí od 20 mV do 200V. Tento projekt nebude používat žádný mikrokontrolér jako arduino. Místo toho bude použit ADC, tj. ICL7107 s některými
Digitální voltmetr: 5 kroků
Digitální voltmetr: Jedná se o snadno použitelný a levný voltmetr pro vlastní potřebu. Celkové náklady na vytvoření tohoto projektu jsou nižší než 200 INR nebo pouze 2,5 $