JI3GAB/blog

ラジオに関する話題を中心につらつらと

HiQSDRでもプリディストーションの実装が始まったようです

2014-02-12 00:37:37 | ソフトウェアラジオ
この数週間、OpenHPSDRやapache-labs 関連のMLはプリディストーションに関する話題で持ちきりですが、そんな中、HiQSDRでもプリディストーションの実装を進めているという話が出てきました。
HiQSDRというのは、元々はN2ADR, Ahlstrom氏が米QEX誌に発表したDDC/DUC方式のSDRトランシーバで、それを主にヨーロッパのアマチュアが基板を販売、配布しているものです。私も一度ある方のご好意で使わせていただいのですが、基本的にはOpenHPSDRのHermesと同じような構成で、ソフトウェアもN2ADRご本人がリリースしているQuiskを初めとしていくつかのものが開発されています。

今回、プリディストーションを実装して実験しているのは、DL2STG氏で、氏が開発している、HiQSDR用のGNU Radioのブロックの中で実現しているようです。また、このプリディストーションもアダプティブなもので、そのためにFPGAのイメージも変更を加えたそうです。リンク先のページの2 tone testのスペクトラムを見る限り、こちらもかなりの効果が期待できそうです。

HiQSDRは最近まで、基板(組み立て済みもあり)のみの提供でしたが、最近では、エキサイタと10Wのアンプを収められるケース、HiQTRX-10も販売されているようで、これからも注目したいと思います。

詳しい情報は上記のリンク先や、Yahoo GroupsのN2ADR-SDR groupを参照してください。

今年はプリディストーションという言葉やその技術が一気にアマチュアに広がるのではないかという予感がします。


コメント (2) |  トラックバック (0) | 

OpenHPSDR Pure Signal Predistortionを試してみた

2014-01-26 02:12:43 | ソフトウェアラジオ
先のエントリで紹介したデジタルプリディストーション対応のPowerSDRとそのためのファームウェアを早速、手元のHermes/ANAN-100にインストールしてみました。OpenHPSDRのプリディストーション機能は"Pure Signal"と名付けられているようです。

まずはツートーンテストを行ってみました。下に14MHzでのスクリーンショットを貼っておきます。かなりうまく働いていると思います。
今後は、実際の音声信号に対してアダプティブプリディストーションがどのくらいうまく働くのか調べてみたいと思っています。

しかし、やはりアダプティブ(適応的)なのは非常にいいですね。私もそのうちアダプティブプリディストーションを実装してみたいと考えています。いやー、やられたなあ。


IMD @ 14MHz/30W PEP without predistortion



IMD @ 14MHz/30W PEP with predistortion



IMD @ 14MHz/80W PEP without predistortion



IMD @ 14MHz/80W PEP with predistortion



コメント (0) |  トラックバック (0) | 

OpenHPSDR版PowerSDRにアダプティブプリディストーションが組み込まれたらしい

2014-01-25 13:55:22 | ソフトウェアラジオ
今年もよろしくおねがいします。

今年最初のニュースです。私もプリディストーションの実験を拙いながら少しずつ行ってきましたが、NR0V, Warren氏らが開発を進め、以前からテストを重ねていたHPSDR版のプリディストーションがHPSDR版PowerSDRに組み込まれたようです。

何より、私のものと違うのは適応的(adaptive)にプリディストーションのパラメータを更新するので、マニュアルキャリブレーションが必要なく、送信中に負荷や熱の状況が変わっても追随するという点で、これは大きいです。

私もまだダウンロードしてきただけなのですが、追ってレポートを書ければと思っています。なお、プリディストーション機能を利用するにはHermesのファームウェアの更新も必要ですし、それなりのセットアップも必要になります。

OpenHPSDR PowerSDR-mRX PS (3.2.7)に関するリリースコメントは、

http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/2014-January/021992.html

ファームウェアに関しては

http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/2014-January/021991.html

です。

PowerSDRについてはまだそれほど「枯れていない」そうで、プリディストーションが必要でない場合には前のバージョン、3.2.1の方が良いだろうとのことです。

以上
コメント (0) |  トラックバック (0) | 

デジタルプリディストーションをPowerSDRに組み込んでみた

2013-09-21 00:31:29 | ソフトウェアラジオ
またしばらく更新が滞っていました。ハムフェアに行ったりはしましたが、無線のアクティビティは上がらずプリディストーションの実験もあまり進んでいませんでした。

色々やりたいことはあったのですが、GNURadioで実験しているだけでなく、実際に運用できるようなソフトウェアにするということにまずはトライすることにしました。1からSDRのソフトウェアを書くのはハードルが高過ぎるので、既存のものにDPDのコードを入れるということになります。

既存のソフトウェアといってもたくさんあるのですが、まずはHermes/ANANで動くものということで、その中でも最も一般的に使用されているHPSDR版のPowerSDRをターゲットに決めました。PowerSDRは今となってはそれなりに大きなプログラムで、コアの信号処理やハードのコントロールはCのライブラリで、それ以外の処理や画面の部分はC#で書かれています。最初はCのライブラリ(DttSP)に手を入れるのかなと思っていましたが、ソースコードを読んでいるとC#の部分で出来そうなことがわかりました。慣れないC#を読んだり書いたりして1週間くらいでキャリブレーションのルーチンが動き、今日、実際にDPDを有効にして送信する部分が出来ました。

画面はこんな感じです。スペクトラムのディスプレイの下、右の方の囲みの中にDCalというボタンとDPDというボタンがあるのが見えると思います。それぞれ、DPDキャリブレーション(プリディストーションのテーブルを作成する)用と送信時にDPDを有効にするボタンです。DCalっていう名前は略称としてどうかと思うのでそのうち差し替えます。他にも多分色々本質的な問題はあると思うのですが、とりあえず動いたということで。

2-tone @ 14MHz/80W pep without predistortion


2-tone @ 14MHz/80W pep with predistortion

コメント (12) |  トラックバック (0) | 

デジタルプリディストーションの実験(その3)

2013-07-13 02:18:20 | ソフトウェアラジオ
引き続きDPD(デジタルプリディストーション)の実験をやっています。
先のエントリでかなり端折って書いているので、数名の方から「2-toneのグラフはシミレーション結果ですか」という質問をいただきましたが、あれは実データです。実際にプリディストーションをかけた場合と素の状態で送信して、それをモニタした結果です。
もう一つ、「100分割だと40dBの範囲になるが、それで大丈夫なのか」という質問もいただきました。特性を取ってLUTに反映したのは40dBの範囲になるのですが、それ以下のレベルの場合にはゲイン/位相はほとんど変化しないということにして扱っています(大雑把に言うと補正しない)。実際、前のPAの特性のグラフを見ていただくと、特にANAN-100の場合にはレベルが低いところでは変化が少なくなっているのがわかると思います。本当はもうちょっと低いところまで一度厳密にデータを取ってみるべきだとは思いますが。

さて、2-toneだけでテストしていてもつまらないので、実際に音声信号にプリディストーションをかけてみたらどうなるかやってみました。GNURadioで簡単なSSBジェネレータのプログラムを作成し、そこにプリディストーションをかけた音声信号を入力してみました。

本当は動画でも投稿すればいいのでしょうが、数十秒の音声信号を入れてモニターしてピークホールドしたものを下に貼っておきます。青い線がリアルタイムの信号で緑の線がピークホールドしたものです。青い線の方もなるべくレベルの高いところをキャプチャしたかったのですが、なかなかタイミングがうまく合わず適当なところになっています。出力はピークで25Wから30W程度です。

14MHz USB 音声信号 25W DPD無し


14MHz USB 音声信号 25W DPD有り


近接のIMDはなかなかいい感じに抑えられてますよね。一方で2-toneの時と同じように裾は若干広がってしまいます。実際にオンエアしたらどちらがいいのでしょうね。モニター音を聞いている限りは帯域内の音はDPD有りの方がすっきりしているように感じますが、周囲の局への妨害は…。
というわけで、音声信号を入れてSSB変調した時もそれなりに効果はあるということはわかりました。
実は最初やってみたらDPDをかけたときに、モニターするとひどい音で「これはダメなのか」と思ったのですが、次の日の夜に電車に乗っている時にバグに気づいて直したら何とかまともな信号になったようです。

本当は実験の構成とかを先にもう少し詳しく書くべきだと思ったのですが、それは週末中にでもぼちぼち書くと思います(多分)。

あと、最近まったく更新していなかった手書きHTMLのホームページの方にDPD実験の記事の英語版を作ってみました(恥ずかしいけど)。そちらの方にはsetupの図なんかも載せてます。
コメント (0) |  トラックバック (0) | 

デジタルプリディストーションの予備実験(その2)

2013-06-30 20:39:51 | ソフトウェアラジオ
1つ前のエントリでご紹介したように、最初の実験は思ったよりうまく行ったというのが正直な実感で、特に3次、5次等のIMDが大きく下がったことから「これは行けそうだ」と思いました。そこで、他の機器でも試してみようと考えたわけです。

私の部屋にはANANの他にもう1つ、USRP1とヤエス FT-450のPA部を組み合わせたものがあります。
USRPシリーズはGNURadioプロジェクトから生まれたハードウェアで、アマチュア無線用というよりは汎用のプラットフォームで学術機関等でも多く使われているようです。中身は64MHz/12bitのADC2つと128MHz/14bitのDACが2つとFPGAによるDUC(Digital Up Converter)・DDC(Digital Down Converter)で構成されています。

一方FT-450は安価なIF DSPトランシーバでお馴染みですが、これのパワーアンプはANANと同様、三菱のFETを使っています。具体的にはRD06HHF1→RD16HHF1x2→RD100HHF1x2という構成です。USRP1の出力は約0dBm弱で、これをFT450のプリドライバに入力すると大体レベル的に合うようです。
ちなみにANANの場合はPA部にRD06のプリドライバの部分は無く、代わりにHermesのボード側にOPA2674によるアンプが入っています。

今回も実験は3.5MHzを中心に行いました。まず先のエントリと同じようにPAの特性を取ったものを下の図に示します。

AM-AM characteristics of the FT-450's PA @3.5MHz(Max Pout=100W)


AM-AM characteristics of the FT-450's PA @3.5MHz(Max Pout=100W)


これを元に2-tone信号にプリディストーションをかけてIMDを測定したのが次の図になります。前回と同じように30W出力(DPD無し、有り)、100W出力(DPD無し、有り)の順になります。前回と違って各トーンは700Hzと1900Hzと狭くなっていますが、特に意味はありません。他の幅でも調べましたが結果に大きな差は無かったです。

IMD @ 3.5MHz/30W pep without predistortion


IMD @ 3.5MHz/30W pep with predistortion


IMD @ 3.5MHz/100W pep without predistortion


IMD @ 3.5MHz/100W pep with predistortion


1つ前のエントリでの結果と比べると、ぱっと見て変化が少ないですよね。よく見ると、3次の歪はむしろ増えている部分があって、5次より上に関しては若干減っているが、いいところでも5〜10dBというところ。
周波数を変えて試しましたが、傾向としては同じです。今回グラフはありませんが、出力が10Wくらいのところでは、3次歪も含めて良くなるポイントがあったくらいです。
また、USRPを使ったことで何か見落としていることがあるかも知れないと思い、Hermesの出力をFT-450のPAに入れて前回と同じプログラムでやったりもしましたが、その結果も変わらず。
また、前回もそうですが、2-toneのFFTのグラフはエキサイタ(HermesやUSRP1)をfull-duplexで動作させて表示したものですが、他の受信機でもモニターして大きな差が無いことは確認しています。

ドライバ、ファイナルに関してデバイスとしては同じものを使っているので、似たような結果が出るかと思ったのですが、予想は裏切られました。もう少し実験を行いながら原因についても調べてみたいと思っています。

実際にはANANが来たのは最近で、準備はUSRP1+FT-450でやっていたわけで、こっちの結果だけ見てたらエントリも書かなかったかも知れません。
他のPAも試してみたいところですが、手元には他に無いのが残念です。
コメント (4) |  トラックバック (0) | 

デジタルプリディストーションの予備実験(その1)

2013-06-29 13:39:12 | ソフトウェアラジオ
以前このブログでもデジタルプリディストーション(DPD, digital predistortion)という技術を紹介したことがあります。デジタルプリディストーションはパワーアンプの直線性を改善する方法の1つで、携帯電話基地局等では広く使われている技術です。最近では、短波帯のSSB送信機においても製品化された例が報告されています。

この技術の説明をここで簡単に繰り返すと「PAに歪みがあるならば、それと逆方向にあらかじめ歪ませたものをPAに入力することによって歪みをキャンセルする」ということになります。

アマチュア無線の世界でもその可能性について何度か言及されてはいましたが、実際に行なっている例はなかなか出て来ませんでした。私自身もずっとその実験をしようと思いながら、果たせずにいました。
ところが最近、OpenHPSDRプロジェクト関連の情報を調べていたら、実装して試しているという人たち(NR0V, Pratt氏ら)がいることを知りました。そのような刺激を受けたこともあって、ここのところ少しずつ始めていて、以下はその報告です。

実験にはDUC/DDC方式のSDRトランシーバANAN-100(OpenHPSDR Hermesと三菱 RD100HHF1プッシュプルが終段のPAで構成され最大出力100W)を用いています。ANAN-100自体については改めて紹介したいと思いますが、今回の実験のために内部の接続を一部変更しています。
また、実験にはGNURadioのツールを利用し、Hermesを制御するブロックの部分はN5EG, McDermott氏の実装によります。

DPDでまず必要なことは、対象とするPA(パワーアンプ)の特性を知ることです。具体的には、入力の振幅に対するゲインの変化(AM-AM)特性と位相の変化(AM-PM)です。理想的な直線増幅器では、これらは一定であるはずですが、実際のアンプでは振幅によって変化が起こります。ゲインの変化についてはみなさんも通常経験されているとおもいます。

今回実際に測定したPAの特性の例を示します。PAの特性と書きましたが、実際にはDACからファイナルまでのアンプ、受信用のADCまでを含めた総合特性になります。周波数は3.5MHzです。入力データの振幅(電圧)は最大値を1として100分割して0.01ステップで与えています。グラフは横軸が入力の振幅の相対値で対数を取ってdB表示にしています。右端、最大入力の時に出力100Wが得られます。縦軸はそれぞれゲインと位相の変化です。

AM-AM characteristics of the ANAN-100's PA @3.5MHz(Max Pout=100W)


AM-PM characteristics of the ANAN-100's PA @3.5MHz(Max Pout=100W)


DPDには色々な方式があるようですが、私が試しているのは単純なルックアップテーブル(LUT, LookUp Table)を用いる方法です。
あらかじめ調べた特性を元に、振幅に対するゲイン、位相のずれの情報をテーブルに保持しておきます。送信時には入力される信号のデータ(サンプル)の振幅をインデクスとしてテーブルを引き、得られた情報を元にサンプルの振幅と位相を補正し、補正されたデータを用いて送信します。

果たしてその結果はどうなるのか。今のところ得られている2トーンテストの結果を示します。変調信号は700Hzと3.2kHzと広くとっていますが、単純に見やすさのためで適当な値です。
グラフは順に30W(プリディストーション無し、有り)、100W(プリディストーション無し、有り)です。最初に掲載していたグラフが14MHzのデータだったことに気付いたので3.5MHzのデータに差し替えました。14MHzの方が効果は大きかったようです。後のエントリで再掲したいと思います。

IMD @ 3.5MHz/30W pep without predistortion
">

IMD @ 3.5MHz/30W pep with predistortion


IMD @ 3.5MHz/100W pep without predistortion


IMD @ 3.5MHz/100W pep with predistortion


これを見ると3次、5次等の低次の歪は10〜20dB下がっています。逆に高次の歪は増えているようです。また、左右非対称になっている部分も見受けられます。14MHz、21MHzにおいても実験を行いましたが同様の結果が得られました。
最初の実験としては、期待の持てる結果だと感じています。まずはもう少し色々データを取り、その次に実際のSSBの送信に使えるようにpredistorterをソフトウェアに組み込みたいと考えています。

今回の報告も詳細は端折っていますが、追々補足エントリを書ければと思います。

と、ここまでは内心「思ったよりうまく行ったなあ」と思っていたのですが…多分続く



コメント (0) |  トラックバック (0) | 

rtl_tcpとVirtualBoxを使ってGNURadioからRTL-SDRを使う1つの方法

2013-05-07 22:51:34 | ソフトウェアラジオ
RTL-SDR関係の情報を調べているとGNURadioを使ったソフトウェアや実験をしているページが見つかります。また、何かこれをきっかけにSDRの実験をやろうという時にGNURadioを使えると色々と助かります。

GNURadioは基本的には信号処理を行うためのライブラリ群なのですが、信号処理のユニット(例えばフィルタや発振器等)が「ブロック」として定義されていて、それらを接続してフローグラフ(flow graph)を構成することで必要な一連の信号処理を行うことができます。さらに、GNURadio Companion(GRC)というグラフィカルなツールが用意されていて、その上でブロックを繋いで行くだけで、信号処理プログラムを生成させることも出来るようになっています。

このように便利なGNURadioですが、Windows上にインストールするのは結構面倒そうです(自分でやったことは無いのですが、多分CygwinやMinGWを使ってということになるのかな)。

一方でLinux、特にDebian, Ubuntu, Fedora, Cent OSなどのメジャーなディストリビューションやそれらから派生したものでは比較的簡単にインストールすることができます。このエントリでは詳しくは述べませんが、build-gnuradioというスクリプトを走らせればほぼ自動的にやってくれます。

しかし、1台しかPCが無く、メインのOSはWindowsで無ければならないという場合にはちょっと困ってしまいます。1つはデュアルブートにするという手がありますが、GNURadioを使うために再起動するのはかなり面倒です。

そこで考えるのがVMWareやVirtualBoxといった仮想化ソフトウェアを用いてLinuxをゲストOSとしてインストールする方法です。
これは一応理屈としてはうまく行くはずなのですが、問題があります。RTL-SDRのチューナはUSB接続です。仮想化ソフトウェアにはUSBパススルーの機能があって、PCに接続したUSB機器をゲストOS(この場合はLinux)から利用するように設定することが出来ますが、実際にやってみるとどうも転送速度が出ないようで、RTLSDRのサンプリングレートを1Msps等にすると転送が追いつかず、buffer underrunと思しきエラーが起こります。
私が現在利用しているのはOracle(元はSUN)が提供しているVirtualBoxですが、メーリングリスト等を見ているとVMWare Playerでも同じような問題があるようです。

これを回避するためUSBパススルーは利用せず、ホストのWindows側でrtl_tcp.exeを起動しておき、ネットワーク経由でゲストOSから接続するというのが今回の主旨です(それだけですHi)。すでに仮想マシンやGNURadioを使った経験のある方は、もう何をするのかお分かりだと思いますが、以下簡単に手順を書いておきます。

準備としてホストOSのWindows上にVirtualBoxをインストールし、ゲストOSとしてUbuntu Linux等をインストールします。ネットワークの設定はNATでもブリッジでも利用したい形態に合わせて設定します。さらにゲストOS上で先ほど触れたbuild-gnuradioスクリプトを用いてGNURadio一式をインストールしておきます。GNURadioからRTL-SDRを利用するためのライブラリ等もデフォルトでインストールされます。

rtl_tcpはosmocomで提供されているソフトウェアで、SDR#等で利用したことのある方もいらっしゃると思います。
rtl_tcpはデフォルトではlocalhost(127.0.0.1)からの接続のみ受け付けるようなので、オプションでWindowsに割り当てられているアドレスをオプションで指定します。例えばコマンドプロンプトから

> rtl_tcp -a 192.168.0.3

等と入力して起動し、接続待ち状態にします。Windowsの使用しているIPアドレスが分からない場合はipconfigコマンドやコントロールパネル等で調べましょう。ポート番号はデフォルトの1234でとりあえず良いとおもいますが、変更したい場合は'-p'オプションで指定します。

ゲストのLinux上のGNURadio側では、信号源としてOsmoSDR Sourceを使い、デバイス名を"rtl_tcp=192.168.0.3:1234"と指定すれば、GNURadioからWindowsで起動しているrtl_tcpに接続することができます。
もしうまく接続出来ない場合は、Windowsのファイアウォールで接続が禁止されていないか等、調べてみてください。

以上説明したような方法でGNURadioを使用している時のスクリーンショットを貼っておきます。GNURadioで動かしているのはサンプルとして作ったFM放送の受信機です。GNURadioにはWBFMという名前のFM復調器のブロックがあるので、それを使えば復調できます。また、グラフィカルなFFTのブロックも用意されているのでそれを利用しています。

何か今更感がすごくてためらったのですが、せっかく書いたのでご参考まで。





コメント (0) |  トラックバック (0) | 

RTL SDRについて

2013-04-22 01:00:33 | ソフトウェアラジオ
ちょうど昨年の今頃に情報を得て、RTL2832Uを使ったワンセグチューナーをSDRとして使うということを試し、ブログのエントリを書きました。

ハードウェアの値段が安い割に楽しめる、ということだと思うのですが、多くの人が色んなことを試されてるようです。そのせいか、今だに当ブログをご覧いただくことがあるようなのですが、もう内容が古くなっている気がして申し訳ないような気持ちになったりもします。

たとえばWindowsでの利用に関してですが、今始めるならSDR#が一番楽なんではないでしょうか。最近では必要なDLLをダウンロードしてくれるインストールパッケージ的なものもありますし、これを使ったインストール方法も、たとえば suupenさんという方が日本語で解説してくださっています。

HDSDRも、一年前に紹介した時とは少し変わっていて、本体を普通にインストールした後、ハードウェアのページのRTL SDRのリンク先からExtIO_RTL.dllをダウンロードしてHDSDRのフォルダに入れれば良いようです。

他にもSDRConsoleというソフトウェアがリリースされています。これもRTL用のDLLを別途コンパイルする必要があるのですが、Michael Morgan氏がここにバイナリを置いてくれています。

いずれの場合にも、まずはZadigによるドライバのインストールを行う必要がありますが、そこはやり方自体は私の以前のエントリと同じですし、上で参照したsuupenさんの記事でも説明されています。個々のソフトウェアで必要になるライブラリは、それぞれAPIが違うために異なるものが必要ですが、いずれもosomosdrで開発、配布されたものが元になっています。

チューナ自身については、私は最初のDS-DT305の他に、E4000を使用したもの、R820Tを使用したものをいくつか購入しました。E4000は製造中止という話が出てR820Tを購入した経緯があるのですが、eBayではまだ入手可能なようです。日本で普通に入手出来るものとなると、今もDS-DT305(fc0012)、LT-DT309(fc00013)辺りでしょうか。

周波数のカバー範囲はチューナによって違いがありますが、基本的にはVHF以上になります。でもそこはやはりHFも受信したいと思う人がいるわけで、そのためにコンバータを作る人もいますし、フロントエンドのチューナチップをバイパスして直接RTL2832Uに信号を入れてダイレクトサンプリングを試している人もいます。

この辺の詳細は紹介しきれませんが、私は主に下記のブログ等から情報を得ています(日本語のページです)。すでにご存知の方も多いと思いますが、ご参考まで。

ゆうちゃんのパパさんのブログ 主にACARSなど航空無線の受信を目的とされていますが、RTL-SDRを使って各種ソフトウェアを試したり、ハードウェアを改造したりと幅広い話題満載です。

JA5FNXさんのブログ 最初に情報をやりとりして以来、参考にさせていただいてます。また、FacebookでもSDR-JAPANというグループを運営されているようですので、興味のある方は参加されてはいかがでしょうか。

@edy555さんのTumblr RTL-SDRに関しても、HF用コンバーターやソフトウェアを開発、実験をされていますが、それ以外にもGNURadioやVNAの自作など幅広い内容で刺激を受けています。

他にもあると思いますし、海外にも目を向ければこの小さなドングルで色んなことをやっている人がいるのが見つかると思います。

コメント (2) |  トラックバック (0) | 

ワンセグチューナーでSDR (Windows用ソフトウェアインストール編)

2012-05-21 22:16:56 | ソフトウェアラジオ
コメント欄でインストールの方法について質問がありましたので、Windows上でRTL2832U使用のワンセグチューナーをSDRとして利用するためのソフトウェアのインストールについて、ひと通り流れを説明したいと思います。基本的には元のページの内容をよく読んで理解した上で行なわれることをお薦めします。
また、私はWindows7 64bit版で動作させていますが、他の環境についても同じように行くかはわかりませんし、ここで記述する通りにやってみてうまく行かなくても責任は負えません。

今回インストールするのは、Balint Seeber氏がwiki.spench.netで配布されているものです。これはインストーラーパッケージになっていて、必要なドライバ、HDSDRなどのSDRソフトウェア、ドライバとHDSDR等を橋渡しするExtIOライブラリなど必要なソフトをすべてインストールできるようになっています。
ただ、私の感想では先にHDSDRなり、Winradなりをインストールしておいた方が間違いが少ないかなと思います(後で出てくるフォルダの指定さえ間違えなければ全部やってもらった方が楽なんですが)。

このソフトウェアに関する説明、ダウンロードのリンクは、http://wiki.spench.net/wiki/USRP_Interfaces のページにあります。最初のところにページ内の目次がありますが、そこの"7.3.2 Installer"と書かれているところにインストーラー(ExtIO_USRP+FCD+RTL2832+BorIP-BETA_Setup.zip)へのリンクがあります。ミラーとオリジナルのリンクがありますが、「ミラーを使ってくれ」と書かれているので出来るだけミラーサイトの方からダウンロードしましょう。

ダウンロードして展開すると中身は実行ファイルが1つですので、それを実行します。あとは流れに従って進めるのですが、いくつかのポイントだけ以下で説明します。チューナー自体はこの段階で接続しておけばいいと思います(通常の環境であればWindowsが新しいデバイスを検出するもののドライバーのインストールに失敗するはずで、それでOK)。このとき、デバイスマネージャで該当デバイスのところをダブルクリック、詳細->ハードウェアIDでIDをメモっておきます)。

インストーラを実行して進んでいくと最初の方でインストールするコンポーネントを選択するところがあります。ここは基本的にいじる必要はないのですが、前に書いたように先にHDSDR等をインストールしているのであれば、下の方の"Download an SDR receiver application"のところはチェックを外しておきます。



"next"を押して進むと、今度はHDSDR等のインストールされている(あるいはこれからされる)フォルダを指定するように言われます。インストーラはここで指示されたフォルダに必要なライブラリ等をインストールします。



私の場合は"E:hdsdr"という場所にHDSDRをインストールしてあるので、そこを指定しています。ご自分の環境に合わせて設定してください。

次にドライバのインストールの選択画面が出ます。ここで対象となるワンセグチューナーに対応するDeviceを選択します。何も出なければOptionsから"List all devices(だったと思う)"を選ぶとデバイスを選択できるようになるはずです。VIDとPIDを確認しましょう。また、ここに紹介する画面ではDevice名がRTL2832Uになっていますが、必ずそう表示されるのかどうかは判りません。それと、最初にインストールしたときにはVID, PIDの右にMIという欄もあった気がするのですが、そこは"00"を入力すればOKでした。そしてこれが一番重要なのですが、右のTargetのところで必ずWinUSBを選択してください。デバイスとターゲットのドライバの選択を確認したら下のInstall Driverをクリックします。



ドライバのインストールが終わるとダイアログが出ますが、closeして大丈夫なはずです。その後さらにインストールが進んで下のような画面になるとインストールは終了です。



ここでNextをクリックするとBorIP起動とドキュメント表示のチェックボックスがありますが、いずれも外して終了して結構です。ドキュメントは元々のページです。

インストールは以上で終了です。HDSDRをインストールしたディレクトリの中に、ExtIO_USRP.dllなどがインストールされていることを確認してください。もう一点、デバイスマネージャで、libusb(WinUSB)devicesの下にRTL2832Uがぶら下がっていることを確認できれば、まず間違いないと思います。

実際の使用については端折って書きます。HDSDRでしたらOptions->Select InputでUSRPを選択します。そうするとExtIOの画面が出ますので、Device HintのところにRTLと記入してCreateボタンを押してエラーが出なければ成功です。これでHDSDRをスタートさせればワンセグチューナーをHDSDRから操作し受信できるようになります。

一応ひと通り説明したつもりですが、不十分な点、間違い等もあるかも知れません。その場合はご容赦ください。お気づきの点があればご指摘いただければ幸いです。

コメント (16) |  トラックバック (0) |