آموزش رزبری پای رزبری پای

راه اندازی سنسور دما و فشار سنج BMP280 با رزبری پای Raspberry Pi

نوشته شده توسط پریسا پوربلورچیان

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

 


سنسور BMP280


سنسور BMP280 قابلیت اندازه گیری دما، فشار و ارتفاع دارد. ماژول BMP280 از جمله ماژول های حسگر الکترونیکی numerous electronic است که همزمان میتواند چندین پارامتر را تشخیص داده و نمایش دهد. بر روی ماژول سنسور نقره ای رنگ  GY-BM E/P 280 قرار گرفته شده است که پارامترهای محیطی را همانند نسخه اصلی آن اندازه گیری کرده و دیتا را ارسال می‌کند. این سنسور فشار را در بازه ۳۰۰ تا ۱۱۰۰ اندازه گیری کرده و رنج دمای اندازه گیری بین  – ۴۰ تا + ۸۵ درجه سانتی گراد است. دقت اندازه گیری فشار  ±۱ hPa است. متوسط جریان مصرفی ۲٫۷۴ µA و در حالت Sleep mode برابر با ۰٫۱ µA است. رزولوشن برای اندازه گیری فشار  ۰٫۰۱ hPa و برای دما ۰٫۰۱ درجه سانتی گراد است. ولتاژ کاری ماژول ۳٫۳ تا ۵ ولت DC است. این ماژول توان مصرفی کم، قیمت بسیار مناسب و سنسور آن مناسب استفاده در ساخت گجت های مختلف جهت اندازه گیری فشار و دما است. سنسور BMP280 یک قابلیت منحصر به فرد دارد و آن فشار و ارتفاع است که توسط این تراشه اندازه گیری می‌شود. پاسکال Pa واحد اندازه گیری فشار است که در فیزیک به تعریف اصولی نیروی وارد بر سطح با آن آشنا شدیم. واحد اندازه گیری فشار هوا در هواشناسی و سطح آب هکتوپاسکال و یا میلی بار است که به صورت hPa نوشته می‎‌شود و معادل ۱۰۰ پاسکال است. فشار اتمسفری که در هوا وجود دارد برابر با ۱۰۱۳۲۵ Pa و یا معادل ۷۶ سانتی متر جیوه است. در نظر داشته باشید چگالی هوا با افزایش ارتفاع کاهش می‌یابد که مشخصه ای از فشار هوا است. با تغییر دما و رطویت چگالی هوا هم تغییر می‌کند. hpa نرمال در سطح دریا بر واحد MSL برابر با ۱۰۱۳٫۲۵ hPa یا ۲۹٫۹۲ اینچ جیوه است. در اندازه گیری ارتفاع انتخاب مبدا بسیار مهم است. به صورت پیش فرض در یک محیط بسته میتوانیم مبدا را سقف در نظر بگیریم که در این حالت در صورتیکه شی مورد نظر پایین تر از سقف باشد، ارتفاع منفی در نظر گرفته می‌شود و بالعکس!

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

 

آموزش و راه اندازی سنسور فشار BMP280 - دیجی اسپارک

 


رزبری پای Raspberry Pi


برد رزبری پای Raspberry Pi تا الان که در سال ۲۰۲۰ هستیم نسخه ۴ و برد Raspberry Pi 400 را معرفی کرده است و تغییرات اساسی در هر نسخه لحاظ کرده است. یکی از بردهای کاربردی و کوچک خانواده رزبری پای برد رزبری پای APlus است که با ظاهری بسیار متفاوت در سال ۲۰۱۸ معرفی شد. برد رزبری پای در پایه های GPIO همیشه یکسان است و هیچ زمان تفاوتی در عملکرد این پایه ها رخ نداده است. انتخاب نوع رزبری پای در تمامی پروژه های سایت دلخواه است و سازگاری دارد. کافیست طبق آموزش اتصالات را انجام دهید. در ادامه تصویر GPIO جهت برقراری اتصالات قرار گرفته شده است.

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

 

در این آموزش از رزبری پای ۳ مدل A Plus استفاده شده است. برخی از ویژگی های این برد در ادامه ضمیمه شده است.

  •  دارای پردازنده BCM2837B0, Cortex-A5
  • دارای حافظه داخلی  ۵۱۲MB
  • دارای پردازنده با فرکانس۲٫۴GHz
  • دارای بلوتوث Bluetooth
  • دارای وای فای  ۵GHz IEEE 802.11.b/g/n/ac wireless LAN
  • دارای ۴۰ پایه GPIO

 

برد رزبری پای Raspberry Pi A+ - دیجی اسپارک

 


اتصال سنسور BMP280 با I2C به رزبری پای


ماژول BMP280 دارای ۶ پایه است که برای ارتباط I2C فقط از چهار پایه آن استفاده خواهیم کرد.

  • پایه VCC به پایه ۳٫۳ یا ۵ ولت برد رزبری پای متصل می‌شود.
  • پایه GND به پایه Ground برد رزبری پای متصل می‌شود.
  • پایه SCL به پایه GPIO3 برد رزبری پای متصل می‌شود.
  • پایه SDA به پایه GPIO2 برد رزبری پای متصل می‌شود.

 

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

 

اتصال سنسور BMP280 با I2C به رزبری پای A+ - دیجی اسپارک

 


اتصال سنسور BMP280 با SPI به رزبری پای


ماژول BMP280 دارای ۶ پایه است که برای ارتباط SPI از تمامی ۶ پایه استفاده خواهیم کرد.

  • پایه VCC به پایه ۳٫۳ یا ۵ ولت برد رزبری پای متصل می‌شود.
  • پایه GND به پایه Ground برد رزبری پای متصل می‌شود.
  • پایه MOSI= SDA به پایه GPIO10 برد رزبری پای متصل می‌شود.
  • پایه MISO=SDO به پایه GPIO9 برد رزبری پای متصل می‌شود.
  • پایه SCL = SCK به پایه GPIO11 برد رزبری پای متصل می‌شود.
  • پایه SCB = SS به پایه GPIO5 و یا هر پایه GPIO آزاد برد رزبری پای متصل می‌شود.

جدول اتصالات ماژول BMP280 با SPI به برد رزبری پای - دیجی اسپارک

 

 


نصب پکیج BMP280


سنسور BMP280 مناسب اندازه گیری دمای محیط Ambient Temperature، اندازه گیری فشار بارومتریک barometric pressure و به صورت کلی برای اندازه گیری پارامتری های هوا Weather مناسب است. برای نصب کتابخانه از Pypi استفاده می‌کنیم که مخفف The python package index است و مخزنی از نرم افزارها برای نرم افزارهای پایتون است. Pypi به شما کمک می کند تا نرم افزار توسعه یافته و به اشتراک گذاشته شده توسط انجمن پایتون را پیدا و نصب کنید.

 

اتصال سنسور BMP280 با رابط SPI به برد رزبری پای - دیجی اسپارک

از منو رزبین ترمینال را باز کرده و کامند زیر را وارد کنید.

نصب پکیج BMP280 در رزبری پای - دیجی اسپارک

در مرحله بعد آخرین کتابخانه توسعه یافته در Github را فراخوانی می‌کنیم.

نصب کتابخانه مورد نیاز BMP از گیت هاب در رزبری پای - دیجی اسپارک

پس از نصب پکیج به ترتیب کامندهای زیر را نصب کنید.

نصب پکیج BMP280 سیستم عامل رزبین - دیجی اسپارک

 python temperature-and-pressure.py - دیجی اسپارک

برای دریافت دیتا در مرحله آخر حتما اتصالات را برقرار کنید. همانطور که در تصویر مشاهده می‌کنید پس از وارد کردن کامند python temperature-and-pressure.py دیتا نمایش داده شده است.

  • عدد ۲۴٫۵۱ درجه سانتی گراد دمای محیط Ambient Temperature است.
  • عدد ۸۴۰٫۳۱hPa فشار بارومتریک Barometric Pressure است.

هر دو دیتا به صورت همزمان و در لحظه ارسال شده و نمایش داده می‌شود.

نمایش دما و فشار هوا در پایتون با سنسور BMP280 - دیجی اسپارک

 


کد پایتون BMP280 اندازه گیری فشار و دما


کد پایتون BMP280 دما و فشار سنسور را اندازه گیری کرده و نمایش میدهد. برای اجرای این کد از نرم افزار های پیش فرض پایتون که بر روی OS نصب است میتوانید استفاده کنید. در این بخش من از نرم افزار Thonny استفاده کرده ام.

اجرای کد پایتون BMP280 اندازه گیری فشار و دما - دیجی اسپارک

از پروتکل SMBUS برای برقراری ارتباط بین جهت انتقال دیتا بین داده ها استفاده می‌شود. در ماژول هایی با رابط I2C از این پروتکل برای انتقال داده استفاده شده است.

از دو تابع زیر برای دریافت دیتای دما و دیتای فشار استفاده شده است.

 به همین ترییب کد برنامه آماده است و میتوانید با فراخوانی آن را اجرا و استفاده کنید.

 


کد پایتون اندازه گیری ارتفاع نسبی


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

کد پایتون اندازه گیری ارتفاع نسبی در رزبری پای - دیجی اسپارک

 

 

کد پایتون اندازه گیری ارتفاع نسبی با سنسور BMP280 - دیجی اسپارک

طبق فرمول زیر ارتفاع بر اساس فشار اندازه گیری شده و نمایش داده می‌شود.

 

 

 


اندازه گیری دما به صورت مستقل


جهت اندازه گیری دما کامند زیر را اجرا کنید.

 

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

 


جمع بندی لیدی پای


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

 

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

 


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


برد رزبری پای Raspberry 

سنسور دما فشار سنج BMP280

کابل فلت 

 

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

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

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