INHOUDSOPGAWE:
- Stap 1: basiese beginsels
- Stap 2: Meet 0-5V
- Stap 3: Meet spanning bo 5V
- Stap 4: Bou die spanningsverdeler
- Stap 5: Lees die spanning
Video: Spanningsmeting met behulp van Arduino: 5 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Die meting van spanning is redelik maklik met behulp van enige mikrobeheerder in vergelyking met die meting van stroom. Dit is nodig om spanning te meet as u met batterye werk of u eie verstelbare kragtoevoer wil maak. Alhoewel hierdie metode van toepassing is op enige uC, maar in hierdie tutoriaal leer ons hoe u spanning met Arduino kan meet.
Daar is spanningsensors in die mark beskikbaar. Maar het u dit regtig nodig? Kom ons vind uit!
Stap 1: basiese beginsels
'N Mikrobeheerder kan nie analoog spanning direk verstaan nie. Daarom moet ons kortliks 'n analoog na digitale omskakelaar of ADC gebruik. Atmega328, wat die brein van die Arduino Uno is, het 'n 6-kanaal (gemerk as A0 tot A5), 10-bis ADC. Dit beteken dat dit die ingangsspannings van 0 tot 5V in die heelgetalwaardes van 0 tot (2^10-1) maal, dit wil sê gelyk aan 1023, wat 'n resolusie van 4,9mV per eenheid gee. 0 sal ooreenstem met 0V, 1 tot 4.9mv, 2 tot 9.8mV en so aan tot 1023.
Stap 2: Meet 0-5V
Eerstens sal ons kyk hoe om spanning met 'n maksimum spanning van 5V te meet. Dit is baie maklik, aangesien geen spesiale wysigings nodig is nie. Om die wisselende spanning te simuleer, gebruik ons 'n potensiometer waarvan die middelste pen aan een van die 6 kanale gekoppel is. Ons sal nou die kode skryf om die waardes van ADC te lees en dit om te skakel in nuttige spanningslesings.
Lees die analoog pen A0
waarde = analogRead (A0);
Die variabele 'waarde' bevat 'n waarde tussen 0 en 1023, afhangende van die spanning.
spanning = waarde * 5.0/1023;
Die verkregen waarde word nou vermenigvuldig met die resolusie (5/1023 = 4,9mV per eenheid) om die werklike spanning te kry.
Wys ten slotte die gemete spanning op die seriële monitor.
Serial.print ("Spanning =");
Serial.println (spanning);
Stap 3: Meet spanning bo 5V
Maar die probleem ontstaan wanneer die te meet spanning meer as 5 volt oorskry. Dit kan opgelos word met behulp van 'n spanningsverdelerkring wat bestaan uit 2 weerstande wat in serie gekoppel is, soos getoon. Die een kant van hierdie reeksverbinding is gekoppel aan die spanning wat gemeet moet word (Vm) en die ander kant aan die grond. 'N Spanning (V1) wat eweredig is aan die gemete spanning, sal by die aansluiting van twee weerstande verskyn. Hierdie aansluiting kan dan aan die analoog pen van die Arduino gekoppel word. Die spanning kan uitgevind word met behulp van hierdie formule.
V1 = Vm * (R2/(R1+R2))
Die spanning V1 word dan gemeet deur die Arduino.
Stap 4: Bou die spanningsverdeler
Om hierdie spanningsverdeler te bou, moet ons eers die waardes van weerstande uitvind. Volg hierdie stappe om die waarde van weerstande te bereken.
- Bepaal die maksimum spanning wat gemeet moet word.
- Besluit 'n geskikte en standaardwaarde vir R1 in kilo-ohm-reeks.
- Bereken R2 met behulp van formule.
- As die waarde van R2 nie (of naby) 'n standaardwaarde is nie, verander R1 en herhaal die bogenoemde stappe.
- Aangesien Arduino 'n maksimum van 5V kan hanteer, is V1 = 5V.
Laat die maksimum spanning (Vm) wat gemeet moet word byvoorbeeld 12V en R1 = 47 kilo-ohm. Dan word die formule R2 gelyk aan 33k.
Bou nou 'n spanningsverdelerkring met behulp van hierdie weerstande.
Met hierdie opset het ons nou 'n boonste en onderste grens. Vir Vm = 12V kry ons V1 = 5V en vir Vm = 0V kry ons V1 = 0V. Dit wil sê, vir 0 tot 12V by Vm, sal daar 'n proporsionele spanning van 0 tot 5V by V1 wees, wat dan soos voorheen in die Arduino ingevoer kan word.
Stap 5: Lees die spanning
Met 'n effense verandering in die kode, kan ons nou 0 tot 12V meet.
Analoogwaarde word soos voorheen gelees. Deur dieselfde formule te gebruik, word die spanning tussen 0 en 12V gemeet.
waarde = analogRead (A0);
spanning = waarde * (5.0/1023) * ((R1 + R2)/R2);
Die algemeen beskikbare spanningsensormodules is niks anders as net 'n spanningsverdelerkring nie. Dit is gegradeer vir 0 tot 25V met 30 kiloohm en 7,5 kilo-ohm weerstande.
Dus, hoekom om te koop, as u self kan doen!
Dankie dat u tot die einde vasgehou het. Ek hoop dat hierdie tutoriaal u sou gehelp het.
Teken in op my YouTube -kanaal vir meer komende projekte en tutoriale. Weereens dankie!
Aanbeveel:
Arduino Nano -klok met aanpasbare helderheid met behulp van prototipe PCB van NextPCB.com: 11 stappe
Arduino Nano -klok met aanpasbare helderheid met behulp van prototipe PCB van NextPCB.com: Almal wou 'n horlosie hê wat tyd en datum saam wys. In hierdie projek sal ek u wys hoe u 'n arduino -nano -klok met aanpasbare helderheid kan bou met behulp van RTC en 'n ontwerp PCB van NextPCB
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: 4 stappe
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: Hallo, ek is Rithik. Ons gaan 'n internetbeheerde LED maak met u telefoon. Ons gaan sagteware soos Arduino IDE en Blynk gebruik. Dit is eenvoudig, en as u daarin geslaag het, kan u soveel elektroniese komponente beheer as wat u wil
Monitor versnelling met behulp van Raspberry Pi en AIS328DQTR met behulp van Python: 6 stappe
Monitering van versnelling met behulp van Raspberry Pi en AIS328DQTR Gebruik van Python: Versnelling is eindig, volgens ek volgens sommige wette van die fisika.- Terry Riley 'n Jagluiperd gebruik ongelooflike versnelling en vinnige spoedveranderinge wanneer hy jaag. Die vinnigste wesens aan wal gebruik af en toe sy hoogste tempo om prooi te vang. Die
Bywoningstelsel met die stoor van data op Google -sigblad met behulp van RFID en Arduino Ethernet Shield: 6 stappe
Bywoningstelsel met die stoor van data op Google -sigblad met behulp van RFID en Arduino Ethernet Shield: Hallo ouens, hier kom ons met 'n baie opwindende projek, en dit is hoe om rfid -data na Google -sigblad te stuur met behulp van Arduino. Kortom, ons gaan 'n bywoningsisteem maak wat gebaseer is op rfid -leser, wat die bywoningsdata intyds sal stoor om te gaan soek
Hoe om van 0 tot 99 te tel met behulp van 8051 mikrobeheerder met 7 segmentweergawe: 5 stappe (met foto's)
Hoe om van 0 tot 99 te tel Met behulp van 8051 mikrobeheerder met 7 -segmentweergawe: Hallo almal, in hierdie tutoriaal gaan ons u vertel hoe om van 0 tot 99 te tel met twee 7 -segment -skerms