2012/06/28

FCDとRTLSDRの周波数補正

FunCube DongleやRTLSDRはどちらもチューナーにE4000を使っていて、癖が似ている。

どちらも初期状態だと430M帯で数k~数十kHzずれてしまい、衛星の信号を探すのはとても骨が折れる。
 Funcubeで受かるはずの衛星をSDR-Radioで逃しっぱなしなので調べることに。

具体的にはお借りした高級SGでそのズレを調査してみた。 

RTL編
RTL-SDR(RTL2832U+E4000)での周波数設定の範囲を調べたところ、59.6MHz~2200MHzまで設定できた。

ただし300MHzと1200MHz付近は合わせようとするとPLLが外れる。この周波数をまたいでスイープしようとするとPLLが外れてしまう。
 外れてしまったら、リセットしないといけない。ソフトを再起動するか、ドングルを一度取り外す必要がある。


SGで基準信号を出しながら調べる。受信側はGNURadio

改造したRTL2832U+E4000の素の状態で、この個体は100M帯で約-1Hz、430M帯で-6kHz、2G帯で-40kHz程度のエラーがあった。綺麗に傾きが出ている。 

 ACARS(131.25)で補正しても430帯でずれてたのはこのせいか・・・

FunCube Dongle pro編

 FunCubeはSGに対して標準のFCHID+Spectravueで調べた。こちらでは上記グラフのような周波数エラーをFrequency Correctionという数字のボックスで補正できる。

初期値のままだとどんどんズレていって500MHzあたりで48kHz以上外へ抜けてしまうので、傾きを減らすとちょうど良い感じになった。 

公式によると、http://www.funcubedongle.com/?p=617
最近のFCD(v1.1版)であれば、FCHIDのFreq Corrのデフォルト値が 999,885/1,000,000 (-115ppm)だった場合は、999,988/1,000,000 (-12ppm)に設定すると良いとある。 
 
 こちらのFCDもv1.1だったので、-12ppmにするとだいぶズレが小さくなった。

 個体値を追い込むと-6ppmあたりがちょうど良さげだ。

 QtHIDなら最初からppm表示なので、こちらを使うと簡単だ。

修正した結果、中心周波数から最大1kHzの幅で収まるように調整できた。(あくまで個体値です)
SDR Radioでも同様の補正を行った。


qthidの設定


測定するまで、このズレは中心周波数のノイズを避けるためのオフセットなのかと勘違いしていた。

A/Dコンバータの解像度と信号強度
SGの信号出力を試しに上下に振ってみたけれど、やはりFunCubeのほうが信号強度のダイナミックレンジが広い。 RTL2832Uと比べると20dB以上小さい信号も受信できていた。 

実際の衛星などの信号でも補正が妥当かどうか検証してみたい。手持ちアンテナだとFunCubeで決まりかなあ。

2012/06/14

ジャンク学


中古屋のジャンク箱に詰まっているのはたんなるガラクタだが、物好きの眼を通せば、ラックの列は産業考古学の資料庫に変わる。

大都会の店舗では、天井まであふれんばかりのジャンク品が、今にも崩れそうな臨界状態を保っている。
箱には10年遅れの技術が捨て値で投げ込まれ、積み重なって地層を成している。地震が起きたら居合わせたくない場所だ。

ゴミと見分けがつかない状態でも、実際に壊れている機器は少ない。拡張カード、ネットワーク機器、iPodに息の根を止められたMD、アナログ携帯テレビ。 規格が終わるとき、機器の命は尽きる。
 PSP/DS以前の携帯ゲーム機とROMカセットの山、スマートフォンに負けたデジタルカメラ、アンティークになれなかったフィルム式カメラ群。 かつては広く普及し時代を象徴したガジェットが織りなす、作者不在のコーネルの箱が、所狭しと並ぶ。

ここに実用性を求めるなら、製品本体よりも、周辺機器や電源ケーブル等を探すと良い。 しかし物好きは過去の製品を所有したい欲から逃れられず、齧歯類のごとく自分の部屋の片隅によりすぐりのジャンクの山を築いていく。 そのうち物欲の原始的衝動をうまく飼い慣らせるようになり、最低限の修理技術と、故障ではなく時流に置き去りにされただけの完動品を見分ける勘、製品史を頭に納めて、月に1度は狩りに出かける。


故郷にはネット以外にこれといって最新なものが無かった。

ヘッドの壊れたβデッキはすべてDIP部品で、はんだこてを覚えたころはそこから部品を集めるのが任務だった。作業に飽きて、ゲルマラジオのコイルを巻いては秋月の通販が届くタイムラグが待ちきれなかったあのころ。
最初は通販で部品を入手するほどの知識も教育も無かったこともあって、分解して回路に手で触れ、ショートさせて、壊してその限界を知るというプロセスを通すしか経験を積む手段が無かった。

家のガジェットやPCを分解して親を怒らせたり、単なる動作不良や紛失にまであらぬ嫌疑をかけられるよりも、中古屋のジャンク品コーナーの100円程度の製品を漁るほうが害が少ないと気づいてからは、goodのハンダごて片手にいろいろな製品のネジと中身を机に並べ、手触りや見た目、配線の巧妙さに感心して部品箱をいっぱいにしていた。 たまにマイコン工作で見かける石や部品を見つけては、その動作を推察したりした。

その時代の最新の製品や、手の届かなかった技術も、今やジャンク箱の地層の片隅に挟まっていたり、あるいはiMacのように、カルト的なアンティークもいくつかある。ジャンク品無くして今の自分はたぶん無かった。

********

集めてきたジャンクの中で、これは良い(遊べる)製品というものに共通する特徴が大きく分けて2つある。

まず、当時はそれなりの値段がしていたもの。周辺機器やメモリ、IF規格に将来性や汎用性があったもの、単三電池で動くもの。 時流の変化にもタフな機器たち。これらは性能が古びただけで、今でもちゃんと動いている。 多分電子機器でなくてもすべての道具に共通する特徴。

CompactFlashを採用したカメラ全般は、インターバル撮影があれば、当時まだ無かった記憶容量を生かして長時間微速度撮影といった用途に使えたりする。

航空宇宙分野の電子機器もこうした枯れた技術の塊なので、アーキテクチャにジャンクで集めていた製品の技術が重なって見えておもしろい。

もう一つは徹底的に安く、いろいろな会社が共通のLSIを使って生産した大量生産品で、ハックの方法が公開され、押し付けのライフサイクルではなく、コミュニティベースの製品寿命を得たもの。 
黎明期のトイデジカメ向けにSTが開発したLSI、STV0680が自分としてはお気に入りだった。

そうした性質を全面に押し出したArduinoがいま電子工作界を席巻しているのはなんとなくしっくりきている。

******


最近の収穫は人工網膜LSI(M64282FP)。普段はあまり見ないゲーム期の地層を掘り返していて見つけた。ポケットカメラ(ゲームボーイのカセット)の筐体を分解すると手に入る。そういえばこれをH8などにつなげたロボコン系のサイトがあったなあ・・・と思って、サルベージしてみた。


128x128pixel モノクロで、画像はクロック入力ごとに1ビットずつアナログ出力される。
15mWと低消費電力なので、実際に使ってみようと思っている。

撮影例
普通のCMOSカメラだとどうしてもワンランク上の設計を目指すので、完成までの道のりがなかなか長い。 

レジスタ設定によって輪郭抽出等を行った後のデータが出てくるのが面白い。 最近ならLPC1768やPIC32MXのような32ビットマイコンのバリエーションも増えているので、32kB程度のRAMを積んでいれば、ワンチップでフル領域を取得できるだろう。

2012/06/02

ソーラー目覚ましキーホルダー


キーホルダーサイズの模擬衛星を目指していたので、ここはひとつキーホルダーに収めてみようという試み。 150円で買えるソーラーLEDライトの筐体と太陽電池を流用した。
いま千石等で買えるカラフルなバージョンは、以前買った時とは違うロットらしく、中身はボタン型ニッケル水素3直3.6Vセルと、点滅制御の無いただのスイッチに変更されている。コイン型リチウム充電池を使っていた時よりはマシな選択になっているようだ。ニッ水セルはありがたく使わせていただこう…

PIC12F1822をこれに押しこむのはそれほど難しくない。 だがプログラム用のISCPヘッダをつけると自由度が下がるので、今回はヘッダを付けず別の方法を選んだ。

中身
今はブザーと1.5Fの電気二重層コンデンサだけ。

センサやトランスミッタを搭載する余地を残し、まずはブザーをつけた。 太陽電池は逆流防止用にショットキーダイオードをひとつつけただけ。このケースが製品だったころと同じ方式。

省電力設定にしたので、ブザーとLEDを駆動する程度なら、5V1.5Fのキャパシタで満充電から、PICのBORで設定した1.9Vまで下がるのに3~4時間掛かる。

Arduinoで作ってた頃は電力確保で悩んだけど、最初から超低消費電力ならそういった心配も大掛かりな回路も要らない。

そして朝日とともに充電され、日没後数時間までブザーが鳴り続ける迷惑な目覚ましがここに誕生した。 フォトトランジスタや温度センサをつけて、もうちょっとインテリジェントな動作をさせよう…。

見た目はPICのブザー工作とかわりないけど、I2Cインターフェースのセンサ/メモリを繋げられるという拡張性もあるのが面白いところ。


もとはスイッチだった部分にPICを出した。これはプログラム書き込み用の配置。


秋月で売っているICテストクリップをはさむと、このように簡単に書き込みできる。


ブレッドボードでICSP用の配線が面倒だったので買ったけど、結構便利。
同じシリーズでは端子配置が共通なので、1823でもそのまま使える。