תוכן עניינים:
וִידֵאוֹ: לחצן כיבוי ל- Raspberry Pi: 3 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:11
ה- Raspberry Pi היא פלטפורמת מחשוב שימושית מאוד המאפשרת ליצור יישומי IoT/רובוטיקה/בית חכם/… הדבר היחיד שאין לו, לעומת מחשב רגיל, הוא לחצן כיבוי. אז איך נוכל ליצור אחד בעצמנו? בסדר, בואו נעשה את זה ביחד!
להדרכה זו תזדקק לדברים הבאים:
- 1 פטל פטל כבר מוגדר ומוכן לשימוש
- קרש לחם אחד או משהו שיאפשר לך ליצור את המעגל האלקטרוני
- כפתור אחד
- 2 חוטי מגשר
אם מעולם לא השתמשת ב- Raspberry Pi, תוכל לעיין במדריך שלי כיצד ומה לעשות כדי להגדיר אותו:
www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/
שלב 1: מעגל אלקטרוני
אין כאן שום דבר מסובך במיוחד, זה מעגל די פשוט. 2 התמונות למעלה מסבירות את בניית המעגל. אתה יכול להשתמש בכל סיכת GPIO שתרצה עבור קלט הכפתורים, תצטרך רק לוודא לעדכן את הקוד כך שישקף אותו.
בואו להסביר במהירות איך זה הולך לעבוד:
- החוט האדום לוקח את 3.3V לקצה אחד של כפתור הלחיצה.
- הכבל BLACK מחבר את הקצה השני של כפתור הלחיצה ל- Pi GPIO שישמש כקלט.
- כברירת מחדל הכפתור פתוח, כך שאין מתח שעובר בו. אז הכבל BLACK הוא ב 0V כאשר הכפתור אינו נלחץ. המשמעות היא שהמצב הלוגי של קלט ה- Pi GPIO הוא 0.
- כאשר יילחץ על הכפתור, המתח יעבור דרכו והכבל BLACK יקושר ל- 3.3V. ה- Raspberry Pi יראה אז מתח של 3.3V בכניסה שלו, המתאים למצב לוגי של 1.
שלב 2: קוד פייתון
כעת, כאשר המעגל מוכן לשימוש, עלינו לכתוב את הקוד שיפעיל אותו, ואני משתמש ב- Python בסביבת PyCharm כאן. הגדרתי את הכפתור לכיבוי ה- Raspberry Pi רק כאשר לוחצים עליו יותר מ -3 שניות. הסיבה שאני עושה זאת היא שקל מאוד ללחוץ עליו בטעות, ואתה לא רוצה לכבות את ה- Pi שלך במקרה.
מסך ההדפסה למעלה הוא מסביבת PyCharm שלי, והקוד הוא הבא (עם הבדל קטן בקו 26 המקושר לפרויקט אחר אך אינו נדרש כאן):
# זהו קוד להפסקת ה- Raspberry Pi בעת לחיצה ממושכת על כפתור מוגדר כדי לכבות את Raspberry PiGPIO.setwarnings (False) GPIO.setmode (GPIO. BCM) # תוכנית מספרי סיכה של Broadcom GPIO.setup (button_poweroff, GPIO. IN, pull_up_down = GPIO. PUD_DOWN) # כפתור מוגדר כקלט בזמן אמת: GPIO.wait_for_edge (button_poweroff, GPIO. RISING) start = time.time () time.sleep (0.2) # הפחתת מתג בעוד GPIO.input (button_poweroff) == 1: time.sleep (0.01) length = time.time () - התחל אם אורך > hold_time: os.system ("sudo poweroff")
הדבר הראשון, אם חיברת את כפתור הלחיצה ל- GPIO אחר, הוא עדכון שורה 11 במסך ההדפסה לעיל עם קלט GPIO הרלוונטי:
button_poweroff = GPIO_X # עדכן עם ה- GPIO הנכון המשמש במעגל שלך
כמו כן, המשתנה hold_time מאפשר לך לשנות את זמן ההמתנה המפעיל את הפי כיבוי.
שלב 3: כיצד להפעיל את הסקריפט באופן אוטומטי לאחר הליך האתחול
עכשיו שיש לנו את הקוד מוכן, אנחנו רק צריכים לבצע אותו. אבל זה יהיה נוח אם נוכל להריץ את הסקריפט הזה בכל פעם שה- Pi מופעל באופן אוטומטי, כך שהכפתור יעבוד בלעדינו להריץ את הסקריפט בכל פעם. ישנן דרכים רבות לעשות זאת. הוספתי כאן שורה אחת לקובץ rc.local שנמצא בתיקייה / etc / של ה- Pi שלך. הוא מבוצע כחלק מרצף האתחול.
עליך לפתוח שורת פקודה ולהקליד את הפקודות הבאות (מסך הדפסה ראשון למעלה):
תקליטור /
cd וכו 'sudo nano rc.local
הפקודה הראשונה תעביר אותך מספריית /home /pi לשורת הבסיס, שהיא /.
הפקודה השנייה תעביר אותך לספריית / etc /.
לבסוף, השלישי יפתח את הקובץ rc.local כמשתמש -על, עם זכויות עריכה מלאות, אותן עליך לשנות את הקובץ.
לאחר שהיית בקובץ, אתה רק צריך להוסיף שורה בסוף זה, אבל לפני משפט יציאה 0 (מסך הדפסה 2 למעלה):
# הוסף שורה זו לקובץ rc.local להפעלת התסריט
sudo python /home/pi/Documents/shutdown_with_hold.py &
יש כמה דברים שאתה צריך לשים לב אליהם, כאן:
- שם הקובץ שלך: בשורה למעלה, אני מניח שהקובץ הוא shutdown_with_hold.py. אבל זה יכול להיות מה שאתה רוצה, רק עדכן את השם שלך.
- היכן שמרת את הקובץ שלך: בשורה למעלה, אני מניח שהוא נשמר בספריית/home/pi/Documents. אבל שוב, זה יכול להיות בכל מקום. אתה רק צריך לוודא כאן את הנתיב המוחלט לקובץ שלך.
- התו "&" בסוף זה: זה חשוב, וזה מאפשר לפקודה זו לפעול ברקע
וזה הכל! אז עכשיו, התסריט יבוצע בכל פעם שה- Pi שלך יהיה מופעל, ותצטרך ללחוץ יותר מ -3 שניות על הכפתור כדי לכבות אותו.
מוּמלָץ:
רובוט כיבוי אש אוטונומי עם להבות שמציעות את עצמן: 3 שלבים
רובוט לכיבוי אש אוטונומי עם להבות המציאות את עצמן: רובוט אוטומטי לכיבוי אש הכי חזק GEN2.0HII..זהו הפרויקט הראשון שלנו. אז בואו נתחיל. הרעיון של הרובוט הזה הוא פשוט מאוד. להציל חיי אדם אוטומטי בעלות נמוכה, חסין אש מהיר
MOD: Ender 3 LCD תאורה אחורית הפעלה/כיבוי: 6 שלבים
MOD: Ender 3 LCD תאורה אחורית הפעלה/כיבוי: Mod להדפסה/כיבוי של אור תצוגה בלילה. עכשיו אתה יכול לכבות את התאורה האחורית
אור חג המולד LED (עם כיבוי/כיבוי): 3 שלבים
אור חג המולד LED (עם הפעלה/כיבוי): פרויקט זה הוא גרסה שונה של https: //www.instructables.com/id/Arduino-Christma …, בו הוספתי כפתור למשתמש לשלוט מתי לפנות האור דולק
בקר מיקרו AVR. החלף נוריות LED באמצעות מתג לחצן. הפעלת לחצן לחיצה: 4 שלבים
בקר מיקרו AVR. החלף נוריות LED באמצעות מתג לחצן. הפעלת לחצני לחיצות: בפרק זה נלמד כיצד ליצור קוד C של תוכנית ATMega328PU כדי להחליף את מצב שלוש נוריות הלדים בהתאם לקלט ממתג כפתורים. כמו כן, חקרנו פתרונות לבעיה של 'Switch Bounce'. כרגיל, אנו יכולים
בנה שעון אמיתי פעמון למחשב האישי שלך ושעון כיבוי כיבוי אש: 3 שלבים (עם תמונות)
בנה שעון אמיתי עם פעמון למחשב האישי שלך ושעון מטף כיבוי אש: פעמון פליז, ממסר קטן ועוד כמה דברים ופעמון אמיתי יכול להכות את השעות על שולחן העבודה שלך. למרות שפרויקט זה פועל על Windows ו- Mac גם OS X, החלטתי להתקין את אובונטו לינוקס במחשב שמצאתי באשפה ולעבוד על זה: מעולם לא