آردوینو نمایشگر Segment پروژه های آردوینو

طراحی و پیاده سازی پروژه مولتی متر آردوینو با سنسور جریان ACS712

create-multimeter-with-arduino-acs712-and-segment-module-digispark
نوشته شده توسط معین صابری

بردهای آردوینو را دیگر کامل می شناسیم؛ برد و البته پلتفرمی قدرتمند که اجرای بسیاری از پروژه های الکترونیکی امروزه مدیون این بردهاست. پلتفرم آردوینو مسیر ورود و شروع به دنیای برنامه نویسی سخت افزار(امبدد سیستم) به شمار می رود. به کمک این پلتفرم می توان به فرمی استاندارد و البته با سرعتی بالا، شروع به برنامه نویسی در حوزه الکترونیک نمود.  در این آموزش به طراحی و پیاده سازی یک مولتی متر به کمک این برد می پردازیم. به کمک این مولتی متر می توانیم ولتاژ و جریان DC را اندازه گیری نماییم. بدین ترتیب می توانیم به طراحی و پیاده سازی مولتی متر دلخواه خود بپردازیم. در این پروژه البته جهت اندازه گیری جریان مصرفی بر خلاف عموم رایج مولتی مترها، از مقاومت شنت برای اندازه گیری جریان استفاده نخواهیم کرد. جهت اندازه گیری جریان در این پروژه، از سنسور اثر هال استفاده خواهیم نمود. در ادامه این آموزش، در ادامه با مرجع تخصصی آردوینو به زبان فارسی ، دیجی اسپارک همراه باشید.

 


نحوه عملکرد مولتی متر بر پایه آردوینو


پیش از آنکه به ادامه آموزش بپردازیم، این قسمت را به بررسی نحوه عملکرد مولتی متر اختصاص خواهیم داد. مولتی متر ساخته شده بر پایه آردوینو قابلیت اندازه گیری ولتاژ و جریان مستقیم را دارد. جهت اندازه گیری ولتاژ، ما بیشینه ولتاژ DC را تا ۵۰ ولت در نظر می گیریم. جهت اندازه گیری ولتاژ، از واحد ADC برد آردوینو استفاده می کنیم. به کمک این واحد، می توانیم سیگنال های آنالوگ را به دیجیتال تبدیل نماییم. در این جا سیگنال های آنالوگ که همان ولتاژ ها هستند، به سیگنال دیجیتال معادل تبدیل شده و بدین ترتیب می توانیم میزان ولتاژ را بخوانیم.

پروژه مولتی متر آردوینو Arduino با ACS712 - دیجی اسپارک

 

در این آموزش ما از برد آردوینو UNO جهت طراحی و پیاده سازی مولتی متر استفاده می کنیم. برد آردوینو UNO دارای ولتاژ مرجع ۵ ولت است. به عبارت دیگر جهت اندازه گیری ولتاژها تا ۵۰ ولت، به مدار تقسیم مقاومتی نیاز داریم. در رابطه با دو موضوع مطرح شده، یکی ADC ودیگری تقسیم مقاومتی پیشتر دو آموزش در دیجی اسپارک منتشر شده است؛ این دو آموزش را با کلیک بر روی لینک های زیر می توانید مطالعه نمایید.

در این پروژه ما به کمک برد آردوینو UNO، ولتاژ و جریان را اندازه گیری می کنیم. جریان مصرفی به کمک سنسور جریان برق و ولتاژ از طریق ADC داخلی میکرو اندازه گیری می گردد. در کنار این، جریان مصرفی از طریق سنسور جریان برق مدل ACS712 اندازه گیری خواهد شد. در نهایت داده های اندازه گیری شده بر روی نمایشگر سون سگمنت، نمایش داده می شوند.

اتصال ACS712 به برد در ساخت پروژه مولتی متر آردوینو - دیجی اسپارک

 

پس از بررسی کلی قطعات، نوبت به جزییات نقش هر قطعه در پروژه می رسد. قسمت بعد مربوط به این موضوع خواهد بود.

 


قطعات در پروژه مولتی متر آردوینو


پس از بررسی فرم کلی قطعات در سیستم پروژه مولتی متر آردوینو، نوبت به جزییات نقش هر قطعه می رسد. در این پروژه برد آردوینو به عنوان هسته مرکزی پردازش و اندازه گیری کننده ولتاژ، سنسور ACS712 به عنوان سنسور جریان برق و نمایشگر TM1637 وظیفه نمایش داده ها را بر عهده دارد.

برد آردوینو Uno و نمایشگر سگمنت TM1637 - دیجی اسپارک

 

برد آردوینو با برنامه ای که برای آن نوشته ایم، ولتاژ را از طریق ADC می خواند. از آنجاییکه این ولتاژ از طریق تقسیم مقاوتی با نسبت ۱۱/۱ بدست آمده، بنابراین باید ولتاژ بدست آمده در ۱۱ ضرب گردد. از طرف دیگر، جریان برق از طریق سنسور ACS712 خوانده می شود. این سنسور دارای خروجی آنالوگ متناسب با جریان اندازه گیری شده است. این سنسور که بر مبنای اثر هال عمل می کند، می تواند جریان گذرنده از ترمینال های خود را اندازه گیری نماید. در طرف دیگر داده های اندازه گیری شده بر روی نمایشگر سون سگمنت نمایش داده می شوند.

نمایشگر TM1637 در پروژه مولتی متر آردوینو - دیجی اسپارک

 

در پروژه مولتی متر آردوینو ما از ماژول نمایشگر سون سگمنت TM1637 استفاده می کنیم. به کمک این ماژول نمایشگر تنها از طریق دو پایه، به ۴ دیجیت سون سگمنت دسترسی خواهیم داشت. بدین ترتیب به شکلی ساده، در فرمی استاندارد و بدون درگیر کردن پایه های برد آردوینو، می توانیم نمایشگر سگمنت را راه اندازی کنیم.

نمایشگر سگمنت آردوینو TM1637 مولتی متر - دیجی اسپارک

 

پس از آشنایی با قطعات و نقش هر یک در پروژه، نوبت به بررسی شماتیک و اتصالات می رسد. قسمت بعد به این موضوع اختصاص دارد.

 


نصب کتابخانه TM1637


همانطور که اطلاع دارید، کتابخانه ها یکی از ابزارهای کلیدی و کاربردی در برنامه نویسی به شمار می روند. به کمک این ابزار، می توانیم توابع نوشته شده در فایلهایی به نام کتابخانه ذخیره کرده و سپس در پروژه های متعدد از آن استفاده کنیم.  همانطور که پیشتر گفته شد، برای راه اندازی و کار با ماژول TM1637 کتابخانه توسعه داده شده است. برای استفاده از این کتابخانه، ابتدا باید آن را نصب کنیم. برای نصب کتابخانه در محیط آردویینو، ابتدا مطابق تصویر زیر بر روی گزینه Tools و سپس Manage Libraries کلیک کنید.

اصول نصب کتابخانه در آردوینو - دیجی اسپارک

 

پس از کلیک بر روی گزینه Manage Libraries، در صفحه ظاهر شده، در قسمت کادر جستجو، عبارت SevenSegmentTM1637.h را جستجو نموده و کتابخانه مشخص شده در تصویر زیر را نصب نمایید.

نصب کتابخانه در ساخت ترازو دیجیتال آردوینو - دیجی اسپارک

 


اتصالات پروژه و PCB


پس از بررسی نقش قطعات در پروژه مولتی متر آردوینو، نوبت به شماتیک و اتصالات می رسد. ابتدا به تصویر زیر که فرم کلی اتصالات را نمایش می دهد، دقت کنید.

شماتیک پروژه مولتی متر آردوینو با acs712 - دیجی اسپارک

 

در ادامه فایل PCB پروژه مولتی متر آردوینو را مشاهده می کنید. این فایل در نرم افزار آلتیوم طراحی شده است.

فایل pcb در پروژه مولتی متر آردوینو - دیجی اسپارک

 

برای دانلود فایل PCB که تحت نرم افزار آلتیوم طراحی شده، می توانید روی این لینک کلیک کنید. همچنین فایل فوت پرینت آردوینو UNO با کلیک بر روی این لینک دانلود کنید.

 


کدهای پروژه مولتی متر آردوینو


پس از بررسی شماتیک و اتصالات، نوبت به کدهای پروژه مولتی متر آردوینو با ACS712 آن می رسد. این کدها را روی برد آردوینو UNO خود آپلود نمایید.

 

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

 

دسترسی کامل به آموزش برای اعضای دیجی اسپارک امکان پذیر است. بخش اصلی آموزش شامل سورس کدهای توسعه داده شده توسط مهندس‌های دیجی اسپارک است. به همین دلیل این آموزش خاص و یکتاست. برای استفاده از آن بایستی عضویت تهیه کنید. تبادل نظر با کاربران و پرسش سوال رایگان است و میتوانید از بخش نظرات همین آموزش اقدام کنید.

 


اجرای پروژه مولتی متر


پس از برقراری اتصالات و آپلود کدها، نوبت به اجرای پروژه مولتیمتر آردوینو می رسد. در این پروژه ولتاژ تا ۵۰ ولت و جریان تا ۵ آمپر قابل اندازه گیری است. جهت اندازه گیری ولتاژ، باید کلید شماره ۷ فشرده شود. در کنار این، جهت اندازه گیری جریان باید کلید شماره ۶ فشرده شود.

توجه: جهت اندازه گیری جریان، کابل مثبت تغذیه بار باید از ترمینال های سنسور جریان عبور نماید. به عبارت دیگر، یک طرف کابل مثبت تغذیه به یکی از ترمینال ها(فرقی در اتصال وجود ندارد) و کابل دیگر به دیگر ترمینال متصل گردد.

راه اندازی مولتی متر با آردوینو - دیجی اسپارک

 


تحلیل و بررسی کدهای پروژه


پس از اجرای پروژه، نوبت به تحلیل و بررسی کدهای آن می رسد؛ اما از آنجاییکه درون کدهای پروژه به صورت خط به خط کامنت(توضیح) درج شده،  در این پروژه دو تابع اصلی تعریف شده است. این دو تابع وظیفه خواندن و نمایش داده های روی نمایشگر را بر عهده دارند. یک تابع مقدار ولتاژ و تابع دیگر مقدار جریان را می خواند.

  • read_volt: خواندن ورودی آنالوگ، تبدیل معدل دیجیتال به آنالوگ، تبدیل تقسیم مقاومتی و نمایش آن روی نمایشگر
  • read_amp: خواندن ورودی آنالوگ، انجام تبدیلات لازم، نمایش روی نمایشگر

 


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


  1. آردوینو UNO
  2. نمایشگر TM137
  3. کلید
  4. سنسور جریان برق ACS712

 


جمع بندی


مولتی مترها یکی از مهم ترین و پرکاربردترین ابزارها در صنایع برق و الکترونیک به شمار می روند. مولتی مترها به قدری مهم و تاثیر گذارند که حکم آچار فرانسه در پروژه را بازی می کنند. در این آموزش به طراحی و پیاده سازی یک مولتی متر به کمک آردوینو پرداختیم. در این مولتی متر می توان ولتاژ DC تا ۵۰ ولت و جریان را تا ۵ آمپر اندازه گیری نماید. این مولتی متر دارای دو کلید جهت تعیین جریان و ولتاژ است. با انتخاب هر کلید، جریان و یا ولتاژ اندازه گیری شده روی نمایشگر سون سگمنت نمایش داده می شود.

 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

 

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

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

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

۲ دیدگاه

  • سلام خسته نباشید
    مدتی است که سایت را دنبال می کنم و تشکر می کنم از این همه زحمت که می کشید .
    من یک مهندس برق هستم ومدت شش ماه است که از مطالب شما استفاده می کنم واقعا به درد من خورده که سه تا از پروژه های شما را مو به مو با موفقیت اجرا کردم. خیلی مفید و کاربردی است.
    یک مشکلی پیدا کردم و نیاز پیدا کردم که اعداد خوانده شده از یک پتانسیومتر را با اعداد صفر تا صد روی سون سگمنت نشون بدم.یعنی هر ولت را ۲۰ درصد نشون بدم. با تشکر

    • سلام و از لطف و محبت شما ممنونم
      برای خواندن از روی پتانسیومتر، باید از ADC استفاده کنید. برای تبدیل ولتاژ به درصد، از تابع MAP استفاده کنید.