Isi kandungan:

PAB: Kotak Audio Peribadi: 5 Langkah
PAB: Kotak Audio Peribadi: 5 Langkah

Video: PAB: Kotak Audio Peribadi: 5 Langkah

Video: PAB: Kotak Audio Peribadi: 5 Langkah
Video: SULTAN MEDAN INDRAKENZ NAIK JET PRIBADI KE PULAU PRIBADI!! 2024, Julai
Anonim
PAB: Kotak Audio Peribadi
PAB: Kotak Audio Peribadi

Idea untuk projek ini lahir dari keperluan untuk mengikis tiga komponen besar sistem HiFi, yang kini telah mencapai akhir hayat mereka. Sebagai tambahan, saya memerlukan lebih banyak ruang di rak untuk objek lain, jadi saya mengambil kesempatan untuk mula belajar di Kotak Audio Peribadi untuk menggantikan semua fungsi ketiga "raksasa" vintaj.

Raspberry Pi3B + nampaknya menjadi pilihan terbaik kerana sebab-sebab ini:

  • Faktor bentuk kecil dan penggunaan kuasa rendah;
  • Output PCM audio dengan kualiti yang boleh diterima;
  • Ketersediaan mopidy, pelayan muzik yang boleh diperluas yang melaksanakan protokol mpd;
  • Penyatuan sumber yang tinggi: muzik tempatan, CDROM, aliran radio, Spotify, Tunein, dll.

Mengintegrasikannya dengan beberapa komponen lain, saya dapat membuat sistem lengkap dan tanpa kepala, mampu memainkan muzik dari CD, fail tempatan, radio dalam talian, senarai main Spotify, podcast. Dan melalui penggunaan frontend, saya kini dapat menguruskan semua operasinya dari mana-mana peranti yang disambungkan ke LAN (telefon pintar, komputer, tablet).

Bekalan

  • Raspberry PI3B +
  • Kes DVD lama
  • Pembaca CDROM
  • Bekalan kuasa 5v-5A
  • Supercapacitors
  • Pelbagai komponen (transistor, LED, relay, Op-Amp): lihat butiran projek

Langkah 1: Kes dan Susun atur Komponen

Kes dan Susun atur Komponen
Kes dan Susun atur Komponen
Kes dan Susun atur Komponen
Kes dan Susun atur Komponen
Kes dan Susun atur Komponen
Kes dan Susun atur Komponen
Kes dan Susun atur Komponen
Kes dan Susun atur Komponen

Masalah pertama yang saya hadapi ialah memilih dan mencari kes yang sesuai. Tidak menjumpai apa-apa di rumah, saya dapati pemain DVD murah ini di Amazon dengan harga beberapa dolar, tetapi apa-apa yang serupa akan cukup baik. Sarung ini mempunyai dimensi ini: 27cm x 20cm x 3.5cm.

Saya membuang semua kandungan sepenuhnya, hanya menyimpan papan kecil untuk menguruskan LED depan, butang kuasa dan input USB. Kemudian saya merancang susun atur dalaman untuk komponen baru (lihat gambar).

Langkah 2: Suis Sensor Stereo Audio

Suis Sensor Stereo Audio
Suis Sensor Stereo Audio
Suis Sensor Stereo Audio
Suis Sensor Stereo Audio
Suis Sensor Stereo Audio
Suis Sensor Stereo Audio

Mengapa suis audio automatik? Keperluan timbul dari kenyataan bahawa saya sering mendengar TV melalui penguat HiFi, tetapi saya tidak mahu memilih suis sumber pada penguat setiap masa. Dengan litar ini, input penguat selalu sama, dan sumbernya dipilih secara automatik oleh Suis Sensor Stereo Audio.

Skema lurus ke hadapan. Apabila PAB tidak dimainkan, sumber audio ke HiFi berasal dari TV. Sekiranya PAB dimainkan, relay memilih audio dari Raspberry.

Langkah 3: Kotak Kapasitor Super

Kotak Kapasitor Super
Kotak Kapasitor Super
Kotak Kapasitor Super
Kotak Kapasitor Super

Seperti diketahui, gangguan bekalan elektrik secara tiba-tiba ke Raspberry menyebabkan pemadaman segera mati tanpa pelaksanaan prosedur penutupan, berisiko untuk menjejaskan sistem operasi dan oleh itu fungsi keseluruhannya. Supercapacitor berbeza dari kapasitor tradisional dalam dua ciri penting: platnya sebenarnya mempunyai kawasan yang lebih besar dan jarak di antara mereka jauh lebih kecil, kerana penebat yang berfungsi berfungsi berbeza daripada dielektrik konvensional. Dengan teknik-teknik ini, kapasitor yang sangat tinggi (dalam urutan beberapa puluh Farad) kapasitor dapat dibuat sambil mengekalkan dimensi kecil. Oleh itu, idea adalah untuk membuat "buffer" 5v melalui superkapasitor dan mengaktifkan pemadaman apabila ketiadaan voltan bekalan dikesan. Dengan cara ini, tidak perlu lagi campur tangan secara manual untuk melancarkan penutupan, tetapi lepaskan palam (atau aktifkan suis) untuk memastikan pemadaman yang selamat.

Merujuk kepada skematik, bekalan kuasa diterapkan ke terminal kiri dan dioda Schottky menghalang pengembalian arus ke bekalan kuasa. Kedua-dua perintang kuasa 1.2Ω 5W secara selari mengehadkan arus cas supercapacitors, untuk melindungi bekalan kuasa. Tanpa perintang ini, arus puncak yang diperlukan oleh dua superkapasitor yang dilepaskan hampir pasti dapat merosakkan bekalan kuasa. Diod kuasa mestilah jenis Schottky untuk memasukkan penurunan voltan minimum dalam siri dengan bar 5V.

Dua supercapacitor disambungkan secara bersiri untuk memastikan voltan maksimum 5.4 volt di hujungnya (setiap supercapacitor adalah 10F, 2.7V) dan dua perintang selari dengan kapasitansi mengimbangkan arus pengecasan dan menjamin pelepasan perlahan ketika Raspberry dipusingkan mati. Kedua-dua perintang 1KΩ selari dengan input membahagi 5V bekalan kuasa pada separuh untuk mengambil isyarat yang diperlukan untuk mengesan kegagalan kuasa (disambungkan ke Raspberry GPIO 7). Tidak seperti sel litium moden, supercapacitors menjamin bilangan kitaran pengisian dan pengosongan yang hampir tidak terhingga, tanpa kehilangan ciri-ciri.

Oleh itu litar akan dapat memastikan Raspberry sentiasa aktif dan berfungsi untuk masa yang diperlukan untuk melakukan penutupan biasa. Permulaan proses penutupan akan dikesan oleh program yang berjalan di Raspberry yang akan memantau status GPIO 7, yang mana tahap daya disambungkan. Apabila daya terputus, pin GPIO 7 melepasi pada tahap rendah dan mencetuskan penutupan. Inilah kodnya:

#! / usr / bin / env python

import RPi. GPIO sebagai subproses import GPIO GPIO.setmode (GPIO. BCM) # gunakan penomboran GPIO GPIO.setwarnings (False) INT = 7 # pin 26 monitor Power Supply # gunakan pull_up yang lemah untuk membuat GPIO.setup yang tinggi (INT, GPIO. IN, pull_up_down = GPIO. PUD_UP) def utama (): while True: # tetapkan gangguan pada pinggir jatuh dan tunggu ia berlaku GPIO.wait_for_edge (INT, GPIO. FALLING) # periksa tahap pin sekali lagi jika GPIO.input (INT) == 0: # masih rendah, shutdown Pi subprocess.call (['poweroff'], shell = True, / stdout = subprocess. PIPE, stderr = subprocess. PIPE) jika _name_ == '_main_': utama ()

Program mesti disimpan di / usr / local / bin /.py dan dikonfigurasikan untuk dijalankan semasa Raspberry bermula. Dari ujian yang dijalankan, kapasiti kedua superkapasitor terbukti cukup untuk memastikan masa penutupan untuk Raspberry. Sekiranya lebih banyak masa diperlukan, cukup untuk memperkenalkan dua superkapasitor lain selari dengan yang ada, atau menggantinya dengan dua kapasiti yang lebih besar.

Langkah 4: Pemasangan dan Penggunaan Port USB

Pemasangan dan Penggunaan Port USB
Pemasangan dan Penggunaan Port USB

Blok Skema menunjukkan cara menyambungkan beberapa peranti untuk PAB pada bas utama 3 (+ 5v, USB dan audio stereo).

Perhatikan bahawa bekalan kuasa pembaca CD telah disambungkan terus ke Bekalan Daya utama melalui kabel "Y", sementara input audio masuk ke Raspberry. Keempat port USB Raspberry telah digunakan untuk:

  • Pembaca CD;
  • pendrive 250GB untuk menyimpan fail muzik tempatan (mp3, m4a, wma, flac, dll.);
  • kad SD mikro 16GB (dengan penyesuai USB) untuk menyimpan sandaran penuh dari Raspi SD utama (lihat di bawah);
  • sambungan ke port USB luaran pada casing tersebut.

Port USB luaran boleh digunakan untuk memainkan muzik luaran atau untuk menghidupkan peranti luaran. Dalam kes saya, saya menghidupkan pemancar Bluetooth luaran kerana saya telah membuang pemancar dalaman Raspi kerana jarak rendah dan ketidakstabilan. Dengan Bluetooth luaran saya menggerakkan 2 pembesar suara stereo yang berbeza di rumah.

Kad SD mikro 16GB (dengan penyesuai USB) memegang sandaran Raspberry penuh. Saya menggunakan rpi-clone, yang telah terbukti menjadi projek yang sangat baik yang memungkinkan untuk mendapat sandaran penuh Raspberry tanpa perlu mengeluarkan SD dalaman. Saya telah menukar SD ini berkali-kali dengan yang dalaman, tanpa masalah. Oleh itu, saya telah menyediakan cronjob untuk pengguna root:

#Backup pada sda - setiap Rabu malam

15 2 * * 3 / usr / sbin / rpi-klon sda -u | mail -s "PAB sandaran pada SD - selesai"

Saya kemudian menggunakan semula butang kuasa asal pada kes ini untuk mematikan dan menghidupkan semula Raspberry, mengikuti panduan ini:

Langkah 5: Perisian dan Sistem Operasi

Perisian dan Sistem Operasi
Perisian dan Sistem Operasi
Perisian dan Sistem Operasi
Perisian dan Sistem Operasi
Perisian dan Sistem Operasi
Perisian dan Sistem Operasi

Sistem operasi utama PAB adalah minimum Raspbian biasa (Debian Buster) dengan beberapa penambahan khusus:

  • rpi-klon untuk sandaran utama;
  • ssmtp, MTA sederhana untuk mengeluarkan surat dari sistem;
  • udevil, untuk membolehkan pemacu USB automatik;
  • abcde, untuk mengambil koleksi CD saya dan memampatkannya ke format audio apa pun;
  • mopidy, Daemon Pemain Muzik penuh dengan banyak plugin.

Saya kemudian telah menulis aplikasi pelayan PAB Penjadual penuh menggunakan python3 dan tornado, yang kodnya berada di luar ruang lingkup artikel ini, tetapi saya dapat memberikan arahan berdasarkan permintaan. Dengan Penjadual anda boleh menyediakan senarai main untuk bila-bila masa sepanjang hari anda, membezakan hari kerja dari hujung minggu.

Perisian utama yang menjalankan PAB adalah mopidy. Untuk pemasangan dan konfigurasi mopidy (cukup luas) sila rujuk dokumentasinya di sini:

Ini adalah pemalam yang dipasang:

  • Mopidy-Alsamixer
  • Mopidy-Internetarchive
  • Mopidy-Local-Sqlite
  • Mopidy-Podcast
  • Mopidy-Scrobbler
  • Mopidy-Soundcloud
  • Mopidy-Spotify
  • Mopidy-Spotify-Tunigo
  • Mopidy-Cd
  • Mopidy-Iris
  • Mopidy-Local-Images
  • Mopidy-TuneIn

Untuk mendapatkan kawalan penuh PAB, saya telah memilih pelanjutan frontend Iris (lihat gambar). Ini adalah aplikasi web yang sangat hebat dengan ciri berikut:

  • Kawalan antara muka berasaskan web penuh untuk Mopidy
  • Sokongan yang lebih baik untuk perpustakaan tempatan (dikuasakan oleh Mopidy-Local-Sqlite)
  • Semak imbas dan urus senarai main dan trek
  • Cari muzik baru, popular dan berkaitan (dikuasakan oleh Spotify)
  • Diadakan secara bebas
  • Integrasi dengan:

    • Spotify
    • LastFM
    • Genius
    • Siaran Ringkas
    • Icecast

Dengan cara ini, saya bebas untuk mengawal muzik saya dari mana sahaja (komputer, tablet, telefon pintar).

Disyorkan: