فشار در واقع نیرویی است که بر یک جسم در واحد سطح اعمال می شود. ما معمولاً فشار مایعات، هوا و سایر گازها را اندازه گیری می کنیم.
واحد استاندارد فشار “پاسکال” است که معادل یک “نیوتن در هر متر مربع” میباشد.
یک سنسور فشار به سادگی این فشار را کنترل می کند و می تواند آن را در یکی از چندین واحد شناخته شده در سراسر جهان نمایش دهد. واحدهای فشار در سراسر جهان معمولاً عبارتند از «پاسکال»، «bar» و «PSI» (پوند بر اینچ مربع).
به طور خلاصه، یک سنسور فشار، فشار را به یک سیگنال الکتریکی کوچک تبدیل می کند که ارسال و نمایش داده می شود. به همین دلیل معمولاً به آنها ترانسمیتر فشار نیز گفته می شود. دو سیگنال رایج که در سنسورهای فشار استفاده می شود سیگنال 4 تا 20 میلی آمپر و سیگنال 0 تا 5 ولت است.
اکثر سنسورهای فشار با استفاده از اثر پیزوالکتریک کار می کنند. اثر پیزو الکترونیک زمانی رخ میدهد که یک ماده در پاسخ به تنش، بار الکتریکی ایجاد می کند. این تنش معمولاً از نوع فشار است اما می تواند پیچ خوردگی، خمیده شدن یا ارتعاش نیز باشد. سنسور فشار می تواند با اندازه گیری این بار الکتریکی میزان فشار را تعیین کند.
سنسورهای فشار باید کالیبره شوند تا بدانند چه ولتاژ یا سیگنال میلی آمپر (mA) با چه فشاری مطابقت دارد.
به طور کلی سه نوع متداول وجود دارد که ما در صنعت استفاده می کنیم: سنسور فشار گیج، سنسور فشار مطلق و سنسور فشار دیفرانسیلی.
سنسور فشار بارومتریک سنسوری است که فشار اتمسفر را تشخیص می دهد. انواع مختلفی از سنسورهای فشار وجود دارند که با استفاده از مواد و روش های متفاوتی، فشار را اندازه گیری میکنند و بر اساس مقادیر فشاری که اندازهگیری میکنند، دسته بندی میشوند.
در این میان، سنسورهایی که فشار اتمسفر را تشخیص می دهند، سنسور فشار بارومتریک نامیده می شوند.
سنسور دما وسیله ای است که برای اندازه گیری دما استفاده می شود. این دما میتواند دمای هوا، دمای مایع یا دمای یک ماده جامد باشد. انواع مختلفی از سنسورهای دما در دسترس هستند و هر کدام از فناوریها و اصول متفاوتی برای اندازهگیری دما استفاده میکنند مانند : ترمیستورها، RTD ها (سنسورهای مقاومتی دما)، ترموکوپل ها و پرابهای دما و…
سنسورهای دما برای اندازه گیری دما در بسیاری از کاربردها و صنایع مختلف استفاده می شوند. برخی از نمونه های کاربردی این سنسورها عبارتند از: کاربردهای صنعتی(نظارت بر ماشین آلات و محیط های مختلف، نیروگاه ها)، کاربردهای علمی و آزمایشگاهی ،کاربردهای پزشکی (نظارت بر بیمار، دستگاههای پزشکی، آنالیز گاز، کاتترهای قلبی با رقیقسازی حرارتی، مرطوبکنندهها، لولههای جریان هواکش، دمای مایع دیالیز)، لوازم خانگی، کاربرد های HVAC (دستگاه های تهویه و تهویه مطبوع گرمایشی یا تجاری یا خانگی)
مروری بر سنسور ICP20100
سنسور فشار ICP-20100 یک سنسور فشار بارومتریک و دما با دقت بالا و توان کم است که از یک سنسور فشار خازنی برای نظارت بر تغییرات فشار در محدوده 30 تا 110 کیلو پاسکال ، یک پردازشگر سیگنال دیجیتال(DSP) برای کالیبراسیون ، یک مبدل آنالوگ به دیجیتال (ADC)، فیلتر دیجیتال و FIFO در ساخت آن استفاده شده و و دارای رابط های I2C، I3C و SPI میباشد.
مشخصات فنی
کاربردها
Output type: Digital – I2C or I3C or SPI
Pressure range: 30 to 110 kpa
Pressure Resolution: 20 Bit
Operating temperature range: -40°C to +85°C
For more specifications, please refer to datasheet
Smartphones and Tablets
Wearable Sensors
Home and Building Automation
Weather Stations
ویژگیهای ماژول GebraBit ICP20100
Selectable module power supply and I/O logic voltage between1V8 and 3V3
On Board Selectable protocol between I2C and SPI
On Board Selectable I2C address
On Board, ON/OFF LED indicator
On Board LED indicator for sensor interrupt
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
Package: GebraBit small (36.29mm x 32.72mm)
ماژول GebraBit ICP20100
GebraBit ICP20100 یک ماژول اندازه گیری فشار و دما با دقت بالا است که می تواند با ولتاژهای تغذیه “1V8” یا “3V3” که توسط جامپر سلکتور “VDD SEL” قابل انتخاب اند، کار کند. همچنین یک جامپر دیگر به نام “VDIO SEL” وجود دارد که برای انتخاب سطح منطقی ولتاژ پایه های ورودی/خروجی ماژول بین “1V8” یا “3V3” در نظر گرفته می شود. این ویژگی به استفاده از طیف گسترده ای از میکروکنترلرها برای رابط با این ماژول کمک می کند. .
کاربر می تواند با پروتکل I2C یا SPI با GebraBit ICP20100 ارتباط برقرار کند. این امر توسط چهار جامپرسلکتور اختصاصی که در سمت راست بالای ماژول GebraBit ICP20100 قرار گرفته اند، امکان پذیر است.
با توجه به دشواری دستسرسی به پین های سنسور،کاربر برای توسعه سخت افزاری و البته توسعه نرم افزاری سنسور،نیاز به یک مدار راه انداز و درایور دارد.GebraBit برای راحتی کاربران این امر را با پیاده سازی مدار سنسور ICP20100 و ارایه دسترسی به پین های سیگنال های ارتباطی و تغذیه ، با قابلیت انتخاب پروتکل ارتباطی I2C یا SPI و ولتاژ کاری و سطح لاجیک پروتکل های ارتباطی ، محق ساخته است.
کافیست ماژول GebraBit ICP20100 را در BreadBoard قرار داده سپس با اعمال ولتاژ مورد نیاز و انتخاب پروتکل ارتباطی I2C یا SPI ، ماژول GebraBit ICP20100 را با هریک از برد های اردوینو، رزبری پای ، دیسکاوری و مخصوصا ماژول GebraBit STM32F303 یا GebraBit ATMEGA32 که پیشنهاد ما استفاده از ماژول های توسعه میکروکنترلری GebraBit هست،راه اندازی و دیتا را دریافت کنید.
دلیل پیشنهاد ما در راه اندازی ماژول GebraBit ICP20100 با ماژول های توسعه میکروکنترلری GebraBit مانند GebraBit STM32F303 یا GebraBit ATMEGA32 ،وجود رگولاتور داخلی 3V3 در آنها و سازگاری ترتیب پین های همه ماژول های GebraBit با هم بوده(استاندارد GEBRABUS) که فقط کافیست ماژول GebraBit ICP20100 را مانند تصویر بالا در سوکت مربوطه قرار داده و بدون نیاز به سیم کشی ،ماژول سنسور مورد نظر را توسعه دهید.
معرفی بخش های ماژول
سنسور ICP20100
ای سی اصلی این ماژول بوده که وظیفهی اندازهگیری فشار و دما را برعهده دارد و در مرکز ماژول قرار گرفته و مدار ان طراحی شده است.
جامپرهای انتخاب پروتکل ارتباطی
در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت چپ باشد،پروتکل I2C اتنخاب شده است.
در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت راست باشد،پروتکل SPI اتنخاب شده است.
جامپرAD0 SEL
در صورت انتخاب پروتکل I2C ،وضعیت جامپر AD0 SEL آدرس I2C سنسور ( 0x63 0 => یا 0 x64 1 =>) را مشخص می کند.
به صورت پیش فرض مقاومت 0R روی 0 قرار داشته و آدرس 0x63 انتخاب شده است.
جامپرVDIO SEL
با توجه به وضعیت مقاومت 0R این جامپر ، سطح منطق (Logic Level) ارتباط دیجیتال(I2C یا SPI) سنسور از بین 1V8 و 3V3 انتخاب می شود.
به صورت پیش فرض سطح منطق (Logic Level) ارتباط دیجیتال(I2C یا SPI) سنسور 3V3 انتخاب شده است.
جامپرVDD SEL
با توجه به وضعیت مقاومت 0R این جامپر ، ولتاژ اصلی تغذیه سنسور از بین 1V8 و 3V3 انتخاب میشود.
به صورت پیش فرض ولتاژ اصلی تغذیه سنسور 3V3 انتخاب شده است.
LED وقفه
یکLED اختصاصی برای پین وقفه روی ماژول در نظر گرفته شده است که با تغییر وضعیت وقفه با توجه به دیتاشیت سنسور، وضعیت LED نیز تغییر میکند.
تغذیه LED
با توجه به وضعیت جامپرهای VDD SEL اعمال ولتاژ به ماژول توسط پین مربوطه، LED ماژول روشن می شود.
پینهای ماژول GebraBit ICP20100
پین های تغذیه
- 3V3 و 1V8 : این پینها می تواند با توجه به وضعیت Jumper Selector های VDDSEL و VDIOSEL ،تغذیه اصلی سنسور و سطح منطق(Logic Level) ارتباط دییجیتال(I2C یا SPI) سنسور را تامین کنند.
- GND : این پین زمین مشترک برای تغذیه و سطح منطق(Logic Level) سنسور می باشد.
پین های I2C
با استفاده از Jumper Selector های تعبیه شده روی برد می توان نوع ارتباط با ماژول را انتخاب کرد.در صورتی که مقاومتهای 0R تمام Jumper Selector ها به سمت چپ باشد،پروتکل I2C اتنخاب شده است.وضعیت جامپر AD0 SEL آدرس I2C سنسور ( 0x63 یا 0x64 ) را مشخص می کند.
- 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 ICP20100به صورت همزمان استفاده کنید، کافیست پین های SDO , SDI , SCK همه انها و میکرکنترلر(پردازنده) را به هم متصل کرده و به CS هر کدام، یک پین منحصر به فرد اختصاص دهید.
پین وقفه
- INT : پین Interrupt (وقفه) سنسور ICP20100 بوده که با توجه به دیتاشیت سنسور، کاربر می تواند شرایط وقوع وقفه،حالات و روش های وقوع وقفه و … را تنظیم کند.
اتصال به پردازنده
اتصال I2C با GebraBit STM32F303
ابتدا اطمینان حاصل کنید که پروتکل I2C با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال I2C ماژول GebraBit ICP20100به ماژول میکروکنترلرGebraBit STM32F303 بعد از تعریف کردن SDA و SCL رو پین های PB9 و PB8 (برای راحتی کار در STMCUBEMX)مراحل زیر را دنبال کنید:
- پین “3V3” ماژول ICP20100 را به پین “3V3” خروجی ماژول میکروکنترلر متصل کنید.(سیم قرمز)
- پین “GND” ماژول ICP20100 را به پین “GND” ماژول میکروکنترلر متصل کنید.(سیم سیاه)
- پین “SCL” ماژول ICP20100 را به پین PB8 ماژول میکروکنترلر (SCL) متصل کنید.(سیم آبی)
- پین “SDA” ماژول ICP20100 را به پین PB9 ماژول میکروکنترلر (SDA) متصل کنید.(سیم زرد)
نحوه اتصال موارد ذکر شده در بالا،در این تصویر مشاهده می شود:
توجه: با توجه به اینکه پین PA14 ماژول میکروکنترلرGebraBit STM32F303 برای پروگرام کردن میکروکنترلر استفاده میشود،تنظیم I2C بر روی پین های PA14 و PA15 در این ورژن مقدور نمی باشد،لذا در اتصال I2C به ماژول میکروکنترلرGebraBit STM32F303 در این ورژن ، ماژول GebraBit ICP20100 نمی تواند به صورت Pin to Pin بر روی آن قرار گیرد.برای راحتی کار می توانید پروتکل SPI را با استفاده از جامپر های روی برد انتخاب کرده و سپس ماژول GebraBit ICP20100را به صورت Pin to Pin بر روی ماژول GebraBit STM32F303 قرار دهید.
اتصال SPI با GebraBit STM32F303
ابتدا اطمینان حاصل کنید که پروتکل SPI با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال SPI ماژول GebraBit ICP20100به ماژول میکروکنترلرGebraBit STM32F303 بعد از تعریف کردن “SDI” و “SDO” و “SCK” و “CS” رو پین های PB5 و PB4 و PB3 و PC13 (برای راحتی کار در STMCUBEMX) ماژول GebraBit ICP20100 را به صورت Pin to Pin به راحتی بر روی ماژول GebraBit STM32F303 قرار دهید. در اینجا برای درک بهتر،اتصال جداگانه این دو ماژول نشان داده شده است:
اتصال SPI یا I2C با GebraBit ATMEGA32A
با توجه به اینکه پین های SPI و I2C میکروکنترلر ATMEGA32A بر اساس استاندارد GEBRABUS متناظر با پین های SPI و I2C دیگر ماژول های GEBRABIT می باشد، ماژول GebraBit ICP20100 را به صورت Pin to Pin به راحتی بر روی ماژول GebraBit ATMEGA32A قرار داده و با تغییر وضعیت مقاومت های جامپر انتخاب پروتکل، با ماژول GebraBit ICP20100از طریق SPI یا I2C ارتباط برقرار کنید. در اینجا برای درک بهتر،اتصال جداگانه این دو ماژول نشان داده شده است:
توجه: در صورت استفاده از ماژولهای میکروکنترلریGebraBit توجه داشته باشید که جامپر سلکتورهای ماژول GebraBit ICP20100 روی “3V3” باشد تا راحت تر بتوانید با گرفتن ولتاژ”3V3” از ماژول میکروکنترلری ، ماژول سنسور مورد نظر را راه اندازی کنید.
اتصال I2C با ARDUINO UNO
ابتدا اطمینان حاصل کنید که پروتکل I2C با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال I2C ماژول GebraBit ICP20100 به ARDUINO UNO مراحل زیر را دنبال کنید:
- پین 3V3 ماژول ICP20100 را به پین 3V3 خروجی برد ARDUINO UNO متصل کنید.(سیم قرمز)
- پین GND ماژول ICP20100 را به پین GND برد ARDUINO UNO متصل کنید.(سیم سیاه)
- پین SCL ماژول ICP20100 را به پین A5 برد ARDUINO UNO( (SCLمتصل کنید.(سیم آبی)
- پین SDA ماژول ICP20100 را به پین A4 برد ARDUINO UNO( (SDAمتصل کنید.(سیم نارنجی)
نحوه اتصال موارد ذکر شده در بالا،در این تصویر مشاهده می شود:
اتصال SPI با ARDUINO UNO
ابتدا اطمینان حاصل کنید که پروتکل SPI با استفاده از جامپر های روی برد انتخاب شده است، سپس برای اتصال SPI ماژول GebraBit ICP20100 به ARDUINO UNO مراحل زیر را دنبال کنید:
- پین “3V3” ماژول ICP20100 را به پین “3V3” خروجی برد ARDUINO UNO متصل کنید.(سیم قرمز)
- پین “GND” ماژول ICP20100 را به پین “GND” برد ARDUINO UNO متصل کنید.(سیم سیاه)
- پین” “SDI ماژول ICP20100 را به پین D11 برد ARDUINO UNO( (SDIمتصل کنید.(سیم زرد)
- پین” “SDO ماژول ICP20100 را به پین D12 برد ARDUINO UNO( (SDOمتصل کنید.(سیم بنفش)
- پین “SCK” ماژول ICP20100 را به پین D13 برد ARDUINO UNO( (SCKمتصل کنید.(سیم نارنجی)
- پین” “CS ماژول ICP20100 را به پین D10 برد ARDUINO UNO( (SSمتصل کنید.(سیم آبی)
نحوه اتصال موارد ذکر شده در بالا،در این تصویر مشاهده می شود: