Kā izveidot digitālo līdzstrāvas sprieguma mērītāju, izmantojot Arduino?

Voltmetrs ir sprieguma mērīšanas ierīce, ko izmanto, lai mērītu spriegumu noteiktos elektriskās ķēdes punktos. Spriegums ir potenciālā starpība, kas tiek radīta starp diviem elektriskās ķēdes punktiem. Ir divu veidu voltmetri. Daži voltmetri ir paredzēti līdzstrāvas ķēžu sprieguma mērīšanai, bet citi voltmetri ir paredzēti sprieguma mērīšanai maiņstrāvas ķēdēs. Šos voltmetrus tālāk raksturo divās kategorijās. Viens ir digitālais voltmetrs, kas parāda mērījumus uz digitālā ekrāna, un otrs ir analogais voltmetrs, kas izmanto adatu, lai norādītu uz skalas, lai parādītu mums precīzu rādījumu.



Digitālais voltmetrs

Šajā projektā mēs izgatavosim voltmetru, izmantojot Arduino Uno. Šajā rakstā mēs izskaidrosim divas digitālā voltmetra konfigurācijas. Pirmajā konfigurācijā mikrokontrolleris varēs izmērīt spriegumu 0 - 5 V diapazonā. Otrajā konfigurācijā mikrokontrolleris varēs izmērīt spriegumu 0 - 50 V diapazonā.



Kā izveidot digitālo voltmetru?

Tā kā mēs zinām, ka ir divu veidu voltmetri, analogais voltmetrs un digitālais voltmetrs. Ir vēl daži analogo voltmetru veidi, kuru pamatā ir ierīces konstrukcija. Daži no šiem veidiem ietver pastāvīgā magnēta kustīgo spoles voltmetru, taisngrieža tipa voltmetru, kustīgā dzelzs tipa voltmetru utt. Galvenais digitālā voltmetra ieviešanas mērķis bija lielāka kļūdu iespējamība analogajos voltmetros. Atšķirībā no analogā voltmetra, kurā tiek izmantota adata un skala, digitālais voltmetrs rādījumus rāda tieši cipariem ekrānā. Tas novērš iespēju Nulle kļūdas . Kļūdu procents tiek samazināts no 5% līdz 1%, kad mēs esam pārslēgušies no analogā voltmetra uz digitālo voltmetru.



Tagad, kad mēs zinām šī projekta kopsavilkumu, apkoposim vairāk informācijas un sāksim izgatavot digitālo voltmetru, izmantojot Arduino Uno.



1. darbība: komponentu savākšana

Vislabākā pieeja jebkura projekta uzsākšanai ir sastādīt sastāvdaļu sarakstu un veikt īsu šo komponentu izpēti, jo neviens nevēlas palikt projekta vidū tikai trūkstoša komponenta dēļ. Komponentu saraksts, ko mēs izmantosim šajā projektā, ir norādīts zemāk:

  • Arduino uno
  • 10 k omu potenciometrs
  • Džemperu vadi
  • 100k omu rezistors
  • 10k omu rezistors
  • 12 V maiņstrāvas līdzstrāvas adapteris (ja Arduino nedarbina dators)

2. solis: Komponentu izpēte

Arduino UNO ir mikrokontrolleru plate, kas sastāv no mikroshēmas ATMega 328P, un to ir izstrādājis Arduino.cc. Šajā dēlī ir ciparu un analogo datu tapu komplekts, ko var sasaistīt ar citiem paplašināšanas dēļiem vai shēmām. Šajā dēlī ir 14 digitālās tapas, 6 analogās tapas un to var programmēt ar Arduino IDE (integrētā izstrādes vide), izmantojot B tipa USB kabeli. Tas prasa 5 V strāvu IESLĒGTS un a C kods darboties.

Arduino uno



LCD ir redzami visās elektroniskajās ierīcēs, kurām lietotājiem ir jāparāda teksts vai cipars, vai jebkurš attēls. LCD ir displeja modulis, kurā šķidros kristālus izmanto redzama attēla vai teksta ražošanai. A 16 × 2 LCD displejs ir ļoti vienkāršs elektroniskais modulis, kas vienā ekrānā vienlaikus parāda 16 rakstzīmes un kopā divas rindas. Lai parādītu rakstzīmi šajos LCD, tiek izmantota 5 × 7 pikseļu matrica.

16 × 2 LCD displejs

TO Maizes dēlis ir lodēšanas ierīce. To izmanto, lai izgatavotu un testētu pagaidu prototipa elektroniskās shēmas un dizainus. Lielākā daļa elektronisko komponentu ir vienkārši savienoti ar maizes dēli, vienkārši ievietojot tapas maizes dēlī. Maizes dēļa caurumos tiek uzlikta metāla sloksne, un caurumi ir savienoti noteiktā veidā. Urbumu savienojumi ir parādīti zemāk redzamajā diagrammā:

Maizes dēlis

3. solis: ķēdes shēma

Pirmā ķēde, kuras mērījumu diapazons ir no 0 līdz 5 V, ir parādīta zemāk:

Voltmetrs 0-5V

Otrā ķēde, kuras mērījumu diapazons ir no 0 līdz 50 V, ir parādīta zemāk:

Voltmetrs 0-50V

4. solis: darba princips

Šī Arduino bāzes digitālā līdzstrāvas voltmetra projekta darbība ir paskaidrota šeit. Digitālajā voltmetrā spriegums, kas tiek mērīts analogajā formā, tiks pārveidots par atbilstošo digitālo vērtību, izmantojot analogo uz ciparu pārveidotāju.

Pirmajā ķēdē, kuras mērījumu diapazons ir no 0 līdz 5 V, ieeja tiks ņemta uz Analog pin0. Analogais tapa nolasīs jebkuru vērtību no 0 līdz 1024. Tad šī analogā vērtība tiks pārveidota par digitālu, reizinot to ar kopējo spriegumu, kas ir 5 V, un dalot to ar kopējo izšķirtspēju, kas ir 1024.

Otrajā ķēdē, tā kā diapazons jāpalielina no 5V līdz 50V, jāveic sprieguma dalītāja konfigurācija. Sprieguma dalītāja ķēde tiek izgatavota, izmantojot 10k-ohm un 100k-ohm rezistoru. Šī sprieguma dalītāja konfigurācija palīdz mums ievada spriegumu līdz Arduino Uno analogās ieejas diapazonam.

Visi matemātiskie aprēķini tiek veikti Arduino Uno programmēšanā.

5. darbība: komponentu salikšana

LCD moduļa savienojums ar Arduino Uno plati abās ķēdēs ir vienāds. Vienīgā atšķirība ir tā, ka pirmajā ķēdē ieejas diapazons ir mazs, tāpēc tas tiek tieši nosūtīts uz Arduino analogo tapu. Otrajā ķēdē mikrokontrolleru plates ieejas pusē tiek izmantota sprieguma dalītāja konfigurācija.

  1. Pievienojiet LCD moduļa Vss un Vdd tapu attiecīgi ar Arduino dēļa zemi un 5 V. Vee tapa ir tapa, ko izmanto, lai pielāgotu displeja ierobežojumus. Tas ir savienots ar potenciometru, kura viena tapa ir savienota ar 5V, bet otra ir savienota ar zemi.
  2. Pievienojiet LCD moduļa RS un E tapu attiecīgi Arduino dēļa pin2 un pin3. LCD RW tapa ir pievienota zemei.
  3. Tā kā LCD moduli izmantosim 4 bitu datu režīmā, tiek izmantoti tā četri tapas no D4 līdz D7. LCD moduļa D4-D7 tapas ir savienotas ar mikrokontrolleru plātnes pin4-pin7.
  4. Pirmajā ķēdē ieejas pusē nav papildu shēmas, jo maksimālais mērāmais spriegums ir 5V. Otrajā ķēdē, tā kā mērījumu diapazons ir no 0-50V, sprieguma dalītāja konfigurācija tiek veikta, izmantojot 10k-ohm un 100k-ohm rezistoru. Jāatzīmē, ka visi iemesli ir kopīgi.

6. darbība: darba sākšana ar Arduino

Ja iepriekš neesat pazīstams ar Arduino IDE, neuztraucieties, jo zemāk jūs varat redzēt skaidrus koda ierakstīšanas soļus mikrokontrolleru dēlī, izmantojot Arduino IDE. Arduino IDE jaunāko versiju varat lejupielādēt vietnē šeit un veiciet tālāk minētās darbības:

  1. Kad Arduino dēlis ir savienots ar datoru, atveriet “Control panel” un noklikšķiniet uz “Hardware and Sound”. Pēc tam noklikšķiniet uz “Ierīces un printeri”. Atrodiet tās ostas nosaukumu, kurai ir pievienota jūsu Arduino dēlis. Manā gadījumā tas ir “COM14”, bet datorā tas var atšķirties.

    Ostas atrašana

  2. Lai izmantotu LCD moduli, mums būs jāiekļauj bibliotēka. Bibliotēka ir pievienota zemāk lejupielādes saitei kopā ar kodu. Iet uz Skice> Iekļaut bibliotēku> Pievienot .ZIP bibliotēku.

    Iekļaut bibliotēku

  3. Tagad atveriet Arduino IDE. No Rīki iestatiet Arduino dēli uz Arduino / Genuino UNO.

    Dēļu iestatīšana

  4. Tajā pašā izvēlnē Rīks iestatiet porta numuru, kuru redzējāt vadības panelī.

    Portas iestatīšana

  5. Lejupielādējiet zemāk pievienoto kodu un nokopējiet to savā IDE. Lai augšupielādētu kodu, noklikšķiniet uz augšupielādes pogas.

    Augšupielādēt

Kodu var lejupielādēt līdz noklikšķinot šeit.

7. solis: kods

Kods ir diezgan vienkāršs un labi komentēts. Bet tomēr daži no tiem ir paskaidroti tālāk.

1. Sākumā bibliotēka tiek izmantota, lai mēs varētu saskarni ar LCD moduli savienot ar Arduino Uno dēli un attiecīgi to ieprogrammēt. Tiek inicializēti nekā Arduino dēļa tapas, kas tiks izmantoti, lai izveidotu savienojumu ar LCD moduli. Pēc tam tiek inicializēti dažādi mainīgie, lai saglabātu vērtības izpildes laikā, kas vēlāk tiks izmantota aprēķinos.

#include 'LiquidCrystal.h' // iekļaut bibliotēku saskarnes LCD modulim ar Arduino dēļa LiquidCrystal lcd (2, 3, 4, 5, 6, 7); // izmantojamā LCD moduļa tapas pludiņa spriegums = 0,0; pludiņa temperatūra = 0,0; // mainīgais, lai saglabātu ievades digitālo vērtību int analog_value; // mainīgais, lai ievadā saglabātu analogo vērtību

2. anulēt iestatīšanu () ir funkcija, kas darbojas tikai vienu reizi, kad ierīce sāk darboties vai tiek nospiesta iespējošanas poga. Šeit mēs esam inicializējuši LCD, lai sāktu. Kad LCD sāks darboties, tiks parādīts teksts “Arduino Based Digital Voltmeter”. Šajā funkcijā ir iestatīts arī pārraides ātrums. Bauda ātrums ir ātrums bitos sekundē, ar kuru Arduino sazinās ar ārējām ierīcēm.

void setup () {lcd.begin (16, 2); // sākt saziņu ar LCD lcd.setCursor (0,0); // sākt kursoru no sākuma lcd.print ('Arduino based'); // Izdrukāt tekstu pirmajā rindā lcd.setCursor (0,1); // Pārvietojiet kursoru uz nākamo rindu lcd.print ('Digital Voltmeter'); // izdrukāt tekstu otrās rindas aizkave (2000); // jāgaida divas sekundes}

3. void loop () ir funkcija, kas nepārtraukti darbojas lokā. Šeit analogā vērtība tiek nolasīta ievades pusē. Tad šī analogā vērtība tiek konvertēta digitālā formā. Tiek piemērots nosacījums, un pēdējie mērījumi tiek parādīti LCD ekrānā

void loop () {analog_value = analogRead (A0); // Analogās vērtības nolasīšana temp = (analog_value * 5.0) / 1024.0; // analogās vērtības maiņa ciparu spriegumā = temp / (0,0909); ja (spriegums< 0.1) { voltage=0.0; } lcd.clear(); // Clear any text on the LCD lcd.setCursor(0, 0); // Mve the cursor to the initial position lcd.print('Voltage= '); // Print Voltgae= lcd.print(voltage); // Print the final digital value of voltage lcd.setCursor(13,1); // move the cursor lcd.print('V'); // print the unit of voltage delay(30); // wait for 0.3 seconds }

Pieteikumi

Daži no tā digitālā voltmetra lietojumiem ir:

  1. Iepriekš izveidoto shēmu var izmantot, lai jebkurā elektriskajā ķēdē ar lielu precizitāti mērītu dažādus sprieguma diapazonus.
  2. Ja mēs veicam nelielas izmaiņas ķēdē, mikrokontrolleris varēs izmērīt spriegumu arī maiņstrāvas ķēdēs.