آشنایی با سنسور رنگ TCS3200 و راه اندازی آن با آردوینو

آشنایی با سنسور رنگ TCS3200  و راه اندازی آن با آردوینو

با عرض سلام خدمت همراهان داناساز

یه سوال: به نظر شما تشخیص رنگ به چه دردی می خوره ؟

تشخیص رنگ در صنایع کاربرد فراوانی داره؛ کاربردهایی مثل:

  • جدا کردن میوه های رسیده از نارس.
  • دسته بندی اشیا بر اساس رنگ آن ها
  • و …

 

اتوماتیک کردن این پروسه برای بهینه سازی و سرعت بخشیدن به صنایع بسیار مورد توجه است.

حالا در این مطلب با سنسور تشخیص رنگ TCS3200 آشنا شده و به کمک آردوینو راه اندازیش می کنیم.

با ما همراه باشید.

 

سنسور رنگ TCS3200 به شکل زیر است:

 

طرز کار این سنسور به این صورت است که به ازای هر رنگ فرکانس مخصوصی به پایه out می دهد.

این سنسور به کمک 4 پایه S0, S1, S2, S3 و تنظیم آن ها، فرکانس های مورد نیاز برای رنگ های مختلف رو به ما میده.

پروسه ی کلی کارکرد اون به شکل زیر هست:

نوری که از 4 ال ای دی سنسور به سطح برخورد می کند و بازتاب می شود. گیرنده های رنگی که بر روی سنسور قرار دارند، با توجه به تنیظم پایه های S2 , S3 یکی از رنگ های قرمز، سبز یا آبی را دریافت می کنند. این تنظیمات طبق جدول زیر است:

منظور از L و H به ترتیب LOW  و HIGH است.

سپس جریانی که در اثر این بازتاب نور تولید شده، وارد مبدل جریان به فرکانس شده و فرکانس خاصی را گزارش می دهد. تنظیم فرکانس نیز به صورت زیر است:

معمولا بر روی 20% تنظیم می شود؛ یعنی S0= HIGH و  S1= LOW .

 

 

حال شروع به نوشتن برنامه می کنیم:

طبق معمول اولین کار چیه؟

  • معرفی پایه ها و متغیرها

ما 4 پایه S0,S1,S2,S3 رو داریم. پایه ی خروجی (OUT) سنسور رو داریم. همه اینها دیجیتال هستند.

همچنین برای خروجی سنسور که رنگ های قرمز، سبز و آبی هست، متغیر تعریف کنیم و مقدار اولیه آن ها را صفر می گذاریم.

 

بعد از اون نوبت به void setup هست.  4 پایه S0,S1,S2,S3 خروجی هستند ( زیرا به آن ها ولتاژ می دهیم ) و پایه out سنسور ورودی است ( زیرا از آن ولتاژ می گیریم ).

تنظیم فرکانس را بر روی 20% می گذاریم، بنابراین S0= HIGH و  S1= LOW می گذاریم. برای مشاهده فرکانس ها، سریال مانیتور را نیز فعال می کنیم.

حال در قسمت void loop به این صورت عمل می کنیم که برای گرفتن فرکانس هر رنگ، پایه های S2 و S3 را تنظیم می کنیم( طبق جدول بالا ). مثلا برای رنگ قرمز، هر دو پایه HIGH هستند.

 

می بینید که برای گرفتن فرکانس رنگ قرمز ابتدا پایه های S2 و S3 را HIGH کردیم. بعد از آن با دستور  (pulseIn(sensorOut, LOW فرکانس رنگ قرمز را دریافت می کنیم.

** دستور pulseIn مدت زمان یک پالس را اندازه گیری می کند.

 

برای رنگ های آبی و سبز هم به همان شکل عمل می کنیم.

** بین هر تغییر رنگ یک تاخیر کوچک قرار دهید. ( مثلا 100 میلی ثانیه )

 

حالا مدار را می بندیم.

اگر ماژول شما ده پایه است ( مانند تصویر اول )، Vcc و GND را از یک طرف فقط وصل کنید (همان سمتی که S2 و S3 قرار دارند ).

مانند شکل زیر:

 

( سنسور برتی یک پروژه ی جذاب به فوم بورد چسبیده)

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

** این نکته رو فراموش نکنید که قرمز و سبز و آبی که از سنسور می گیریم فرکانس هستن و هیچ ارتباطی به استاندارد RGB رنگ ها ندارند.

 

در قسمت های بعد دو پروژه ی جذاب با این سنسور خواهیم داشت.

 

روز و روزگار خوش

مهندس مریم عبادی نژاد

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد.