תוכן עניינים:
- שלב 1: הגדר את השרת שלך
- שלב 2: הגדר את ה- Pi והתקן את Darkice
- שלב 3: לחצן הזרמה ושלט אוויר
- שלב 4: לחצן כיבוי בטוח ונורית פעילות
- שלב 5: הפעל את סקריפטים של פייתון מהאתר
- שלב 6: בנה את הקופסה
- שלב 7: התקנה
וִידֵאוֹ: תיבת הזרמת רדיו בלחצן אחד: 7 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
בניתי קופסה לבר של החבר שלי שבתוכו יש פטל פטל ובלחיצת כפתור אחת היא מזרימה אודיו לאתר באמצעות Darkice ו- Icecast, ובה בעת מדליקה שלט 'בשידור'. חשבתי שזה משהו שאנשים כבר עושים אבל לאחר חיפוש מקיף לא מצאתי כלום והחלטתי להבין את זה בעצמי ולהפוך את זה למדריך.
השתמשתי ב- Raspberry Pi 3+ B אבל למיטב ידיעתי זה יעבוד על כל פי (אולי מספרי הסיכות של GPIO ישתנו, אבל אני לא יכול להעיד על כך). השתמשתי בחבילת NOOBS עבור מערכת ההפעלה וקניתי כרטיס קול סופר פשוט לקלט. הוספתי גם כפתור כיבוי בטוח ונורית פעילות לתיבה כדי להגן על ה- Pi.
אתה תצטרך:
פאי פטל
חבילת NOOBS בכרטיס SD
מתג הפעלה/כיבוי (השתמשתי בלחצן עצום חירום אדום גדול כזה, אבל זה יכול להיות כל סוג של מתג 'קליק')
לחץ על הכפתור
1 LED
שלט 'באוויר', הכנתי בעצמי עם מערך LED
ברזל הלחמה ולוח מחברים קטן (פשוט חתכתי פס אחד מאלה שהיו לי בסביבה)
כרטיס קול (השתמשתי בכרטיס סופר פשוט כזה)
שלב 1: הגדר את השרת שלך
עבור תחנת הרדיו שאנו משתמשים בה לא עשיתי את החלק הזה מכיוון שלא הייתה לי גישה לשרת וחבר שלי עשה זאת, אך יש מדריך התקנה בסיסי באתר Icecast והצלחתי להשיג זה עובד מהפי בהתחלה רק כדי לראות איך זה מסתדר. לחלופין תוכל לקבל חשבון ב- internet-radio.com והוא עובד עם Darkice.
שלב 2: הגדר את ה- Pi והתקן את Darkice
השג כרטיס SD עם חבילת NOOBS. לאחר שפתחת את Raspbian והתקנת את כל העדכונים, פתח חלון מסוף והקלד:
עדכון sudo apt-get
sudo apt-get להתקין darkice
Darkice הוא חלק מ- Debian ולכן הוא יתקין אוטומטית, זה לוקח כמה רגעים.
לאחר סיום סוג ההנחיה:
כהה
זה יתן הודעת שגיאה ולא יפעל, אבל זה בסדר. בהודעה הוא יגיד משהו כמו:
שימוש בקובץ config: /etc/darkice.cfg
עליך לערוך את הקובץ, כך שבסוג ההנחיה:
sudo nano /etc/darkice.cfg
ערוך את הקובץ שנפתח באמצעות המידע המופיע בדף wiki. Radioreference, כשתסיים לחץ על CTRL-X כדי לסגור, Y כדי לשמור וכדאי לחזור לפקודת הטרמינל. תמיד טוב לאתחל מחדש לאחר התקנת תוכנית חדשה אז הקלד:
לְאַתחֵל
וכאשר ה- Pi הפעלה מחדש, פתח מחדש חלון מסוף. כעת כאשר אתה מקליד 'Darkice' הוא אמור לפעול ללא הודעות שגיאה. אם אתה נכנס ל https:// YOURSERVERADDRESS: 8000/(8000 או לאיזה יציאה שרת ה- icecast שלך מוקצה) אתה אמור לקבל דף סטטיסטיקה שאומר שאתה מחובר. אם לא, שנה את קובץ התצורה (קו קלט השמע נתן לי כמה בעיות אבל ניסיתי את כל האפשרויות ובסוף מצאתי את כרטיס הקול שלי). לאחר ש- Darkice פועל כראוי, המשך לשלב הבא.
שלב 3: לחצן הזרמה ושלט אוויר
עשיתי חבורה של הדרכות שונות בשביל זה מכיוון שלא הייתה אחת ספציפית להקצאת פעולה לכפתור בפייתון. הבעיה הגדולה ביותר שעמדה בפניי הייתה לגרום לדארקיס לרוץ ברקע (וכך לא להקפיא את סקריפט פייתון כשהוא התחיל לפעול) אבל ביקשתי מחבר מקודד שיבוא לעזור והוא מצא דרך לעשות את זה בכתיבת גיליונות, משהו שאני לא מקבלים. כנראה שזה יכול להיות אפשרי גם באמצעות '&' איפשהו בקוד אבל אני לא מקודד ומה שיש לי עובד אז בחרתי לא להתעסק עם זה. לאחר שהכל עבד, התחלתי להוריד את כל הכבלים מלוח הלחם עד שנשארתי עם ההתקנה הבאה:
GPIO16 למחבר 3 נקודות חיצוני.
GPIO7 למסוף החיובי של מערך ה- LED לשלט ON-Air.
GPIO25 למתג הלחיצה.
הצד השני של מתג הלחיצה מתחבר למחבר 3 הנקודות.
הטרמינל השלילי של מערך ה- LED מתחבר גם למחבר 3 הנקודות.
(שאר המרכיבים בתרשים מוסברים בשלב הבא).
סקריפט ה- Python שהגענו אליו הוא כדלקמן (שים לב שזה מדריך לכל הפרויקט, אני לא ממש יודע מספיק כדי להסביר את הקוד. חיברתי אותו מהדרכות שונות לפונקציות שונות):
יבוא זמן ייבוא os ייבוא RPi. GPIO כ- GPIO GPIO.setwarnings (False) GPIO.setmode (GPIO. BOARD) ledPin = 12 buttonPin = 16 GPIO.setup (ledPin, GPIO. OUT) GPIO.setup (buttonPin, GPIO. IN, pull_up_down = GPIO. PUD_UP)
toggle = שקר
def start_darkice ():
print ('קורא לתהליך משנה') #result = subprocess.call ('sh screen -S darkice -d -m darkice') os.system ('screen -S darkice -d -m darkice') print ('resuming') def stop_darkice (): os.system ('screen -X -S darkice quit')
בעוד שזה נכון:
buttonState = GPIO.input (buttonPin) if buttonState == True: אם לא toggle: toggle = הדפסה אמיתית ('הפעלת darkice') start_darkice () #print ('BUTTON STATE TRUE') GPIO.output (ledPin, GPIO. HIGH)
אַחֵר:
if toggle: toggle = הדפסה שגויה ('עצירת darkice') stop_darkice () #print ('BUTTON STATE FALSE') GPIO.output (ledPin, GPIO. LOW) time.sleep (1)
קובץ ה- py מצורף למדריך זה, אתה יכול פשוט להוריד אותו ולבצע את שלב 5 אם תרצה.
שלב 4: לחצן כיבוי בטוח ונורית פעילות
רק למען הבטיחות וכדי להאריך את חיי ה- Pi הוספתי לחצן כיבוי בטוח ונורית פעילות חיצונית כך שאנשים יידעו מתי בטוח לנתק את הקופסה. מצאתי בקלות הדרכות לשניהם, אבל שמתי לב של- Raspberry Pi 3 B+ יש סיכת GPIO שהוקצה ל- ACT, בעוד שדגמים קודמים לא עושים זאת וזה עלול להיות בעייתי אם יש לך פי מבוגר יותר.
צרף את הטרמינל החיובי של הנורית ל- GPIO13 ואת השלילי ל- GPIO26. כדי שנורית ה- ACT תפעל עליך לערוך את קובץ config.txt בספריית BOOT. תוכל למצוא זאת בדפדפן Raspbian או באמצעות:
sudo nano /usr/boot/config.txt
כאשר אתה עורך את הקובץ פשוט הוסף את השורות הבאות:
# השתמש ב- LED חיצוני כ- SD ACT LED dtoverlay = pi3-act-led, gpio = 19
כעת ה- LED החיצוני יהבהב עם פעילות כרטיס SD.
חבר את מסופי מתג הדחיפה ל- GPIO3 ו- GPIO8. מצאתי את הקוד הבא מתוך מדריך וזה עובד מצוין:
זמן ייבוא מכפתור ייבוא gpiozero מתהליך ייבוא בדיקת_תקשר מהפסקת ייבוא אותות
כיבוי def ():
check_call (['sudo', 'poweroff'])
shutdown_btn = לחצן (2, hold_time = 1)
shutdown_btn.when_held = כיבוי
הַפסָקָה()
time.sleep (1)
קובץ py זה מצורף גם לך להורדה אם תרצה. הכפתור שלי צריך להיות מוחזק למשך שנייה אחת, אם אתה רוצה לשנות את זה לשנות את ערך 'החזק זמן ='.
שלב 5: הפעל את סקריפטים של פייתון מהאתר
שוב, יש הרבה הדרכות בנושא זה, השתמשתי בזה של דקסטר תעשיות ובצעתי את השלב הראשון על ידי עריכת הקובץ rc.local.
sudo nano /etc/rc.local
כאן עליך להוסיף את נתיב הקובץ המלא לסוף המסמך, עם '&' בסוף כל שורה. עליך להוסיף שורה אחת לכל אחד מהקבצים:
sudo python/home/pi/YOURFILENAME, py &
sudo python /home/pi/YOURFILENAME2.py &
ממש לפני השורה
יציאה 0
'&' בסוף כל שורה חשוב בכדי להבטיח את הלולאות של התוכנית.
שלב 6: בנה את הקופסה
זה לגמרי תלוי בך. זה באמת צריך להיות בגודל של ה- Pi, אבל שמתי מדחס במערך שלי כדי לשמור על זרם הרדיו ברמה די עקבית כך שהקופסה תהיה קצת יותר גדולה. לשלי יש חור בחזית לשלט בשידור ואחד לכפתור האדום הגדול, בנוסף הכנתי כרטיס הדרכה קטן לתקליטנים ושכבתי אותו מתחת לכפתור. בצד הקופסה יש חור לכפתור הלחיצה, נורית ACT וכניסת השמע, בתוספת הוראות משובצות לצוות הבר כיצד לסגור את התיבה בבטחה.
שלב 7: התקנה
תקן את כל הרכיבים הנפרדים בתיבה שלך, תוך התחשבות שתמיד טוב לאפשר קצת זרימת אוויר סביב הפי כדי למנוע התחממות יתר. חבר את כבלי השמע מהמיקסר שלך, לחץ על הכפתור ותהנה משידור!
מוּמלָץ:
רדיו האינטרנט של רוברטס RM33 פטל פיי (עוד אחד ): 8 שלבים (עם תמונות)
רוברטס RM33 Raspberry Pi Internet Radio (Yet Another …): כן, זהו עוד רדיו אינטרנט של Raspberry Pi וגם לא הראשון שלי. אני לא בטוח מדוע המבנה הזה עדיין כה פופולרי, אך אני עדיין נהנה ממנו ואיני יכול לומר שהמבנה הזה יהיה גם האחרון שלי. אני מאוד אוהב את המראה של רוברט
UChip - סקיצה פשוטה למנועים בשלט רחוק ו/או סרוווס באמצעות רדיו Tx -Rx רדיו 2.4GHz !: 3 שלבים
UChip - סקיצה פשוטה למנועי שלט רחוק ו/או סרוווס באמצעות רדיו Tx -Rx 2.4GHz !: אני מאוד אוהב את עולם ה- RC. שימוש בצעצוע RC נותן לך את התחושה שאתה שולט במשהו יוצא דופן, למרות היותו סירה קטנה, מכונית או מזל"ט! עם זאת, לא קל להתאים אישית את הצעצועים שלך ולגרום להם לעשות מה שאתה רוצה אותם
ערכת הזרמת האינטרנט של Raspberry Pi - חלק 2 (הזרמת וידאו של Pi): 6 שלבים
ערכת הזרמת אינטרנט של Raspberry Pi - חלק 2 (הזרמת וידאו של Pi): אוקיי, לא חשבתי שזה צריך תמונות, אבל האתר אוהב תמונות. אלה הם בעיקר סדרה של פקודות ושלבים עבורך. ישנם מספר אתרים נוספים שיכולים לטפל בכל מוזרויות. זה מה שעבד בשבילי. זה משלב את
רדיו FM עם RDS (טקסט רדיו), בקרת BT ובסיס הטעינה: 5 שלבים
רדיו FM עם RDS (רדיו טקסט), בקרת BT ובסיס הטעינה: בונז'ור, זהו "הוראותיי" השנייה. כפי שאני אוהב לעשות דברים לא מאוד שימושיים, הנה הפרויקט האחרון שלי: זהו רדיו FM עם טקסט רדיו עם בסיס טעינה ואשר ניתן לפקח עליו באמצעות בלוטות 'ואפליקציית אנדרואיד. לכן אני
רדיו אינטרנט/ רדיו אינטרנט עם Raspberry Pi 3 (ללא ראש): 8 שלבים
רדיו אינטרנט/ רדיו אינטרנט עם Raspberry Pi 3 (ללא ראש): HI האם אתה רוצה אירוח רדיו משלך דרך האינטרנט אז אתה נמצא במקום הנכון. אנסה לפרט כמה שיותר. ניסיתי כמה דרכים שרובן היו זקוקות לכרטיס קול אשר לא היססתי לקנות. אבל הצליח למצוא