ラズベリーパイのインターネットラジオ受信機。 Raspberry Pi 上の FM ラジオ放送局。 ステップ #3: 構成ファイルを編集する


このインターネット ラジオおよび MP3 プレーヤーは、3.5 HDMI LCD タッチ スクリーンを使用して操作します。 元のプロジェクトは Adafruit によって公開されており、プロジェクトでは MPC、MPD、および Pygame が使用されています。

ラズベリーパイ 3 上のインターネット ラジオと MP3 プレーヤーのコンポーネント

ラズベリーパイ3にインターネットラジオとMP3プレーヤーをインストールする

  • raspbianをダウンロードし、イメージをmicroSD 8GB以上に書き込みます。 SSH 経由で Raspberry Pi に接続する方法も知っておく必要があります。 キーボードとマウスを接続する
  • ラズベリーパイに液晶画面を取り付けます。
  • ターミナルウィンドウを開いて入力します

sudo raspi-config

  • 時刻や入力言語の初期設定をする
  • [詳細オプション] に移動し、VNC、SSH を有効にし、解像度を 640x480 に設定します。
  • ラズベリーパイを再起動します
  • このイメージには、音楽を保存するのに必要なスペースを占有する、プロジェクトに不要なプログラムが含まれているため、Pi 上でマウスを使用して追加/削除を選択するか、SSH 経由で Wolfram と Libreoffice を削除します。

sudo apt-get パージ wolfram-engine libreoffice* -y

sudo apt-get clean

sudo apt-get autoremove

sudo apt-get アップデート

sudo apt-get アップグレード

  • アップデート後、必要なものをインストールする準備が整います。 次に、LCD ドライバーをインストールします。

git clone https://github.com/goodtft/LCD-show.git

chmod -R 755 LCD ショー

sudo ./MPI3508_600_400-show

  • Pi ラジオで使用される解像度は 640x480 なので、config.txt を変更する必要があります。

sudo nano /boot/config.txt

  • ファイルの下部にある解像度を 640x480 に変更します。 保存して終了し、再起動します。
  • この時点で、Pi はデスクトップとタッチスクリーンで起動するはずです。 次に、Pi-radio ファイルをインストールします。

sudo apt-get install mpc mpd

git clone https://github.com/granpino/Pi-Radio-mp3-.git

chmod -R 755 Pi-Radio-mp3-

cd パイラジオ-mp3-

sudo ./install.sh

  • インストール ファイルは、mp3 とインターネット ラジオに必要なプレイリストを作成します。 ラズベリーのデスクトップにアイコンがあるはずです。 Pi-radio を開くには、ラジオのショートカットをダブルタップします。 ワンクリックでデスクトップを変更するには、ファイルマネージャーに移動し、「編集」をクリックして、一番下にあるプロパティを選択します。 「ワンクリックでファイルを開く」を選択します。
  • LCD スクリーンを使用する同じ Pi 上の他のアプリを実行したいため、デスクトップからアプリを実行することにしました。 テスト用のサンプル MP3 とラジオ局がいくつか含まれています。 他のラジオ局をプレイリストに追加するには、http://www.radiosure.com/stations/ にアクセスし、M3U リンクをコピーします。

MPC プレイリストを保存

  • またはファイルを編集する

sudo nano ~/var/lib/mpd/playlists/playlist

  • mp3 ファイルを追加し、音楽フォルダーに移動します

sudo ls -1 /home/pi/Music/*.mp3 > /var/lib/mpd/playlists/mp3.m3u

このプロジェクトでは、Raspberry Pi を強力な FM ラジオに変えます。 自宅、手作りのドライブイン映画館、高校野球場、さらにはバイクのパレードまでカバーできる十分な通信距離を備えています。

このプロジェクトには、Pi の機能を大幅に向上させる PiFM プログラムと、一定の長さのワイヤーが必要です。 言い換えれば、Raspberry Pi を制御するには、SD カード、電源、ボード自体など、最小限のコンポーネントが必要になります。 ラズベリーパイ (AliExpressで購入)- ワイヤーを 1 本追加します。 その結果、わずか数個のコンポーネントから最もクールな Pi デバイスが得られるはずです。

PiFM はもともと Oliver Mattos と Oskar Weigl によって作成され、その後 Ryan Grassel によって再設計されました。 アドバイスを提供してくださった PiFM コミュニティ全体に特に感謝の意を表したいと思います。 MAKE研究所がプロジェクトに協力しました - スクリプト 海賊ラジオ。パイを使用すると、コマンド ラインを使用せずに音楽ファイルを再生でき、自動処理と管理も可能になります。 脚本は、MAKE Labs の若手スペシャリスト、ウィンター ウッズによって作成されました。 ソースコードは見つかります。

注記: Raspberry Pi のブロードキャスト帯域周波数の範囲は 1MHz から 250MHz であり、政府の帯域と重複する場合があります。 送信を標準 FM 帯域 87.5MHz ~ 108.0MHz (ステップ 3 を参照) に制限し、認可された放送局との周波数の重複を避けるために、まだ使用されていない周波数を常に選択することをお勧めします。

ステップ #1: アンテナを作成する

  • アンテナを作るために必要なのはワイヤーだけです。 これを行うには、75cm のワイヤをピン 4 に接続する必要があります (これにより、FM 中域の 100 MHz で半波対称バイブレータの形でアンテナを正しく作成できます)。 ワイヤーが長いとユニットが動作し始めるため、40cm の 12 AWG (2.053mm) ソリッドワイヤーを使用しました。
  • メス接続線を切断して露出させます。 これをアンテナの一端にはんだ付けし、熱収縮チューブを使用してはんだ接合部を絶縁します。
  • 接続の周りにウォームアップ接着剤を塗布し、Raspberry Pi の 4 GPIO ピンに置きます。 接着剤によってアンテナの構造がより堅固になるため、アンテナの立ち上がりが良くなります。
  • 注記: Raspberry Pi スターター キットをお持ちで、お急ぎの場合は、Cobbler 拡張ライザー ボードに挿入されたオス接続ワイヤを使用できます。 (どちらもパッケージに含まれています)。 これでも機能しますが、12 AWG (2,053 mm) 単線銅線の 40 cm と比較すると、到達距離はほぼ半分になります。

ステップ #2: ディスク イメージを SD カードにダウンロードし、音楽を追加します

  • システムを構成する時間を節約するために、MAKE Labs はディスク イメージを作成しました。 ここからダウンロードしてください (ソース コードのみが必要な上級ユーザーは、このドキュメントの 3 番目の段落にあるダウンロードの脚注を見つけることができます)。
  • 元の PiFM コードは印象的な結果を示しました。 MAKE イメージはカードをパーティション分割し、システム パーティションとデータ パーティションを作成します。 データ パーティションを自動的にマウントすることもできます。 画像はオリジナルのコードの一部を使用しており、MP3、FLAC、その他の形式を再生できます。 スクリプトは起動時に実行されます 海賊ラジオ. パイ, したがって、ラジオ送信機をダウンロードすると、すぐに音楽がブロードキャストされます。 最終的には、これにより時間を大幅に節約できます。 ただし、ファイルを SD カードにコピーするだけでは済みません。 カードは作業用に準備する必要があります。
  • 画像を SD カードにダウンロードします。 やり方がわからなくても、心配する必要はありません。とても簡単です。 Windows では Win32DiskImager を使用でき、OSX コンピュータではコマンド ライン手順 (1) を使用できます。 Linux ユーザーの方がコマンドラインに慣れていると思います。
  • OSX および Linux ユーザーの場合は、PirateRadio セクションを開いて開始するだけです。 Windows OS ユーザーは、WinSCP を使用して SSH 経由で Pi を接続する手順に従ってください。
  • 音楽を追加するには、アーティストまたはアルバム フォルダーを SD カードの「Pirate Radio」のルート ディレクトリにコピーするだけです。 音楽ファイルはこれらのフォルダー内に配置されるため、すべての音楽トラックをまとめてメイン ディレクトリにダンプする必要はありません。

ステップ #3: 構成ファイルを編集する

ブロードキャストに必要な周波数をファイルに設定できます 海賊ラジオ. 構成。 テキストエディタでファイルを開きます。 次の内容が表示されるはずです。

周波数 = 108.2 シャッフル = Truerepeat_all = True

  • ラジオで放送したい放送局の周波数を設定します。 標準 FM 周波数の範囲は、通常 87.5MHz から 108.0MHz です (108.2 は、テスト無線が他の局と重複することなく到達できる最高周波数でした)。
  • ランダム再生オプションを True に設定するか、アルファベット順に再生するには False に設定します。
  • プレイリストをループ再生する場合は、repeat_all を True に設定します。

ステップ #4: 起動!

FM ラジオを希望の周波数に合わせて、Raspberry Pi を起動します。 マイコンの起動には約15秒かかります。 そうすれば、音楽が大きくクリアに聞こえるようになります。

ステップ #5: PiFM の仕組み


  • PiFM wiki からの抜粋: 「このプログラムは Raspberry Pi ハードウェアを使用します。これは、強力な FM ラジオ用の GPIO ピンで広帯域クロック信号を生成することを意味します。これは、Raspberry Pi を 1 本のワイヤ (長さ約 20cm) で接続するだけでよいことを意味します。 ) を GPIO ピン 4 に挿入し、プログラム コードを実行します。
  • 周波数変調は「分数分周器を使用して周波数を調整することによって実現されます。」 たとえば、100 MHz のターゲット周波数を取得するには、信号を 100.025 MHz ~ 99.975 MHz の間で変化させ、オーディオ信号を生成します。
  • Python コードでは、デフォルトの周波数は 87.9 FM で、シャッフル再生と音楽リストのループは無効になっています。 プログラムは SD カードをスキャンして音楽ファイルを探し、指定されたオプションに基づいてリストを作成します。 構成ファイル。 次に、各ファイルはそのタイプに応じてデコーダに転送されます。 この後、各ファイルは PiFM が理解できるモノラル形式に再エンコードされます。 これにより、WAV ファイルだけでなく、MP3、FLAC、M4A、AAC、WMA ファイルも再生できます。

ステップ #6: 最終段階

ご存知のとおり、完璧には限界がありません。 ユーザーの対象者が 1 人だけである自作のポータブル音響の場合でも。 非常に要求が厳しく、時には執拗に固執する人。 Pi-Sonos に関する最初の投稿のリリースからほぼ 5 か月が経過しました。 この間、この音響システム内のソフトウェアは 2 回劇的に変更されました。 変更の理由は、Khabravians からの有益なアドバイスと私たち自身の UX の両方でした。

Pi-Sonos は、Sonos Play 1 からインスピレーションを得た自作のコンパクト スピーカーです。このスピーカーの目的は、主にインターネット ラジオ ステーションから音楽を再生することでした。 作成するにあたり、コンセントに接続すれば、家中どこにいてもスマートフォン/コンピューター/タブレットから音楽をコントロールできるというミニマリズムと利便性を優先しました。


この記事は何についてですか?

まずは、理想への道への忍耐力と好奇心について。 ユーザー名という切り口の下には、世界的な問題の解決策も、新しい独自のテクノロジーの説明もありません。 この記事では、Raspberry Pi の人気メディア センターの比較を簡単に概説し、それらの長所と短所、およびインターネット ラジオ受信機の最適なフレームワークについての私の個人的なビジョンを明らかにします。 実際、スピーカー用の独自のソフトウェアを開発している間、私は Volumio の作成者の道を部分的に繰り返しただけで、その機能の 1 つだけを最初から実装しただけでした (「別の車輪を発明した」と読みます)。
この記事はソフトウェア開発のトピックに触れているにもかかわらず、コードは含まれていません。これは、記事の目的はアイデアと機能を説明することであり、実装のプロセスではないためです。 コードのトピックがカブラ住民の興味を引く場合は、開発プロセスを説明する別の記事を作成する予定です。


当初、音響を埋めるソフトウェアは OSMC でしたが、コメントの賢明な人々は、Kodi (別名 OSMC) がインターネット ラジオ局の「頭脳」としては太すぎるという事実に注目しました。 あまりにもスマートで大きすぎますが、Volumio はオーディオ プロジェクトに適しています。 実際、そのようになりました。 Volumio は軽量で、Web インターフェイス用に設計されており、より高度で開発が簡単な API を備えています。 また、Volumio はどのブラウザでも完全に設定できるため、背面に HDMI ケーブルを突き出す必要もありません。

ただし、Volumio にはいくつかの重要な欠点もあったため、さらに調査する必要がありました。 これは、第一に読み込み時間、第二に自動再生がないことです。 公式ドキュメント (Volumio が mpd (ミュージック プレーヤー デーモン) のアドオンであることがわかります) を調べた後、RPi-Radio と呼ばれる独自のラッパーを JS で作成する時期が来たと判断しました。これにより、これらの問題を解決できます。問題。 サーバー部分は Node.js 上で実行され、React.js を使用するクライアント部分 (GUI) は OSMC を使用していた時代から準備が整っており、少し調整するだけで済みました。 現在のスマホ画面ではこんな感じです。


以下の表は、各フレームワークの欠点と利点を明確に示しています。
基準 OSMC ヴォルミオ RPi-ラジオ
ロード時間 35秒 45秒 20秒
起動時に自動再生 いいえ* いいえ* はい
スマートフォンの「ネイティブ」GUI のメイン画面をタップして、お気に入りリストからラジオ局を選択する回数** 5+1スクロール 4 1
モニター、キーボード、マウスの要件*** はい いいえ いいえ
ウェブコントロール 部分的 完了 部分的
ステーションリストを編集する まあまあ 普通 まあまあ
初期設定の容易さ まあまあ 素晴らしい 平凡な
スマートフォンから制御するための GUI との統合 松葉杖付き 松葉杖付き 箱から
日常使いのしやすさ ☆☆ ☆☆☆
* 実際、そうです。しかし、松葉杖を作成して、それを Raspbian の自動ロードに差し込む必要があります。 OSMC の場合、松葉杖は Python で書かれ、Volumio の場合は、js または bash で書かれます。 しかし、どちらの場合も期待どおりに機能しません。
** OSMC と Volumio の場合、これらすべてのスクロール タップはスピーカーの電源がオンになるたびに実行する必要があるため、これらは非常に重要なパラメーターです。 RPi-Radio の場合、このパラメータは最小限ですが、スピーカーがオンになると自動的に再生を開始するため、それほど重要ではありません。
*** これは、モニター、キーボード、マウスを Raspberry Pi 自体に物理的に接続することを意味します。 組み込みの Web インターフェイスまたは SSH 接続を使用できない場合。

このネタバレの下には、各比較ポイントの詳細な説明が隠されています。

私の意見では、20 秒のロード時間は、このプロジェクトの Raspbian 最適化のジャングルに突入せずに達成できる最小値です。 これは、Raspberry が OS をロードして mpd サービスを開始するのにかかる時間とまったく同じです。 おそらく、microSDHC をより読み取り/書き込み速度の高い microSDXC に置き換えると、この結果は改善される可能性があります (可能であれば確認します)。 驚いたことに、Volumio は軽くて機敏なふりをしていますが、OSMC モンスター ハーベスターよりも読み込みに時間がかかります。 45 秒の待ち時間は快適な操作の基準を超えており、これが Volumio をやめた主な理由でした。

mpd には自動再生機能が最初から備わっており、有効にするために何もする必要はありませんでした。便利です。 Volumio では、mpd ラッパーではありますが、美しい挨拶音のためにこの機能は絞られていました。 すでに書きましたが、スクリプトを作成してスタートアップに入れることができます。 OSMC も同様の状況です。

OSMC では、ほとんどのユーザー インタラクションがモニターを通じて行われます。美しいインターフェイス、ビデオや写真を見たり、ニュースを読んだり、天気を確認したりする機能があり、私のコラムでは決して実現しない機能がたくさんあります。

しかし、OSMC の Web 管理は非常に制限されており、Radio プラグインでお気に入りの放送局のリストをリモートから設定することもできず、モニター経由でのみ設定できます。 逆に、Volumio では、すべてが Web インターフェイスを通じてのみ行われます。 デスクトップ/ラップトップのブラウザでステーションのリストを編集するのが最も便利ですが、必要に応じてスマートフォンでも使用できます。 RPi-Radio では、Web インターフェイスを通じてのみステーションを選択し、サウンドを調整できます。 ステーションのリストとその他すべては、ssh 経由でコンソールから実行する必要があります。 放送局のリストが最も難しいです。OSMC と Volumio にはインターネット ラジオ局の広範なライブラリがありますが、RPi-Radio では、お気に入りの局のアドレスを JSON 形式で手動で入力する必要がありました。 不便ではありますが、人生に一度(または数回)だけです。

OSMC の初期セットアップの経験は最悪です。 まず、モニターを Raspberry に接続し、Radio プラグインを設定する必要があります。次に、コンソールまたは SSH 経由で外部 IQAudio DAC (Suptronics X400 ボード上のもの) へのオーディオ出力を設定する必要があります。 RPi-Radio の DAC セットアップは同じですが、少なくとも他のすべては ssh 経由で行われます。 このカテゴリのリーダーは、もちろん Volumio です。外部 DAC を通じてサウンドを出力するには、設定メニューのドロップダウン リストから適切な項目を選択するだけです。 Suptronics の公式 Web サイト (http://www.suptronics.com/xseries/x400.html) には比較もあります。

RPi-Radio の GUI は、React.js で実装されたシンプルな Web ページです。 クライアント GUI と mpd の間の対話を担当するサーバー部分は Node.js 上で実行され、Socket.io + http + Express の組み合わせに基づく単純な HTTP および WebSocket サーバーです。 mpd サービスの開始直後にシステムの電源がオンになると、Raspbian 上でサービスとして実行され、mpc-js モジュールを使用して mpd を管理します。 クライアント GUI には、「raspberry」の IP またはホスト名を使用するだけで、ホーム ネットワーク上のどのブラウザからでもアクセスできます。 完璧。


RPi-Radio ソースが公開されています

すでに何度も言われているように、ミニ PC の多用途性には限界がありません。 ユニークなプロジェクトを作成するには、プログラミングの基礎知識と 1 日の空き時間があれば十分です。 しかし、誰もが時間に余裕があるわけではなく、自分の手で何かをしたいと考えています。 したがって、インターネットまたはプラグインを使用して Raspberry でラジオを聞く方法に関する短い記事を用意しました。

Raspberry Pi でのインターネット ラジオ

この方法を使用してラジオ局を作成するには、適切なモジュールを備えたガジェット モデルが必要です。 利便性を高めるために、内蔵 Wi-Fi モジュールを備えた古い変更を使用すると、多くの不要な配線が排除されます。 次に、以下の手順に従って、Raspberry Pi を使用してインターネット ラジオ受信機の作成を開始します。

  1. 音楽を再生するオーディオデバイスをボードに接続します。 必要に応じて、ガジェットのケースと小さな画面を選択できます。
  2. コマンド「sudo_apt-get_install_mplayer」を作成します。これにより、ラジオ放送を含む最も一般的なオーディオ ファイル形式を再生できるプレーヤーがミニ PC にインストールされます。
  3. Android オペレーティング システムを搭載したスマートフォンまたはタブレットに、キーボードを接続せずに Raspberry 上でコマンドを実行できるアプリケーションをインストールします。 この例では Raspi SSH です。 さらに、ガジェットに個別のボタンをはんだ付けし、ラジオ局の再生をオンにしたり停止したりするための適切なコマンドを記述することもできます。
  4. ラジオをオンにするコマンド「mplayer_-playlist_http://ラジオ局への直接リンク」を記述します。 登録したラジオ局のみが再生されますのでご注意ください。 別のコマンドに切り替えるには、コマンドを再入力する必要があります。 公式リンクは関連サイトで見つけることができ、簡単なナビゲーションに便利な場所に保存できます。
  5. ラジオを聞いた後でラジオをオフにするには、「killall_mplayer」コマンドを入力します。これにより、ガジェットを損傷するリスクを最小限に抑えてアプリケーションを終了し、ミニ PC を電源から切断します。

さらに、Raspberry でインターネット ラジオを聞くには、適切なアプリケーションをサポートするオペレーティング システムをインストールするか、既製のユーティリティ (Github で見つかります) を備えたファームウェアを使用できます。 次に、RTL-SDR レシーバーで Raspberry を使用する場合の機能を見てみましょう。

ミニ PC を永続的なインターネット接続から切り離すには、Raspberry Pi 用の小型 SDR レシーバーと対角 2.8 インチ以上のディスプレイ (PiTFT) をオンライン ストアから購入できます。 その後、次の指示に従います。

  • ディスプレイを接続して設定します。 これを行うには、必要なすべてのソフトウェアを含むイメージをダウンロードし (直接リンク adafruit-download.s3.amazonaws.com/2015-02-16-raspbian-pitft28r_150312.zip)、ガジェットのメモリ カードにフラッシュします。 Raspberry に OS がすでにインストールされており、重要なデータを失いたくない場合は、手動で設定を実行できます (経験豊富なユーザーのみ)。
  • RTL-SDR ライブラリを Raspberry Pi にダウンロードします (必要なものがすべて含まれた既製のアーカイブを Github で見つけることも、各ライブラリを手動で登録することもできますが、これはあまりお勧めできません)。
  • Python のモジュール ラッパーをインストールします。 これを行うには、コマンド「sudo_pip_install_pyrtlsdr」を入力し、メモリ カードへのインストールが完了するまで待ちます。
  • FreqShow アプリケーションをインストールします。これにより、信号受信を監視し、将来的にラジオを聞くことができるようになります。 これを行うには、「cd_~段落 git_clone_https://github.com/adafruit/FreqShow.git 段落 cd_FreqShow」というコマンドを作成します。
  • コマンド「sudo_python_freqshow.py」でアプリケーションを起動し、すべての関数の読み込みが完了するまで待ちます。
  • rtl_fm プログラムを使用して、コマンド「rtl_fm_-f_104.7M (任意の周波数) -M_wbfm_-s 200000_-r_48000_-_|_aplay_-r_48k_-f_S16_LE」を使用して無線信号を再生します。 この方法を使用すると、公式ラジオ局の周波数を聞くだけでなく、ラジオ モジュールのキャプチャ ゾーンを通過する信号をキャッチすることもできます。

さらに、Raspberry Gqrx で SDR モジュールを使用すると、より良いサウンドが得られます。 ただし、これらのモジュールを操作する場合、Raspberry ユーザー コミュニティではあまり一般的ではないため、ミニ PC 上で目的の信号をキャッチして安定した動作をセットアップすることは非常に困難です。

これで、Raspberry 上でインターネットと SDR を使用してラジオを聴くことに関する役立つ情報がすべて終わりました。 コンパクトな形でお気に入りのラジオ局のクリアなサウンドを楽しみ、小さなガジェットの機能で友人を驚かせましょう。

大都市に住んでいて、簡単なラジオ受信機さえあれば、VHF 範囲の数十のラジオ局を非常に高品質で聴くことができます。 これで十分だと思われますが...

しかし、地上波ラジオ局にはいくつかの欠点があります。 第一に、一部の地域では電波の受信状態が悪く、第二に、明らかに多様性があるにもかかわらず、音楽の好みに完全に適合するラジオ局を見つけるのは必ずしも簡単ではありません。 さらに、迷惑な広告と、ほとんどの放送局のレパートリーがかなり限られています。

現在、多くのユーザーが World Wide Web 上で放送されているラジオ局を聴くことを好むのは驚くべきことではありません。 現在、インターネットラジオ局の数はすでに1万局を超えています。 インターネットを通じて、世界のほぼすべての国にあるさまざまな言語で放送されている放送局の番組を聴くことができます。 しかし、ラジオを聞くためにコンピュータの電源を入れるのは、控えめに言っても不便です。 なんだかもっと身近で便利になった――ノブを回して放送局に合わせてみると……。

ということで、インターネットラジオ受信機を作ります。 このアイデアは、あるプロジェクトで Raspberry Pi モデル B マイクロコンピューターを使用するかどうかを決めていたときに思いつきました。Raspberry Pi モデル B は、より強力な Raspberry Pi 2 を購入した後、使用されずに放置されていました。

Raspberry Pi にはインターネット ラジオ プロジェクトが数多くあります。 私が見つけた中で最高のものはPi Radioでした。 著者 - ボブ・ラスボーン- 2 年以上このプロジェクトに取り組んでいます。 特に注目すべきは、すべての情報のオープン性とアクセシビリティ、およびハードウェアとソフトウェアの構成方法の非常に詳細な説明です。

私が繰り返すことに決めたのはこの展開でした。 もちろん、デザインをただ盲目的にコピーするのではなく、プロセスに創造的に取り組み、独自の何かを追加しました。

では、パイラジオとは何でしょうか? これは、オンライン ラジオ局を聴くことができるインターネット レシーバーであり、さらに、フラッシュ ドライブやホーム ネットワーク上のネットワーク ドライブから音楽ファイルを再生することもできます。 このプログラムには、タイマー、目覚まし時計、RSS ニュース、ポッドキャストなど、さまざまなサービス機能が含まれています。

インターネットへの接続は有線または WiFi 経由で行うことができます。 受信機は人気のある Raspberry Pi マイクロコンピューターをベースにしており、B、B+、2、または Zero のどのモデルでも使用できます。

Bob Rathbone は回路とソフトウェアのいくつかのバリエーションを開発しました。 エンコーダとボタンの両方を使用して制御が可能で、2行または4行の文字LCDディスプレイに情報が表示されます。 リモコンを使用して受信機を制御できます。

ディスプレイは、Raspberry Pi I/O ポートに直接接続するか、I2C バス経由で PCF8574 ベースのボードを使用して接続できます。 著者は、さらに 2 種類のディスプレイ、I2C インターフェイスを備えた AdaFruit LCD と SPI インターフェイスを備えた PiFace CAD を使用する可能性を提供しました。

2 行ディスプレイを I/O ポートに直接接続し、エンコーダを制御するオプションを繰り返しました。 結果は私を完全に満足させたので、別の受信機が必要になったとき、2番目のバージョンを作成しました。すべて同じでしたが、ボタンで制御できました。 今後、これら 2 つの変更について説明します。

最初に PCF8574 ボードを使用して I2C バス経由でディスプレイを接続しようとしたことに注意してください。 セットアップに多くの時間を費やしましたが、最終的にはこのオプションを放棄する必要がありました。 ソフトウェアは非常に複雑で量が多いため、明らかに、作成者には無線機のすべてのオプションを徹底的にテストする体力も機会もありません。

特にリモコンからコマンドを送信するときに、プログラムが常にフリーズしていました。 ここで何が起こっているのかを理解するのは困難です。 ただし、ディスプレイを Raspberry Pi に直接接続するオプションは確実に動作します。 したがって、このレシーバーで I2C または SPI バスを使用することはお勧めしません。

私の意見では、作者はあらゆる種類の補助機能に注意を払いすぎて、主要な機能に損害を与えました。 結局のところ、LCD インジケーターの機能は非常に限られており、たとえばニュースを読むのはあまり快適ではありません。 受信機を目覚まし時計として使用することは非常に危険です; 何らかの理由でインターネットがなければ、ラジオもなくなります。 そして夜になると電気が切れてしまうことも…。

ただし、一般的には、すべてがうまくいき、受信機は使用できます。

基本的に、ラジオ受信機は、ディスプレイと 2 つのエンコーダーが I/O ポートに接続された Raspberry Pi ボードです。 そのうちの 1 つを使用してステーションを選択し、2 つ目のものを使用して音量を調整します。 使用されるディスプレイは、HD44780 コントローラに基づいた 2 行の 16 文字を備えた最も一般的なものです。 エンコーダーの代わりに、ナビゲーションに 5 つのボタンを使用できます。

高品質のサウンドを愛する場合は、Raspberry Pi の AUDIO 出力の代わりに外部 USB サウンド カードを使用することもできます。

もちろん、受信機には電源が​​必要です。 選択できるオプションは数多くあります。少なくとも 1.5​​ A の電流を備えた 5 ボルトの安定化電源であれば問題ありません。携帯電話の充電器は機能しないことに注意してください。安定化電源が必要です。負荷がかかる電圧は適切ではありません。 4.8 V 未満に低下し、負荷がなければ 5.2 V を超えます。

まあ、何らかの形で音楽を聞かなければなりません。 ステレオアンプまたはアクティブスピーカーが必要です。 あらゆる好み(聴覚)と予算に合わせたオプションも多数あります。

このプロジェクトではアマチュア無線の「ジャンクボックス」を最大限に活用することにしました。 これには、必要な電流と電圧に対応する優れたネットワークトランス、LM2576-ADJ スイッチングスタビライザーチップ、および優れたかなり強力な LM1876 ステレオ低周波アンプチップが含まれていました。

著者は、電源スイッチを使用して受信機のオンとオフを切り替えることを提案しています。 これは Raspberry Pi に害を及ぼすことはありませんが、状況が悪いと SD カード上のファイル システムに損傷を与える可能性があります。 そこで、システムを正しく閉じて電源を切るための回路をデバイスに追加することにしました。 さらに、作者はそのようなモードを提供しています - 「メニュー」ボタンを3秒間押したままにし、さらに約30秒待って電源を切る必要があります。 同意します - これは非常に不便です。

結果は次の図です。 これがエンコーダー制御の最初のオプションです。 私の追加は青色でハイライト表示されます。

チューニングとボリュームは、それぞれ SA1、SB1 ボタンと SA2、SB2 ボタンが付いたエンコーダを使用して制御されます。 ボタン SB1 – 「メニュー」に入り、ボタン SB2 – 「ミュート」モードに入ります。 エンコーダは、90 度シフトされた一連のパルスを生成する必要があります。 ES110501S-HA2 5ピンタイプを使用しました。 店の価格表にはこのラベルの下に記載されていました。

トランジスタ VT3 ~ VT7 と抵抗 R11 ~ R23 は、インジケーター用の 3.3 ~ 5 V の論理レベル コンバータです。 これらのアイテムをインストールする必要はありません。 実践が示しているように、5 ボルトのインジケータは通常、論理レベル 3.3 V で動作します。ただし、問題が発生した場合は、レベルコンバータをインジケータ上の小さな基板に直接取り付けることができます。 3.3 V で駆動されるインジケーターを使用するとさらに良いですが、そのようなインジケーターは非常に希少であり、コストも大幅に高くなります。

DA1はテレビのリモコンの受信機で、出力にはエミッタ接地のトランジスタとコレクタ回路に30KΩ程度の負荷抵抗が入っているのでレベル合わせは問題ありません。 HL2 – リモコンアクティビティインジケーター。

これは実際には受信機全体であり、左側の青で強調表示されている回路の部分が電源回路です。 通常のトランス電源を使用しました。 オフ状態では、すべての回路は通電されておらず、スタンバイ モードはありません。 SB4ボタンを押すとトランスに電源が供給されます。 ボタンは固定されておらず、220 V を切り替えるように設計されている必要があることに注意してください。 C4、C5、L1、L2 – ネットワーク ノイズ フィルター、L1、L2 の定格は重要ではありません。

スタビライザーの出力から、5 V 電圧が Raspberry Pi の microUSB コネクタと PIC コントローラー DD1 に供給されます。 コントローラのピン 7 (GP0) に High 論理レベルが設定され、トランジスタ VT1 が開き、リレー K1 がアクティブになり、電源ボタンがその接点でブロックされます。

コントローラーのピン 3 (GP4) ではゼロ レベルが設定され、ブート プロセスおよびシステムのシャットダウン中に ULF 入力を短絡するために使用されます。 実際のところ、USB サウンドカードをアクティブにするプロセスには、不快でかなり大きな音が伴います。 Raspberry Pi の内蔵 AUDIO 出力を使用する予定の場合、K2 リレーを取り付けることはできません。この場合、コントローラーの GP4 出力はどこにも接続されません。

電源が投入されると、HL1 LED が約 50 秒間点滅し、システムが起動していることを示します。 この時間が経過すると、受信機は動作の準備が整い、ピン 3 (GP4) に High 論理レベルが設定され、ULF 入力のロックが解除され、HL1 が常に点灯します。 HL1 と HL2 には、カソードが共通の 2 色 LED を 1 つ使用しました。

受信機の電源をオフにするには、SB3 ボタンを短く押す必要があります。 この場合、コントローラー出力 5 (GP2) は、SB1 の「メニュー」ボタンを押すことをシミュレートして、低論理レベルに設定されます。 3 秒後、システムが閉じ始め、ULF 入力がブロックされ、HL1 が再び点滅して、終了を知らせます。 約 40 秒後、システムが閉じられ、ピン 7 (GP0) がゼロに設定され、リレー K1 がオフになり、システムの電源が切られます。

コントローラは、PIC12F629 や PIC12F675 のように、プログラムを少し変更するだけで、あらゆる PIC を使用できます。

変圧器の二次巻線の電圧は若干高いですが、入手可能なものから進めました。 5 V スイッチング電圧レギュレータを使用する必要があり、これは LM2576-ADJ 上に組み立てられ、標準回路に従って接続されています。 抵抗器 R1 の値は、リレーの定格電流と電圧に基づいてオームの法則に従って計算されます。 L2、C3 – 追加のインパルスノイズフィルター。 L1 定格は、LM2576 データシートに記載されている推奨事項に従って、入力電圧と動作電流に基づいて選択されます。 L2 値は重要ではありません。

この回路の唯一のノウハウは、6.8 V の安定化電圧を備えた D815B タイプの VD3 ツェナー ダイオードです。これはスタビライザーの動作には関与しません。これは、電圧上昇時の電圧上昇から負荷を保護するために取り付けられています。スタビライザーの故障。 同意します。回路に 5 V の代わりに 24 V を印加すると、非常に悲しい結果になります。

ここでは、ラジエーターのないボードに取り付けられた、ナット付きの金属ケースに入った古いツェナーダイオードを使用する必要があります。 何らかの理由でスタビライザーの出力電圧が 7 V を超えた場合、ツェナー ダイオードに大電流が流れ、トランス巻線回路のヒューズが切れます。

ヒューズの代わりに釘が取り付けられている場合、ツェナーダイオードが過熱し、その中の水晶が溶けて出力が短絡します。 Raspberry Pi が保存されます。 ガラスケース内で低電流ツェナーダイオードを使用する場合、過負荷がかかると爆発するだけであり、負荷を保護することはできません。

低周波アンプには特別な機能はなく、LM1876 の標準回路に従って組み立てられています。 要素 C9...C12 および R12...R17 – 2 つの固定位置クラシックおよびロックのトーン コントロール。 前者の場合、周波数応答は線形であり、後者の場合、低域と高域の周波数が上昇します。 SA1 トグル スイッチを 3 つの位置で使用する場合、中央の位置ではすべての接点が開いており、低い周波数のみが上昇します。 トーンコントロールはピン SA1 に取り付けられています。

リレー K2 の常閉接点は、システムの起動中およびシャットダウン中にアンプの入力を短絡します。 この図はリレーを 24 V 巻線に接続することを示していますが、使用する電源に応じて 12 または 5 V を使用することもできます。 すでに書いたように、このリレーは USB サウンド カードと高品質の音響にのみ必要です。

トリミング抵抗 R4 を使用して、ゲインはチャネル全体で均一化されます (ステレオ バランス)。 動作調整のためにこの抵抗を取り外す必要はありません。 ULF ゲインは、抵抗 R8/(R3+R4) および R9/R7 の値の比によって決まります。

アンプはトランスの別の巻線から電力を供給されます。 受信機のアナログ部分とデジタル部分に共通の電源を使用すると、Raspberry Pi によって発生するあらゆる種類の「ハナアブ」や「きしむ音」などのノイズを取り除くことがより困難になります。 アナログおよびデジタルのグランドは、ULF 入力コネクタの 1 点のみで接続する必要があります。 別途外部ベースアンプやアクティブスピーカーを使用するとさらに効果的です。

ボタンコントロールを備えた受信機の 2 番目のバージョンの図は次のとおりです。

「ミュート」モードは、「音量を上げる」ボタンと「音量を下げる」ボタンを同時に押すとアクティブになります。 抵抗 R27 ~ R31 は、最も古い Raspberry Pi モデル B rev.1 にのみ必要です。 回転数については 2、モデル B+、2、および Zero はインストールする必要はありません。

スイッチング電源 5 V、2 A。抵抗 R26、R27 は、ネットワークがオンになったときの電流サージを制限し、ヒューズとしても機能します。 ダイオード VD2 - VD4 は 5 ~ 3.3 V のレベルを一致させるために使用されます 5 V 巻線を備えたリレー K1 2 対の接点を備えたこのようなリレーを購入できない場合は、2 つのリレーを 1 対ずつ並列に接続できます。 この場合、より強力なトランジスタ VT1 を使用する必要がある場合があります。 ULFの代わりに5V(USB)で駆動するアクティブスピーカーを使用しました。 Raspberry Pi の AUDIO 出力に接続します。 回路の残りの要素は、エンコーダを備えたバージョンと同様です。

私はすべてのボードの図面を「基礎として使用できる」ようにするためにのみ、Sprint Layout に投稿します。 ページの最後にリンクがあります。 1:1 を繰り返すことはお勧めしません。基板の寸法と構成は、まずケースによって決まります。

2 つの受信機オプションの PIC ファームウェアは異なります。エンコーダ付きのオプションの場合、これはファイルです picrdo_enc.hex、ボタン付きオプションの場合 - picrdo_but.hex。 ファームウェアは PIC12F629 と PIC12F675 の両方に適しています。 ファームウェアのアーカイブにはプログラム ソース ファイルも含まれています。 必要に応じて、遅延時間を簡単に変更して、受信機をオンまたはオフにすることができます。

コンポーネントはどこで購入できますか? Raspberry Pi は依然として (2015 年後半) 中国で注文する方が安く、Aliexpress ではモデルにもよりますが、30 ~ 40 米ドルの範囲です。 そこでは、必要に応じて、電源と USB サウンド カードを非常に手頃な価格で入手できます。

USB サウンド カードの使用は、音響が十分に優れている場合にのみ意味があります。 スピーカーの価格が 50 ドル未満の場合は、Raspberry Pi に組み込まれた AUDIO 出力で十分です。 ロシアの電子機器を販売する店では、スピーカーの選択肢が非常に豊富です。 もちろん、インターネット ラジオにハイエンドのサウンドを期待してはなりませんが、テニス ボールほどの大きさのブザーは最良の選択ではありません。

ロシア語のサポートが必要な場合は、ロシアでインジケーターを購入することをお勧めします。 明るい背景に暗いシンボルがあるモデルを優先してください。 白いシンボルと青いバックライトを備えた人気のインジケーターは見た目は美しいですが、非常に「慣性」的です。 テロップを追うのは難しいでしょう。

インジケーターにロシア語の文字の代わりに象形文字が表示されていても問題ありません。この受信機では使用できます。 ロシア語のテキストのみがラテン文字で表示されます。 また、エンコーダは小売店で購入することをお勧めします。少なくともブランドがわかっているため、データシートを使用してパラメータを明確にすることができます。

質問がある場合は、質問する前に、説明のすべての部分を注意深くお読みください。また、Pi Radio の作成者によるドキュメントもお読みください。

トピックの続き:
コンピューター

今日、インターネットは私たちの日常生活に不可欠な部分となっています。 グローバルネットワークに常時アクセスできることは、快適に過ごすための必須条件です。

新しい記事
/
人気のある