اندازه گیری دما – فشار و ارتفاع از سطح دریا با ماژول BMP180 و آردوینو

اندازه گیری دما – فشار و ارتفاع از سطح دریا

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

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

بعد قبل
اندازه گیری دما - فشار و ارتفاع از سطح دریا با ماژول BMP180 و آردوینو
اندازه گیری دما - فشار و ارتفاع از سطح دریا با ماژول BMP180 و آردوینو
اندازه گیری دما - فشار و ارتفاع از سطح دریا با ماژول BMP180 و آردوینو

اندازه گیری دما - فشار و ارتفاع از سطح دریا با ماژول BMP180 و آردوینو
بعد قبل

ماژول اندازه گیری دما، فشار و ارتفاع از سطح دریا BMP180

ماژول BMP180 در حقیقت یک ماژول فشارسنج حرفه ای در ابعاد کوچکتر از یک سکه می باشد که به شما این امکان را می دهد فشار هوا در بازه 300 الی 1100 هکتوپاسکال را با دقت 0.03hP/0.25m اندازه گیری کنید. همچنین توسط ماژول فشار سنج BMP180 می توانید ارتفاع منفی 500 متر پایین تر از سطح دریا الی مثبت 9000 متر بالاتر از سطح دریا را اندازه گیری کنید. صبر کنید، هنوز تمام نشده! این ماژول فوق العاده با اندازه کوچکش می تواند علاوه بر اندازه گیری فشار و اندازه ارتفاع از سطح دریا دمای هوا در محدوده منفی 40 درجه سانتی گراد الی مثبت 80 درجه سانتی گراد را نیز اندازه گیری کند.

ماژول فشارسنج BMP180 از پروتکل ارتباطی I2C برای ارتباط با سایر دستگاه ها استفاده می کند، همچنین این ماژول فشار سنج را می توان با ولتاژ 1.8 الی 3.6 ولت راه اندازی کرد، لازم به ذکر است جریان مصرفی این ماژول فشارسنج حیرت آور است، ماژول فشارسنج BMP180 در هر بار نمونه برداری تنها 5uA میکرو آمپر جریان مصرف می کند.

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

برد آردوینو Arduino UNO R3 مدل DIP1 عدد
ماژول فشار بارومتریک مدل GY-68 BMP1801 عدد
LCD کاراکتری مدل 16×2 با Backlighting آبی1 عدد
تک سوئیچ 2 پایه DIP سایز 6x6x5 میلیمتر1 عدد
برد بورد (پروجکت برد) مدل GL1 عدد
سیم جامپر برد بوردی مدل دو سر نری (سری 40تایی)1 عدد

توضیحات ساخت مدار پروژه

برای آزمایش مدار و شروع برنامه نویسی ابتدا لازم است سخت افزار پروژه بسته شود، به همین خاطر ابتدا طبق نقشه شماتیک زیر، ال.سی.دی کاراکتری و ماژول فشار سنج BMP180 را به برد آردوینو Arduino Uno اتصال دهید. همچنین در ادامه می توانید فیلم آموزشی و توضیحات بیشتری در رابطه با نحوه اتصال LCD کاراکتری و ماژول فشارسنج به برد آردوینو مشاهده کنید.

نحوه اتصال ماژول فشارسنج BMP180 و آردوینو

نحوه اتصال LCD کاراکتری به برد آردوینو

نحوه اتصال LCD کاراکتری به برد آردوینو

نحوه اتصال ماژول فشارسنج BMP180 به برد Arduino

ماژول فشار سنج BMP180 به صورت کلی دارای 4 پایه است، که در این پروژه برای اتصال آن به برد آردوینو کافی است طبق جدول زیر اتصالات را انجام دهید. همچنین لازم به ذکر است در این پروژه به دلیل اینکه از ارتباط I2C برای اتصال ماژول فشار سنج به برد آردوینو استفاده کرده ایم، در صورتیکه از سایر مدل های بردهای Arduino استفاده می کنید، تنها لازم است دو پایه SCL و SDA ماژول فشارسنج را به دو پایه SDA و SCL برد آردوینو خود متصل کنید.

نحوه اتصال ماژول فشارسنج BMP180 به برد Arduino

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

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

نکته مهم در برنامه نویسی راه اندازی ماژول فشارسنج BMP180

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

1- ابتدا وارد سایت هواشناسی به آدرس www.accuweather.com/fa شوید.

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

3- مقدار فشار در منطقه خود را کپی کنید و سپس در خط دهم برنامه در متغیر weather بجای عدد صفر بچسبانید.

ویدئو آموزش راه اندازی ماژول فشارسنج BMP180 با برد آردوینو

 اطلاعات پروژه

 رمز فایل : www.electronics98.com

 حجم فایل : 234 کیلوبایت

 محیط برنامه نویسی : Arduino (IDE)

 برنامه نویسی شده به زبان : ترکیبی از برنامه نویسی به زبان سی (C) یا سی پلاس پلاس (++C)

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 23 می 2019

26 دیدگاه

  1. سلام خسته نباشید
    میخواستم بدونم میشه به سنسور دماش برای وقتی دما تا یه حدی بالا رفت به یک فن وصل بشه و فن فعال بشه؟
    اگه امکانش هست میشه برنامه نویسی این قسمت رو بهم راهنمایی کنین برای پروژم میخواستم ممنون میشم

  2. سلام دوست عزیز
    بله به راحتی می توانید اینکار را انجام دهید، برای این منظور کافی است در حلقه setup() برنامه یک پایه آزاد در آردوینو را به عنوان خروجی تعریف نمائید و سپس در حلقه loop() برنامه دقیقا بعد از دستور temp = bmp.readTemperature (); که در خط 46 برنامه قرار گرفته است یک شرط تعریف کنید که اگر دما (متغیر temp) بیشتر از عدد مورد نظر شما شد، پایه خروجی تعریف شده یک شود و در غیر اینصورت آن پایه برابر صفر گردد.

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

  4. توسعه یک پروژه کاملا به عهده خود شخص می باشد چراکه ما فرصت کافی برای توسعه یک پروژه بنا به نیاز هر شخص را نداریم. اما با وجود این سعی میکنیم شما را تا جای ممکن راهنمایی کنیم.
    ابتدا قطعه کد زیر را در حلقه Setup دقیقا بعد از دستور خط 16 قرار دهید، لطفا توجه داشته باشید در دستور زیر ما پایه شماره 2 آردوینو را به عنوان خروجی تعریف کرده ایم که شما می توانید یک رله به آن متصل کنید و وسیله برقی مورد نظر خود را کنترل کنید:

    و سپس در زیر برنامه Loop دقیقا بعد از دستور قرار گرفته در خط 46 برنامه دستور زیر را قرار دهید، شما می توانید در دستور زیر به جای عدد 28 دمای مورد نظر خود را وارد نمائید.

    سپس برنامه را دوباره کامپایل کنید و بر روی برد آردوینو پروگرام کنید.

  5. خیلی خیلی ممنونم واقعا دستتون درد نکنه
    چون متاسفانه هیچ سر رشته ای نداشتم از آردوینو واقعا نمیدونستم چیکار کنم
    ممنونم از راهنماییتون D:

  6. سلام
    میگم رله چه نوعی باید استفاده کنم؟
    حداکثر ولتاژ خروجی پایه ۲ دوونیم ولت
    از پایه ۲ به مثبت رله و منفی رله به زمین و خروجی به فن وصل میشه؟

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

  8. خیلی ممنون
    فقط یه سوال دیگه باید از منبع جداگانه استفاده‌کنم درسته؟
    و نوع رله دوازده ولت معمولی یه ماژول رله دوازده ولت؟
    ببخشید خیلی سوال میکنم

  9. از یک منبع تغذیه 12 ولتی استفاده کنید و با استفاده از یک رگولاتور 7805 ولتاژ را برای برد آردوینو و سایر مدارات به سطح 5 ولت برسانید و یا اینکه از دو منبع تغذیه استفاده کنید و منفی هر دو منبع تغذیه را مشترک کنید. لطفا توجه داشته باشید در صورتیکه از یک رله 5 ولتی استفاده کنید دیگر نیازی به استفاده از تغذیه 12 ولتی نیست و به راحتی با همان ولتاژ 5 ولت برد آردوینو راه اندازی می شود.
    همچنین برای رله می توانید از یک رله 12 ولتی معمولی استفاده کنید و یا اینکه از ماژول های رله آماده که برای آردوینو طراحی شده اند بهره ببرید.

  10. خیلی ممنون از راهنماییتون
    وردوی فن رو باید از قسمت نرمالی اوپن رله بگیرم درسته؟

  11. بله – اگر فن شما 220 ولت AC است، باید سیم نول را به صورت مستقیم به فن بدهید و سپس سیم فاز را به پایه COM رله و از پایه NO (نرمال باز) به فن بدهید.

  12. واقعا خیلی ممنونم

  13. سلام خسته نباشید
    یه سوال دیگه دارم
    ماژول رله استفاده کردم که فعال low و بر عکس کردم high و low رو فقط یه مشکلی دارم اینکه فن که بهش وصل میکنم تا قبل نمایش دما رله فعاله و فن روشن
    چکاری باید انجام بدم که در هنگام راه اندازی مدار فن خاموش بمونه و وقتی دما بالا رفت روشن بشه؟

  14. سلام دوست عزیز
    برای حل این موضوع کافی است، کدی که در پاسخ قبلی برای شما قرار دادم و قرار بود بعد از خط 16 قرار دهید به شکل زیر تغییر دهید:

  15. خیلی خیلی ممنون بابت کمکتون

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

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

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