فشار در واقع نیرویی است که بر یک جسم در واحد سطح اعمال می شود. ما معمولاً فشار مایعات، هوا و سایر گازها را اندازه گیری می کنیم.
واحد استاندارد فشار “پاسکال” است که معادل یک “نیوتن در هر متر مربع” میباشد.
یک سنسور فشار به سادگی این فشار را کنترل می کند و می تواند آن را در یکی از چندین واحد شناخته شده در سراسر جهان نمایش دهد. واحدهای فشار در سراسر جهان معمولاً عبارتند از «پاسکال»، «bar» و «PSI» (پوند بر اینچ مربع).
به طور خلاصه، یک سنسور فشار، فشار را به یک سیگنال الکتریکی کوچک تبدیل می کند که ارسال و نمایش داده می شود. به همین دلیل معمولاً به آنها ترانسمیتر فشار نیز گفته می شود. دو سیگنال رایج که در سنسورهای فشار استفاده می شود سیگنال 4 تا 20 میلی آمپر و سیگنال 0 تا 5 ولت است.
اکثر سنسورهای فشار با استفاده از اثر پیزوالکتریک کار می کنند. اثر پیزو الکترونیک زمانی رخ میدهد که یک ماده در پاسخ به تنش، بار الکتریکی ایجاد می کند. این تنش معمولاً از نوع فشار است اما می تواند پیچ خوردگی، خمیده شدن یا ارتعاش نیز باشد. سنسور فشار می تواند با اندازه گیری این بار الکتریکی میزان فشار را تعیین کند.
سنسورهای فشار باید کالیبره شوند تا بدانند چه ولتاژ یا سیگنال میلی آمپر (mA) با چه فشاری مطابقت دارد.
به طور کلی سه نوع متداول وجود دارد که ما در صنعت استفاده می کنیم: سنسور فشار گیج، سنسور فشار مطلق و سنسور فشار دیفرانسیلی.
سنسور رطوبت دستگاهی است که رطوبت هوا را تشخیص داده، اندازه می گیرد و گزارش می دهد به بیان دیگر این سنسور مقدار بخار آب موجود در هوا یا سایر گازها را تعیین می کند. سنجش رطوبت با فرآیند کنترل جذب و دفع آب مرتبط است.سنسورهای رطوبت برای نظارت بر محصولات صنعتی و کشاورزی و در تجهیزاتی مانند انکوباتورها، استریل کننده ها و تجهیزات پردازش دارویی استفاده می شود.
مروری بر سنسور BME280
BME280 یک سنسور دیجیتال رطوبت، فشار و دما در پکیج LGA است که به طور ویژه برای کاربردهایی که درآنها، سایز و مصرف انرژی کم از پارامترهای اصلی طراحی هستند (مانند موبایلها و…) طراحی شده است.
سنسور فشار این قطعه، یک سنسور فشار مطلق بارومتریک با دقت و رزولوشن بسیار بالا و نویز کمتر نسبت به BMP180 میباشد. سنسور رطوبت آن نیز دارای زمان پاسخ سریع و دقت بالا در یک محدوده دمایی وسیع، میباشد.
این سنسور میتواند هم از طریق SPI و هم از طریق I2C ارتباط برقرار کند.
کاربردها
مشخصات فنی
- Context awareness
- Fitness monitoring
- Home automation
- Internet of things
- Output type: Digital – I2C or SPI
- Pressure range: 300 hpa to 1100 hpa
- Humidity range: 0 to 100 %RH
- Temperature Accuracy: ±0.5°C to Offset of ±3.0%FS
- Temperature Resolution: 0.01°C
For more specifications, please refer to datasheet
ویژگیهای ماژول GebraBit BME280
- User-selectable module power supply voltage between 1V8 and 3V3
- User-selectable module I/O logic voltage between 1V8 and 3V3
- User-selectable interface protocol (I2C or SPI)
- User-selectable I2C address
- On Board, ON/OFF LED indicator
- GebraBit Pin Compatible with GEBRABUS
- It can be used as a daughter board of GebraBit MCU Modules
- Featuring Castellated pad (Assembled as SMD Part)
- Separatable screw parts to reduce the size of the board
ماژول GebraBit BME280
GebraBit BME280 یک ماژول دیجیتالی اندازه گیری رطوبت نسبی، فشار هوا و دمای محیط است که می تواند با ولتاژهای تغذیه “1V8” یا “3V3” که توسط جامپر سلکتور “VDD SEL” قابل انتخاب اند، کار کند. همچنین یک جامپر دیگر به نام “VDIO SEL” وجود دارد که برای انتخاب سطح منطقی ولتاژ پایه های ورودی/خروجی ماژول بین “1V8” یا “3V3” در نظر گرفته می شود. این ویژگی به استفاده از طیف گسترده ای از میکروکنترلرها برای ارتباط با این ماژول کمک می کند.
کاربر می تواند با پروتکل I2C یا SPI با GebraBit BME280 ارتباط برقرار کند. این امر توسط چهار جامپرسلکتور اختصاصی که در سمت راست بالای ماژول GebraBit BME280 قرار گرفته اند، امکان پذیر است.
بعد از توضیحات ذکر شده در بالا متوجه شده اید که سنسور BME280 با توجه به پکیج LGA و عدم دستسرسی به پین های سنسور،کاربر برای توسعه سخت افزاری و البته توسعه نرم افزاری سنسور،نیاز به یک مدار راه انداز و درایور دارد.GebraBit برای راحتی کاربران این امر را با پیاده سازی مدار سنسور BME280 و ارایه دسترسی به پین های سیگنال های ارتباطی و تغذیه ، با قابلیت انتخاب پروتکل ارتباطی I2C یا SPI و ولتاژ کاری و سطح لاجیک پروتکل های ارتباطی ، محق ساخته است.
کافیست ماژول GebraBit BME280 را در BreadBoard قرار داده سپس با اعمال ولتاژ مورد نیاز و انتخاب پروتکل ارتباطی I2C یا SPI ، ماژول GebraBit BME280 را با هریک از برد های اردوینو، رزبری پای ، دیسکاوری و مخصوصا ماژول GebraBit STM32F303 یا GebraBit ATMEGA32 که پیشنهاد ما استفاده از ماژول های توسعه میکروکنترلری GebraBit هست،راه اندازی و دیتا را دریافت کنید.
دلیل پیشنهاد ما در راه اندازی ماژول GebraBit BME280 با ماژول های توسعه میکروکنترلری GebraBit مانند GebraBit STM32F303 یا GebraBit ATMEGA32 ،وجود رگولاتور داخلی 3V3 در آنها و سازگاری ترتیب پین های همه ماژول های GebraBit با هم بوده(استاندارد GEBRABUS) که فقط کافیست ماژول GebraBit BME280 را مانند تصویر بالا در سوکت مربوطه قرار داده و بدون نیاز به سیم کشی ،ماژول سنسور مورد نظر را توسعه دهید.
معرفی بخش های ماژول
سنسور BME280
ای سی اصلی این ماژول بوده که وظیفهی مانیتورینگ رطوبت، دما و فشار را برعهده دارد و در مرکز ماژول قرار گرفته و مدار ان طراحی شده است.
جامپرهای انتخاب پروتکل ارتباطی
در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت چپ باشد،پروتکل I2C اتنخاب شده است.
در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت راست باشد،پروتکل SPI اتنخاب شده است.
جامپرAD0 SEL
در صورت انتخاب پروتکل I2C ،وضعیت جامپر AD0 SEL آدرس I2C سنسور( 0x76 0 => یا 0x77 1 =>) را مشخص می کند.
جامپرVDIO SEL
با توجه به وضعیت مقاومت 0R این جامپر ، سطح منطق (Logic Level) ارتباط دیجیتال(I2C یا SPI) سنسور از بین 1V8 و 3V3 انتخاب می شود.
جامپرVDD SEL
با توجه به وضعیت مقاومت 0R این جامپر ، ولتاژ اصلی تغذیه سنسور از بین 1V8 و 3V3 انتخاب میشود
تغذیه LED
با توجه به وضعیت جامپر VDD SEL و اعمال ولتاژ به ماژول توسط پین مربوطه، LED ماژول روشن می شود.
پینهای ماژول GebraBit BME280
پین های تغذیه
- 3V3 و 1V8: این پینها می توانند با توجه به وضعیت Jumper Selector های VDDSEL و VDIOSEL ،تغذیه اصلی سنسور و سطح منطق (Logic Level) ارتباط دییجیتال (I2C یا SPI) سنسور را تامین کنند.
- GND: این پین زمین مشترک برای تغذیه و سطح منطق(Logic Level) سنسور می باشد.
پین های I2C
با استفاده از Jumper Selector های تعبیه شده روی برد می توان نوع ارتباط با ماژول را انتخاب کرد.در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت چپ باشد،پروتکل I2C اتنخاب شده است.وضعیت جامپر AD0 SEL آدرس I2C سنسور ( 0x76 یا 0x77 ) را مشخص می کند.
- SDA : این پین، پین دیتای ارتباط I2C می باشد، که به پین دیتای متناظر در میکروکنترلر(پردازنده) ، متصل می شود.با توجه به وضعیت جامپر VDIOSEL ،می توانید از سطح منطق(Logic Level) با ولتاژ 1V8 یا 3V3 استفاده کنید.این پین با یک مقاومت پول آپ (Pull Up) شده است.
- SCL : این پین، پین کلاک ارتباط I2C می باشد، که به پین کلاک متناظر در میکروکنترلر(پردازنده) ، متصل می شود.با توجه به وضعیت جامپر VDIOSEL ،می توانید از سطح منطق(Logic Level) با ولتاژ 1V8 یا 3V3 استفاده کنید.این پین با یک مقاومت پول آپ (Pull Up) شده است.
پین های SPI
با استفاده از Jumper Selector های تعبیه شده روی برد می توان نوع ارتباط با ماژول را انتخاب کرد.در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت راست باشد،پروتکل SPI اتنخاب شده است.وضعیت جامپر AD0 SEL در این حالت بی تاثیر است.
- SDI(MOSI) : از این پین، برای ارسال دیتا از میکروکنترلر(پردازنده) به ماژول(سنسور) استفاده میشود.نام اختصاری این پین برگرفته از عبارت لاتین Serial Data In / Microcontroller Out Sensor In می باشد.
- SDO(MISO) : از این پین، برای ارسال دیتا از ماژول(سنسور) به میکروکنترلر(پردازنده) استفاده میشود.نام اختصاری این پین برگرفته از عبارت لاتین Serial Data Out / Microcontroller In Sensor Out می باشد.
- SCK : این پین، پین کلاک برای ارتباط SPI بوده که از نوع ورودی (Input) برای سنسور محسوب و به پین کلاک متناظر در میکروکنترلر(پردازنده) ، متصل می شود.
- CSB : این پین، پین Chip Select برای ارتباط SPI با ماژول(سنسور) می باشد، که با اعمال ولتاژ LOW (0V) ،ماژول(سنسور) برای ارتباط SPI انتخاب می شود.این پین از نوع ورودی (Input) برای سنسور محسوب می شود.
در صورتی که می خواهید از چندین ماژول GebraBit BME280به صورت همزمان استفاده کنید، کافیست پین های SDO , SDI , SCK همه انها و میکرکنترلر(پردازنده) را به هم متصل کرده و به CS هر کدام، یک پین منحصر به فرد اختصاص دهید.
اتصال به پردازنده
اتصال I2C با GebraBit STM32F303
ابتدا اطمینان حاصل کنید که پروتکل I2C با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال I2C ماژول GebraBit BME280به ماژول میکروکنترلرGebraBit STM32F303 بعد از تعریف کردن SDA و SCL رو پین های PB9 و PB8 (برای راحتی کار در STMCUBEMX)مراحل زیر را دنبال کنید:
- پین “3V3” ماژول BME280 را به پین “3V3” خروجی ماژول میکروکنترلر متصل کنید.(سیم قرمز)
- پین “GND” ماژول BME280 را به پین “GND” ماژول میکروکنترلر متصل کنید.(سیم سیاه)
- پین “SCL” ماژول BME280 را به پین PB8 ماژول میکروکنترلر (SCL) متصل کنید.(سیم آبی)
- پین “SDA” ماژول BME280 را به پین PB9 ماژول میکروکنترلر (SDA) متصل کنید.(سیم زرد)
نحوه اتصال موارد ذکر شده در بالا،در این تصویر مشاهده می شود:
توجه: با توجه به اینکه پین PA14 ماژول میکروکنترلرGebraBit STM32F303 برای پروگرام کردن میکروکنترلر استفاده میشود،تنظیم I2C بر روی پین های PA14 و PA15 در این ورژن مقدور نمی باشد،لذا در اتصال I2C به ماژول میکروکنترلرGebraBit STM32F303 در این ورژن ، ماژول GebraBit BME280 نمی تواند به صورت Pin to Pin بر روی آن قرار گیرد.برای راحتی کار می توانید پروتکل SPI را با استفاده از جامپر های روی برد انتخاب کرده و سپس ماژول GebraBit BME280را به صورت Pin to Pin بر روی ماژول GebraBit STM32F303 قرار دهید.
اتصال SPI با GebraBit STM32F303
ابتدا اطمینان حاصل کنید که پروتکل SPI با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال SPI ماژول GebraBit BME280به ماژول میکروکنترلرGebraBit STM32F303 بعد از تعریف کردن “SDI” و “SDO” و “SCK” و “CS” روی پین های PB5 و PB4 و PB3 و PC13 (برای راحتی کار در STMCUBEMX) ماژول GebraBit BME280را به صورت Pin to Pin به راحتی بر روی ماژول GebraBit STM32F303 قرار دهید. در اینجا برای درک بهتر،اتصال جداگانه این دو ماژول نشان داده شده است:
اتصال SPI یا I2C با GebraBit ATMEGA32A
با توجه به اینکه پین های SPI و I2C میکروکنترلر ATMEGA32A بر اساس استاندارد GEBRABUS متناظر با پین های SPI و I2C دیگر ماژول های GEBRABIT می باشد، ماژول GebraBit BME280 را به صورت Pin to Pin به راحتی بر روی ماژول GebraBit ATMEGA32A قرار داده و با تغییر وضعیت مقاومت های جامپر انتخاب پروتکل، با ماژول GebraBit BME280از طریق SPI یا I2C ارتباط برقرار کنید. در اینجا برای درک بهتر،اتصال جداگانه این دو ماژول نشان داده شده است:
توجه: در صورت استفاده از ماژولهای میکروکنترلریGebraBit توجه داشته باشید که جامپر سلکتورهای ماژول GebraBit BME280 روی “3V3” باشد تا راحت تر بتوانید با گرفتن ولتاژ”3V3” از ماژول میکروکنترلری ، ماژول سنسور مورد نظر را راه اندازی کنید.
اتصال I2C با ARDUINO UNO
ابتدا اطمینان حاصل کنید که پروتکل I2C با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال I2C ماژول GebraBit BME280 به ARDUINO UNO مراحل زیر را دنبال کنید:
- پین 3V3 ماژول BME280 را به پین 3V3 خروجی برد ARDUINO UNO متصل کنید.(سیم قرمز)
- پین GND ماژول BME280 را به پین GND برد ARDUINO UNO متصل کنید.(سیم سیاه)
- پین SCL ماژول BME280 را به پین A5 برد ARDUINO UNO( (SCLمتصل کنید.(سیم آبی)
- پین SDA ماژول BME280 را به پین A4 برد ARDUINO UNO( (SDAمتصل کنید.(سیم نارنجی)
نحوه اتصال موارد ذکر شده در بالا،در این تصویر مشاهده می شود:
اتصال SPI با ARDUINO UNO
ابتدا اطمینان حاصل کنید که پروتکل SPI با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال SPI ماژول GebraBit BME280 به ARDUINO UNO مراحل زیر را دنبال کنید:
- پین “3V3” ماژول BME280 را به پین “3V3” خروجی برد ARDUINO UNO متصل کنید.(سیم قرمز)
- پین “GND” ماژول BME280 را به پین “GND” برد ARDUINO UNO متصل کنید.(سیم سیاه)
- پین” “SDI ماژول BME280 را به پین D11 برد ARDUINO UNO( (SDIمتصل کنید.(سیم زرد)
- پین” “SDO ماژول BME280 را به پین D12 برد ARDUINO UNO( (SDOمتصل کنید.(سیم بنفش)
- پین “SCK” ماژول BME280 را به پین D13 برد ARDUINO UNO( (SCKمتصل کنید.(سیم نارنجی)
- پین” “CS ماژول BME280 را به پین D10 برد ARDUINO UNO( (SSمتصل کنید.(سیم آبی)
نحوه اتصال موارد ذکر شده در بالا،در این تصویر مشاهده می شود: