תוכן עניינים:

אינדיקטור אופניים מינימליסטי, מופעל במגע!: 10 שלבים (עם תמונות)
אינדיקטור אופניים מינימליסטי, מופעל במגע!: 10 שלבים (עם תמונות)

וִידֵאוֹ: אינדיקטור אופניים מינימליסטי, מופעל במגע!: 10 שלבים (עם תמונות)

וִידֵאוֹ: אינדיקטור אופניים מינימליסטי, מופעל במגע!: 10 שלבים (עם תמונות)
וִידֵאוֹ: 🚀 AMAZON 2.0 - חנות מקוונת מאפס תוך 6 שעות [Next / React / Nest / PostgreSQL / Prisma / TS] 2024, נוֹבֶמבֶּר
Anonim
Image
Image

שלום שם! זהו ההנחיה הראשונה שלי. תמיד רציתי לעשות דברים מאפס רק כדי לראות איך זה עובד ומי לא אוהב דברים DIY (עשה זאת בעצמך) כשאתה יכול לשנות משהו בהתאם לצרכים שלך נכון? ובכן, ככל שייתכן שזה נשמע DIY, זה דורש קצת מאמץ כדי שזה יקרה. עיון באתר Instructables הוא דרך מצוינת להתחיל את שאיפות ה- DIY שלך וכך התחלתי לבנות כמה מהפרויקטים שלי קודם לכן, אבל מעולם לא חשבתי שאעשה אחד כזה.

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

למה מחוון אופניים?

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

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

תכונות של פרויקט זה:

  • אינדיקציה לפנייה ימינה
  • אינדיקציה לפנייה שמאלה
  • אינדיקציה לראיית לילה
  • מופעל במגע

שלב 1: חומרים להתחלת העבודה

בדיקת רכיבים
בדיקת רכיבים
  • נגדים (330 אוהם ו -120 אוהם): 330 אוהם ו -120 אוהם
  • Raspberry Pi 3: RPi 3
  • לוח לחם: קרש
  • חוטי מגשר (זכר-זכר, זכר-נקבה, נקבה-נקבה): חוטי מגשר
  • חוטי רב סטרנד: חוט רב סטרנד
  • חיישן מגע קיבולי (TTP223) - (2): קישור
  • נוריות RGB (סוג קתודה נפוצה) - (13): קתודה משותפת של LED RGB
  • נוריות נוריות - (2): LED
  • חומרי הלחמה: ערכת הלחמה
  • לוחות Perf: לוח Perf
  • Powerbank: Powerbank
  • קבלים אלקטרוליטיים 1 מיקרו פאראד: קבלים אלקטרוליטיים
  • LDR (התנגדות תלויה באור): LDR
  • קשרי כבל: קשרים
  • קונסילר כבלים: קונסילר כבלים
  • צבע ומברשות אקריליק (אופציונלי): צבע ומכחולים
  • שתי קופסאות אחסון להרכבה. (1 גדול ואחד בינוני)

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

ציר זמן: אסוף חומרים

שלב 2: בדיקת רכיבים

בדיקת רכיבים
בדיקת רכיבים
בדיקת רכיבים
בדיקת רכיבים
בדיקת רכיבים
בדיקת רכיבים

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

בדוק את סוג ה- RGB LED

ישנם שני סוגים של נוריות RGB שאנו מוצאים בשוק. סוג הקתודה הנפוצה וסוג האנודה הנפוץ.

זהו טיפ שימושי (אם כי גדול יותר) מכיוון שחיברתי את הנוריות כפי שניתן לראות מהסרטון הזה כאן והנורית לא נדלקה כצפוי גם לאחר בדיקה צולבת של המעגל מספר פעמים. ואז הבנתי שיש שני סוגים של הלד הזה ועוברים בגליון הנתונים סוף סוף קיבלתי פתרון! הבעיה במעגל שלי הייתה שסיכת הקתודה הנפוצה הייתה מחוברת ל- 3.3V כאמור ושמרתי לפי סיכת GPIO ל- HIGH כך שגם סיכת הקתודה הנפוצה וגם 3 הפינים האחרים היו באותו פוטנציאל.

פתרון: חיברתי את סיכת הקתודה המשותפת לקרקע והנורית נדלקת! הסיבה שלא שיניתי את הקוד שלי כדי לשמור על סיכות ה- GPIO נמוכות מכיוון שנשתמש יותר נוריות מאוחר יותר וה- RPi נותן לנו רק שני סיכות ב -3.3 וולט שאנו זקוקים להן גם למטרות אחרות!

איך בודקים את הסוג?

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

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

ציר זמן: בדיקת RGB

הפניה: כיצד לבדוק RGB

RGB LED נדלק

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

אדום: פין 11 (נגד 330 אוהם)

ירוק: פין 13 (נגד 120 אוהם)

כחול: פין 15 (נגד 120 אוהם)

ערכי הנגד משתנים בשל המתחים קדימה המשתנים של הלידים.

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

ייבא RPi. GPIO כ- GPIO

#מספרי הסיכה תואמים את המספר המדויק ב- RPi GPIO Red_pin = 11 Green_pin = 13 Blue_pin = 15 #חבר את סיכת הקתודה הנפוצה לסיכה 6 def turnOn (pin): GPIO.setmode (GPIO. BOARD) GPIO.setup (pin, GPIO. OUT) GPIO.output (pin, GPIO. HIGH) #GPIO.output (pin, GPIO. LOW) עבור סוג האנודה הנפוץ turn off (סיכה): GPIO.setmode (GPIO. BOARD) GPIO.setup (סיכה, GPIO. OUT) GPIO.output (pin, GPIO. LOW) #GPIO.output (pin, GPIO. HIGH) def redOn (): turnOn (Red_pin) def redOff (): turnOff (Red_pin) def greenOn (): turnOn (Green_pin) def greenOff (): turnOff (Green_pin) def blueOn (): turnOn (Blue_pin) def blueOff (): turnOff (Blue_pin) נסה: בעוד True: cmd = input ("הקלד את הפקודה שלך:") אם cmd == "אדום מופעל) ": #type פקודות קלט כאמור בדיוק בפנים" "redOn () elif cmd ==" red off ": redOff () elif cmd ==" green on ": greenOn () elif cmd ==" green off ": greenOff () elif cmd == "blue on": blueOn () elif cmd == "blue off": blueOff () אחר: הדפסה ("פקודה לא חוקית") למעט KeyboardInterrupt: GPIO.cleanup ()

התייחסתי למדריך זה, בדוק זאת לתיאור מפורט והקוד!

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

טיפ שימושי: הקפד לחבר את אותו מקביל מסוג סיכה. כלומר, הסיכה האדומה של נורית LED אחת מתחברת לסיכה האדומה של הלד השני בלבד.

ציר זמן: לגרום להם לזהור!

בדיקת לוח מגע

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

קוד:

ייבא RPi. GPIO כ- GPIO

מעת לעת לייבא שינה GPIO.setmode (IO. BOARD) touchpad1 = 11 #pin 11 touchpad2 = 13 #pin 13 GPIO.setup (touchpad1, GPIO. IN) GPIO.setup (touchpad2, GPIO. IN) #אנו יכולים לחבר את שניהם הצהרות לעיל יחד כ- # GPIO.setup ([touchpad1, touchpad2], GPIO. IN) נסה: בעוד True: if (GPIO.input (touchpad1) == True): הדפס ("משטח מגע 1 נגע") שינה (2) elif (GPIO.input (touchpad2) == True): הדפס ("משטח מגע 2 נגע") שינה (2) אחר: הדפס ("לא נגע") למעט מקלדת הפרעה: GPIO.cleanup () #CTRL-C ליציאה

בדיקת LED

עיין במדריך המדהים הזה לבדיקת ה- LED שלך!

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

שלב 3: הלחמת לוח המחוונים

הלחמת לוח המחוונים
הלחמת לוח המחוונים
הלחמת לוח המחוונים
הלחמת לוח המחוונים
הלחמת לוח המחוונים
הלחמת לוח המחוונים

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

לוח המחוונים

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

אנו משתמשים ב- 13 נוריות RGB ללוח. הפרד אותם לשלושה חלקים: שמאל, ימין ומרכז להלחמה בהתאם.

חשוב: מרווח בין הלדים

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

טיפ שימושי: התחל בהלחמה של כל סיכות הקתודה הנפוצות

טיפ שימושי: השתמש בחוטי Multi-Strand לחיבור הנוריות יחד מכיוון שהן פחות יציבות וקלות לכופף. אתה יכול להשתמש בסיכות החיתוך הנוספות מהנוריות כדי לחבר את המרחקים הקצרים יותר

קטע ימין: (5 נוריות)

  • חבר את כל הסיכות האדומות יחד
  • חבר את כל הפינים הירוקים יחד
  • חבר את כל סיכות הקתודה הנפוצות יחד

החלק השמאלי: (5 נוריות LED)

  • חבר את כל הסיכות האדומות יחד
  • חבר את כל הפינים הירוקים יחד
  • חבר את כל סיכות הקתודה הנפוצות יחד

קטע מרכזי: (3 נוריות)

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

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

חוטים

אנו זקוקים לחוטים ארוכים יותר לחיבור הלוח ללוח GPIO.

טיפ שימושי:

  • השתמש בחוטים חד-גדילים! הם חסונים מספיק כדי לעמוד בלחצים מכניים המופעלים עליו!
  • שמור על החוטים קצת יותר ארוך מהאורך בפועל הדרוש בין הלוח ל- RPi (זה מאוד שימושי בעת ניהול החוטים מאוחר יותר! (ציר זמן: מדידות)
  • לבודד לאחר הלחמה! חשוב מאוד

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

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

אנו דורשים 3 חוטים שחורים, 3 חוטים אדומים ו -3 חוטים ירוקים.

ברגע שהחוטים מוכנים. הלחם את החוטים לנורות החיווי.

עצות שימושיות:

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

שלב 4: בצע את לוח המחוונים לבדיקה

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

כָּבוֹד! אם הלחמת את הלוח כראוי. בואו נמשיך עם קידוד המחוון עכשיו!

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

עיין בחיבור המעגל בשלב 3.

חבר את חוטי הלוח כאמור להלן:

  • אדום ימין - סיכה 7
  • ימין ירוק - פין 11
  • קתודה נפוצה ימנית - פין 6 (GND)
  • אדום שמאל - סיכה 13
  • ירוק שמאל - פין 15
  • קתודה נפוצה שמאל - פין 9 (GND)
  • מרכז אדום - סיכה 16
  • מרכז ירוק (עליון ותחתון) - פין 18
  • מרכז קתודה משותפת - סיכה 14 (GND)

קוד מבחן:

ייבא RPi. GPIO כ- GPIO

מעת לעת ייבא שינה #התחבר לפי מספרי הסיכות למטה Red_right = 7 Green_right = 11 Red_left = 13 Green_left = 15 Red_center = 16 Green_top_bottom = 18 GPIO.setmode (GPIO. BOARD) def right_turn (): print ("פונה ימינה") מצמוץ (Green_right, Green_top_bottom, 0) def left_turn (): print ("פונה שמאלה") מצמץ (Green_left, Green_top_bottom, 0) def blink (pin1, pin2, pin3): if (pin3 == 0): GPIO.setup ([pin1, pin2], GPIO. OUT) עבור x בטווח (10): GPIO.output ([pin1, pin2], GPIO. HIGH) שינה (0.5) GPIO.output ([pin1, pin2], GPIO. LOW) שינה (0.5) אחר: GPIO.setup ([pin1, pin2, pin3], GPIO. OUT) עבור x בטווח (10): GPIO.output ([pin1, pin2, pin3], GPIO. HIGH) שינה (0.5) GPIO.פלט ([pin1, pin2, pin3], GPIO. LOW) שינה (0.5) def night_sight (): הדפסה ("ראיית לילה ON") מהבהבים (Red_left, Red_right, Red_center) נסה: בעוד True: cmd = input (" בדיקת נורית LED עבור: ") אם cmd ==" פנייה ימינה ": right_turn () elif cmd ==" פנייה שמאלה ": left_turn () elif cmd ==" ראיית לילה ": night_sight () else: print (" פקודה לא חוקית ") למעט ק yboardInterrupt: GPIO.cleanup ()

אם הלוח שלך מנקה את כל שלבי הבדיקה כמו בקוד, כל הכבוד! היכונו לשלב הבא

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

ציר זמן: בדוק ONE (בדוק בסרטון את אב הטיפוס העובד)

שלב 5: שילוב לוח המחוונים עם לוח המגע

שילוב לוח המחוונים עם לוח המגע
שילוב לוח המחוונים עם לוח המגע
שילוב לוח המחוונים עם לוח המגע
שילוב לוח המחוונים עם לוח המגע
שילוב לוח המחוונים עם לוח המגע
שילוב לוח המחוונים עם לוח המגע

מחברים אותו ל- RPi

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

לוח ימין

לוח מגע:

  • סיכת GND - פין 34
  • סיכת VCC - סיכה 1
  • סיכת SIG - סיכה 29

לד:

סיכת אנודה (+) - סיכה 33

לוח שמאל

לוח מגע:

  • סיכת GND - סיכה 30
  • סיכת VCC - סיכה 17
  • סיכת SIG - סיכה 31

לד:

סיכת אנודה (+) - פין 35

GND נפוץ: פין 39 (לשתי הקתודות של הנורות) - הלחמה קרקעית משותפת (ציר זמן)

קוד מבחן:

ייבא RPi. GPIO כ- GPIO

מעת עת ייבוא שינה Red_right = 7 Green_right = 11 Red_left = 13 Green_left = 15 Red_center = 16 Green_top_bottom = 18 right_touch = 29 left_touch = 31 right_led = 33 left_led = 35 triggered = 0 GPIO.setmode (GPIO. BOARD) GPIO.setup ([right_led, left_led], GPIO. OUT) GPIO.setup (right_touch, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (left_touch, GPIO. IN, pull_up_down = GPIO. PUD_UP) def right_turn (ערוץ): GPIO.output (ימין_מטה, GPIO. HIGH) מופעל עולמי מופעל = הדפסה אחת ("פונה ימינה") מצמוץ (ירוק_ימין, גרין_טופ_בוטום) def left_turn (ערוץ): GPIO.output (left_led, GPIO. HIGH) מופעל עולמי מופעל = הדפסה אחת ("מפנה" שמאל ") מצמוץ (ירוק_שמאל, גרין_טופ_בוטום) GPIO.add_event_detect (ימין_מגע, GPIO. FALLING, התקשרות חזרה = ימינה_סיבוב, הקפצה = 500) GPIO.add_event_detect (שמאל_מגע, GPIO. FALLING, התקשרות חזרה = שמאל_סיבוב, הקפצה = 500) מהבהב (pin1, pin2): GPIO.setup ([pin1, pin2], GPIO. OUT) עבור x בטווח (10): GPIO.output ([pin1, pin2], GPIO. HIGH) שינה (0.5) GPIO.outpu t ([pin1, pin2], GPIO. LOW) שינה (0.5) פלט GPIO.output

גע במשטח המגע כדי לראות את זוהר האור שלך

ציר זמן (ללא נורית חיווי): מבחן שני

ציר זמן (עם חיווי LED): מבחן 3

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

למידע נוסף על הפרעות, עיין בקישור זה.

הלחם את הלוח

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

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

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

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

חבר את הלוח ל- RPi באמצעות חוטים ארוכים יותר

שלב 6: עשה את זה חכם

עשה את זה חכם!
עשה את זה חכם!
עשה את זה חכם!
עשה את זה חכם!
עשה את זה חכם!
עשה את זה חכם!

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

כאן חכמה מגדירה גם חיסכון בסוללה. כפי שאולי שמתם לב, מראה הלילה תמיד מופעל ולפעמים זה לא יידרש ביום שמש בהיר. כדי להתגבר על בעיה זו מאפשר לשלב LDR (Resistor Dependent Light) כדי לתת לנו את הנתונים של עוצמת האור אותם אנו יכולים לאסוף ולעבד את המחוון שלנו בהתאם.

בדיקת LDR

פניתי לאתר זה לבדיקת ה- LDR כדי לבדוק את עוצמת האור ומה הערך שהוא מחזיר.

עיין באתר המתויג למעלה עבור המעגל וקוד המדגם לעבודה של ה- LDR.

שילוב ה- LDR בקוד שלנו

הלחם את ה- LDR ללוח הימני של לוח המגע כפי שמוצג בתרשים החיבור למעלה.

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

  • חבר את הנקודה המשותפת של הקתודה (-) של הקבל ואת ה- LDR לפין 36 ב- RPi
  • האנודה של הקבל מחוברת לנקודת הקרקע המשותפת אליה נקרא שלב 5

קוד סופי:

ייבא RPi. GPIO כ- GPIO

מעת עת ייבוא שינה Red_right = 7 Green_right = 11 Red_left = 13 Green_left = 15 Red_center = 16 Green_top_bottom = 18 right_touch = 29 left_touch = 31 right_led = 33 left_led = 35 ldr = 36 triggered = 0 GPIO.setmode (GPIO. BOARD) GPIO. setup ([right_led, left_led], GPIO. OUT) GPIO.setup (right_touch, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup (left_touch, GPIO. IN, pull_up_down = GPIO. PUD_UP) def right_turn (ערוץ): פלט GPIO.output (מימין_מטה, GPIO. HIGH) מופעל עולמי = הדפסה אחת ("פנייה ימינה") מצמוץ (ירוק_ימין, גרין_טופ_בוטום) def left_turn (ערוץ): GPIO.output (left_led, GPIO. HIGH) מופעל עולמי מופעל = הדפסה אחת ("פונה שמאלה") מהבהב (ירוק_שמאל, ירוק_תחתון) GPIO.add_event_detect (ימין_מגע, GPIO. FALLING, callback = ימינה_הפעלה, הקפצה = 500) GPIO.add_event_detect (left_touch, GPIO. FALLING, callback = left_turn, bouncetime = 500) defence (ldr): count = 0 #פלט בסיכה עבור GPIO.setup (ldr, GPIO. OUT) GPIO.output (ldr, GPIO. LOW) שינה (0.1) #Chang e הסיכה חזרה לקלט GPIO.setup (ldr, GPIO. IN) #ספירה עד שהסיכה עולה גבוה בעוד (GPIO.input (ldr) == GPIO. LOW): count += 1 count return = מהבהב (pin1, pin2): GPIO.setup ([pin1, pin2], GPIO. OUT) עבור x בטווח (10): פלט GPIO.output

וואלה! והמחוון מוכן להתגלגל.

טיפ שימושי: לפני הרכבת ה- RPi ורכיבים אחרים למחזור הקפד לבדוק את התוכנית הזו כראוי! הפעל אותו כמה פעמים כדי לאתר באגים כל שגיאה.

שלב 7: צביעה והרכבה

ציור והרכבה
ציור והרכבה
ציור והרכבה
ציור והרכבה
ציור והרכבה
ציור והרכבה

חומרים דרושים:

  • כלי חיתוך/ הפשטת חוטים
  • קופסת אחסון אחת גדולה שתתאים ל- Raspberry Pi
  • קופסת אחסון אחת קטנה שתתאים ללוח המחוונים
  • צֶבַע
  • מברשות צבע

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

הערה: אנא היזהר בעת יצירת חורים.

ציר זמן: צבע

טיפ שימושי: השתמשתי בקופסאות פלסטיק והצבע יורד בקלות. הקפד להשתמש בצבעים באיכות טובה

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

חתכתי קצוות נוספים של לוח הפרפסים בלוח המחוונים והפנל הקדמי כדי לחסוך מקום.

בדוק את הסרטון להרכבה!

ציר זמן: הנוקמים! להרכיב. (הרכבת לוח המחוונים ו- RPi עם קופסאות)

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

טיפ שימושי: בדוק אם יש בידוד של החוטים ובדוק אם החוטים מולחמים כהלכה לפני חיבורם לקופסה.

שלב 8: בדיקה מרחוק עם VNC וקוד סופי

בדיקה מרחוק עם VNC וקוד סופי
בדיקה מרחוק עם VNC וקוד סופי
בדיקה מרחוק עם VNC וקוד סופי
בדיקה מרחוק עם VNC וקוד סופי

בדיקה אחרונה אחת לפני שהמחוון מוכן במלואו. חבר את ה- RPi שלך ל- VNC Viewer והפעל את התוכנית.

אני תמיד משתמש בשרת VNC כדי להריץ את התוכנית ולבצע איתור באגים בכל שגיאות בתוכנית. בדרך זו אוכל למקם את ה- RPi ישירות למקום בו אני רוצה לבדוק מבלי לחבר את הצג כלפי חוץ.

בדוק דף זה כדי לחבר את ה- RPi שלך לשרת VNC. (שרת VNC)

לאחר שחיברת את ה- RPi לשרת VNC. אתה יכול להריץ את הקוד בשולחן העבודה הווירטואלי ולפתור את השגיאות.

ציר זמן: הפעלה בעת אתחול

טיפ שימושי: לאחר שחיברת את ה- Raspberry Pi לשולחן העבודה הווירטואלי תיכנס באמצעות כתובת ה- IP של ה- RPi. אבל אם אתה מקבל שגיאה המציינת כי ה- RPi סירב לחיבור, זה בגלל שינוי כתובת ה- IP ב- RPI. זה יכול לקרות כאשר אתה מפעיל מחדש את הנתב או נקודה חמה של WiFi ולאחר מכן מנסה להיכנס באמצעות הכתובת הישנה. הנתב מקצה IP חדש בכל פעם שאתה מפעיל אותו מחדש.אבל אם אתה זוכר את כתובת ה- IP הישנה של ה- RPi פשוט תגדיל את הספרה האחרונה ב -1 והתחבר. דוגמה: אם כתובת ה- IP הישנה היא 190.148.1.100 אז התחבר באמצעות 190.148.1.101

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

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

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

אם ה- RPi שלך נמצא בהגדרת התחברות אוטומטית, המשך;

הפעל את הפקודות הבאות במסוף ה- RPi

sudo nano /etc /profile

גלול לתחתית והוסף את השורה הבאה:

sudo python file_path &

קובץ_התייחס כאן מתייחס לנתיב של קובץ ה- Python בו מאוחסן הקוד הסופי שלך.

הערה: יש להוסיף את אמפרסנד (&) בסוף הקובץ כך שהתוכנית שלך פועלת במקביל לאתחול המערכת. מכיוון שהתוכנית שלנו מכילה לולאה אינסופית, שלב זה הוא חובה, כך שגם אם התוכנית לא פועלת כצפוי נוכל עדיין להשתמש בשולחן העבודה של RPi כדי לשנות את ההגדרות.

לאחר מכן הקש CTRL-X ולאחר מכן הקש Y Enter פעמיים ותחזור למסוף הפקודות.

אתחל את הפי

כעת הקוד אמור לפעול בעת ההפעלה

שלב 9: ניהול כבלים והרכבה סופית

ניהול כבלים והרכבה אחרונה
ניהול כבלים והרכבה אחרונה
ניהול כבלים והרכבה אחרונה
ניהול כבלים והרכבה אחרונה
ניהול כבלים והרכבה אחרונה
ניהול כבלים והרכבה אחרונה

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

אם ביצעת את הפרויקט הזה לחץ על "הצלחתי" ושתף את החוויה שלך. שתף את דעתך וגם הצעות או הערות על הפרויקט הזה. אני אשמח לשמוע את זה!

ניהול כבלים

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

טיפ שימושי: מכיוון שהשארת סנטימטרים נוספים מהכבלים מהנדרש, שימושי כעת לנהל אותם כראוי מבלי להלחיץ אותם! אם אחד מנורות ה- LED שלך נדלק ואחרות לא אפילו אם עשית הכל נכון, הבעיה היא חוטי המגשר המחוברים ל- RPi, יהיה מגע רופף. אם זה נמשך השתמש בחוט מגשר בין זכר לנקבה כדי להאריך את החוט ולחבר אותם. השתמש בקשרי כבלים כדי לשמור על החוטים במקומם כך שלא יזוז.

כעת המחוון מוכן לרכיבה! תהנה

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

שלב 10: כמה תמונות של המחוון

כמה תמונות של המחוון
כמה תמונות של המחוון
כמה תמונות של המחוון
כמה תמונות של המחוון
כמה תמונות של המחוון
כמה תמונות של המחוון
כמה תמונות של המחוון
כמה תמונות של המחוון

תודה שקראת את המדריך הזה. אני מקווה שנהניתם כמוני בהכנתו

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

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

מוּמלָץ: