İçindekiler:

Arduino Nano (I2C) Üzerinden Akım İzleme: 5 Adım
Arduino Nano (I2C) Üzerinden Akım İzleme: 5 Adım

Video: Arduino Nano (I2C) Üzerinden Akım İzleme: 5 Adım

Video: Arduino Nano (I2C) Üzerinden Akım İzleme: 5 Adım
Video: Arduino Güç ve Besleme Çeşitleri, Arduino Pin besleme, Arduino kursu - Ders 5 2024, Temmuz
Anonim
Arduino Nano (I2C) Üzerinden Akım İzleme
Arduino Nano (I2C) Üzerinden Akım İzleme

Merhaba, Selamlar..!!

Burada ben (Somanshu Choudhary) Arduino nano kullanarak akımı izleyecek olan Dcube teknoloji girişimleri adına, Akım Sensörü TA12-200'ün analog verilerini okumak için I2C protokolünün uygulamalarından biridir.

1. Adım: Genel Bakış

genel bakış
genel bakış
  1. TA12-200 bir AC akım sensörüdür
  2. VERİ SAYFASI Bağlantısı:https://berg.hatenablog.com/entry/2013/2044-21-0441
  3. Bu proje AC akım değerlerini ölçer

Adım 2: İhtiyacınız Olan Şeyler / Bağlantılar

İhtiyacınız Olan / Bağlantılar
İhtiyacınız Olan / Bağlantılar
  1. Arduino Nano
  2. Arduino Nano için I²C Kalkanı
  3. USB Kablosu Tip A - Mikro Tip B 6 Feet Uzunluğunda
  4. I²C Kablosu
  5. ADC121C 12-Bit ADC I²C Mini Modül aracılığıyla I²C AC akım Sensörü
  6. CFL veya Ampul.
  7. PCV kabloları.

Adım 3: Devre Şeması

Devre şeması
Devre şeması
Devre şeması
Devre şeması

Adım 4: Programlama / Kodlama

Programlama / Kod
Programlama / Kod

#Dahil etmek

geçersiz kurulum()

{

// TA12-200 ile arayüzlenmiş ADC121C021, 0x50'nin I2C adresi

#define ADC_ADDR 0x50

// I2c Bus'a master olarak katıl

Wire.begin();

// Seri konsol çıkışı için seri iletişimi başlat

Seri.başla(9600);

}

boşluk döngüsü()

{

// I2C veriyolunda verilen cihazla iletimi başlat

Wire.beginTransmission(ADC_ADDR);

// Dönüştürme sonuç kaydının çağrılması, 0x00(0)

Wire.write(0x00);

//gecikme(500);

// 2 bayt iste

Wire.requestFrom(ADC_ADDR, 2);

// Varsa baytları okuyun

if(Wire.available() == 2)

{

int msb = Wire.read();

int lsb = Wire.read();

// İletimi sonlandır ve I2C veri yolunu serbest bırak

Wire.endTransmission();

// Değer hesaplanıyor

int rawADC = msb * 256 + lsb;

rawADC = rawADC & 0x0fff;

// Ekrana çıktı

Serial.print("ADC Değeri: ");

Serial.println(rawADC);

}

Başka

{

Serial.println("Kabloda yeterli bayt yok.");

}

gecikme(100);

}

///////////////////////////////////////////// /////////////////////////NOT//////////////////////// ///////////////////////////////////////////// //////////////////////

// Bu değerler mili amper cinsindendir

// Akımın rms değerini maxinmum değerini bulup 1.414'e bölerek de bulabilirsiniz.

Adım 5:

Daha fazla bilgi için sitemizi ziyaret etmekten çekinmeyin:

www.dcubetechnologies.com

Önerilen: