תוכן עניינים:
וִידֵאוֹ: איך יוצרים קו באמצעות Arduino: 8 שלבים (עם תמונות)
2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-13 06:57
מאת miniProjectsminiProjectsFollow עוד מאת המחבר:
אודות: בדוק את ערוץ היוטיוב שלי לפרויקטים דומים. עוד על מיני פרוייקטים »
אם אתה מתחיל עם רובוטיקה, אחד הפרויקטים הראשונים שמבצעים מתחילים כולל עוקב אחר קווים. זוהי מכונית צעצוע מיוחדת בעלת רכוש לרוץ לאורך קו שבדרך כלל הוא בצבע שחור בניגוד לרקע.
בואו נתחיל.
שלב 1: וידאו
מצורף סרטון מקיף. בבקשה תסתכל.
שלב 2: בלוקים מרכזיים
אנו יכולים לחלק את עוקב הקווים בארבעה בלוקים מרכזיים. חיישני IR-photodiode, נהג מנועים, ארדואינו ננו/קוד ומארז צעצוע יחד עם גלגלי פלסטיק ומנועי DC 6V. בואו נסתכל על הבלוקים האלה אחד אחד.
שלב 3: מודול IR-Photodiode (חלק 1 מתוך 3)
תפקידו של חיישן IR-פוטודיודה בחסיד הקווים הוא לזהות אם יש לו קו שחור מתחתיו. אור IR הנפלט מ- IR LED, חוזר מהמשטח שמתחתיו כדי להילכד על ידי פוטודיודה. הזרם דרך הפוטודיודה הוא פרופורציונאלי לפוטונים שהוא מקבל והפיזיקה אומרת שצבע שחור סופג קרינות IR, ולכן אם יש לנו קו שחור מתחת לפוטודיודה הוא מקבל פחות פוטונים וכתוצאה מכך זרם פחות בהשוואה לאילו היו לו משטח רפלקטיבי כמו לבן מתחתיו.
אנו נהפוך את האות הנוכחי לאות מתח אותו יכול Arduino לקרוא באמצעות DigitalRead בשלב הבא.
שלב 4: מודול IR-Photodiode (חלק 2 מתוך 3)
זרם הפוטודיודה מועבר בנגד 10 קאוהם ליצירת ירידת מתח פרופורציונלית, נקרא לזה Vphoto. אם יש משטח לבן מתחת, זרם הפוטודיודה עולה ומכאן Vphoto, לעומת זאת עבור משטח שחור שניהם פוחתים. Vphoto מחובר למסוף הלא הפוך של LM741 opamp. בתצורה זו אם המתח במסוף שאינו היפוך (+) גדול מהמתח במסוף ההיפוך (-), פלט opamp מוגדר ל- HIGH ו- LOW לסיבוב אחר. הגדרנו בזהירות את המתח בסיכה ההפוכה להיות בין קריאת מתח לצבעים לבנים ושחורים באמצעות פוטנציומטר. על כך תפוקת מעגל זה גבוהה בלבן וצבע שחור נמוכה, וזה מושלם עבור ארדואינו לקרוא.
סימנתי תמונות מצורפות לפי התיאור למעלה להבנה טובה יותר.
שלב 5: מודול IR-Photodiode (חלק 3 מתוך 3)
רק חיישן IR-פוטודיודה אחד אינו מספיק ליצירת עוקב קו מכיוון שלא נדע את כיוון היציאה כדי לפצות על שימוש במנועים. מכאן שהשתמשתי במודול חיישן המכיל 6 מעגל פוטודיודה IR המוצג בתמונה המצורפת. 6 פוטודיודה IR ממוקמות כשלוש אשכולות בזוג 2. אם אשכול מרכזי קורא שחור ושניים אחרים קוראים לבן, נוכל להמשיך קדימה. אם האשכול השמאלי קורא שחור, עלינו לפנות עוקב שמאלה כדי לשמור על העוקב על המסלול. אותו דבר לגבי אשכול ימין.
שלב 6: נהג מנוע
כדי להזיז עוקב אני משתמש בשני מנועי 6V DC, הנשלטים באמצעות נהג מנוע L293D. אם המנוע מחובר כפי שמוצג כפי שמודגש בתמונה המצורפת מספר 4, הגדרת הפעלה וסיכה 1A לגבוה יחד עם פין 2A עד נמוך מנוע בכיוון אחד. כדי להזיז אותו לכיוון אחר עלינו להחליף מצב של סיכות 2A ו- 1A. לא נזדקק לרגע דו כיווני שכן העוקב תמיד מתקדם. כדי לפנות שמאלה אנו משביתים את המנוע השמאלי כשהמנוע הימני ממשיך לפעול ולהיפך.
שלב 7: ארדואינו ננו וקוד
5V arduino ננו הפועל במהירות 16MHz מחליט אם העוקב צריך לפנות ימינה או שמאלה. ההחלטות מתקבלות על ידי הסתכלות על קריאת מערך חיישן IR-Photodiode. קוד arduino מצורף מסדיר את תנועת העוקבים. הפסקה הבאה נותנת מבט מלמעלה על קוד הארדואינו.
בתחילה אנו מצהירים על 6 חיישן ו -4 סיכות מנוע. בהגדרה, הגדרנו סיכות מנוע לפלט מכיוון שמצב ברירת המחדל הוא קלט. בלולאה, ראשית אנו קוראים את כל סיכות החיישנים, לאחר מכן שרשרת של הצהרות אם-אחר המחליטים על תנועת העוקב. כמה אמירות עוזרות לו להתקדם. חלק מההצהרות עוזרות לו לעצור וחלקן מאפשרות לו ללכת שמאלה או ימינה.
עברו על הקוד וספרו לי אם נתקלתם בבעיה כלשהי.
שלב 8: סכמטי ו- FINISH
לבסוף הכל הורכב על פי סכמטי המצורף באמצעות מעט חוטים ולוח לחם. אז הנה לכם, שורה אחרי מכונית צעצוע.
תודה שקראתם.
מקווה לראות את התמונה של חסיד השורות שלך בתגובות.