מדריך חיבור חיישן פס דיגיטלי KY-033 ל-Arduino ו-ESP32:
במדריך זה נלמד כיצד לחבר חיישן פס דיגיטלי KY-033 לבקר Arduino UNO ולבקר ESP32.
נראה איך החיישן מזהה קו שחור או משטח בהיר, איך לקרוא את יציאת OUT,
ואיך להשתמש בו בפרויקטים של רובוט עוקב קו.
מהו חיישן KY-033?
KY-033 הוא מודול חיישן פס דיגיטלי המבוסס על חיישן אופטי מחזיר מסוג TCRT5000.
החיישן שולח אור אינפרא-אדום אל המשטח ומודד את כמות האור שחוזרת אליו.
משטח בהיר מחזיר יותר אור, ומשטח כהה או קו שחור מחזיר פחות אור.
לכן המודול מתאים במיוחד לרובוטים עוקבי קו, זיהוי משטח, זיהוי קצה מסלול וניסויים ברובוטיקה.
איך החיישן עובד?
בתוך החיישן TCRT5000 יש LED אינפרא-אדום ופוטוטרנזיסטור.
ה-LED מאיר את המשטח, והפוטוטרנזיסטור מודד את ההחזר.
על המודול נמצא גם שבב השוואה LM393 ופוטנציומטר לכיוון רגישות.
היציאה של המודול היא דיגיטלית:
- כאשר החיישן מזהה החזר אור חזק — מתקבל מצב אחד ביציאה.
- כאשר החיישן נמצא מעל קו שחור או משטח כהה — מתקבל מצב אחר ביציאה.
- את סף הזיהוי מכוונים בעזרת הפוטנציומטר שעל המודול.
חשוב לדעת: בחלק מהמודולים הערך LOW מציין קו שחור, ובחלק אחר ההתנהגות יכולה להיות הפוכה.
לכן תמיד מומלץ לבדוק את הערך ב-Serial Monitor ולכוון את הקוד לפי המודול בפועל.
פינים במודול KY-033
| פין | תפקיד |
|---|---|
| VCC / + | מתח הזנה למודול |
| GND / – | אדמה |
| OUT / S | יציאה דיגיטלית לפי החזרת האור מהמשטח |
רכיבים נדרשים
- חיישן פס דיגיטלי KY-033
- Arduino UNO או ESP32
- Breadboard
- חוטי Dupont
- כבל USB
- משטח בדיקה עם קו שחור ורקע בהיר
חיבור KY-033 ל-Arduino UNO

| KY-033 | Arduino UNO |
| VCC / + | 5V |
| GND / – | GND |
| OUT / S | D2 |
הסבר חיבור
ב-Arduino UNO מחברים את יציאת OUT של החיישן לפין דיגיטלי, לדוגמה D2.
החיישן מקבל מתח הזנה של 5V, והבקר קורא מצב HIGH או LOW לפי החזרת האור מהמשטח.
יש לכוון את הפוטנציומטר שעל המודול כך שהחיישן יבדיל בצורה יציבה בין קו שחור לבין רקע בהיר.
מומלץ לבדוק את הקריאה כאשר החיישן נמצא מעל הרקע הבהיר ואז מעל הקו השחור.
קוד Arduino בסיסי לקריאת החיישן
const int lineSensorPin = 2;
void setup() {
Serial.begin(9600);
pinMode(lineSensorPin, INPUT);
}
void loop() {
int sensorState = digitalRead(lineSensorPin);
Serial.print("KY-033 value: ");
Serial.println(sensorState);
if (sensorState == LOW) {
Serial.println("Line detected");
} else {
Serial.println("No line detected");
}
Serial.println("-------------------");
delay(500);
}הסבר הקוד
הקוד קורא את יציאת OUT של החיישן ומציג את הערך ב-Serial Monitor.
בדוגמה זו מצב LOW נחשב כזיהוי קו, אך במודול מסוים ייתכן שההתנהגות תהיה הפוכה.
אם בזמן בדיקה רואים שהחיישן מזהה הפוך, אפשר פשוט להחליף את התנאי בקוד:
להשתמש ב-HIGH במקום LOW.
חיבור KY-033 ל-ESP32

הערה חשובה לפני החיבור
ESP32 עובד ברמת לוגיקה של 3.3V.
מכיוון שמודול KY-033 יכול לעבוד גם במתח 3.3V, מומלץ להזין אותו מ-3V3 כאשר מחברים אותו ל-ESP32.
אם מזינים את המודול מ-5V, אין לחבר את OUT ישירות ל-ESP32 ללא התאמת רמות מתח,
משום שכניסות ESP32 אינן מיועדות לרמת 5V.
| KY-033 | ESP32 |
| VCC / + | 3V3 |
| GND / – | GND |
| OUT / S | GPIO27 |
הסבר חיבור
ב-ESP32 מחברים את יציאת OUT לפין דיגיטלי רגיל, לדוגמה GPIO27.
החיבור המומלץ הוא להזין את המודול מ-3V3 כדי שרמת האות תתאים ל-ESP32.
אם החיישן לא מגיב בצורה יציבה, יש לכוון את הפוטנציומטר,
לבדוק את גובה החיישן מהמשטח ולוודא שתאורת הסביבה אינה חזקה מדי.
קוד ESP32 בסיסי לקריאת החיישן
const int lineSensorPin = 27;
void setup() {
Serial.begin(115200);
pinMode(lineSensorPin, INPUT);
}
void loop() {
int sensorState = digitalRead(lineSensorPin);
Serial.print("KY-033 value: ");
Serial.println(sensorState);
if (sensorState == LOW) {
Serial.println("Line detected");
} else {
Serial.println("No line detected");
}
Serial.println("-------------------");
delay(500);
}הסבר הקוד
הקוד עבור ESP32 קורא את מצב החיישן מפין GPIO27 ומציג את הערך ב-Serial Monitor.
גם כאן יש לבדוק בפועל האם LOW או HIGH מתאים לזיהוי הקו, משום שזה תלוי במודול ובכיוון הרגישות.
טיפים לעבודה נכונה
- שמרו על מרחק קבוע בין החיישן לבין המשטח.
- כוונו את הפוטנציומטר עד שמתקבלת הבחנה ברורה בין שחור ללבן.
- השתמשו במסלול עם ניגודיות גבוהה: קו שחור על רקע לבן או להפך.
- הימנעו מאור שמש ישיר או תאורה חזקה מאוד על החיישן.
- ברובוט עוקב קו מומלץ להשתמש בשני חיישנים או יותר לקבלת שליטה טובה יותר.
פרויקט לדוגמה
רובוט עוקב קו עם שני חיישני KY-033

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