NTSC変換回路の最後の仕上げ。ユニバーサル基板上で組み上げ、完成品として形にします。すでに今回の回路には画面がブレるという課題も見つかっているのですが、自分の経験値を高める意味で最後まで取り組みたいと思います。
基板に組み立てる前に、ブレッドボード上でのビデオ出力信号をオシロスコープで観測してみます。
映像信号部分を抜き出しています。黒レベルと白レベルの間の電圧は約0.7Vなので想定通りの出力値ですが、ノイズがひどいです。オシロの周波数計測機能を使うと、このノイズの周波数は約16MHzでした。クロック周波数の2倍ですが、どう関係するのかは私の知識ではまだ分かりません。が、とにかくこのノイズがブレッドボードからユニバーサル基板に変えて、さらにパスコンもちゃんとつけたらどれくらい軽減するのかも知りたいところです。
まずは基板の配線設計をします。有名どころではKiCadを使うのが良さそうですが、ちょっと触った感じ今の段階ではちょっと手に余ったので、今回はPaaSというソフトウェアを使うことにしました。
試してみると、undoができなかったり配線した線を消すのに右クリックしながら線をなぞるという操作が必要なことにちょっと戸惑いましたが、機能自体はシンプルで良い感じです。
早速回路図から配線図に起こしたのがこれです。電源ジャックとRCAジャック(黄)の部品図が無かったのでピンヘッダで代用してます。基板は秋月の片面Bタイプを使います。JR-100からの信号線はXHコネクタを介して取り込むことにします。
そして組み上げた基盤がこれ。ありあわせの部品を使っているのでカーボン抵抗と金属皮膜抵抗が混在していたり、セラミックコンデンサも大きさがまちまちだったりします。この規模だともう少し小さい基板に収められそうですかね。
そしてJR-100と接続。
早速ディスプレイに移してみます。
映ったー! モノづくりの醍醐味は作ったものがちゃんと動いたことを確認するときですね~。
次に変換回路を通したときと通さないときの画像の差を見てみます。まず変換前。
次に変換後。
変換前は全体的に白っぽい画面ですが、変換後は黒い部分がちゃんと黒になりました。これは変換前のビデオ出力信号の黒レベルが本来は274mVであるのに対して950mVになっているため灰色で表示されたためでしょう(参考記事)。一方変換後の信号の黒レベルはほぼ270mVに合わせているため正しく黒で表示されたものと考えられます。
今度は映像信号をオシロで観測してみます。
垂直同期は期待通りの波形となっています。また映像信号付近を拡大してもブレッドボード上で作った時に見えていた16MHzのノイズは無くなりきれいに出ています。ただ、映像信号の立ち上がり時と立ち下がり時にオーバーシュートが見えています。これって今回の回路ではなぜ発生してどうすれば消せるのか、この辺も次に向けて考えていきたいと思います。
最後に、本来の目的であるGV-USB2でのキャプチャを試してみます。
見事に真っ黒でした。モノクロNTSCとしてはだいぶ規格に近づけたはずですがやはりダメでした。もともとモノクロNTSCは非サポートと明言されているのでこの結果も納得なのですが、ちょっと淡い期待をしていたところもありちょっと落ち込みました。
そうすると次にやるべきはカラーNTSC化、そしてJR-100内部信号を引き出すのではなくJR-100のビデオ信号からの変換です。そのためにはある程度MIPS値の高いPICが必要でしょう。そこで次はPIC24HやdsPIC33Fの当たりを使って再びチャレンジしていきます。
コメント
やっぱりキャプチャには失敗しましたか…。
やはりカラーバースト信号が必要なのですね。
GV-USB2がどうやってY/C分離しているのかで話が変わってきますが、一般的には、恐らくラインディレイを使って1H遅れの信号との和と差で輝度信号と色信号(とカラーバースト)を得ているのではなかいかと想像します。
この場合、カラーサブキャリアの周波数は水平同期周波数の二分の奇数倍でなくてはならないのですが(位相を1H毎に反転させるため:NTSCの場合は455/2)、JR-100は水平周波数がカラーサブキャリアの2/448=1/224ですので、このままではうまく行きません。
そこで考えられる方法は、
(1)少々手荒な方法ですが、カラーサブキャリアを位相が180度ずれた二相クロックにして、1H毎に切り替えるという方法。受像側のハードでは、1H事にGenLockが必ずずれるので、内部の水晶にダメージがあるかもしれません。
(2)カラーサブキャリアを、微妙にずれた周波数、例えば水平周波数の449/2倍(又は447/2倍)にする方法。もしこれがカラー画像ならば、水平方向に色が虹色に変化してしまいますが、JR-100の場合、どのみちモノクロなので、気になりません。但し、カラーサブキャリアは水平同期信号からPLLで生成する必要があります。
私のおすすめは後者です。
※GV-USB2のY/C分離回路がディレイライン方式でない場合にはどちらも必要ない話ですが。
書いてから気付きましたが、
(1)と(2)は、カラーバーストだけで見ると、全く同じ事でしたね…。
ですから、(2)の方法をとるなら、JR-100側の原発振周波数を変える必要があります。
少々面倒ですね。
あ、でも、外部で14.31818MHzより少し遅いクロック(具体的には14.28622MHzなど)を用意して、それをCRTコントローラのクロック入力に注入してあげればいい話なので、案外実現性が高いかもしれません。
なるほど。(1)と(2)が原理的に同じであることをまだ理解できていないので、少し時間をかけて紐解いてみます。
それにしてもくろょさんはこの辺の技術にお詳しいですね。
現職の方だったりしますか?
昔、ビデオ信号処理をしたくていろいろ情報を集めたのでした。まぁただの受け売りです。主に(まだ厚みが3センチくらいあった頃の)トラ技からですね。
カラーバースト信号をアナログ的に作り出すために、水晶とPLLを使って何とかするんだろうなという推測はあるのですが、まだ勉強不足でどう構成すればよいのか分かっていません。
その代わり高速なPICでデジタル的に値を出力した後でDACでアナログ変換すれば、任意の周波数で任意の位相を持つ波形を作れるはずなので、この方向で今は考えています。
とはいえアナログ技術あってこそデジタル回路の理解ができると思っており、まずはY/C分離の当たりから始め、(2)の方法を最初の検討候補としようと思います。
そういう意味で昔のブラウン管テレビの回路図とか見たいんですよね。私の父がむかし街の電気屋を経営していた関係で保守用の回路図とかいっぱい持っていたのですが、だいぶ前に処分してしまいました。いま考えるともったいなかったな、と思います。
こんばんは。私、大変大事な事を失念していました。
ビデオキャプチャ装置は、普通、コンポジットビデオ信号入力(RCA同軸)と、S-VIDEO信号入力(miniDIN4P)とありますよね。
コンポジットビデオは内部で一旦Y/C分離するので、同期信号のタイミングを正確にサブキャリアに合わせる必要がありますが、
S-VIDEO信号は既にY/C分離済みの信号ですので、理屈の上では同期信号とサブキャリアの信号は多少ずれていても構わないはずです。ちなみに、S-VIDEO信号ではカラーバーストは色信号側に載せる事になってます。
結論を言えば、S-VIDEO入力端子の輝度信号側にJR-100のビデオ信号をそのまま入力し、色信号側にカラーバーストまたはサブキャリア信号をそのまま入力すればいいはずです。わざわざコンポジット信号を生成する必要はありません。ひょっとすると、ベタに3.579545MHzの発振出力を入力するだけでもいいかもしれません。
S-VIDEOの輝度信号入力はモノクロのビデオ信号そのもので、75Ω終端で1Vp-pの、カラーサブキャリアもカラーバーストも一切ない純粋にモノクロのビデオ信号を入力します。色信号側も75Ω終端は同じで、カラーバーストとカラーサブキャリアのみの信号を入力します。本来はどちらも直流成分を除いたACカップリングとします。
(つまり、S-VIDEO信号は、輝度信号と色信号を単純に1:1でミックスすればNTSCの信号になるような信号なわけです。)
回路も多少簡単になりますし、試してみる価値はあると思います。
返信が遅れました。
なるほど。S-VIDEOを使うというのは盲点でした。
どうせモノクロ画像なので、C信号の方はカラーサブキャリアは不要で、カラーバーストのみ適当なタイミングで出してあげれば良いということですね。
ベタに3.579545MHzの信号を入れてしまうのでも、もしかすると何か色が付いてしまいそうな気もしますがやってみる価値はあるかもしれません。
ちょっとトライしてみます。