レトロ風FMラジオ自作: TEA5767モジュールとArduino Nanoで作るアナログメーター付き受信機
プロジェクト概要
TEA5767 FMラジオモジュールとArduino Nanoを核に、アナログメーター(信号強度・周波数表示)、ステレオLED、プリセット局ボタン、ロータリーエンコーダー操作を備えたレトロデザインのFMステレオラジオを自作します。Rodolfo Broco Manin氏のLCDアナログスケール表示コードをベースに、ハードウェア機能を大幅拡張。D級アンプ(2×3W)駆動の2ウェイスピーカーで高音質再生を実現し、伸縮アンテナ内蔵の専用筐体に収納した完成度の高いプロジェクトです。
主要コンポーネント
| 部品 | 数量 | 備考 |
|---|---|---|
| Arduino Nano R3 | 1 | 制御用MCU |
| TEA5767 FMラジオモジュール | 1 | I2C制御、ステレオ出力 |
| アナログメーター (旧ラジオ流用) | 2 | 信号強度用・周波数用、トリマーで満量調整 |
| 16x2 LCD (白/青) | 1 | アナログスケール表示・ステータス表示 |
| ステレオポテンショメーター 10kΩ (Aカーブ) | 1 | 音量・バランス調整 |
| D級アンプモジュール 2×3W (PAM8403等) | 1 | スピーカー駆動 |
| スピーカー 3W/4Ω (フルレンジまたはツイーター) | 2 | 高音域用、1μFコンデンサでハイパス |
| スピーカー 0.25W/8Ω (ミッドバス) | 2 | 中低音域用 |
| ロータリーエンコーダー (プッシュSW付) | 1 | 周波数チューニング・モード切替 |
| タクトスイッチ 12mm | 4 | プリセット局ボタン (4局記憶) |
| LED | 3 | ステレオ表示・オート/マニュアル表示・電源 |
| 電解コンデンサ 1μF | 2 | ツイーター用ハイパスフィルター |
| 7805レギュレーター + リチウム電池×2直列 | 1式 | 5V安定化電源 |
ハードウェア構成のポイント
音声経路
TEA5767 L/R出力 → ステレオボリューム → 1μFカップリングコンデンサ (ツイーター側のみ) → D級アンプ入力 → 2ウェイスピーカー (ツイーター+ミッドバス)。アンプゲインは固定、ボリュームで音量調整。
アナログメーター駆動
- PWM出力 (D5: 信号強度、D6: 周波数、D7: ステレオLED) をローパスフィルター (RC) またはメーター内部コイルのインダクタンスで平滑化し、メーター駆動
- トリマー抵抗で満量点 (フルスケール) を校正
- 周波数メーターは1MHz刻みで更新 (ライブラリ仕様由来)。滑らかな針動作は今後の課題
操作インターフェース
- ロータリーエンコーダー: 回転で周波数±0.1MHz (マニュアル) / 長押しでオートサーチ上下 (オートモード時)
- エンコーダープッシュ: オート/マニュアル切替 (LEDで表示)
- プリセットボタン×4: コード内定義周波数 (92.0, 94.8, 97.0, 101.2 MHz) へワンタッチ移動
ソフトウェア構成 (主なライブラリ・機能)
TEA5767ライブラリ (Andy Karpov版推奨) でチップ制御LiquidCrystalでLCD制御 (カスタムキャラクタでアナログスケール・ステレオアイコン描画)- 割り込み処理 (INT0/INT1) でエンコーダー/スイッチの高速応答実現
- ステータスフラグビット操作でモード管理 (オート/マニュアル、ステレオ検出、サーチ中、アップ/ダウン)
- 信号強度(0-15)を0-100%にスケーリングしPWM出力
既知の課題と改善予定
- 周波数メーターが1MHzステップでしか動かない (ライブラリ制約)。滑らかな動作のための代替実装検討中
- 弱電界局でステレオ/モノ頻繁切替 → ステレオ/モノ強制切替スイッチ追加予定
- ミュートスイッチ追加予定
- RDS (Radio Data System) 対応 (局名表示等) も将来的に検討
組み立てのコツ
- ブレッドボードで動作確認後、ユニバーサル基板または自作PCBに実装
- アナログメーターのPWM平滑化は、メーター内部抵抗と相談しながらRC定数決定
- 伸縮アンテナはTEA5767のアンテナ端子 (ピン10) に直結、筐体外部に露出
- 電源ラインには十分なバイパスコンデンサ (100μF+0.1μF) を配置し、D級アンプのスイッチングノイズ対策
- 筐体は木製・アクリル・3Dプリント等でレトロ感を演出
参考リソース
- ベースコード: Rodolfo Broco Manin (RodLophus) TEA5767ライブラリ
- 回路図・スケッチはプロジェクトページに添付
製造プロセス
- Node-REDで作るDIY Nest風スマートサーモスタット(Raspberry Piベース)
- GY-91モジュールでRaspberry Pi上に堅牢な温度・センサーAPIを構築
- 予算に優しいRaspberry Pi赤ちゃん泣き声検知器の自作 - DIYガイド
- Arduinoで作るレトロNumitron管時計:シンプル、信頼性高く、省エネ
- Arduino Nanoで水滴を高速撮影 – DIYハイスピードフォトグラフィ
- Arduino、Google Cardboard、Bluetoothで作るDIY VRスケートボード
- Arduino Nanoで作る防水シャワーFMラジオ:RDA5807、Nokia LCD、PAM8403搭載
- Arduino MegaとNEO-6M GPSモジュールの接続:ステップバイステップガイド
- ArduinoとNokia 5110ディスプレイで自作電圧計:ステップバイステップガイド
- Bluetooth Mesh設計の選択:モジュールかディスクリートデバイスか
- Pythonモジュールインポート完全ガイド:実例付きで徹底解説