夢のFMトランスミッタ
 こんなトランスミッタあったらいいな〜?と思ってなんでもかんでも詰め込んだトランスミッタです。
 実現ほぼ不可能。半分妄想入ってます・・・。
 だれか実現に向かって一緒に手伝ってくれる方、大募集中。心臓である送信機部が全く手付かずの状態です。
 私が出来るのはトランスミッタコントロールソフトウェア部のみです。ファームウェアの枠組みは完成しています。
 ここはこうしたほうがいい!ってところがあれば、ガンガン指摘してください。ぜひよろしくお願いします。

 目指せ!コミュニティFM送信機!!
【基板構成】
基板は4枚+小基板2枚の構成にする予定です。
トランスミッタ部と高周波増幅部は異常発振を防止するために別基板とします。
基板名 機能 概要
POWER 電源部 市販スイッチング電源を使用(12V10A程度)
TRANSMITTER トランスミッタ部 発振・変調・増幅を行う
AMPLIFIRE 高周波増幅部 高周波増幅(終段)・高調波除去を行う
LOGIC(SYSCON) ロジックコントロール部 トランスミッタ全体のシステムコントロールを行う
PANNEL フロントパネル基板 機器操作盤・液晶表示器・入出力ジャック
IOPANNEL 入出力基板 RF OUT・LINE IN・CONTROL 端子基板
【機器仕様】
項目 詳細
機器名称 PLL方式・FMステレオトランスミッタ
機器型番 FMT-2000
周波数制御方式 PLLクオーツ方式
送信出力 10mW(微弱)〜25w(最大) メニューより連続可変可能
送信範囲 76.00MHz〜89.90MHz(0.1MHzステップ)
周波数安定度 ±0.01MHz以下
ダイナミックレンジ 60db以上
音声歪み率 *
チャンネルセパレーション 40db以上
機器状態表示装置 ・16文字×2行 ドットマトリクス液晶表示器(白LEDバックライト付き)
・機器状態表示LED
その他機能 ・送風ファンによる機器強制冷却機能(ON/OFF可)
・RS-232Cインターフェースによる外部コントロール機能 (Windows98/2000用コントロールソフト付属)
・自己診断機能
・3段RFフィルタ搭載で高調波を抑えたクリーン設計
・38KHzパイロット信号干渉防止フィルタ搭載
【インターフェース】
本体表示 接続ソース
Audio IN L 音声入力左(キャノン(XLR)端子)
Audio IN R 音声入力右(キャノン(XLR)端子)
Control 外部通信(RS-232C端子 通信速度 9,600bps)
ANT Out アンテナ出力(Mコネクタ)
AC 100V IN 電源端子(3端子)
【本体ボタン・スイッチ類】
本体表示 機能名 ボタン種別
Main Power 「主電源」スイッチ シーソー式スイッチ
Power 「電源」キー タクトスイッチ
Function 「機能」キー タクトスイッチ
Enter 「決定」キー タクトスイッチ
UP 「上移動」キー タクトスイッチ
DOWN 「下移動」キー タクトスイッチ
【表示装置】
本体シルク印刷表示 表示器種別 機能概要
Multi LCD Display LCD 各種動作状況表示 メニュー表示等
Power LED 電源ON時:緑 電源OFF時:赤
Emergency LED 緊急時:赤点滅 通常時:消灯
Audio Peek LED 過変調時:赤 通常時:消灯
PLL Lock LED PLL Lock時:緑 PLL UnLock時:消灯
Audio LEVEL LED or LCD レベルメータ(液晶表示 or バーLEDかで検討中)
【外部コントロール】
 RS-232C端子により外部機器とのデータ通信が可能。
 添付Windowsソフトより、番組のスケジューリング送出が可能。自動放送開始・停止機能も搭載。
 Windows上の専用ソフトにて機器の状態を設定・取得。さらにユーザオリジナルソフトへの組み込み支援として専用DLLを添付。
【内蔵ファームウェアメニュー項目】
 設定可能項目
 送信周波数調整
 ステレオ・モノラル切り替え
 スタンバイモード切り替え(1KHzトーン)
 送信出力調整
 自己診断開始指示

 取得可能項目
 自己診断結果 (機器の状態を診断・状態取得)
 本体内部温度 (パワーTr周辺温度を取得)
 連続運転時間 (機器の連続運転時間を秒単位で取得)
 送信出力モニタ(送信状況をリアルタイムに取得)
【課題】(山積み・・・)
PLL ICは何を使うか?>MC145163Pは入手困難なため×。シリアル入力のPLLを使うか?→ROHMのLSIに決定
モジュレータは?>BA1404は入手不可。代替品を調査。ROHMの新製品をピッチ変換基板で使用?→ROHMのLSIに決定
ファイナルはどうする?>M67742入手困難。高周波回り込みを考慮し、1w出力を定格(Max)とする?
出力連続可変はPICのPWM制御+専用TrでOKか?
セパレーションをよくしたい>NJM2035却下
専用基板は作れるか?
専用ケースはどうする?>特注?自作?1Uにする?
送信出力モニタはどうやって実装する?>どこまでサポートするか(出力チェック?電圧・電流チェック?)
ROHMのLSIが手に入らない>メーカーに、製品の保守部品として注文する?(どのメーカーのどの製品に使われているか要調査)
【進捗状況】
2003/03/31 16:52
 このページ(dream.htm)を作る。
 いままでこのファイルはテキストファイルとしてメモリーカードにネタでおさめていたのですが、このままでは日の目を見なくなる可能性大!と判断し、公開に踏み切る。なんか全然的外れな仕様なんじゃないかと、かなり不安です。
 今作っているファームはMC145163のコントロールを前提にしていますので、汎用性がありません。・・・というか、単純にPICで2進で出力してるだけなんです。
 言いかえればその部分ごっそり入れかえれば他のデバイスに応用可ということなんですがはてさて??
 とりあえず、MC145163 Edition として、ファームウェアを1つ完成させるつもりです。
 そして、そのソースを改変して、最終的なROHM LSI対応版を作ろうと思います。
 ROHMのデバイスを研究中です。


2003/02
 某大型掲示板で私が立てたスレッドが消されてしまった。
 まーブースターやらなにやらたくさん書いてあったから仕方ねーわな。と思っていましたが本当の原因は規模縮小の影響では?との話を聞きました。
 で、新スレッドがいつのまにか立っていたので「前1」として参加させていただく。
 ちょうどこのころ、コロナ電業のTR-10RDXをたまたま購入し、ROHMの新デバイスにとりつかれる。
 半端なく音がいい。一昔前のセコセコ高音質化を行っていた自分がバカらしくなるほど。技術の進歩ってすばらしい。
 こりゃ絶対にROHMのデバイス採用決定。音質に関しては私は全く文句なし。うちの地元のコミュニティよりいいんじゃないかと思うほど。BH14xxで決まり。


2003/02
 ビープスピーカ制御ルーチンを組み込みました。
 頭の中の論理では、ポートを高速でON/OFFして音を出すんだ!と分かっていても、実際そんなにうまくいくもんかね?と思い、適当にコーディングしてコンパイルするとあっけなく動いた。なんだ簡単じゃん!調子に乗って音階を付けてみたりしました。
 とりあえず、起動時やキー入力時、電源OFF時などに音がなるようにしてみる。ビープ音がするだけで、こんなに機械っぽく見えるとは。


2002/12
 プロセッサ内蔵のEEPROMへの読み書きに初挑戦。
 ネットなどの情報を元にEEPROMを操作するも全く期待通りにうごいてくれず。
 うまく動かないまま3週間が経過。イラ×3
 PICの仕様書を穴が開くほど読んでみると、なんと自分が扱っているデバイス(PIC16F877)だけ、読み書きにBANK2/3を使用するようにとの記述がこんな小さく載っていました。
 なんですとぉぉぉー!聞いてねぇぞ!オイ!俺の悩んだ時間はなんだったんだぁ〜。


2002/08
 自分の書いたLCD制御ルーチンをPICに書き込み、動作テストをしてみる。
 当然一発で動かないんですが、ハードが悪いんだかソフトが悪いんだか両方自作なので切り分けができない。データ線も何度も確認したし・・・。
 何度かソースの手直しをして、めでたく動作!!かなり感動!!意味も無くやたら何度も電源を入れたり切ったりしてみる。
 何度も見ていると、「起動はアニメーションすると面白いかも」、などと余計なことを思いつく。
 機器の型番である「FMT-2000」が左右から分かれて飛んできて、2行あるLCDの下の行に「VER.1.0 Booting...」と
文字が流れてくるようにしよう。うん。
 起動時→  通常時→


2002/07
 概要設計書と詳細仕様書の作成に着手。今まで仕事柄プログラム系の仕様書を書いた経験はあったのですが、ハード設計の経験はまるでゼロ。なにもかもが初めてで、うまくいかず四苦八苦。
 とりあえず、Visioで本体ケースのレイアウトを作ってみる。秋葉原のケース専門店で聞いてみたところ、特注のケース加工は3万円〜とのこと。シルク印刷はもっとかかるそうです。あと複雑なのはもっと高くなるようで・・・。
 基板をどうしようか悩み中。小ロットだとかなり高くなってしまうので、PCでレイアウト決めて自分でエッチングしようかなぁ。でもまだやったことないんです。

 手探りでMicrochipのPICプログラミングを始める。PICなんて触るのは高校生んときのプレイステーション用MODチップの時以来だなぁ〜。あの頃は若かった。
 アセンブラといえばインテル80x86系ぼちぼち、Z80ちょっと、68Kほんのちょっとの経験しかありません。
 とりあえず、LEDを点滅させるプログラムを作った。かなり自己満が入っていましたが、正しく動作して感動もひとしお。
 それでもLEDを点滅させるまでは、みっちり勉強して1ヶ月程かかったですよ。もう年ですかねぇ・・・ハァ。

 LEDを点滅させるプログラムができてからは早かった。LCD制御ルーチンとカーソル制御ルーチン・割り込み制御ルーチンを完成させた。特にLCD制御ルーチンは大変だったです。MC145163の制御は、単純に二進で出力するだけだから簡単です。
ミニFMトップページへ戻る