İçindekiler:

Arduino ile I - V Eğrisi: 5 Adım
Arduino ile I - V Eğrisi: 5 Adım

Video: Arduino ile I - V Eğrisi: 5 Adım

Video: Arduino ile I - V Eğrisi: 5 Adım
Video: Arduino Nedir? Nasıl Kurulur ve Neler Yapılabilir? #1 2024, Mayıs
Anonim
Arduino ile I - V Eğrisi
Arduino ile I - V Eğrisi

Ledlerin I–V eğrisini oluşturmaya karar verdim. Ama sadece bir multimetrem var, bu yüzden Arduino Uno ile basit IV metre oluşturdum.

Wiki'den: Bir akım-voltaj karakteristiği veya I-V eğrisi (akım-voltaj eğrisi), bir devre, cihaz veya malzemeden geçen elektrik akımı ile karşılık gelen voltaj arasındaki tipik olarak bir çizelge veya grafik olarak temsil edilen bir ilişkidir veya boyunca potansiyel fark.

Adım 1: Malzeme Listesi

Bu proje için ihtiyacınız olacak:

USB kablosu ile Arduino Uno

breadboard ve duponts kablosu

ledler (5 mm kırmızı ve mavi led kullandım)

düşme direnci (şönt direnci) - 200 ohm için karar verdim (5V için maksimum akım 25 mA)

dirençler veya potansiyometre, direnç karışımı kullanıyorum - 100k, 50k, 20k, 10k, 5k, 2.2k, 1k, 500k

2. Adım: Devre

Devre
Devre

Devre, akım ölçmek için test ledi, şönt dirençten (R_drop) oluşur. Gerilim düşüşünü ve akımı değiştirmek için çeşitli dirençler (R_x) kullanıyorum.

Temel ilke:

  • devredeki toplam I akımını al
  • Ul testinde voltaj düşüşü elde et

toplam akım ben

Toplam akımı elde etmek için şönt direnç üzerindeki voltaj düşüşünü Ur ölçüyorum. Bunun için analog pin kullanıyorum. Voltajı ölçüyorum:

  • GND ve A0 arasında U1
  • GND ve A2 arasında U2

Bu voltajlardan farklı olarak, şönt direnç üzerindeki eşit voltaj düşüşü: Ur = U2-U1.

Toplam akım I: I = Ur/R_drop = Ur/250

Voltaj düşüşü Ul

Led üzerindeki voltaj düşüşünü elde etmek için U2'yi toplam voltaj U'dan (5V olması gerekir) çıkardım: Ul = U - U2

3. Adım: Kodlayın

kayan nokta U = 4980; // mV cinsinden GND ve arduino VCC arasındaki voltaj = toplam voltaj

yüzer U1=0; // 1 sonda

yüzer U2=0; // 2 sonda

yüzer Ur=0; // şönt direncinde voltaj düşüşü

yüzer Ul=0; // led üzerindeki voltaj düşüşü

yüzer ben = 0; // devredeki toplam akım

kayan nokta R_drop=200; // kapatma direncinin direnci

geçersiz kurulum()

{

Seri.başla(9600);

pinMode(A0, GİRİŞ);

pinMode(A1, GİRİŞ);

}

boşluk döngüsü()

{

U1 = kayan(analogRead(A0))/1023*U; // GND ile A0 arasındaki voltajı miliVolt cinsinden alın

U2 = kayan nokta(analogOku(A1))/1023*U; // GND ile A1 arasındaki voltajı miliVolt cinsinden alın

Ur=U2-U1; // şönt direncindeki gerilimi düşür

I=Ur/R_drop*1000; // mikroAmp cinsinden toplam akım

Ul=U-U2; // led üzerindeki voltaj düşüşü

Seri.print("1");

Seri.baskı(U1);

Seri.print(" 2 ");

Seri.baskı(U2);

Seri.print(" //// ");

Serial.print("şönt direncindeki voltaj düşüşü: ");

Seri.print(Ur);

Serial.print(" leddeki voltaj düşüşü: ");

Seri.print(Ul);

Serial.print("toplam akım:");

Seri.println(I);

// Duraklat

gecikme(500);

}

4. Adım: Test Etme

Test yapmak
Test yapmak
Test yapmak
Test yapmak
Test yapmak
Test yapmak

2 led, kırmızı ve mavi test ediyorum. Görüldüğü gibi mavi ledin diz voltajı daha fazladır ve bu yüzden mavi ledin mavi ledin 3 Volt civarında esmeye başlaması gerekir.

Adım 5: Direnci Test Etme

Test Direnci
Test Direnci
Test Direnci
Test Direnci

Direnç için I - V eğrisi yapıyorum. Gördüğünüz gibi, grafik doğrusaldır. Grafikler, Ohm yasasının ledler için değil, sadece dirençler için çalıştığını gösteriyor. Direnci hesaplıyorum, R = U/I. Arduino'daki analog - dijital dönüştürücünün çözünürlüğü olduğundan düşük akım değerlerinde ölçümler hassas değildir:

5V / 1024 = 4,8 mV ve akım -> 19,2 mikroAmp.

Bence ölçüm hataları:

  • breadboard bileşenleri süper bileşenler değildir ve voltajda bazı hatalar yapar
  • kullanılan dirençler, dirençte yaklaşık% 5 çeşitliliğe sahiptir
  • Analog okuma salınımından gelen ADC değerleri

Önerilen: