اتصال سنسور نیرو و فشار مقاومتی به آردوینو (FSR)

محتویات
سنسور نیرو، که به عنوان Force Sensing Resistor (FSR) نیز شناخته میشود، یک سنسور ساده و مقرون به صرفه است که برای اندازه گیری فشار فیزیکی، فشار دست و وزن طراحی شده است. این سنسور در بسیاری از دستگاه های الکترونیکی قابل حمل مانند درام های الکترونیکی، کنسول های بازی دستی و تلفن های همراه استفاده میشود.
این سنسور در اندازهگیری فشار عالی عمل میکند، اما در تخمین دقیق وزن چندان دقیق نیست. بنابراین، اگر فقط میخواهید بدانید که «آیا سنسور فشار داده شده است و با چه شدتی»، این سنسور میتواند گزینه مناسبی برای پروژههای بعدی شما باشد.
بررسی کلی سنسور نیرو مقاومتی
فناوری مورد استفاده در سنسورهای FSR توسط شرکت Interlink Electronics ثبت اختراع شده است. این شرکت از سال 1985 فعالیت خود را آغاز کرده است. رایجترین انواع FSR که با آنها مواجه خواهید شد، مدلهای FSR-402 و FSR-406 هستند.
ساختار سنسور FSR
سنسور FSR اساساً یک مقاومت متغیر است که مقاومت آن در پاسخ به فشار اعمال شده به ناحیه حسگر تغییر میکند. این سنسور از چند لایه نازک و انعطاف پذیر ساخته شده است. هنگامی که فشار اعمال میشود، تعداد بیشتری از عناصر کربنی که معمولاً مقاومت ایجاد میکنند، با مسیرهای رسانا تماس پیدا کرده و در نتیجه مقاومت کاهش مییابد.
شکل و اندازه سنسور FSR
انواع مختلفی از سنسورهای FSR در بازار موجود است که هر کدام اندازه، شکل و محدوده حسگری منحصربهفرد خود را دارند. بیشتر سنسورهای FSR دارای ناحیه حسگری دایرهای یا مستطیلی هستند. سنسورهای مستطیلی برای حسگری در ناحیههای وسیع ایدهآل هستند، در حالی که سنسورهای دایرهای کوچک دقت بالاتری ارائه میدهند.
محدوده حسگری سنسور FSR
محدوده حسگری سنسور FSR یکی دیگر از جنبه های مهم است، زیرا کمترین و بیشترین فشارهایی را که میتواند تشخیص دهد، تعیین میکند. هرچه محدوده حسگری سنسور کوتاه تر باشد، حساسیت آن بیشتر است. اما توجه داشته باشید که هر فشاری بالاتر از حداکثر محدوده سنسور، غیرقابل اندازه گیری است و حتی ممکن است به سنسور آسیب برساند. به عنوان مثال، یک سنسور FSR با محدوده 1 کیلوگرم، در محدوده 0 تا 1 کیلوگرم حساسیت بیشتری دارد، اما نمیتواند بین 2 کیلوگرم و 5 کیلوگرم تمایز قائل شود.
سنسور FSR چگونه کار میکند؟
همانطور که قبلاً ذکر شد، سنسور FSR اساساً یک مقاومت است که مقدار مقاومت آن بر اساس میزان فشار اعمال شده تغییر میکند. در حالت بدون فشار، سنسور مقاومت بینهایت (بیش از 1 مگااهم) را نشان میدهد. با اعمال فشار بیشتر به سنسور، مقاومت بین ترمینال های آن کاهش مییابد و با کاهش فشار، مقاومت به مقدار اولیه خود بازمیگردد.
نمودار زیر مقاومت تقریبی سنسور FSR-402 را در نیروهای اعمالی مختلف نشان میدهد. در این نمودار از مقیاس لگاریتمی برای نمایش داده ها استفاده شده است.
خواندن داده های سنسور FSR
ساده ترین راه برای خواندن داده های سنسور FSR، اتصال آن به یک مقاومت ثابت و تشکیل یک مقسم ولتاژ است. این مدار یک ولتاژ متغیر تولید میکند که میتواند توسط مبدل آنالوگ به دیجیتال یک میکروکنترلر خوانده شود.
در این پیکربندی، ولتاژ خروجی با افزایش نیروی اعمال شده، افزایش مییابد.
به عنوان مثال، با یک منبع تغذیه 5 ولت و یک مقاومت 10 کیلواهم، وقتی هیچ فشاری اعمال نشود، مقاومت FSR بسیار بالا (حدود 10 مگااهم) خواهد بود و ولتاژ خروجی نزدیک به 0 ولت خواهد بود.
اما اگر نیروی قابل توجهی به سنسور اعمال شود، مقاومت به حدود 250 اهم کاهش مییابد و ولتاژ خروجی به حدود 5 ولت میرسد.
از جدول زیر برای محاسبات حدودی این سنسور میتوانید کمک بگیرید:
نیرو (lb) | نیرو (N) | مقاومت سنسور | ولتاژ مقاومت |
صفر | صفر | بی نهایت | 0V |
0.04lb | 0.2N | 30KΩ | 1.3V |
0.22lb | 1N | 6KΩ | 3.1V |
2.2lb | 10N | 1KΩ | 4.5V |
22lb | 100N | 250Ω | 4.9V |
اتصال سنسور FSR به آردوینو
اتصال سنسور FSR به آردوینو بسیار ساده است. شما نیاز دارید یک مقاومت 10 کیلواهم را به صورت سری با سنسور FSR وصل کنید تا یک مدار مقسم ولتاژ ایجاد شود. سپس، ورودی ADC (A0) آردوینو را به نقطه اتصال مقاومت و سنسور FSR وصل کنید. توجه داشته باشید که سنسورهای FSR اساساً مقاومت هستند، بنابراین میتوانید آنها را به هر دو صورت وصل کنید و همچنان کار خواهند کرد.
مثال 1: اندازه گیری ساده آنالوگ با سنسور FSR
کد کامل مثال ها در فایل دانلودی انتهای صفحه قرار دارند. در اینجا قسمت های مختلف کد ها آموزش داده میشود. در این مثال، داده های سنسور از پین ADC آردوینو خوانده شده و روی مانیتور سریال نمایش داده میشود. کد بسیار ساده است و مقدار فشار را به صورت کیفی نمایش میدهد.
اسکچ (کد برنامه) با تعریف پین آردوینو که سنسور FSR به آن متصل شده است، شروع میشود. سپس متغیر fsrReading
را تعریف میکنیم تا مقدار خام آنالوگ خوانده شده از سنسور FSR را ذخیره کند.
int fsrPin = 0; // پین A0 آردوینو که سنسور FSR به آن متصل شده است int fsrReading; // متغیر برای ذخیره مقدار آنالوگ خوانده شده از سنسور
در تابع setup
، ارتباط سریال (Serial Communication) برقرار میشود. این ارتباط برای نمایش دادهها روی مانیتور سریال استفاده میشود.
void setup(void) { Serial.begin(9600); // ارتباط سریال با نرخ 9600 بیت بر ثانیه آغاز میشود }
در تابع loop
، خروجی آنالوگ سنسور FSR خوانده شده و روی مانیتور سریال نمایش داده میشود.
همانطور که قبلاً اشاره شد، ولتاژ خروجی سنسور از 0 ولت (هیچ فشاری اعمال نشده) تا حدود 5 ولت (حداکثر فشار اعمال شده) تغییر میکند. هنگامی که آردوینو این ولتاژ آنالوگ را به مقدار دیجیتال تبدیل میکند، آن را به یک عدد 10 بیتی بین 0 تا 1023 تبدیل میکند. بنابراین، مقداری که روی مانیتور سریال نمایش داده میشود، بسته به میزان فشاری که به سنسور وارد میکنید، بین 0 تا 1023 متغیر خواهد بود.
این کد ساده و کاربردی است و برای پروژههایی که نیاز به تشخیص کیفی فشار دارند، بسیار مناسب است.
مثال 2: اندازه گیری پیشرفته آنالوگ با سنسور FSR
این مثال پیشرفته تر است و نیروی اعمال شده به سنسور را بر حسب نیوتن اندازه گیری میکند. این کد میتواند برای کالیبره کردن نیروهایی که انتظار دارید سنسور تجربه کند، بسیار مفید باشد. خروجی این کد به شکل زیر است:
سنسورهای FSR ابزارهای ساده اما قدرتمندی هستند که در بسیاری از پروژه های الکترونیکی کاربرد دارند. با درک نحوه عملکرد و روش های اتصال آنها به میکروکنترلرهایی مانند آردوینو، میتوانید از این سنسورها برای اندازه گیری فشار و نیرو در پروژه های خود استفاده کنید. اگر به دنبال یک سنسور مقرون به صرفه و کاربردی هستید، FSR میتواند گزینه مناسبی باشد.
موارد موجود در فایل : سورس کامل
برای دانلود فایل ها باید حساب کاربری داشته باشید ثبت نام / ورود