آموزش راه اندازی ماژول سنسور فشار و ارتفاع MPS20N0040D با آردوینو

فهرست مطالب

ویژگی های ماژول فشار و ارتفاع MPS20N0040D

ماژول سنسور فشار و ارتفاع MPS20N0040D یک سنسور فشار MPS20N0040D است که داده های ارتفاع را دریافت می کند و به آی سی HX710که یک مبدل ADC است، انتقال می دهد. از این ماژول جهت اندازی گیری فشار محیط و اختلاف فشار سطح مایعات مورد استفاده قرار می گیرد.
توجه:
این ماژول از ارتباط I2C استفاده نمی کند.

جهت دریافت دیتاشیت ماژول فشار و ارتفاع HX710 اینجا کلیک کنید.

معرفی پایه ها (Pinout) ماژول فشار و ارتفاع MPS20N0040D

ماژول فشار MPS20N0040D دارای 4 پایه به شرح زیر است:

  •  VIN: تغذیه ماژول – 3.3-5 ولت
  •  GND: زمین
  •  SCK: همزمان سازی ماژول و میکروکنترلر
  •  OUT: خروجی ماژول به صورت دیجیتال

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

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

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

آردوینو UNO R3 × 1
ماژول سنجش فشار هوا MPS20N0040D × 1
سیم جامپر نری به مادگی × 1

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

آردوینو IDE

راه اندازی ماژول فشار و ارتفاع MPS20N0040D با آردوینو

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

مطابق مدار زیر، ماژول را به آردوینو وصل کنید.

گام دوم: کد

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

https://github.com/queuetue/Q2-HX711-Arduino-Library

https://github.com/MajenkoLibraries/Average

توجه

اگر نیاز به راهنمایی بیشتر برای نصب کتابخانه بر روی آردوینو دارید، می توانید به آموزش نصب کتابخانه بر آردوینو مراجعه کنید.

کد زیر را روی برد آردوینوی خود آپلود کنید.
/*
  on Sep 21, 2020
  by MohammedDamirchi
  
Home
*/ #include <Q2HX711.h> #include <Average.h> const byte MPS_OUT_pin = 2; // OUT data pin const byte MPS_SCK_pin = 3; // clock data pin int avg_size = 10; // #pts to average over Q2HX711 MPS20N0040D(MPS_OUT_pin, MPS_SCK_pin); // start comm with the HX710B Average<long> ave(avg_size); void setup() { Serial.begin(9600); // start the serial port } void loop() { ave.push(MPS20N0040D.read()); Serial.println(ave.mean()); }

پس از آپلود کد در سریال مانیتور چیزی شبیه به تصویر زیر را مشاهده می کنید.

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

Comments (16)

  • reza Reply

    مقدار فشار بر حسب چی نمایش داده میشه؟؟

    می 24, 2021 at 11:34 ق.ظ
    • مهران ملکی Reply

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

      می 25, 2021 at 5:04 ب.ظ
  • محمد Reply

    سلام
    من این ماژول رو راه اندازی کردم ولی همیشه دو بیت پر ارزش از 24 بیتش یک هستش و خروجی من زیاد تغییر نمیکنه
    برای راه اندازی با میکروی st چه باید کنم؟

    آگوست 2, 2021 at 12:20 ب.ظ
    • مهران ملکی Reply

      سلام
      خروجی این سنسور همونطور که تو کامنت قبلی به تفصیل بیان شده، یک عدد صحیحه که لازمه بسته به محیط مورد استفاده، کالیبراسیون توسط خودتون انجام بگیره. و اینکه 2 بیت آخر از 24 بیت تغییر نمیکنن مساله مهمی نیست. یک بودن اون 2 بیت هم اون هم که بخاطر اینه که در همه جا فشار جو وجود داره و برای اینکه اون 2 بیت هم صفر بشن باید تو یه محیط با فشار هوای خیلی کم قرار بگیرید.
      برای راه‌اندازی با میکرو st هم میتونید از همین کد استفاده کنید. صرفا بر اساس مدل میکروتون و دیتاشیت اون لازمه که در کد شماره پایه‌هارو به درستی تنظیم کنید. و همچنین باید برد stm رو روی نرم‌افزار آردوینو نصب کنید. برای این کار میتونید از آموزش زیر استفاده کنید: “https://www.instructables.com/Getting-Started-With-Stm32-Using-Arduino-IDE/”
      همچنین به یک پروگرمر st-link برای ارتباط بین میکروکنترلر و PC نیاز دارید. میتونید از لینک‌های زیر نمونه‌هایی از این پروگرمرهارو ببینید:
      “https://thecaferobot.com/store/st-link-v2-stm8-stm32-programmer-debugger-jtag”
      “https://thecaferobot.com/store/st-link-v2-programmer-stm8-stm32”

      آگوست 3, 2021 at 10:08 ق.ظ
  • پرستو Reply

    سلام خسته نباشید ممنون از مطالب مفیدتون خواستم ببینم این پروژه فشار خون را با آردینیو راه اندازی کردین میشه دستورات برنامه را با avr بسکام تبدیل کرد و پروگرام کرد ممنون میشم جواب بدین

    مارس 2, 2022 at 12:11 ب.ظ
    • مهران ملکی Reply

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

      مارس 2, 2022 at 3:49 ب.ظ
  • آرمین Reply

    سلام
    من ماژول رو با اردویینو راه اندازی کردم مشکلی که دارم اینه که فشار محفظه رو از یه حد که بیشتر میکنم فشاری که نشون میده خط ثابت هست ( فشاری که وارد میشه کمتر از 40Kpa است )
    کسی میتونه راهنمایی کنه مشکل چی هست ؟

    آگوست 5, 2023 at 9:01 ق.ظ
    • محمد دمیرچی Reply

      فشاری که وارد میکنید در چه عددی خط صاف می شود؟؟

      آگوست 5, 2023 at 12:37 ب.ظ
      • آرمین Reply

        حدودا 8360000

        آگوست 7, 2023 at 2:38 ب.ظ
        • محمد دمیرچی Reply

          دوست عزیز این عددی که ارسال کردید بر اساس چه واحدی می باشد. اگر پاسکال اعلام کرده اید می شود 8.36Mpa که از رنج اندازه گیری میزند بالا.
          اگر بر اساس mHg هم قرار بدهیم 0.1Gpa میشه.
          در هر واحدی که قرار میدهم بالای 40 Kpa می شود.
          همچنین فشار را با چه چیزی اندازه گیری میکنید؟؟ منظور رفرنس اندازه گیری شما می باشد.

          آگوست 8, 2023 at 10:09 ق.ظ
          • آرمين

            مشكل همينه
            سنسور ديگه اي نداشتيم كه مقداراش با اون مقايسه كنيم كه ببينيم رو چه واحديه
            عملكردش اينجوري بود
            كه فشار يه محفظه رو با پمپ هوا تغيير ميداديم
            از يه حدي كه ميگذشت، خروجي بيشتر از ٨٣٦٠٠٠٠ نميشد ولي فشار اون محفظه بيشتر ميشد
            انگار به يه حالت اشباع رسيده بود

            آگوست 8, 2023 at 11:14 ب.ظ
          • محمد دمیرچی

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

            آگوست 9, 2023 at 9:28 ق.ظ
  • ‌‌Mehrzad Reply

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

    ژانویه 5, 2024 at 8:47 ق.ظ
    • محمد دمیرچی Reply

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

      ژانویه 6, 2024 at 10:54 ق.ظ
  • احسان Reply

    این سنسور فقط تا 11 کیلو پاسکال نشان میدهد یا 90 میلی متر جیوه
    الکی پول خرج نکنید.
    من تست گرفتم.. و مشکلی که دوستان اشاره کردن بررسی کردم. با یک فشار سنج مرجع همزمان تست گرفتم. نهایت تا 11 کیلو پاسکال بعد عدد ثابت میشه
    تشکر

    ژانویه 6, 2024 at 4:20 ب.ظ
  • ابراهیم Reply

    این سنسور اگر گینش رو میشد از 128 به 64 یا 32 تغییر داد درست کار میکرد. ولی باتوجه به اینکه HX710 گین ثابت داره بنابراین به اشباع میره. اگر از HX711 میشد استفاده کرد و ماژولی براش طراحی کرد این مشکل حل میشه

    فوریه 14, 2024 at 12:42 ب.ظ

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

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