विषयसूची:

Arduino नैनो (I2C) के माध्यम से वर्तमान निगरानी: 5 कदम
Arduino नैनो (I2C) के माध्यम से वर्तमान निगरानी: 5 कदम

वीडियो: Arduino नैनो (I2C) के माध्यम से वर्तमान निगरानी: 5 कदम

वीडियो: Arduino नैनो (I2C) के माध्यम से वर्तमान निगरानी: 5 कदम
वीडियो: Arduino के लिए I2C मॉड्यूल के साथ LCD2004 एलसीडी डिस्प्ले का परिचय 2024, जुलाई
Anonim
Arduino नैनो (I2C) के माध्यम से वर्तमान निगरानी
Arduino नैनो (I2C) के माध्यम से वर्तमान निगरानी

नमस्ते, शुभकामनाएँ..!!

यहाँ मैं (सोमांशु चौधरी) डीक्यूब टेक वेंचर्स की ओर से Arduino नैनो का उपयोग करके करंट की निगरानी करने जा रहा हूँ, यह करंट सेंसर TA12-200 के एनालॉग डेटा को पढ़ने के लिए I2C प्रोटोकॉल के अनुप्रयोगों में से एक है।

चरण 1: अवलोकन

अवलोकन
अवलोकन
  1. TA12-200 एक एसी करंट सेंसर है
  2. डेटाशीट लिंक:https://berg.hatenablog.com/entry/2013/2044-21-0441
  3. यह परियोजना एसी वर्तमान मूल्यों को मापती है

चरण 2: आपको क्या चाहिए / लिंक

आपको क्या चाहिए / लिंक
आपको क्या चाहिए / लिंक
  1. अरुडिनो नैनो
  2. Arduino नैनो के लिए I²C शील्ड
  3. यूएसबी केबल टाइप ए से माइक्रो टाइप बी 6 फीट लंबा
  4. आई²सी केबल
  5. I²C एसी करंट सेंसर ADC121C 12-बिट ADC I²C मिनी मॉड्यूल के माध्यम से
  6. सीएफएल या लाइट बल्ब।
  7. पीसीवी केबल।

चरण 3: सर्किट आरेख

सर्किट आरेख
सर्किट आरेख
सर्किट आरेख
सर्किट आरेख

चरण 4: प्रोग्रामिंग / कोड

प्रोग्रामिंग / कोड
प्रोग्रामिंग / कोड

#शामिल

व्यर्थ व्यवस्था()

{

// ADC121C021, 0x50 का I2C पता TA12-200. के साथ इंटरफेस किया गया

# परिभाषित करें ADC_ADDR 0x50

// मास्टर के रूप में I2c बस में शामिल हों

वायर.बेगिन ();

// सीरियल कंसोल आउटपुट के लिए सीरियल संचार शुरू करें

सीरियल.बेगिन (९६००);

}

शून्य लूप ()

{

// I2C बस पर दिए गए डिवाइस के साथ प्रसारण शुरू करें

Wire.beginTransmission (ADC_ADDR);

// कॉलिंग रूपांतरण परिणाम रजिस्टर, 0x00(0)

वायर.राइट (0x00);

// देरी (500);

// 2 बाइट्स का अनुरोध करें

Wire.requestFrom (ADC_ADDR, 2);

// बाइट्स पढ़ें यदि वे उपलब्ध हैं

अगर (वायर.उपलब्ध () == 2)

{

इंट एमएसबी = वायर.रीड ();

इंट एलएसबी = वायर.रीड ();

// ट्रांसमिशन समाप्त करें और I2C बस जारी करें

वायर.एंडट्रांसमिशन ();

// मूल्य की गणना

इंट रॉएडीसी = एमएसबी * 256 + एलएसबी;

रॉएडीसी = रॉएडीसी और 0x0fff;

// स्क्रीन पर आउटपुट

सीरियल.प्रिंट ("एडीसी वैल्यू:");

Serial.println (rawADC);

}

अन्यथा

{

Serial.println ("तार पर पर्याप्त बाइट उपलब्ध नहीं है।");

}

देरी (100);

}

/////////////////////////////////////////////// /////////////////////////ध्यान दें//////////////////////// /////////////////////////////////////////////// ////////////////////////

// ये मान मिलि एम्प्स में हैं

// आप अधिकतम रीडिंग का पता लगाकर करंट का rms मान भी पा सकते हैं और इसे 1.414. से विभाजित कर सकते हैं

चरण 5:

अधिक पूछताछ के लिए हमारी साइट पर जाने के लिए स्वतंत्र महसूस करें:

www.dcubetechnologies.com

सिफारिश की: