2013年5月4日土曜日

RTL-SDR(RaspberryPiサーバ 番外編 Linuxの扱い)

RTL-SDR(RaspberryPiサーバ 番外編 Linuxの扱い)


<概要>

これまでRaspberryPiをRTL-SDRサーバ化するための作業をしてきました。RaspberryPiはOSにLinuxを使用しているので、作業にはLinuxの知識が必要になります。

ここでは、これまでの作業で必要と思われた知識とツールについてまとめます。

<Linux全般の情報習得>

RaspberryPiはLiunxの一種であるDebianを元にしたOS(Raspbian)が採用されています。
RaspberryPi OS Downloads サイト:http://www.raspberrypi.org/downloads

RaspberryPi用ですが、Linuxなので、Linuxの参考書がそのまま使えます。私の場合は10年以上前に発行された本を使用しましたが、コマンドに関しては問題なく使用できました。WebにもLinuxに関する解説サイトがあるので、分からないコマンドなどが有れば検索すればよいでしょう。

Linux初心者の基礎知識:http://www.linux-beginner.com/
ITpro Linuxコマンド集:http://itpro.nikkeibp.co.jp/article/COLUMN/20060224/230573/

<コマンドについて>

ls (ディレクトリ、ファイルの情報表示)
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230820/?ST=oss

ディレクトリやファイルの情報を表示します。Linuxではファイル毎に、読み、書き、実行の権限を設定できるので、ファイルの書き換えを使用として、権限設定の条件でキャンセルされる場合があります。こうしたときに、キャンセルされた原因を確認するときに使用します。これは、ファイラツールを使った方が楽に作業できます。

chmod(ディレクトリ、ファイルの権限変更)
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230728/?ST=oss
ファイルを書き換えする場合に、権限の変更が必要になる場合に使用します。

nano(テキストファイルエディタ)
http://www.gentoo.org/doc/ja/nano-basics-guide.xml
テキストファイルを変更するときに使用します。同種のものに”vi”がありますが、それよりも操作性が良いです。

sudo(個別のコマンドに対してroot権限で実行)
http://itpro.nikkeibp.co.jp/article/COLUMN/20071205/288862/?ST=oss

Linuxはコマンドの実行などに対して権限を設定して実行を許可・不許可しています。通常は“ユーザー権限”で作業しますが、“root権限”が必要になる場合があります。この時に、“ユーザー権限”のままで、これから実行しようとするコマンドでのみ“root権限”で操作するときに使用します。

reboot(システムを再起動する)

http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230868/

ファイルを変更して、その結果をシステムに反映させるために再起動が必要になる場合があります。この時に、Raspberrypiの電源を機械的に落とさずに、コマンドから再起動させるためのコマンドです。root権限が必要なので、ユーザー権限で操作しているときには”sudo reboot”と打ち込みます。

insserv(起動スクリプトの設定)

起動スクリプトをOSに設定するためのツール
Debian Ver6 以降は”insserv”を使用します。それ以前は”update-rc.d”を使っています。

“update-rc.d”と”insserv”の関係について
symfowareについての考察blog:http://symfoware.blog68.fc2.com/blog-entry-840.html

debian DependencyBasedBoot:
http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot
debian How to LSBize an init Script:(起動スクリプト先頭の記述の意味)
http://wiki.debian.org/LSBInitScripts

<ファイルの改行コードの問題>

Linux、Windows、Macではテキストファイルの改行コードが異なっています。このため、異なるOSで作成したファイルをそのままLinuxのフォルダにコピーすると、改行コードの違いで実行できない場合があります。

保存したファイルの改行コードをwindows(CR LF)からlinx(LF)に変換する
検索フレーズ:"liunx 改行'
$ tr -d '\r' < trl_tcp.rc > trl_tcp1.rc

改行結果の確認は
$ od -c trl_tcp1.rc

表示されるデータに'\r\n' が'\n'になっていればよい

参考:
全ては時の中にblog:http://blog.livedoor.jp/akf0/archives/51600360.html

<ファイラーツール:WinSCP>

webからダウンロードしたファイルをRaspberryPiに転送したり、RaspberryPiのフォルダ構成を確認する場合に使用します。こうした操作や確認はLinuxのコマンドでも行えますが、ツールを使った方が楽です。

WinSCPダウンロード(Vector):
http://www.vector.co.jp/soft/winnt/net/se493067.html
WinSCP使い方:
http://www.netfdh.com/appea1v3winscp.html
http://www.cc.tsukuba.ac.jp/WinSCP/


<IPアドレス確認:NetEnum>

RaspberryPiをLANに接続したときに割り付けられるIPアドレスを調べるツールです。

NetEnumダウンロード(Vector)
http://www.vector.co.jp/soft/dl/winnt/net/se312004.html
NetEnum使い方:
http://www.pc-master.jp/blog/freesoft/1264.html
http://www.e-realize.com/netenum_help.html

<ターミナルソフト:TeraTerm>

RaspberryPiをLAN経由でPCに接続してSSH通信で操作する場合に使用するツールです。

TeraTermダウンロード(Vector)
http://www.vector.co.jp/soft/dl/win95/net/se320973.html

使い方:
http://www.ex.media.osaka-cu.ac.jp/windows/teraterm.html

2013年5月3日金曜日

RTL-SDR(RaspberryPiサーバ 無線LAN化)

RTL-SDR(RaspberryPiサーバ 無線LAN化)


<概要>

これまで有線LAN経由で、RTL-SDRデータを取得していたのを、無線LAN経由にして、取り回しの自由度を上げられるようにします。

使用した無線LANアダプタは、BUFFALO の”WLI-UC-GNM2”です。
http://www.amazon.co.jp/BUFFALO-11n%E5%AF%BE%E5%BF%9C-%E7%84%A1%E7%B7%9ALAN%E5%AD%90%E6%A9%9F-%E8%A6%AA%E6%A9%9F-%E5%AD%90%E6%A9%9F%E3%83%87%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%A2%E3%83%BC%E3%83%89%E5%AF%BE%E5%BF%9C%E3%83%A2%E3%83%87%E3%83%AB-WLI-UC-GNM2/dp/B005DU4XSM/ref=sr_1_3?ie=UTF8&qid=1367560407&sr=8-3&keywords=%E7%84%A1%E7%B7%9Alan

RaspberryPiの設定方法は、次のブログを参照しています。
http://d.hatena.ne.jp/pasela/20121224/raspi_wlan

<無線LANアダプタの接続確認>

RaspberryPiに無線LANアダプタを接続します。その上で”lsusb”コマンドを実行して無線LANアダプタの型番が表示されることを確認します。







<無線LANアダプタの自動認識設定>

● 無線LANルータの設定確認

無線LANルータの認証方式と暗号化を確認します。これはルータの設定画面で確認します。





今回は、
認証形式:WPA/WPA2
暗号化形式:TKIP
での設定例を説明していきます。

また、SSIDと、KEY(暗号鍵)も調べておきます。これも、無線LANルータの設定画面や機体に記載があります。

● RaspberryPiのファイル書き換え

RaspberryPiのファイルは
/etc/wpa_supplicant/wpa_supplicant.conf
/etc/network/interfaces
の2つのファイルを書き換えます。
ファイルの書き換えにはファイルの権限の変更が必要なので、権限変更した後で、ファイルを書き換えます。

/etc/wpa_supplicant_wpa_supplicant.confの書き換え
ファイルの権限変更






ファイルの書き換え




上記のファイル書き換えで使用する文字列の一部は、”wpa_passphrase”コマンドで出力させます。




/etc/network/interfacesの書き換え

ファイル権限変更



ファイルの書き換え







<無線LANの動作確認>

2つのファイルの書き換えが完了したら、RaspberryPiを再起動させます。




自動で無線LANが無線LANルータに認識されるので、ルータ側で認識されているかを確認します。





ルータ側で無線LANが確認できたら、無線LANからTeraTramなどでSSH接続してみます。
無線LANの動作確認が出来たら、書き換えたファイルの権限を元に戻しておきます。













<RTL-SDRでの無線LAN接続について>

有線LANより通信スピードが落ちるため、サンプリングレート(Sample Rate)を1.4MSPS以上に上げると音飛びなどが発生しました。