সুচিপত্র:

Arduino জন্য DIY শক্তি পরিমাপ মডিউল: 9 ধাপ (ছবি সহ)
Arduino জন্য DIY শক্তি পরিমাপ মডিউল: 9 ধাপ (ছবি সহ)

ভিডিও: Arduino জন্য DIY শক্তি পরিমাপ মডিউল: 9 ধাপ (ছবি সহ)

ভিডিও: Arduino জন্য DIY শক্তি পরিমাপ মডিউল: 9 ধাপ (ছবি সহ)
ভিডিও: EP20 HW বিল্ড - DIY RF পাওয়ার পরিমাপ 2024, জুলাই
Anonim
Arduino জন্য DIY শক্তি পরিমাপ মডিউল
Arduino জন্য DIY শক্তি পরিমাপ মডিউল
Arduino জন্য DIY শক্তি পরিমাপ মডিউল
Arduino জন্য DIY শক্তি পরিমাপ মডিউল
Arduino জন্য DIY শক্তি পরিমাপ মডিউল
Arduino জন্য DIY শক্তি পরিমাপ মডিউল

হ্যালো সবাই, আমি আশা করি আপনি দুর্দান্ত করছেন! এই নির্দেশে আমি আপনাকে দেখাবো কিভাবে আমি একটি Arduino বোর্ডের সাথে ব্যবহারের জন্য এই পাওয়ার মিটার/ ওয়াটমিটার মডিউল তৈরি করেছি। এই বিদ্যুৎ মিটার ডিসি লোড দ্বারা ব্যবহৃত শক্তি গণনা করতে পারে। ক্ষমতার পাশাপাশি এই মডিউল আমাদের ভোল্টেজ এবং কারেন্টের সঠিক রিডিংও দিতে পারে। এটি সহজেই কম ভোল্টেজ (2V এর কাছাকাছি) এবং কম স্রোত পরিমাপ করতে পারে, 50mA যত কম ত্রুটি 20mA এর বেশি নয়। সঠিকতা আপনার প্রয়োজনীয়তার উপর ভিত্তি করে উপাদানগুলির পছন্দের উপর নির্ভর করে।

সরবরাহ

  • IC LM358 ডুয়াল OP-AMP
  • 8 পিন আইসি বেস
  • শান্ট প্রতিরোধক (আমার ক্ষেত্রে 8.6 মিলিঅ্যাম)
  • প্রতিরোধক: 100 কে, 10 কে, 2.2 কে, 1 কে (1/2 ওয়াট)
  • ক্যাপাসিটার: 3 * 0.1uF সিরামিক ক্যাপাসিটার
  • ভেরোবোর্ড বা শূন্য বোর্ড
  • স্ক্রু টার্মিনাল
  • সোল্ডারিং লোহা এবং ঝাল
  • Arduino Uno বা অন্য কোন সামঞ্জস্যপূর্ণ বোর্ড
  • OLED ডিসপ্লে
  • ব্রেডবার্ড তারের সংযোগ

ধাপ 1: প্রয়োজনীয় উপাদান সংগ্রহ করা

প্রয়োজনীয় উপাদান সংগ্রহ করা
প্রয়োজনীয় উপাদান সংগ্রহ করা

এই প্রকল্পটি খুব সহজ এবং সহজেই উপাদানগুলি ব্যবহার করে: তাদের মধ্যে রয়েছে প্রতিরোধক, সিরামিক ক্যাপাসিটার, অপারেশনাল এম্প্লিফায়ার এবং প্রোটোটাইপিংয়ের জন্য একটি ভেরোবোর্ড।

উপাদানগুলির পছন্দ এবং মূল্য নির্ভর করে অ্যাপ্লিকেশনের ধরণ এবং ক্ষমতার পরিসরের উপর যা আপনি পরিমাপ করতে চান।

পদক্ষেপ 2: কাজের নীতি।

কাজের নীতি।
কাজের নীতি।
কাজের নীতি।
কাজের নীতি।
কাজের নীতি।
কাজের নীতি।
কাজের নীতি।
কাজের নীতি।

বিদ্যুৎ মডিউলের কাজ সার্কিট তত্ত্ব এবং মৌলিক বিদ্যুতের দুটি ধারণার উপর ভিত্তি করে: ইনপুট ভোল্টেজ পরিমাপের জন্য ভোল্টেজ বিভাজক ধারণা এবং সার্কিটের মধ্য দিয়ে প্রবাহিত বিদ্যুৎ গণনার জন্য ওহমের আইন। আমরা একটি শান্ট প্রতিরোধক ব্যবহার করে এটি জুড়ে খুব ছোট ভোল্টেজ ড্রপ তৈরি করছি। এই ভোল্টেজ ড্রপ শান্টের মধ্য দিয়ে প্রবাহিত পরিমাণের অনুপাতে। এই ছোট ভোল্টেজটি যখন একটি অপারেশনাল এম্প্লিফায়ার দ্বারা পরিবর্ধিত হয় তখন একটি মাইক্রোকন্ট্রোলারের ইনপুট হিসাবে ব্যবহার করা যেতে পারে যা আমাদের বর্তমান মান দিতে প্রোগ্রাম করা যেতে পারে। প্রতিরোধক R2 এবং R1। নন ইনভার্টিং কনফিগারেশন ব্যবহার করে আমাদের পরিমাপের রেফারেন্স হিসাবে একটি সাধারণ স্থল থাকতে দেয়। এজন্য সার্কিটের নিচের দিকে কারেন্ট পরিমাপ করা হচ্ছে। আমার আবেদনের জন্য আমি ফিডব্যাক নেটওয়ার্ক হিসেবে 100K এবং 2.2K রোধকে ব্যবহার করে 46 এর লাভ বেছে নিয়েছি। ভোল্টেজ পরিমাপ একটি ভোল্টেজ ডিভাইডার সার্কিট ব্যবহার করে করা হয় যা ইনপুট ভোল্টেজকে ব্যবহৃত রেজিস্টর নেটওয়ার্কের অনুপাতে বিভক্ত করে।

OP-Amp থেকে বর্তমান মান এবং ডিভাইডার নেটওয়ার্ক থেকে ভোল্টেজ মান উভয়ই Arduino এর দুটি এনালগ ইনপুট দেওয়া যেতে পারে যাতে আমরা একটি লোড দ্বারা ব্যবহৃত শক্তি গণনা করতে পারি।

ধাপ 3: অংশগুলি একত্রিত করা

যন্ত্রাংশ একসাথে নিয়ে আসা
যন্ত্রাংশ একসাথে নিয়ে আসা
যন্ত্রাংশ একসাথে নিয়ে আসা
যন্ত্রাংশ একসাথে নিয়ে আসা
যন্ত্রাংশ একসাথে নিয়ে আসা
যন্ত্রাংশ একসাথে নিয়ে আসা

আসুন ইনপুট এবং আউটপুট সংযোগের জন্য স্ক্রু টার্মিনালের অবস্থান নির্ধারণ করে আমাদের পাওয়ার মডিউলের নির্মাণ শুরু করি। যথাযথ অবস্থানগুলি চিহ্নিত করার পরে, আমরা স্ক্রু টার্মিনাল এবং শান্ট প্রতিরোধককে সোল্ডার করি।

ধাপ 4: ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা

ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
ভোল্টেজ সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা

ইনপুট ভোল্টেজ সেন্সিং এর জন্য আমি 10K এবং 1K এর একটি ভোল্টেজ ডিভাইডার নেটওয়ার্ক ব্যবহার করছি। আমি ভোল্টেজগুলিকে মসৃণ করার জন্য 1K রোধকারী জুড়ে একটি 0.1 ইউএফ ক্যাপাসিটর যুক্ত করেছি ভোল্টেজ সেন্স নেটওয়ার্ক ইনপুট টার্মিনালের কাছাকাছি

ধাপ 5: কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা

কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা
কারেন্ট সেন্স নেটওয়ার্কের জন্য যন্ত্রাংশ যোগ করা

প্রতিরোধক নেটওয়ার্ক দ্বারা নির্ধারিত পূর্বনির্ধারিত লাভের সাহায্যে শান্ট প্রতিরোধক জুড়ে ভোল্টেজ ড্রপ গণনা এবং পরিবর্ধনের মাধ্যমে বর্তমান পরিমাপ করা হচ্ছে। নন ইনভার্টিং এমপ্লিফিকেশন মোড ব্যবহার করা হয়। অবাঞ্ছিত ভোল্টেজ ড্রপ এড়ানোর জন্য সোল্ডার ট্রেসগুলি ছোট রাখা বাঞ্ছনীয়।

ধাপ 6: অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা।

অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা
অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা
অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা
অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা
অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা
অবশিষ্ট সংযোগগুলি সম্পূর্ণ করা এবং বিল্ডটি শেষ করা

ভোল্টেজ এবং কারেন্ট সেন্স নেটওয়ার্ক সংযুক্ত এবং সোল্ডারের সাথে, পুরুষ হেডার পিনগুলি সোল্ডার এবং পাওয়ার এবং সিগন্যাল আউটপুটগুলির প্রয়োজনীয় সংযোগ তৈরি করার সময়। মডিউলটি 5 ভোল্টের স্ট্যান্ডার্ড অপারেটিং ভোল্টেজ দ্বারা চালিত হবে যা আমরা সহজেই একটি arduino বোর্ড থেকে পেতে পারি। দুটি ভোল্টেজ সেন্স আউটপুট আরডুইনো এর এনালগ ইনপুটগুলির সাথে সংযুক্ত হবে।

ধাপ 7: Arduino এর সাথে মডিউল সংযুক্ত করা

Arduino এর সাথে মডিউল সংযুক্ত করা হচ্ছে
Arduino এর সাথে মডিউল সংযুক্ত করা হচ্ছে
Arduino এর সাথে মডিউল সংযুক্ত করা হচ্ছে
Arduino এর সাথে মডিউল সংযুক্ত করা হচ্ছে
Arduino এর সাথে মডিউল সংযুক্ত করা হচ্ছে
Arduino এর সাথে মডিউল সংযুক্ত করা হচ্ছে
Arduino এর সাথে মডিউল সংযুক্ত করা
Arduino এর সাথে মডিউল সংযুক্ত করা

মডিউলটি সম্পূর্ণ হওয়ার সাথে সাথে, এটি এখন একটি Arduino এর সাথে সংযুক্ত করার এবং এটি চালানোর সময়। মানগুলি দেখতে, আমি একটি OLED ডিসপ্লে ব্যবহার করেছি যা Arduino এর সাথে যোগাযোগের জন্য I2C প্রোটোকল ব্যবহার করেছে। পর্দায় প্রদর্শিত পরামিতি হল ভোল্টেজ, কারেন্ট এবং পাওয়ার।

ধাপ 8: প্রকল্প কোড এবং সার্কিট ডায়াগ্রাম

প্রকল্প কোড এবং সার্কিট ডায়াগ্রাম
প্রকল্প কোড এবং সার্কিট ডায়াগ্রাম

আমি এই ধাপে পাওয়ার মডিউলের সার্কিট ডায়াগ্রাম এবং কোড সংযুক্ত করেছি (পূর্বে আমি কোড ধারণকারী.ino এবং.txt ফাইলটি সংযুক্ত করেছিলাম কিন্তু কিছু সার্ভারের ত্রুটির কারণে কোডটি ব্যবহারকারীদের কাছে অ্যাক্সেসযোগ্য বা পড়া যায় না, তাই আমি সম্পূর্ণ লিখেছি এই ধাপে কোড। আমি জানি যে কোডটি শেয়ার করার এটি একটি ভাল উপায় নয়:

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#OLED_RESET নির্ধারণ করুন 4 Adafruit_SSD1306 ডিসপ্লে (OLED_RESET);

ভাসা ভ্যাল = 0;

ভাসমান বর্তমান = 0;

ভাসা ভোল্টেজ = 0;

ভাসমান শক্তি = 0;

অকার্যকর সেটআপ() {

পিনমোড (A0, INPUT);

পিনমোড (এ 1, ইনপুট);

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // I2C addr 0x3C (128x32 এর জন্য) display.display () দিয়ে শুরু করুন;

বিলম্ব (2000);

// বাফার সাফ করুন।

display.clearDisplay ();

display.setTextSize (1);

display.setCursor (0, 0);

display.setTextColor (সাদা);

Serial.begin (9600); // সিরিয়াল মনিটরে মান দেখতে

}

অকার্যকর লুপ () {

// স্থিতিশীল পড়ার জন্য গড় গ্রহণ

জন্য (int i = 0; i <20; i ++) {

current = current + analogRead (A0);

ভোল্টেজ = ভোল্টেজ + এনালগ রিড (A1); }

বর্তমান = (বর্তমান/20); বর্তমান = বর্তমান * 0.0123 * 5.0; // ক্রমাঙ্কন মান, ব্যবহৃত উপাদান অনুযায়ী পরিবর্তন করা হবে

ভোল্টেজ = (ভোল্টেজ/20); ভোল্টেজ = ভোল্টেজ * 0.0508 * 5.0; // ক্রমাঙ্কন মান, ব্যবহৃত উপাদান অনুযায়ী পরিবর্তন করা হবে

শক্তি = ভোল্টেজ*বর্তমান;

// সিরিয়াল মনিটরে মানগুলি মুদ্রণ করা

সিরিয়াল.প্রিন্ট (ভোল্টেজ);

সিরিয়াল.প্রিন্ট ("");

সিরিয়াল.প্রিন্ট (বর্তমান);

সিরিয়াল.প্রিন্ট ("");

Serial.println (ক্ষমতা);

// OLED ডিসপ্লেতে মানগুলি মুদ্রণ করা

display.setCursor (0, 0);

display.print ("ভোল্টেজ:");

display.print (ভোল্টেজ);

display.println ("V");

display.setCursor (0, 10);

display.print ("বর্তমান:");

display.print (বর্তমান);

display.println ("A");

display.setCursor (0, 20);

display.print ("পাওয়ার:");

display.print (পাওয়ার);

display.println ("W");

display.display ();

বিলম্ব (500); // বিলম্ব দ্বারা নির্ধারিত রিফ্রেশ হার

display.clearDisplay ();

}

প্রস্তাবিত: