فهرست مطالب:

جعبه پخش رادیویی یک دکمه: 7 مرحله (همراه با تصاویر)
جعبه پخش رادیویی یک دکمه: 7 مرحله (همراه با تصاویر)

تصویری: جعبه پخش رادیویی یک دکمه: 7 مرحله (همراه با تصاویر)

تصویری: جعبه پخش رادیویی یک دکمه: 7 مرحله (همراه با تصاویر)
تصویری: صدا و تصاویر شوکه کننده ضبط شده توسط فضانوردان ایستگاه فضایی 2024, سپتامبر
Anonim
جعبه پخش رادیویی یک دکمه
جعبه پخش رادیویی یک دکمه

من یک جعبه برای نوار دوستم ساختم که رزبری پای در آن قرار داشت و با فشار یک دکمه صدا را با استفاده از Darkice و Icecast به وب سایت منتقل می کند ، در حالی که همزمان علامت "On-Air" را روشن می کند. من فکر می کردم این کاری است که مردم قبلاً انجام می دادند اما پس از جستجوی گسترده هیچ چیز پیدا نکردم و تصمیم گرفتم خودم آن را بفهمم و این دستورالعمل را ایجاد کنم.

من از Raspberry Pi 3+ B استفاده کردم اما تا آنجا که می توانم بگویم روی هر Pi کار می کند (شاید اعداد پین GPIO متفاوت باشد ، هر چند نمی توانم آن را تأیید کنم). من از بسته NOOBS برای سیستم عامل استفاده کردم و یک کارت صدا فوق العاده ساده برای ورودی خریدم. همچنین برای محافظت از Pi یک دکمه خاموش کردن ایمن و LED فعالیت به جعبه اضافه کردم.

شما نیاز خواهید داشت:

تمشک پای

بسته NOOBS روی کارت SD

سوئیچ روشن/خاموش (من از دکمه قرمز بزرگ توقف اضطراری مانند این استفاده کردم ، اما می تواند هر نوع کلید "کلیک" باشد)

دکمه فشار

1 عدد LED

علامت "On-Air" ، خودم را با یک آرایه LED ساختم

آهن لحیم کاری و اتصال کوچک (من فقط یک نوار را از یکی از اینهایی که در اطراف داشتم بریدم)

کارت صدا (من از یک کارت فوق العاده ساده مانند این استفاده کردم)

مرحله 1: سرور خود را تنظیم کنید

برای ایستگاه رادیویی واقعی که ما از آن استفاده می کنیم ، من این قسمت را انجام ندادم زیرا به سرور دسترسی نداشتم و دوستم آن را انجام داد ، اما یک راهنمای اساسی برای راه اندازی در وب سایت Icecast وجود دارد و من موفق شدم در ابتدا از Pi کار می کرد تا ببیند چگونه پیش می رود. متناوباً می توانید یک حساب در internet-radio.com دریافت کنید و با Darkice کار می کند.

مرحله 2: Pi را تنظیم کرده و Darkice را نصب کنید

با بسته NOOBS یک کارت SD دریافت کنید. پس از باز کردن Raspbian و نصب همه به روزرسانی ها ، پنجره Terminal را باز کرده و تایپ کنید:

sudo apt-get update

sudo apt-get darkice را نصب کنید

Darkice بخشی از Debian است بنابراین به طور خودکار نصب می شود ، چند لحظه طول می کشد.

پس از اتمام کار در تایپ سریع:

تاریکی

پیغام خطا می دهد و اجرا نمی شود ، اما مشکلی نیست. در پیام چیزی شبیه به این می گوید:

با استفاده از فایل پیکربندی: /etc/darkice.cfg

شما باید آن فایل را ویرایش کنید ، بنابراین در نوار تایپ کنید:

sudo nano /etc/darkice.cfg

فایل باز شده را با استفاده از اطلاعات موجود در این صفحه ویکی ویرایش کنید. پس از اتمام کار ، CTRL-X را برای بستن ، Y را برای ذخیره فشار دهید و باید به اعلان ترمینال بازگردید. همیشه خوب است که بعد از نصب برنامه جدید راه اندازی مجدد شود ، بنابراین تایپ کنید:

راه اندازی مجدد

و هنگامی که Pi دوباره راه اندازی شد ، پنجره ترمینال را دوباره باز کنید. در حالتی که "Darkice" را تایپ می کنید باید بدون هیچ گونه پیام خطایی اجرا شود. اگر به https:// YOURSERVERADDRESS: 8000/(8000 یا هر کدام از بندرهایی که سرور Icecast شما به آن اختصاص داده شده است) مراجعه می کنید ، باید یک صفحه آمار دریافت کنید که می گوید متصل هستید. در غیر این صورت ، فایل پیکربندی را تغییر دهید (خط ورودی صدا مشکلاتی به من داد اما من همه گزینه ها را امتحان کردم و در نهایت کارت صدا را پیدا کردم). هنگامی که Darkice به درستی اجرا شد ، به مرحله بعدی بروید.

مرحله 3: دکمه جریان و علامت روی هوا

دکمه جریان و علامت روی هوا
دکمه جریان و علامت روی هوا

من مجموعه ای از آموزش های مختلف را برای این کار انجام دادم زیرا هیچ مورد خاصی برای اختصاص دادن یک عمل به یک دکمه در پایتون وجود نداشت. بزرگترین مشکلی که من با آن روبرو بودم این بود که Darkice را در پس زمینه اجرا کنم (و بنابراین اسکریپت پایتون را هنگام شروع به کار متوقف نکند) اما از یک دوست کد نویسی خواستم که بیاید و کمک کند و او راهی برای نوشتن ورق پیدا کرد ، چیزی که من دریافت نکن ظاهراً می توان از "&" در جایی در کد استفاده کرد ، اما من برنامه نویس نیستم و آنچه دارم کار می کند ، بنابراین تصمیم گرفتم با آن سر و کار نداشته باشم. هنگامی که همه چیز را کار کردم ، تمام کابل ها را از روی نان برداریدم تا تنظیمات زیر باقی ماند:

GPIO16 به یک کانکتور خارجی 3 نقطه ای.

GPIO7 به پایانه مثبت آرایه LED برای علامت ON-Air.

GPIO25 را به سوئیچ کلیک کنید.

طرف دیگر کلید کلیک به کانکتور 3 نقطه متصل می شود.

پایانه منفی آرایه LED نیز به کانکتور 3 نقطه متصل می شود.

(سایر اجزای نمودار در مرحله بعدی توضیح داده شده است).

اسکریپت پایتون که به پایان رسید به شرح زیر است (لطفاً توجه داشته باشید که این یک دستورالعمل برای کل پروژه است ، من واقعاً به اندازه کافی نمی توانم کد را توضیح دهم. من آن را از آموزشهای مختلف دیگر برای توابع مختلف جمع آوری کردم):

import timeimport os import RPi. GPIO as 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)

ضامن = غلط

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')

در حالی که True:

buttonState = GPIO.input (buttonPin) if buttonState == True: اگر نه ضامن: toggle = چاپ واقعی ('روشن در تاریکی') start_darkice () #print ('BUTTON STATE TRUE') GPIO.output (ledPin، GPIO. HIGH)

دیگری:

if toggle: toggle = چاپ غلط ('stopping darkice') stop_darkice () #print ('BUTTON STATE FALSE') GPIO.output (ledPin، GPIO. LOW) time.sleep (1)

فایل py به این دستورالعمل متصل است ، فقط می توانید آن را بارگیری کرده و در صورت تمایل مرحله 5 را دنبال کنید.

مرحله 4: دکمه خاموش شدن ایمن و LED فعالیت

دکمه خاموش شدن ایمن و LED فعالیت
دکمه خاموش شدن ایمن و LED فعالیت

فقط برای ایمنی و افزایش طول عمر Pi ، من یک دکمه خاموش کردن ایمن و یک LED فعال خارجی اضافه کردم تا مردم بدانند بیرون آوردن جعبه از چه زمانی امن است. من به راحتی آموزش هر دو مورد را پیدا کردم ، اما متوجه شدم که Raspberry Pi 3 B+ دارای ACT LED GPIO است ، در حالی که مدلهای قبلی چنین ندارند و اگر شما Pi قدیمی دارید ، می تواند مشکل ساز باشد.

پایانه مثبت LED را به GPIO13 و منفی را به GPIO26 وصل کنید. برای کارکرد LED 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 وارد کردن دکمه از فرایند واردات check_call از مکث واردات سیگنال

def shutdown ():

check_call (['sudo'، 'poweroff'])

shutdown_btn = دکمه (2 ، زمان نگه داشتن = 1)

shutdown_btn.when_held = خاموش شدن

مکث ()

زمان خواب (1)

این فایل py نیز برای شما ضمیمه شده است تا در صورت تمایل بارگیری کنید. اگر می خواهید مقدار "hold-time =" را تغییر دهید ، دکمه من باید 1 ثانیه نگه داشته شود.

مرحله 5: اسکریپت های پایتون را از بوت اجرا کنید

باز هم ، آموزش های زیادی در این زمینه وجود دارد ، من از این یکی از صنایع دکستر استفاده کردم و مرحله اول را با ویرایش فایل rc.local دنبال کردم.

sudo nano /etc/rc.local

در اینجا شما باید فایل کامل فایل را به انتهای سند اضافه کنید ، که در انتهای هر خط با علامت '&' کامل می شود. شما باید یک خط برای هر یک از فایل ها اضافه کنید:

sudo python/home/pi/YOURFILENAME ، py &

sudo python /home/pi/YOURFILENAME2.py &

درست قبل از خط

خروج 0

"&" در انتهای هر خط برای اطمینان از حلقه های برنامه مهم است.

مرحله 6: جعبه را بسازید

جعبه را بسازید
جعبه را بسازید
جعبه را بسازید
جعبه را بسازید
جعبه را بسازید
جعبه را بسازید

این کاملا بستگی به خودت دارد. واقعاً فقط باید اندازه Pi باشد ، اما من یک کمپرسور را در تنظیمات خود قرار داده ام تا جریان رادیو را در سطح نسبتاً ثابت نگه دارم تا جعبه کمی بزرگتر شود. من دارای یک سوراخ در جلو برای علامت On-Air و یک سوراخ برای دکمه قرمز بزرگ است ، به علاوه من یک کارت راهنمای کوچک برای دی جی ها درست کردم و آن را زیر دکمه خاتم کردم. در کنار جعبه یک سوراخ برای دکمه فشاری ، LED ACT و ورودی صدا وجود دارد ، به علاوه دستورالعمل های منبت کاری شده برای کارکنان نوار در مورد نحوه خاموش کردن ایمن جعبه.

مرحله 7: نصب

نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی
نصب و راه اندازی

تمام اجزای جداگانه را در جعبه خود قرار دهید ، در نظر داشته باشید که همیشه خوب است اجازه دهید تا گردش هوا در اطراف Pi برای جلوگیری از گرم شدن بیش از حد انجام شود. کابل های صوتی را از میکسر خود وصل کنید ، دکمه را فشار دهید و از پخش لذت ببرید!

توصیه شده: