آموزش راه اندازی ماژول اندازه گیری جریان ZMCT103C با آردوینو

فهرست مطالب

ویژگی های ماژول اندازه گیری جریان ZMCT103C

از ماژول اندازه‌گیری جریان ZMCT103C می­توان برای مانیتور کردن جریان در مصارف مختلف صنعتی استفاده کرد. این ماژول بر پایه‌ی آی سی ZMCT103C ساخته شده است. ساز و کار این آی سی به این صورت است که سیمی که قرار است جریان آن اندازه گیری شود، از داخل حفره ی آی سی رد می‌­شود. سپس بر حسب جریان AC عبور کننده از سیم، ولتاژی در دو سر آی سی القا می­‌شود.

در ماژول اندازه‌گیری جریان ZMCT103C، ولتاژ خروجی آی سی ZMCT103C  توسط یک سری تقویت‌کننده، تقویت شده و به عنوان خروجی ماژول در دسترس قرار می‌گیرد. خروجی ماژول نیز یک ولتاژ آنالوگ AC متناسب با جریان AC سیم عبور کننده از حفره ماژول است.

نکته

بر روی این ماژول یک پتانسیومتر نیز در نظر گرفته شده است که با چرخاندن پیچ آن می­توان ضریب ­تقویت‌کننده ولتاژ را تنظیم کرد.

معرفی پایه های (Pinout) ماژول اندازه گیری جریان ZMCT103C

ماژول اندازه گیری جریان ZMCT103C دارای 4 پایه به شرح زیر است:

  • VCC: تغذیه ماژول – 5 ولت
  • OUT: خروجی ماژول
  • GND: زمین
  • GND: زمین

پین اوت (Pinout) این ماژول را می‌توانید در تصویر زیر مشاهده کنید.

لوازمی که به آن احتیاج دارید

قطعات مورد نیاز

آردوینو UNO R3 × 1
ماژول اندازه گیری جریان ZMCT103C تا 5 آمپر AC × 1
سیم جامپر × 1

نرم افزارهای مورد نیاز

آردوینو IDE

راه اندازی ماژول اندازه گیری جریان ZMCT103C

گام اول: سیم بندی

مطابق مدار زیر ماژول را به آردوینو وصل کرده و سیمی را که می خواهید جریان آن را اندازه بگیرید، از داخل حفره ماژول رد کنید.

گام دوم: کد

کد زیر را روی آردوینوی خود آپلود کنید. پس از آپلود کد، پنجره ی Serial Monitor را باز کنید.

 /*
Made on Dec 22, 2020
By MehranMaleki @ Electropeak
Home
*/ #define calibration_const 355.55 int max_val; int new_val; int old_val = 0; float rms; float IRMS; void setup() { pinMode(A0,INPUT); Serial.begin(9600); } void loop() { new_val = analogRead(A0); if(new_val > old_val) { old_val = new_val; } else { delayMicroseconds(50); new_val = analogRead(A0); if(new_val < old_val) { max_val = old_val; old_val = 0; } rms = max_val * 5.00 * 0.707 / 1024; IRMS = rms * calibration_const; Serial.print(" IRMS: "); Serial.println(IRMS); delay(1000); } }

برای کالیبراسیون ماژول، لازم است ابتدا ولتاژ خروجی ماژول را برای یک جریان AC که از پیش مقدار آن می‌دانیم حساب کنیم. به این صورت ضریب کالیبراسیون را می توان به سادگی محاسبه کرد. (این ضریب با چرخاندن پیچ پتانسیومتر تغییر می‌کند.) در کد بالا، از پایه A0 آردوینو برای خواندن ولتاژ خروجی ماژول استفاده شده است. سپس با محاسبه ماکزیمم این ولتاژ در بازه‌های مختلف، اندازه جریان rms عبوری از سیم بدست می‌آید. ما برای تست عملکرد کد، جریان عبوری از سیم تغذیه یک هویه را اندازه گرفته‌ایم.

خروجی کد به شکل زیر است. (مقادیر بر حسب mA است.)

آموزش های مشابه

Comments (4)

  • محمد یاسین شاهیان Reply

    سلام . برای برق مصرفی منزل باید سیم فاز داخل سنسور باشه یا نول ؟

    فوریه 21, 2024 at 3:38 ب.ظ
    • محمد دمیرچی Reply

      با سلام
      در اصل فرقی نمیکند و می توانید در هر لاینی قرار بدهید ولی بهتر هست بر روی لاین فاز قرار بدهید.

      فوریه 24, 2024 at 11:01 ق.ظ
  • امیر Reply

    سلام. میشه داده ها رو با نرخ 2 یا 3 کیلوهرتز از پایه آنالوگ خوند و روی رم ذخیره کرد؟
    منظورم اینه که RMS و max نیاز ندارم. داده های زمانی رو لازم دارم.
    همونجا که دارید 50 میکروثانیه تاخیر میدید و بعد داده ها رو از پایه آنالوگ میخونید، همونجا ذخیره کنیم روی رم

    مارس 20, 2024 at 12:07 ق.ظ
    • محمد دمیرچی Reply

      با سلام
      بله می توانید بدون هیچ دیلی ای دیتایی که از analogRead دریافت میکنید را درون SD کارت بریزید.
      2 روش را به شما پیشنهاد میدهم.
      مورد اول این که شما می توانید دستور باز کردن فایل را بدهید و هرچه دیتا در ورودی هست را بر روی SD کارت بریزد و در صورت زدن بر روی یک دکمه همه را سیو کند
      myfile = SD_MMC.open(filename, FILE_APPEND);
      if (!myfile)
      {
      Serial.println("Error opening file for writing");
      return;
      }
      u8x8.drawString(0, 3, "Saving");
      while (true)
      {
      myfile.write(analogRead(A0));
      if (!digitalRead(Button))
      break;
      }
      myfile.close();

      در صورت عدم فشار دادن این دکمه فایل سیو نمی شود !!!!!!!!!!!!!!
      روش دیگر جمع آوری داده ها در بازه های مثلا دقیقه ای یک بار و سیو کردن کل داده ها به صورت یک جا در فایل می باشد.
      باز بسته به نیاز خود روشی که میخواهید را انجام بدهید.

      مارس 24, 2024 at 11:01 ق.ظ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.