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

طراحی و پیاده سازی ترازو دیجیتال با سنسور Load cell و برد آردوینو

create-weight-Balancer-with-arduino-and-load-cell-sensor-digispark
نوشته شده توسط معین صابری

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

 


عملکرد پروژه ترازو دیجیتال


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

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

 


 سنسور لودسل و مبدل HX711


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

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

 

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

 


برد آردوینو UNO


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

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

 

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

 


نمایشگر TM1637


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

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

 

نمایشگرهای سون سگمنت دارای کابل های زیادی هستند. از این رو اتصال آن به آردوینو سبب اشغال شدن بسیاری از پایه ها خواهد شد. برای حل این مشکل، نمایشگر TM1637 یک راه حل خلاقانه ارایه داده است. این نمایشگر دارای ارتباط I2C است. بدین ترتیب شما از طریق تنها ۲ پایه، می توانید ۴ سگمنت را کنترل نمایید. از این گذشته، جهت راه اندازی و کار با این نمایشگر جادویی کتابخانه تحت آردوینو توسعه یافته که روال کار را بسیار ساده می کند. در قسمت بعد به نصب دو کتابخانه، یکی نمایشگر TM1637 و دیگری ماژول مبدل HX711 خواهیم پرداخت.

 


نصب کتابخانه های مورد نیاز


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

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

 

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

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

 

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

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

 


 شماتیک و اتصالات پروژه


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

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

 

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

 


اتصالات سنسور لود سل


  • اتصال کابل قرمز سنسور  به پایه  E+ ماژول HX711
  • اتصال کابل مشکی به پایه E- ماژول HX711
  • اتصال کابل سبز به پایه A+ ماژول HX711
  • اتصال کابل سفید به پایه A- ماژول HX711
  • اتصال پایه VCC ماژول HX711 به پایه ۵ ولت آردوینو
  • اتصال پایه GND ماژول HX711 به پایه GND آردوینو
  • اتصال پایه DT ماژول HX711 به پایه شماره ۲ آردوینو
  • اتصال پایه SCK ماژول HX711 به پایه ۳ آردوینو

 


اتصالات نمایشگر


  •  اتصال پایه VCC نمایشگر به پایه ۳٫۳ آردوینو
  • اتصال پایه GND نمایشگر به پایه GND آردوینو
  • اتصال پایه CLK نمایشگر به پایه ۴ آردوینو
  • اتصال پایه DIO نمایشگر به پایه ۵ آردوینو

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

 


کدهای پروژه ترازو دیجیتال


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

 

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

 

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

 


اجرای پروژه ترازو دیجیتال


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

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

 

حال می توانید با قرار دادن اجسام روی سنسور، جرم آن ها را اندازه گیری کنید.

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

برای اندازه گیری صحیح، لطفا به نکات زیر دقت کنید.

  • به محض مشاهده عبارت INIT روی نمایشگر، وزنه یک کیلوگرمی را قرار دهید. این وزنه را بدون تاخیر می بایست بر روی سنسور قرار داده شود. توجه داشته باشید که به هیچ وجه این وزنه پیش از نمایش عبارت INIT روی سنسور قرار نگیرد.
  • برای قرارگیری وزنه ها، به شکل زیر عمل کنید. وزنه ها می بایست مطابق علامت مشخص شده روی سنسور قرار گیرند.

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

 


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


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

calibrate_scale

تابع فوق نقش کالیبراسیون سنسور لودسل را بر عهده دارد. پس از این، به کمک تابع زیر می توانیم جرم جسم را اندازه بگیریم.

scale.get_units(10)

در نهایت به کمک تابع print، داده ها را روی نمایشگر نمایش می دهد.

 


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


کیت ترازو دیجیتال

 


جمع بندی


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

 

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

 

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

معین صابری

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

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

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

۹ دیدگاه