ویژگی های ماژول فشار و ارتفاع MPS20N0040D
ماژول سنسور فشار و ارتفاع MPS20N0040D یک سنسور فشار MPS20N0040D است که داده های ارتفاع را دریافت می کند و به آی سی HX710که یک مبدل ADC است، انتقال می دهد. از این ماژول جهت اندازی گیری فشار محیط و اختلاف فشار سطح مایعات مورد استفاده قرار می گیرد.
توجه:
این ماژول از ارتباط I2C استفاده نمی کند.
جهت دریافت دیتاشیت ماژول فشار و ارتفاع HX710 اینجا کلیک کنید.
MPS20N0040D Pressure Module Datasheet
1 file(s) 117.81 KB
معرفی پایه ها (Pinout) ماژول فشار و ارتفاع MPS20N0040D
ماژول فشار MPS20N0040D دارای 4 پایه به شرح زیر است:
- VIN: تغذیه ماژول – 3.3-5 ولت
- GND: زمین
- SCK: همزمان سازی ماژول و میکروکنترلر
- OUT: خروجی ماژول به صورت دیجیتال
پین اوت (Pinout) این ماژول را می توانید در تصویر زیر مشاهده کنید.
لوازمی که به آن احتیاج دارید
قطعات مورد نیاز
نرم افزارهای مورد نیاز
راه اندازی ماژول فشار و ارتفاع MPS20N0040D با آردوینو
گام اول: سیم بندی
مطابق مدار زیر، ماژول را به آردوینو وصل کنید.
گام دوم: کد
ابتدا کتابخانه زیر را بر آردوینوی خود نصب کنید.
توجه
اگر نیاز به راهنمایی بیشتر برای نصب کتابخانه بر روی آردوینو دارید، می توانید به آموزش نصب کتابخانه بر آردوینو مراجعه کنید.
کد زیر را روی برد آردوینوی خود آپلود کنید.
/*
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)
مقدار فشار بر حسب چی نمایش داده میشه؟؟
سلام
خروجی HX711 یک عدد صحیح است. در نتیجه خروجی کد میانگین 10 عدد صحیح قبلی است. در واقع واحد خروجی پاسکال نیست. برای محاسبه دقیق فشار، ماژول باید در ناحیهای که قراره استفاده بشه، کالیبره بشه. و برای کالیبراسیون، میتوانید این مراحل را دنبال کنید: ابتدا به مکانی بروید که از قبل فشار آن را بدانید، سپس از این ماژول با کد داده شده استفاده کرده و خروجی آن را بنویسید. سپس میتونید با استفاده از تناسب، فشار مکانهای مختلف را محاسبه کنید.
چیزی که در واقع باید انجام بدید اینه که خروجی سنسور را در مکانی محاسبه کنید که از قبل فشار رو بدونید. و از اون به عنوان مرجع در تبدیل خروجی سنسور به KPa استفاده کنید.
سلام
من این ماژول رو راه اندازی کردم ولی همیشه دو بیت پر ارزش از 24 بیتش یک هستش و خروجی من زیاد تغییر نمیکنه
برای راه اندازی با میکروی st چه باید کنم؟
سلام
خروجی این سنسور همونطور که تو کامنت قبلی به تفصیل بیان شده، یک عدد صحیحه که لازمه بسته به محیط مورد استفاده، کالیبراسیون توسط خودتون انجام بگیره. و اینکه 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”
سلام خسته نباشید ممنون از مطالب مفیدتون خواستم ببینم این پروژه فشار خون را با آردینیو راه اندازی کردین میشه دستورات برنامه را با avr بسکام تبدیل کرد و پروگرام کرد ممنون میشم جواب بدین
سلام.
دستورات و کتابخونه ای که استفاده شده مخصوص نرم افزار آردوینو IDE هست و تو نرم افزارهای دیگه از جمله avr بسکام الزاما درست کار نمیکنه. اما شما میتونید انواع میکروکنترلرهای avr مختلف رو با نرم افزار آردوینو و همین کد برنامه نویسی کنید.
سلام
من ماژول رو با اردویینو راه اندازی کردم مشکلی که دارم اینه که فشار محفظه رو از یه حد که بیشتر میکنم فشاری که نشون میده خط ثابت هست ( فشاری که وارد میشه کمتر از 40Kpa است )
کسی میتونه راهنمایی کنه مشکل چی هست ؟
فشاری که وارد میکنید در چه عددی خط صاف می شود؟؟
حدودا 8360000
دوست عزیز این عددی که ارسال کردید بر اساس چه واحدی می باشد. اگر پاسکال اعلام کرده اید می شود 8.36Mpa که از رنج اندازه گیری میزند بالا.
اگر بر اساس mHg هم قرار بدهیم 0.1Gpa میشه.
در هر واحدی که قرار میدهم بالای 40 Kpa می شود.
همچنین فشار را با چه چیزی اندازه گیری میکنید؟؟ منظور رفرنس اندازه گیری شما می باشد.
مشكل همينه
سنسور ديگه اي نداشتيم كه مقداراش با اون مقايسه كنيم كه ببينيم رو چه واحديه
عملكردش اينجوري بود
كه فشار يه محفظه رو با پمپ هوا تغيير ميداديم
از يه حدي كه ميگذشت، خروجي بيشتر از ٨٣٦٠٠٠٠ نميشد ولي فشار اون محفظه بيشتر ميشد
انگار به يه حالت اشباع رسيده بود
خروجی این سنسور به این عدد میرسد؟؟ باز هم اعلام نکردید که واحدتون چه چیزی هست؟؟ یعنی کد را عوض کردید یا خیر؟؟
جدا از این موضوع شما یک گیج ندارید که ببینید که چه فشاری رو وارد محفظه میکنید؟؟
بنده میخوام بدانم با یک سنسور استاندارد یا گیج استاندارد ندارید بدانید چه فشاری وارد محفظه کرده اید.
در یک ویدیو دیدم که شخصی روی سنسور این ماژول یک شلنگ متصل کرد. و آن سمت شلنگ هم به یک پمپ هوای کوچک نصب بود. و از این طریق میزان فشار پمپ رو اندازهگیری میکرد. ویدیو آموزشی نبود و فقط داشت اجرا میکرد. آیا این امکان با این سنسور وجود داره؟ زیرا من میخواهم میزان فشار هوای خروجی که از طریق نازلِ دسته هیتر خارج میشه رو اندازه بگیرم با اتصال یک شلنگ مابین نازل و این سنسور.
با سلام
این سنسور فشار هوا را می تواند اندازه گیری کند، برای مورد شما نیز باید ببینید که در رنج فشار هوایی که این سنسور اندازه گیری میکند هست یا خیر،
خارج از این موضوع دما هوا نیز شرط می باشد و خروجی هیتر داغ می باشد. در صورتی که از هیتر های معمولی دارید فکر میکنم بتوانید از داخل دستگاه بقل پمپ که دما خنک می باشد اندازه گیری را انجام بدهید.
این سنسور فقط تا 11 کیلو پاسکال نشان میدهد یا 90 میلی متر جیوه
الکی پول خرج نکنید.
من تست گرفتم.. و مشکلی که دوستان اشاره کردن بررسی کردم. با یک فشار سنج مرجع همزمان تست گرفتم. نهایت تا 11 کیلو پاسکال بعد عدد ثابت میشه
تشکر
این سنسور اگر گینش رو میشد از 128 به 64 یا 32 تغییر داد درست کار میکرد. ولی باتوجه به اینکه HX710 گین ثابت داره بنابراین به اشباع میره. اگر از HX711 میشد استفاده کرد و ماژولی براش طراحی کرد این مشکل حل میشه