آردوینو پروژه های آردوینو

اندازه‌ گیری جریان DC با MAX471 و برد آردوینو

max471 آردوینو Arduino
نوشته شده توسط علیرضا قربانی

MAX471 یک جایگزین مقاوم برای سنسور جریان ACS712 جهت اندازه‌گیری جریان DC می‌باشد. این سنسور قادر است در مسیر هر مصرف کننده‌ای بین ولتاژ ۳ الی ۳۶ ولت قرار بگیرد و جریان آن را اندازه‌ بگیرد. یکی از مزایای این سنسور  راه اندازی بسیار ساده‌ی آن می‌باشد به طوری که به ازاری هر آمپر اندازه‌گیری شده ، ۱ولت خروجی می‌دهد. قابل ذکر است این سنسور قابلت اندازه‌گیری جریان تا ۳ آمپر را دارا می‌باشد. در ادامه‌ی این آموزش با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید .

 


معرفی ماژول جریان دو جهته MAX471 


ماژول MAX471 یک ماژول جریان دو جهته (bidirectional current sensor) است که توسط شرکت Maxim Integrated تولید می‌شود. این ماژول معمولاً برای اندازه‌گیری جریان الکتریکی در مدارها و سیستم‌ها به کار می‌رود. از آنجا که یک ماژول دو جهته است، امکان اندازه‌گیری جریان ورودی و خروجی از یک قطعه مدار را فراهم می‌کند.ماژول MAX471 با استفاده از تراشه‌ی داخلی خود، ولتاژ ورودی را به یک جریان افزایش می‌دهد و سپس اندازه‌گیری آن جریان را انجام می‌دهد. اطلاعات جریان به صورت ولتاژ خروجی تولید می‌شود که می‌تواند توسط میکروکنترلرها یا سیستم‌های الکترونیکی دیگر خوانده شود.استفاده‌های رایج ماژول MAX471 عبارتند از:

  • اندازه‌گیری جریان باتری در مدارها و دستگاه‌های مختلف.
  • کنترل و مانیتورینگ جریان در سیستم‌های پاور مختلف.
  • مانیتورینگ جریان در مدارها و کنترل‌های صنعتی.
  • استفاده در پروژه‌های الکترونیکی، رباتیک، و اتوماسیون.

 


وسایل مورد نیاز


برد آردوینو Arduino uno ( خرید از فروشگاه )

سنسور  MAX471

یک مصرف کننده مانند یک پک led وات بالا

 


اتصال MAX471 به برد Arduino آردوینو


 

  • +RS :این پین به قطب مثبت منبع تغذیه متصل می‌شود .
  • -RS  : این پین هم به یک سر مصرف کننده متصل می‌شود.
  • GND : اتصال به GND
  • OUT :  این پین یک خروجی آنالوگ است که به ازای هر آمپر سنجیده شده ، ۱ولت DC ایجاد می‌کند.
اتصال سنسور جریان max471 به آردوینو

اتصال سنسور جریان max471 به آردوینو

 

 


اتصال MAX471 در مدار چگونه است؟


به عنوان یک سنسور جریان ، قرار گیری آن در مدار بسیار مهم است ، چرا که چیپ MAX471 توان خود را از منبع می‌گیرد. توجه کنید که ترمینال مثبت منبع تغذیه چگونه به +R  متصل شده است. همچنین توجه کنید که -R چگونه به سر مثبت مصرف کننده وصل شده است.

 

قرار گرفتن سنسور max417 در مدار

 


کد نویسی برد Arduino


کد نویسی این ماژول بسیار ساده است . کد ، چیزی نیست جز کد یک ولت متر ساده که برای این دستگاه اصلاح شده. در مقیاس گذاری ۱ ولت بر آمپر که این خیلی بسیار ساده است.

const int max471In = A0;

int RawValue= 0;
float Current = 0;

void setup(){  
  pinMode(max471In, INPUT);
  Serial.begin(9600);
}

void loop(){  
  RawValue = analogRead(max471In); 
  Current = (RawValue * 5.0 )/ 1024.0; // scale the ADC  
       
  Serial.print("Current = "); // shows the voltage measured     
  Serial.print(Current,3); //3 digits after decimal point
  Serial.println(" amps DC"); //3 digits after decimal point  
  delay(1500);  
}

 

سریال مانیتور نرم افزار آردوینو Arduino خود را باز کنید. اگر تمام مراحل را به درستی انجام داده باشید ، باید مقادیر جریانی را ملاحضه کنید که نزدیک به چیزی که انتظار داشتید باشند.

 

 

آموزش max417 آردوینو

 


تحلیل کد آردوینو


این کد یک برنامه ساده برای اندازه‌گیری جریان الکتریکی با استفاده از ماژول MAX471 روی برد آردوینو است. اجزای کلیدی این کد به صورت زیر هستند:

  • const int max471In = A0;: این خط کد پین A0 را به عنوان ورودی ماژول MAX471 تعیین می‌کند. این پین به جریانی که می‌خواهید اندازه‌گیری کنید متصل می‌شود.
  • int RawValue= 0;: این متغیر برای ذخیره‌سازی مقدار ولتاژ خوانده شده از سنسور آنالوگ MAX471 است.
  • float Current = 0;: این متغیر برای ذخیره‌سازی مقدار جریان الکتریکی محاسبه شده است.
  • void setup(): این تابع برای تنظیمات اولیه اجرای برنامه استفاده می‌شود.
  • pinMode(max471In, INPUT);: پین max471In تنظیم می‌شود به عنوان پین ورودی برای خواندن جریان از ماژول MAX471.
    Serial.begin(9600);: ارتباط سریال بین برد آردوینو و کامپیوتر با سرعت ۹۶۰۰ بیت بر ثانیه برقرار می‌شود.
  • void loop(): این تابع برنامه اصلی است که به صورت مکرر اجرا می‌شود.
  • RawValue = analogRead(max471In);: این خط کد، مقدار خوانده شده از پین max471In را در متغیر RawValue ذخیره می‌کند.
  •  Current = (RawValue * 5.0 )/ 1024.0;: این خط کد جریان فعلی را محاسبه می‌کند. ابتدا مقدار خوانده شده از سنسور (RawValue) در مقیاس ۰ تا ۱۰۲۳ قرار دارد، بنابراین با ضرب در ۵ (که نشان‌دهنده ولتاژ مرجع ۵ ولت برای آردوینو است) و تقسیم بر ۱۰۲۴، جریان را به دست می‌آوریم.
  •  Serial.print(“Current = “);: این خط کد عبارت “Current = ” را چاپ می‌کند.
  •  Serial.print(Current,3);: این خط کد مقدار جریان را با دقت سه رقم اعشاری چاپ می‌کند.
  •  Serial.println(” amps DC”);: این خط کد عبارت ” amps DC” را به انتهای مقدار جریان چاپ می‌کند.
  •  delay(1500);: این خط کد یک تاخیر ۱٫۵ ثانیه‌ای قرار می‌دهد تا نتایج در پورت سریال به تعداد مشخصی نمایش داده شوند.

با اجرای این کد و اتصال درست ماژول MAX471 به برد آردوینو، شما می‌توانید جریان فعلی مدار خود را اندازه‌گیری کنید و نتایج را در نرم‌افزار سریال (مانیتور سریال) مشاهده کنید.

 

 

 

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

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۹ دیدگاه