دریافت ورودی از سنسورها | قسمت سی‌ام آموزش آردوینو

قسمت 30 آموزش جامع آردوینو سیسوگ
محمد کبیر
45 بازدید
۱۴۰۴-۰۳-۳۱
4 دقیقه
  • نویسنده: Arduino captain
  • درباره نویسنده: من کاپیتان آردوینو، اسمم میلاده و اینجا هستم تا تجربیاتم در رابطه با آردوینو رو با شما به اشتراک بزارم!

در قسمت بیست و نهم از آموزش آردوینو به بررسی پاسخ به تغییرات ولتاژ و اندازه‌گیری ولتاژهای بیش از ۵ ولت (تقسیم ولتاژ) پرداختیم. در این قسمت قصد داریم درباره دریافت ورودی از سنسورها صحبت کنیم.

فهرست مطالب

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

همچنین، شماتیک‌های سیم‌کشی نحوه اتصال و تأمین انرژی این دستگاه‌ها را نشان می‌دهند و نمونه کدها به شما کمک می‌کنند تا داده‌های حسگرها را پردازش و استفاده کنید.

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

ماهیت سیگنال الکتریکی‌ای که توسط یک سنسور ارائه می‌شود، بستگی به نوع سنسور و میزان اطلاعاتی دارد که باید منتقل کند. برخی سنسورها مانند فتوسل‌ها و سنسورهای ضربه‌ (پیزوالکتریک) از موادی ساخته شده‌اند که ویژگی‌های الکتریکی‌شان در پاسخ به تغییرات فیزیکی تغییر می‌کند. برخی دیگر ماژول‌های الکترونیکی پیشرفته‌تری هستند که از میکروکنترلر داخلی خود برای پردازش اطلاعات استفاده می‌کنند و سپس سیگنال پردازش‌شده را به آردوینو ارسال می‌کنند.

سنسورها از روش‌های زیر برای ارائه اطلاعات استفاده می‌کنند:

دیجیتال روشن/خاموش

برخی دستگاه‌ها، مانند سنسور شیب، تنها ولتاژ را روشن و خاموش می‌کنند. این نوع سنسورها را می‌توان مشابه سوئیچ‌هایی در نظر گرفت که در قسمت‌های قبلی توضیح داده شد.

آنالوگ

سایر سنسورها یک سیگنال آنالوگ ارائه می‌دهند (ولتاژی که متناسب با چیزی است که اندازه‌گیری می‌شود، مانند دما یا میزان نور). دستورالعمل‌های مربوط به تشخیص نور، دما و صدا نشان می‌دهند که چگونه می‌توان از سنسورهای آنالوگ استفاده کرد. همه‌ی این موارد از دستور analogRead استفاده می‌کنند.

پهنای پالس

سنسورهای فاصله‌سنج، مانند سنسور PING)))، داده‌ها را با استفاده از مدت ‌زمان یک پالس ارائه می‌دهند که این مدت زمان متناسب با مقدار فاصله است. در کاربردهایی که از این نوع سنسورها استفاده می‌شود، مدت زمان پالس با استفاده از دستور  pulseIn اندازه‌گیری می‌شود.

سریال

برخی سنسورها از پروتکل سریال برای ارسال داده‌ها استفاده می‌کنند. برای نمونه، ماژول GPS (توضیح داده شده در قسمت‌های پیشین) از طریق پورت سریال آردوینو ارتباط برقرار می‌کند. از آنجایی که بیشتر بردهای آردوینو تنها یک پورت سریال سخت‌افزاری دارند، اگر چند سنسور سریال داشته باشید یا این پورت برای کار دیگری درگیر باشد، می‌توانید با استفاده از روش‌هایی مثل Serial نرم‌افزاری، پورت‌های سریال بیشتری اضافه کنید.

پروتکل‌های دیجیتال هم‌زمان: I2C و SPI

رابط‌های ارتباطی دیجیتال سریال I2C و SPI برای این طراحی شده‌اند که پردازنده‌ها و میکروکنترلرهایی مثل آردوینو بتوانند با سنسورها و ماژول‌های خارجی ارتباط برقرار کنند. برای مثال، در قسمت‌های بعدی توضیح می‌دهیم که چگونه یک ماژول ژیروسکوپ از طریق I2C به آردوینو متصل می‌شود. این پروتکل‌ها به طور گسترده‌ای در سنسورها، محرک‌ها (actuators) و تجهیزات جانبی مورد استفاده قرار می‌گیرند.

یک دسته‌ی دیگر از ابزارهای اندازه‌گیری وجود دارد که ممکن است برایتان کاربردی باشد. این ابزارها در واقع دستگاه‌های مصرفی هستند که درونشان سنسور وجود دارد، اما به‌عنوان یک محصول کامل و مستقل فروخته می‌شوند، نه صرفاً به‌عنوان سنسور.

برای مثال، ماوس PS/2 می‌تواند بسیار مفید باشد، چون سنسورها را در قالب محصولاتی آماده، مقاوم و ارگونومیک در اختیار شما قرار می‌دهد. از طرفی، قیمت آن‌ها معمولاً پایین است (گاهی حتی از خود سنسورهای تکی هم ارزان‌ترند)، چون به صورت انبوه تولید می‌شوند. شاید شما هم چند تا از این وسایل را در خانه داشته باشید.

اگر از دستگاهی استفاده می‌کنید که به طور خاص در این سری آموزش‌ها بررسی نشده است، به مدیر کتابخانه آردوینو (Library Manager) سر بزنید تا ببینید آیا کتابخانه‌ای برای آن دستگاه وجود دارد یا نه.

اگر کتابخانه‌ای موجود نبود، ممکن است بتوانید از یک دستورالعمل دیگر که برای دستگاهی با خروجی مشابه نوشته شده، استفاده یا آن را با کمی تغییر برای نیاز خودتان سازگار کنید.

اطلاعات مربوط به سیگنال خروجی یک سنسور معمولاً از طریق شرکت سازنده یا در دیتاشیت دستگاه قابل‌دسترسی است. می‌توانید دیتاشیت را با جستجوی شماره مدل یا نام قطعه در گوگل پیدا کنید.

دیتاشیت‌ها معمولاً برای مهندسانی نوشته می‌شوند که در حال طراحی محصولاتی برای تولید انبوه هستند، و بنابراین جزئیات بسیار بیشتری نسبت به آنچه برای راه‌اندازی اولیه نیاز دارید، در آن‌ها ارائه می‌شود.

اگر دیتاشیت را در وب‌سایت فروشنده قطعه پیدا نکردید، معمولاً می‌توانید با جستجو در اینترنت و واردکردن نام قطعه همراه با کلمه‌ی “datasheet” آن را پیدا کنید.

اطلاعات مربوط به سیگنال خروجی معمولاً در بخشی با عنوان‌هایی مانند data format , interface , output signal  یا موارد مشابه قرار دارد. همچنین فراموش نکنید حتماً حداکثر ولتاژ مجاز را بررسی کنید (که معمولاً در بخشی با عنوان Absolute Maximum Ratings ذکر شده) تا مطمئن شوید به قطعه آسیب وارد نمی‌کنید.

نکات ایمنی و فنی در اتصال سنسورها و مدارهای ولتاژ پایین به آردوینو

سنسورهایی که برای حداکثر ولتاژ ۳.۳ ولت طراحی شده‌اند، ممکن است در صورت اتصال به ولتاژ بالاتر (مانند پایه‌های خروجی آردوینو که با منطق ۵ ولت کار می‌کنند) آسیب ببینند یا کاملاً از کار بیفتند.

بنابراین، قبل از اتصال هر دستگاهی، حتماً حداکثر ولتاژ مجاز (Absolute Maximum Rating)  آن را بررسی کنید.

اگر لازم است خروجی ۵ ولتی را به ورودی‌ای متصل کنید که فقط ۳.۳ ولت را تحمل می‌کند، در بیشتر موارد می‌توانید از تقسیم‌کننده ولتاژ (Voltage Divider) استفاده کنید. برای اطلاعات بیشتر در مورد ساخت و استفاده از تقسیم‌کننده ولتاژ، به قسمت‌های قبلی مراجعه کنید.

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

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

یکی دیگر از چالش‌ها، جداکردن سیگنال مورد نظر از نویزهای زمینه‌ای است. در قسمت‌های بعدی توضیح داده خواهد شد که چگونه می‌توانید با تعیین یک آستانه (Threshold) مشخص کنید که چه زمانی سیگنال از یک سطح مشخص بالاتر رفته است. همچنین، بررسی می‌شود که چگونه می‌توان با میانگین‌گیری از چندین خوانش (readings)، نوسانات ناشی از نویز را کاهش داد و سیگنال را صاف‌تر و قابل‌اعتمادتر کرد.

برای آشنایی بیشتر با نحوه‌ی کار با قطعات الکترونیکی و اتصال آن‌ها، می‌توانید به کتاب Make: Electronics نوشته‌ی چارلز پلت (Charles Platt) از انتشاراتMake Community  مراجعه کنید.

کتاب Making Things Talk نوشته‌ی تام آیگو (Tom Igoe) نیز به ترکیب علم، هنر و پشتکار در طراحی و پیاده‌سازی سیستم‌های مبتنی بر سنسور با استفاده از آردوینو می‌پردازد.

اطلاعات
45
0
0
لینک و اشتراک
جلسات دیگر
آردوینو

پاسخ به تغییرات ولتاژ +...

profile

Arduino captain

متخصص الکترونیک

من کاپیتان آردوینو، اسمم میلاده و اینجا هستم تا تجربیاتم در رابطه با آردوینو رو با شما به اشتراک بزارم!

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. جستجو در آیسی
family

سیسوگ‌شاپ | فروشگاه محصولات Quectel

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
family

سیکار | اولین مرجع متن باز ECU در ایران

بررسی و ارائه اطلاعات مربوط به ECU (واحد کنترل الکترونیکی) و نرم‌افزارهای متن باز مرتبط با آن برو به سیکار
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ
سیسوگ‌شاپ

فروشگاه محصولات Quectel

پالت
سیسوگ فروم

محلی برای پاسخ پرسش‌های شما

سیسوگ جابز
سیسوگ
سیسوگ فروم
سی‌کار

اولین مرجع متن باز ECU در ایران

سیسوگ مگ
آی‌سی

موتور جستجوی قطعات الکترونیکی

سیسوگ آکادمی
پالت

بازار خرید و فروش قطعات الکترونیک

دیدگاه ها

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله