0

Arduino Ohm metr

Určitě znáte tu situaci, kdy chcete rychle zjistit hodnotu rezistoru, ale nepomatujete si barevný kód. Abychom ale nemuseli vždy hledat multimetr nebo zmíněný barevný kód, ukážeme si v tomto článku, jak si postavit Ohm-metr. Naměřenou hodnotu si zobrazíme na displeji 16×2 znaky.

Seznam součástek:

  • Vývojová deska Arduino UNO
  • Displej 16×2 znaky
  • Potenciometr 1k ohm
  • Rezistory
  • Nepájivé pole
  • Propojovací kabely

Schéma zapojení

Výpočet odporu pomocí Arduina

Princip funkce tohoto měřiče odporu (rezistivity) je jednoduchý a je založen na zapojení napěťového děliče.

Výstupní napětí napěťového děliče R1 a R2 se vypočte dle této rovnice:

Vout = Vin * R2 / (R1+R2)

Ze zmíněné rovnice pak pro náš případ potřebujeme zjistit hodnotu odporu R2, kterou získáme následovně:

R2 = Vout * R1 / (Vin - Vout)

Kde:

  • R1 je odpor o známé velikosti
  • R2 je připojený odpor o neznámé velikosti
  • Vin je vstupní napětí, v našem případě 5V Arduina
  • Vout je výstup z napěťového děliče, tedy napětí na odporu R2

Poznámka: hodnotu odporu je v tomto návodu zvolena na 3k3 ohmů, ale může být zvolena podle vaší potřeby

Arduino Ohm Meter in action

Pokud tedy získáme velikost napětí Vout, můžeme jednoduše vypočítat hodnotu odporu R2. My napětí Vout změříme skrze analogový pin A0 na Arduinu a převedeme ho z digitální hodnoty (0-1023) na napětí ve Voltech.

Je ale nutné poukázat na to, že pokud je rozdíl mezi R1 a R2 velký, zvyšuje se úměrně i chyba měření. Je tedy vhodné pro nejlepší přesnost volit podobné velikosti odporů.

Ukázkový kód

Na začátku ukázkového kódu se nachází definice propojovacích pinů pro LCD displej společně s vytvořením proměnných. Mezi nimi si můžete všimnout jak nastavení napětí Vin, tak i hodnoty známého odporu R1. Poté zahájíme komunikaci s LCD displejem a můžeme začít s měřením.
V nekonečné smyčce loop vždy načteme data z analogového pinu A0 a pokud jsou data různá od nuly, vypočteme pomocí nich hodnotu odporu R2 z výše uvedeného tvaru. Poté vytiskneme vypočtený odpor na displej a po pauze se smyčka loop opakuje.

#include

LiquidCrystal lcd(2,3,4,5,6,7);   //rs,e,d4,d5,d6,d7

int Vin=5;        //voltage at 5V pin of arduino
float Vout=0;     //voltage at A0 pin of arduino
float R1=3300;    //value of known resistance
float R2=0;       //value of unknown resistance
int a2d_data=0;    
float buffer=0;            

void setup() 
{
 lcd.begin(16,2);
}

void loop()
{
  a2d_data=analogRead(A0);
  if(a2d_data)
  {
    buffer=a2d_data*Vin;
    Vout=(buffer)/1024.0;
    buffer=Vout/(Vin-Vout); 
    R2=R1*buffer;

    lcd.setCursor(4,0);
    lcd.print("ohm meter");

    lcd.setCursor(0,1);
    lcd.print("R (ohm) = ");
    lcd.print(R2);
    
    delay(1000);
  }
}

Videoukázka

Převzato a přeloženo z https://circuitdigest.com/microcontroller-projects/arduino-ohm-meter

Arduino Uno, Mega, Senzory, Moduly za

VÝHODNOU CENU

Luboš

Napsat komentář

Vaše emailová adresa nebude zveřejněna.