מבוא לחיישן צבע RGB TCS3200

נסה את הכלי שלנו לביטול בעיות





TCS3200 הוא שבב ממיר אור לתדר צבעוני שניתן לתכנת באמצעות מיקרו-בקר. ניתן להשתמש במודול לאיתור כל 7 צבעי האור הלבן בעזרת מיקרו-בקר משולב כמו ארדואינו.

בפוסט זה אנו נסתכל על חיישן צבע RGB TCS3200, נבין כיצד עובד חיישן הצבע ונבדוק למעשה את חיישן TCS3200 עם Arduino ונפיק נתונים מועילים.



החשיבות של זיהוי צבעים

אנו רואים את העולם מדי יום, מלא בצבעים עשירים, האם תהיתם אי פעם מה באמת צבעים מלבד הרגשה חזותית. ובכן, צבעים הם גל אלקטרומגנטי באורכי גל שונים. לאדום, ירוק, כחול יש אורכי גל שונים, עיני האדם מכוונות לקלוט את צבעי ה- RGB הללו, שהם פס צר מהספקטרום האלקטרומגנטי.

אבל, אנו רואים יותר מאשר אדום, כחול וירוק זה בגלל שהמוח שלנו יכול לערבב שני צבעים או יותר ונותן צבע חדש.



היכולת לראות צבעים שונים סייעה לציוויליזציה האנושית הקדומה להימלט מסכנות מסכנות חיים כמו בעלי חיים וגם לסייע בזיהוי פריטים אכילים כמו פירות בגידול הנכון שלהם, שיהיה נעים לצרוך אותם.

נשים טובות יותר בזיהוי גוונים שונים של צבע (רגישות יותר לצבעים) מאשר בגבר, אך גברים טובים יותר במעקב אחר חפצים נעים במהירות ומגיבים בהתאם.

מחקרים רבים מצביעים על כך שבשל תקופה קדומה גברים יוצאים לציד בגלל כוחם הגופני שהיה עדיף על נשים.

נשים מתכבדות במשימה פחות מסוכנת כמו איסוף פירות ופריטים אכילים אחרים מצמחים ועצים.

איסוף פריטי המאכל מצמחים בצמיחתם הנכונה (צבע הפירות משחק תפקיד עצום) היה חשוב מאוד לעיכול טוב, מה שעזר לבני אדם מבעיות בריאותיות במפרץ.

הבדלים אלה ביכולת הראייה בקרב גברים ונשים נמשכים גם בתקופה המודרנית.

אוקיי, מדוע ההסברים לעיל לחיישן צבע אלקטרוני? ובכן, מכיוון שחיישני הצבע מפוברקים על פי מודל הצבעים של העין האנושית ולא על פי מודל צבע העיניים של אף חיה אחרת.

לדוגמא, מצלמות כפולות בסמארטפונים אחת המצלמות מיוצרת במיוחד לזיהוי צבעי RGB ומצלמה אחרת לצילום תמונות רגילות. מיזוג שתי התמונות / מידע הללו עם אלגוריתם זהיר כלשהו ישחזר צבעים מדויקים של אובייקט אמיתי על המסך שרק בני האדם יכולים לתפוס.

הערה: לא כל המצלמה הכפולה עובדת באותו אופן כפי שהוזכר לעיל, חלקן משמשות להתקרבות אופטית חלקן משמשות להפקת אפקט שדה מעמיק וכו '.

עכשיו בואו נראה כיצד מייצרים חיישני צבע TCS3200.

איור של חיישן TCS3200:

חיישן TCS3200

יש לו 4 נוריות LED מובנות להארת האובייקט. יש לו 10 פינים ושני סיכות Vcc ו- GND (השתמש בשניים מכל אלה). הפונקציה של S0, S1, S2, S3, S4 וסיכה 'החוצה' תוסבר בקרוב.

אם תסתכל מקרוב על החיישן, נוכל לראות משהו כפי שמוצג להלן:

יש לו 8x8 מערך של חיישני צבע בסך הכל 64. בלוק חיישני הצילום יש חיישנים אדומים, כחולים וירוקים. חיישני הצבע השונים נוצרים על ידי החלת מסנני צבע שונים על החיישן. מתוך 64 יש לו 16 חיישנים כחולים, 16 ירוקים, 16 אדומים ויש 16 חיישני צילום ללא כל פילטר צבעוני.

מסנן הצבעים הכחול יאפשר רק אור בצבע כחול להכות את החיישן ולדחות את שאר אורכי הגל (צבעים) זה אותו דבר עבור שני חיישני צבע אחרים.

אם אתה מאיר אור כחול על פילטר אדום או על פילטר ירוק, אור פחות אינטנסיבי יעבור דרך המסננים הירוקים או האדומים בהשוואה למסנן הכחול. אז החיישן המסונן הכחול יקבל יותר אור בהשוואה לשניים אחרים.

לכן, אנו יכולים להכניס את חיישני הצבע עם מסנני RGB לבלוק ולהאיר כל אור צבעוני, וחיישן הצבע הרלוונטי יקבל יותר אור משניים אחרים.

על ידי מדידת עוצמת האור המתקבל בחיישן יכול לחשוף את צבע האור שהאיר.

כדי לממשק את האות מחיישן למיקרו-בקר נעשה בעוצמת אור לממיר תדרים.

דיאגרמת חסימת מעגלים

הסיכה 'החוצה' היא הפלט. תדירות סיכת הפלט היא מחזור חובה של 50%. סיכות S2 ו- S3 הן קווים נבחרים עבור חיישן תמונות.

אתה מבין טוב יותר על ידי הסתכלות בטבלה:

סיכות S2 ו- S3 הן קווים נבחרים עבור חיישן תמונות.

על ידי החלת אותות נמוכים על סיכה S2 ו- S3 תבחר את חיישן הצבע האדום ותמדוד את עוצמת אורך הגל האדום.

באופן דומה, עקוב אחר הטבלה לעיל עבור שאר הצבעים.

באופן כללי נמדדים חיישנים אדומים, כחולים וירוקים ומשאירים את החיישנים אחד ללא מסננים.

ה- S0 וה- S1 הם סיכות קנה המידה של התדרים:

S0 ו- S1 הם סיכות קנה המידה של התדרים

S0 ו- S1 הם פינים של קנה מידה של תדרים כדי לשנות את תדר המוצא. סולם התדרים משמש לבחירת תדר הפלט האופטימלי מחיישן למיקרו-בקר. במקרה של Arduino מומלץ 20%, S0 'HIGH' ו- S1 'LOW'.

תדר המוצא גבוה אם עוצמת האור של החיישן הרלוונטי גבוהה. לשם פשטות קוד התוכנית התדרים אינם נמדדים, אך משך הדופק נמדד, התדר גבוה פחות משכי הדופק.

לכן, זה שעל קריאות המוניטור הטורי מראה הכי פחות צריך להיות הצבע שמונח מול החיישן.

חילוץ נתונים מחיישן הצבע

עכשיו ננסה למעשה לחלץ נתונים מהחיישן:

כיצד לחלץ נתונים מחיישן הצבע באמצעות מעגל Arduino

קוד תכנית:

//--------------Program Developed by R.GIRISH--------------//
const int s0 = 4
const int s1 = 5
const int s2 = 6
const int s3 = 7
const int out = 8
int frequency1 = 0
int frequency2 = 0
int frequency3 = 0
int state = LOW
int state1 = LOW
int state2 = HIGH
void setup()
{
Serial.begin(9600)
pinMode(s0, OUTPUT)
pinMode(s1, OUTPUT)
pinMode(s2, OUTPUT)
pinMode(s3, OUTPUT)
pinMode(out, INPUT)
//----Scaling Frequency 20%-----//
digitalWrite(s0, state2)
digitalWrite(s1, state1)
//-----------------------------//
}
void loop()
')
delay(100)
//------Sensing Blue colour----//
digitalWrite(s2, state1)
digitalWrite(s3, state2)
frequency3 = pulseIn(out, state)
Serial.print(' Blue = ')
Serial.println(frequency3)
delay(100)
Serial.println('---------------------------------------')
delay(400)

//--------------Program Developed by R.GIRISH--------------//

צג סידורי פלט:

הקריאה המציגה את הנמוך ביותר היא הצבע הממוקם מול החיישן. אתה יכול גם לכתוב קוד לזיהוי כל צבע, למשל צהוב. צהוב הוא תוצאה של מיזוג של ירוק ואדום, כך שאם צבע צהוב ממוקם מול החיישן, עליכם לקחת בחשבון את קריאות החיישן האדומות והירוקות, בדומה לכל צבע אחר.

אם יש לך שאלות לגבי חיישן צבע RGB זה TCS3200 באמצעות מאמר Arduino, אנא הביע בסעיף ההערה. יתכן שתקבל תשובה מהירה.

ניתן להשתמש גם בחיישן הצבע המוסבר לעיל מפעיל גאדג'ט חיצוני למרות ממסר לביצוע פעולה רצויה.




קודם: מתג הפעלה / כיבוי של זרם חילופין מבוקר באמצעות סיסמה הבא: שימוש בחיישני TSOP17XX עם תדרים מותאמים אישית