Raspberry Pi せっかくあるので、一応作りたい目標をもっていろいろ試してみてる。現時点での思惑を書いておく。
概要
無線機の周辺を拡張して、PCと連携しやすくしたり便利にしたり、というのが目的。具体的には
- 無線機の Wi-Fi 化
- API サーバになってLAN内のコンピュータから無線機の情報を取得・設定する
- アンテナ切替情報の取得・設定
- そのたもろもろ
全体
- Raspberry Pi
- I2C バス
- アンテナ切替コントローラー (AVR)
- センサー計 (温度など)
- シリアルポート
- 無線機コントロール (RS-232C 変換)
- I2C バス
- WebSocket サーバー
- 周辺機器の中央集権サーバー
- 無線機コントローラー
- アンテナ情報
- センサーなど
- 周辺機器の中央集権サーバー
ある程度拡張性を持たせつつこれらを収めたい。無線機の近くで使うので、ある程度ノイズ対策が必要かもしれない。
ブロックごとの設計
電源部
- アンテナ切り替えリレー用に 12V (最大 400mA 程度) が必要
- Raspberry Pi が 5V 700mA が必要
- ほか周辺機器分はそんなに食うものがないので、かなり余裕を持っても 5V 500mA ぐらいあればよさそう
- Raspberry Pi の GPIO が 3.3V で接続機器もあわせたいので 3.3V も必要
12V が必要なので、ACアダプタとして 12V を使い、降圧して 5V, 3.3V を作りたい。
- 12V 500mA (6W)
- 5V 1A (5W)
- 3.3V 500mA (1.65W)
ぐらい確保できたら十分そう。PC用の電源だと、100Vから直接これらの電圧を全部調達できるけど、コストはともかくオーバースペックでデカすぎる。
12V 2A ぐらいのACアダプタ (24W) から 5V はスイッチングである程度高容量を高効率でとりだして、3.3V は 5V からリニアレギュレーターで安定化させる感じにする。
http://akizukidenshi.com/catalog/g/gM-02038/
5V 3A のスイッチングDC/DCコンバーターで、変換効率は最低でも73%。
- アダプタ: 12V 2A
- 12V 500mA
- 12V 1.5A (18W) -> 5V 2.6A (18 * 0.73 = 13.14W)
- 5V 1A
- 3.3V 500mA を 5V からリニアレギュレーターで作ろうとすると、電圧差はそのまま熱になるので ( (5 - 3.3) * 0.5 = 0.85W が無駄になる)、単に 5V 500mA を消費すると考えることができる。
アンテナ切替コントローラー
ATmega168P をつかって実装。TWI (I2C) がついてるので簡単。内蔵8 M クロックで動作させて、アンテナのリレーのコントールをI2C経由及びボタンで行い、LED でどのアンテナが有効かを表示する。
リレーは2〜6つほどを同時に駆動する必要があり、この時最大で 400mA ほど流れる。かなり余裕があり、3.3V でも十分スイッチできるパワーMOS-FET でスイッチングする。
電源は I2C を Raspberry Pi と直接繋げたいので 3.3V 供給
センサー類
基本的に I2C 対応、3.3V 品なので、そのままバスに繋ぐだけ。ごちゃごちゃやりたいのでブレッドボードを内蔵してそこに差す
RS-232 変換
無線機とのインターフェイスのために RS-232 変換をする。