مادون قرمز
شناخت مادون قرمز
مادون قرمز به انگلیسی Infrared یک نوع پرتو الکترومغناطیسی است که برای انتقال دادهها به صورت بیسیم و کنترل دستگاههای الکترونیکی مورد استفاده قرار میگیرد. این نوع پرتو الکترومغناطیسی با فرکانس بالاتر از نور قرمز قرار دارد و در زمینههای مختلفی از جمله صنعت، پزشکی، فضاپیمایی، ارتباطات بیسیم و غیره مورد استفاده قرار میگیرد. در بردارهای الکترونیکی مادون قرمز به صورت LEDهای مادون قرمز پیادهسازی شده و در دستگاههای مختلفی همچون کنترلکنندهها، دوربینهای دید در شب و ... استفاده میشوند. در کل کاربرد مادون قرمز برای تشخیص حرکت، تشخیص مانع، تشخیص فاصله و یا فرمان به وسایل الکترونیکی مورد استفاده قرار میگیرند.
سنسور مادون قرمز چیست؟
سنسورهای مادون قرمز Infrared sensors به عنوان یکی از محبوبترین انواع سنسورهای الکترونیکی، در بسیاری از دستگاههای الکترونیکی و خودروها استفاده میشوند. این سنسورها از اشعه مادون قرمز برای تشخیص و اندازهگیری مسافت و یا شناسایی اشیا استفاده میکنند. در سنسورهای مادون قرمز، با استفاده از دیودهایی که قادر به تولید اشعه مادون قرمز هستند، پس از ایجاد این اشعهها، با استفاده از یک فرستنده و یک گیرنده، تابش این اشعهها تشخیص داده میشود. سپس این سیگنالها به میکروکنترلر یا پردازنده دیگری ارسال میشود تا اطلاعات لازم برای کاربرد خاصی که قرار است سنسور در آن محیط استفاده شود، استخراج شود. از ماژول فرستنده و گیرنده مادون قرمز میتوان به ماژول تشخیص شعله که یک گیرنده مادون قرمز است، اشاره کرد. فرکانس کاری ماژول فرستنده گیرنده IR بسته به نوع مصرف در محدودههای مختلفی است. موارد استفاده در رباتهای مسیریاب و تعقیب خط است.
انواع سنسور مادون قرمز در الکترونیک
در الکترونیک، انواع مختلفی از سنسورهای مادون قرمز (IR sensors) وجود دارد. در ادامه به برخی از انواع معمول سنسورهای مادون قرمز اشاره کردهایم.
1- سنسورهای فرستنده و گیرنده مادون قرمز : این سنسورها به طور معمول در سیستمهای کنترل از راه دور (remote control systems) استفاده میشوند. در این سیستمها، سیگنال مادون قرمز توسط سنسور فرستنده ارسال میشود و در سنسور گیرنده دریافت و پردازش میشود. سپس اقدامی که برای آن برنامه ریزی شده است، اجرا میشود.
2- سنسورهای اندازه گیری دما با مادون قرمز : این سنسورها برای اندازه گیری دما از راه دور و بدون تماس با محیط استفاده میشوند. به طور معمول در صنایع پزشکی، خودروسازی و صنایع برق و الکترونیکی استفاده میشوند.
3- سنسورهای حرکت مادون قرمز : این سنسورها به طور معمول در سیستمهای امنیتی، روشنایی خودکار و دزدگیرهای حرکتی استفاده میشوند. این سنسورها تغییرات میدان تابش مادون قرمز را که به دلیل حرکت بدن یا شی در دید سنسور ایجاد میشود، اندازه گیری میکنند.
4- سنسورهای تشخیص گاز مادون قرمز : این سنسورها برای تشخیص گازهای سمی در محیط استفاده میشوند. برای تشخیص گازهایی مانند دی اکسید کربن و مونوکسید کربن استفاده میشوند.
این موارد تعدادی از انواع سنسورهای مادون قرمز هستند که در صنایع و کاربردهای مختلفی به کار میروند.
زبان برنامه نویسی سنسورهای مادون قرمز چیست؟
سنسورهای مادون قرمز ممکن است با استفاده از زبانهای برنامه نویسی مختلفی به کار گرفته شوند، اما معمولا این سنسورها با استفاده از زبان برنامهنویسی C یا C++ برنامه نویسی میشوند. این زبانها به دلیل سرعت بالا و قابلیت کنترل سختافزارها، برای برنامه نویسی سیستمهای الکترونیکی کارآمد و مناسب هستند. همچنین در برخی موارد ممکن است از زبانهایی مانند microPython برای برنامه نویسی سنسورهای مادون قرمز استفاده شود.
کتابخانههای آردوینو سنسور مادون قرمز
در آردوینو برای کار با سنسورهای مادون قرمز، میتوان از کتابخانههای مختلفی استفاده کرد. برخی از این کتابخانهها به شرح زیر هستند.
IRremote: کتابخانهای است که از آن میتوان برای کنترل دستگاههایی که با فرستادن سیگنال مادون قرمز کار میکنند استفاده کرد. با استفاده از این کتابخانه میتوان سیگنالهای مادون قرمز را دریافت و آنها را تفسیر کرد.
Adafruit-IRRemote: یک کتابخانه برای کنترل دستگاههایی که با سیگنال مادون قرمز کار میکنند، از جمله تلویزیونها، دستگاههای DVD و سایر دستگاههای الکترونیکی؛ با استفاده از این کتابخانه میتوان از پلتفرمهای مختلفی مانند آردوینو، ESP8266 و ESP32 استفاده کرد.
IRLib: کتابخانهای قدرتمند است که امکان کنترل دستگاههایی که با سیگنال مادون قرمز کار میکنند را فراهم میکند. این کتابخانه از انواع مختلف سنسورهای مادون قرمز پشتیبانی میکند و به کنترل این دستگاهها در پلتفرمهای مختلف از جمله آردوینو و ESP8266 کمک میکند.
IRremoteESP8266: یک کتابخانه متن باز است که از آن برای کنترل دستگاههایی که با سیگنال مادون قرمز کار میکنند، استفاده میشود. این کتابخانه از سنسورهای مادون قرمز و LEDهای مادون قرمز پشتیبانی میکند و برای پلتفرمهای مختلفی مانند آردوینو و ESP8266 مناسب است.
دستورات مهم برنامه نویسی آردوینو سنسور مادون قرمز
برای برنامه نویسی سنسورهای مادون قرمز با آردوینو، باید از کتابخانهی IRremote استفاده کنید که در این کتابخانه دستورالعملهای زیر برای کنترل سنسورهای مادون قرمز در دسترس هستند.
IRrecv: برای دریافت سیگنالهای مادون قرمز و اعتبارسنجی آنها استفاده میشود.
IRsend: برای ارسال سیگنالهای مادون قرمز از راه دور به دستگاههای دیگر مورد استفاده قرار میگیرد.
IRremote: برای تشخیص نوع پروتکل ارتباطی سنسورهای مادون قرمز و همچنین تفسیر پیامهای دریافت شده مورد استفاده قرار میگیرد.
IRrecvDumpV2: برای نمایش محتوای پیام دریافتی به صورت hex در Serial Monitor استفاده میشود.
همچنین دستورالعملهایی مانند enableIRIn برای فعال کردن دریافت سیگنالهای مادون قرمز و decode برای تفسیر پیامهای دریافت شده در کتابخانه موجود است.
دستورات مهم برنامه نویسی آردوینو سنسور فرستنده گیرنده مادون قرمز
برای برنامه نویسی سنسور فرستنده-گیرنده مادون قرمز با استفاده از برد آردوینو، میتوانید از کتابخانههای آماده استفاده کنید. در ادامه برخی از دستورات مهم برنامه نویسی با سنسور فرستنده-گیرنده مادون قرمز با آردوینو را معرفی میکنیم.
IRrecv: این دستور به شما امکان میدهد که دادههای دریافت شده توسط سنسور گیرنده مادون قرمز را دریافت کنید.
IRdecode: با استفاده از این دستور میتوانید کد دریافتی را تفسیر کنید و با آن اطلاعات بیشتری درباره دستگاه فرستنده مادون قرمز دریافت کنید.
IRsend: با استفاده از این دستور میتوانید کد مورد نظر خود را برای فرستادن اطلاعات از طریق سنسور فرستنده مادون قرمز بفرستید.
enableIRIn: با استفاده از این دستور سنسور مادون قرمز فرستنده-گیرنده را برای دریافت دادههای جدید فعال میکنید.
decode_results: این دستور به شما این امکان را میدهد تا دادههای دریافت شده از سنسور گیرنده مادون قرمز را به شکلی خوانا تر نمایش دهید.
sendNEC: با استفاده از این دستور میتوانید کد فرستاده شده توسط سنسور فرستنده مادون قرمز را تعیین کنید.
sendSony: با استفاده از این دستور میتوانید کد فرستاده شده توسط دستگاه سونی را تعیین کنید.
sendRC5: با استفاده از این دستور میتوانید کد فرستاده شده توسط دستگاه RC5 را تعیین کنید.
کتابخانه های میکروپایتون سنسور مادون قرمز
در میکروپایتون برای کنترل سنسورهای مادون قرمز مانند فرستنده و گیرنده، کتابخانههای مختلفی وجود دارد. برخی از این کتابخانهها به شرح زیر هستند.
IRremoteESP8266: این کتابخانه برای کنترل فرستنده و گیرندهی مادون قرمز بر روی بردهای ESP8266 ساخته شده است.
PyIRRemote: این کتابخانه برای کنترل فرستنده و گیرندهی مادون قرمز در میکروکنترلرهایی مانند ESP32، STM32 و... ساخته شده است.
Adafruit CircuitPython IRRemote: این کتابخانه برای کنترل فرستنده و گیرندهی مادون قرمز در محیط میکروپایتون ساخته شده است.
توجه داشته باشید که این کتابخانهها تنها نمونهای از کتابخانههای میکروپایتون برای کنترل سنسورهای مادون قرمز هستند و کتابخانههای دیگر هم وجود دارند.
فرکانس سنسورهای مادون قرمز گیرنده
فرکانس سنسورهای مادون قرمز گیرنده معمولا در بازه 38 تا 56 کیلوهرتز قرار دارد. اما برخی سنسورها فرکانسهای دیگری دارند. مهمترین فرکانسهای استفاده شده در سنسورهای مادون قرمز شامل 38، 40 و 56 کیلوهرتز است. برای استفاده از هر سنسور مادون قرمز، نیاز است تا به دقت فرکانس آن سنسور را در نظر گرفته و در برنامهی میکروکنترلر خود تنظیمات لازم را اعمال کنید.
روش تشخیص فرکانس سنسور مادون قرمز
برای تشخیص فرکانس سنسور مادون قرمز، میتوانید از دو روش زیر استفاده کنید.
استفاده از فرکانس معمولی: بیشتر سنسورهای مادون قرمز گیرنده، با فرکانس 38 کیلوهرتز عمل میکنند. در نتیجه، میتوانید برای بررسی سنسور از این فرکانس استفاده کنید و در صورتی که سیگنال دریافتی دارای این فرکانس باشد، به معنی دریافت درست سیگنال است.
استفاده از اسیلوسکوپ: یکی دیگر از روشهای تشخیص فرکانس، استفاده از اسیلوسکوپ است. با وصل کردن سیگنال خروجی سنسور به اسیلوسکوپ، میتوانید فرکانس سیگنال را مشاهده کنید. در نتیجه، میتوانید با تنظیم فرکانس اسیلوسکوپ، فرکانس سنسور مادون قرمز را تشخیص دهید.