伝送路の状態に応じたLDPC符号化率の適応アルゴリズム
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[ASL Wiki]]
*研究(修士論文)[#b03292eb]
**研究目的 [#jf10befa]
-SIZE(16){COLOR(#FF001F){''Micaz(マイカジー)''}のOSであるCOLOR(#E000FF){TinyOS}のシステムに誤り訂正符号を組み込む。}~
-SIZE(16){目的としては、本来COLOR(#E000FF){TinyOS}に組み込まれているCRCアルゴリズム(誤り検出符号)では、転送距離に限界(約10m)があるため途中のノードに転送できなくなると情報が確実に宛先に届く補償がない。そのため、LDPC符号(誤り訂正符号)を組み込むことでノード間の距離が長くても情報を確実に転送できることを目指す}
**研究内容 [#t4a575aa]
***SIZE(22){COLOR(#FF001F){Micaz}とは} [#a9446d1f]
-SIZE(16){MICAzはCrossbow Technologyの最新Moteです。}~
-SIZE(16){ZigBee対応無線周波数トランシーバを使用します。}~
-SIZE(16){詳しくはMPR/MIB User's Manualをご覧ください} -> [[マニュアル:http://www.xbow.com/support/Support_pdf_files/MPR-MIB_Series_Users_Manual.pdf]]
CENTER:&ref(micaz.jpg);
***SIZE(22){MoteWorks} [#m24037e1]
SIZE(20){今回は、このMotewaorksというセンサネット総合ソフトウェアを使ってCOLOR(#FF001F){micaz}のCOLOR(#E000FF){TinyOS}のシステムの中にLDPC符号を組み込みたいと思っています。}
CENTER:&ref(kansei.jpg);
-SIZE(20){Motewaorksとは、クロスボーが開発した無線センサネットワークの構築と運用、カスタマイズや開発に必要なソフトすべてをパッケージした統合ソフトウェアです。}
--SIZE(16){センサノードソフト「COLOR(#FFA000){XMesh}」}
--SIZE(16){ネットワークサーバソフト「COLOR(#1FDF43){XServe}」}
--SIZE(16){クライアントソフト「COLOR(#0000FF){MoteView}」}
-SIZE(21){COLOR(#FFA000){XMesh}とは}SIZE(15){COLOR(#008FFF){詳しくはユーザーマニュアルをご覧ください―> &ref(XMesh.pdf);}}
--SIZE(16){クロスボーが開発した無線センサネットワーク用のプロトコルスタックであり以下の特長を持ちます}
---SIZE(16){末端ノードだけでなく中継ノードも電池駆動でくるフルメッシュ・センサネットワーク}
---SIZE(16){アドホックによるネットワーク自律構築・自己修復機能。ノードの追加や消失の対しても自動対応}
---SIZE(16){頻繁に変化する無線通信状況に対しても、動的に最適経路を選択}
---SIZE(16){ネットワークを経由して各種センサボードや一般センサからセンサ値を取得}~
-SIZE(21){COLOR(#1FDF43){XServe}とは}
--SIZE(16){無線センサネットワーク用のサーバ(基地局)ソフトです。ネットワーク内の各ノードから送られてくるデータをパソコンに取り込みさまざまなインタフェースへ変換します}
-SIZE(21){COLOR(#0000FF){MoteView}とは}
--SIZE(16){無線センサネットワーク用のGUIアプリケーションです。センサ値のグラフ表示、ロギング、Eメール自動通知、ルーティングマップ、ノードへのプログラム書き込み等の機能を持ちます}
-SIZE(21){COLOR(#E000FF){TinyOS}(今回研究で変更するところ)とは}
--SIZE(16){COLOR(#E000FF){TinyOs}とは、無線センサネットワーク用のOSです。}
--SIZE(16){オープンソースプロジェクトとして世界中のソフトウェアエンジニアによって改良・機能拡張が行われている}
--SIZE(16){COLOR(#E000FF){TinyOs}は限られた資源下で高効率な処理を行えるように設計されており、メモリ(ワーキングメモリ、プログラム格納フラッシュメモリ)、CPUパワー、消費電力などを非常に小さく抑えることができる}
**やることリスト [#ua781259]
-cc2420のCRC処理の流れを調べる(6月中)
-cc2420の符号化がどこで行われているかを探す(チップ上に書かれていないことを祈る!)
**研究報告 [#r81ab5c7]
***cc1000とcc2420の違いを明確にする(6月) [#gd1caa19]
-cc1000とcc2420の違いは無線周波数の違いでした
-cc2420(2.4GHz),cc1000(433MHz,916MHz)
-MICAzにはcc2420が対応しているため、下のTinyOsの調査はcc1000であるため間違った↓
-ちなみにcc1000はMICA2に対応している 詳しくはXMeshユーザーマニュアルp21
***COLOR(#E000FF){TinyOs}の調査(6月) [#h68ab8ee]
-SIZE(16){cc1000の場合}
CENTER:&ref(TinyOs2.jpg);
-送受信の関数の呼び出し(プロトコルスタックに関して)~
--パケット受信(ソフト側で制御できる物理層にもっとも近いファイル!!)~
--/opt/MoteWorks/tos/radio/cc1000hp のファイル内のcrcByte関数を用いてcrcの計算を行う~
--このファイル内部でCRCのチェックを行い、パケットが壊れていないと判断した場合には、packet->crcに1を代入~
--ちなみに、このファイルではCRCによるフィルタリングは行わないため、CRC検査の結果によらずさらに上位のレイヤーにパケットを渡す~
-crcByte関数(CRCの関数)を定義しているファイル(恐らく、この箇所を変更すれば独自のCRC関数になる)
--/opt/MoteWorks/tos/system/crc.h
-ちなみに受信時のパケットの流れだが、cc1000hpの次はAMStandard.nc -> GenericComm.nc -> 独自アプリケーションという流れになるはず
-AMStandard.ncで実際にcrcによるパケットフィルタリングを行う
-[[TinyOsファイル]]
-SIZE(16){cc2420の場合}
***実際にCRCの記述を変更してみて、変わるかを確認(6月) [#a8b5bfc3]
-やり方としては、TERMというツールを使いTerminalに来る値を出力する
-はじめは、/opt/MoteWorks/tos/systemにあるcrc.hのファイルを変更したが応答なし、エラー出るように記述したのにエラー出ないため他のcrcのファイルを実行してることを確認した
-探した結果、/opt/MoteWorks/tos/platform/atm128にあるcrc.hファイルを変更したら、エラー発生!!!やっと見つけた!
**補足 [#ia28ada6]
-SIZE(15){LDPC符号(誤り訂正符号)}
--SIZE(11){詳しくはこちらー>[[ここ:http://zxp044.u-aizu.ac.jp/aslwiki/index.php?%C2%B4%B6%C8%CF%C0%CA%B8%28%BE%E9%C4%B9%A5%D3%A5%C3%A5%C8%B2%C4%CA%D1%A3%CC%A3%C4%A3%D0%A3%C3%C9%E4%B9%E6%B8%FE%A4%B1Sum-Product%A5%A2%A5%EB%A5%B4%A5%EA%A5%BA%A5%E0%A4%CE%B2%F3%CF%A9%B2%BD%29]]}
-SIZE(15){CRCアルゴリズム(誤り検出符号)}
--SIZE(13){CRCは、Cyclic Redundancy Check(巡回冗長検査)の略で、データの誤りを検出する仕組みの一つです。}
--SIZE(13){誤り検出方式は、単純にデータが壊れていないかだけを調べます。壊れたデータを復元する機能はありません。元データにわずかな誤り検出用データを付加するだけで利用できるのが特徴です}
CENTER:&ref(crc_01.gif);
--SIZE(13){CRCコードは、同一のファイルからは必ず同じコードが生成され、1バイトでもデータが異なると全く別のコードが生成されます}
--SIZE(13){送信データから生成されたCRCコードと、受信データから生成されたCRCコードを比較することで、誤りがあるかを検出します}
-SIZE(15){nesC}
--SIZE(11){COLOR(#E000FF){TinyOs}は省資源下での高効率処理を実現していますが、同時にソフトウェアの開発効率も高効率です。これを実現しているのが、COLOR(#E000FF){TinyOs}用のプログラミング言語であるnesCである}
--SIZE(11){nesCはC言語を拡張したプログラミング言語であり、コンポーネントをソフトウェアモジュール単位としたオブジェクト指向プログラミングを実現しています}
*コメント [#n97de62e]
研究を始めたばかりで、間違いがあるかと思います。
見つけた方は、申し訳ないですがコメントをいただけないでしょうか。すぐに直します。
#comment
終了行:
[[ASL Wiki]]
*研究(修士論文)[#b03292eb]
**研究目的 [#jf10befa]
-SIZE(16){COLOR(#FF001F){''Micaz(マイカジー)''}のOSであるCOLOR(#E000FF){TinyOS}のシステムに誤り訂正符号を組み込む。}~
-SIZE(16){目的としては、本来COLOR(#E000FF){TinyOS}に組み込まれているCRCアルゴリズム(誤り検出符号)では、転送距離に限界(約10m)があるため途中のノードに転送できなくなると情報が確実に宛先に届く補償がない。そのため、LDPC符号(誤り訂正符号)を組み込むことでノード間の距離が長くても情報を確実に転送できることを目指す}
**研究内容 [#t4a575aa]
***SIZE(22){COLOR(#FF001F){Micaz}とは} [#a9446d1f]
-SIZE(16){MICAzはCrossbow Technologyの最新Moteです。}~
-SIZE(16){ZigBee対応無線周波数トランシーバを使用します。}~
-SIZE(16){詳しくはMPR/MIB User's Manualをご覧ください} -> [[マニュアル:http://www.xbow.com/support/Support_pdf_files/MPR-MIB_Series_Users_Manual.pdf]]
CENTER:&ref(micaz.jpg);
***SIZE(22){MoteWorks} [#m24037e1]
SIZE(20){今回は、このMotewaorksというセンサネット総合ソフトウェアを使ってCOLOR(#FF001F){micaz}のCOLOR(#E000FF){TinyOS}のシステムの中にLDPC符号を組み込みたいと思っています。}
CENTER:&ref(kansei.jpg);
-SIZE(20){Motewaorksとは、クロスボーが開発した無線センサネットワークの構築と運用、カスタマイズや開発に必要なソフトすべてをパッケージした統合ソフトウェアです。}
--SIZE(16){センサノードソフト「COLOR(#FFA000){XMesh}」}
--SIZE(16){ネットワークサーバソフト「COLOR(#1FDF43){XServe}」}
--SIZE(16){クライアントソフト「COLOR(#0000FF){MoteView}」}
-SIZE(21){COLOR(#FFA000){XMesh}とは}SIZE(15){COLOR(#008FFF){詳しくはユーザーマニュアルをご覧ください―> &ref(XMesh.pdf);}}
--SIZE(16){クロスボーが開発した無線センサネットワーク用のプロトコルスタックであり以下の特長を持ちます}
---SIZE(16){末端ノードだけでなく中継ノードも電池駆動でくるフルメッシュ・センサネットワーク}
---SIZE(16){アドホックによるネットワーク自律構築・自己修復機能。ノードの追加や消失の対しても自動対応}
---SIZE(16){頻繁に変化する無線通信状況に対しても、動的に最適経路を選択}
---SIZE(16){ネットワークを経由して各種センサボードや一般センサからセンサ値を取得}~
-SIZE(21){COLOR(#1FDF43){XServe}とは}
--SIZE(16){無線センサネットワーク用のサーバ(基地局)ソフトです。ネットワーク内の各ノードから送られてくるデータをパソコンに取り込みさまざまなインタフェースへ変換します}
-SIZE(21){COLOR(#0000FF){MoteView}とは}
--SIZE(16){無線センサネットワーク用のGUIアプリケーションです。センサ値のグラフ表示、ロギング、Eメール自動通知、ルーティングマップ、ノードへのプログラム書き込み等の機能を持ちます}
-SIZE(21){COLOR(#E000FF){TinyOS}(今回研究で変更するところ)とは}
--SIZE(16){COLOR(#E000FF){TinyOs}とは、無線センサネットワーク用のOSです。}
--SIZE(16){オープンソースプロジェクトとして世界中のソフトウェアエンジニアによって改良・機能拡張が行われている}
--SIZE(16){COLOR(#E000FF){TinyOs}は限られた資源下で高効率な処理を行えるように設計されており、メモリ(ワーキングメモリ、プログラム格納フラッシュメモリ)、CPUパワー、消費電力などを非常に小さく抑えることができる}
**やることリスト [#ua781259]
-cc2420のCRC処理の流れを調べる(6月中)
-cc2420の符号化がどこで行われているかを探す(チップ上に書かれていないことを祈る!)
**研究報告 [#r81ab5c7]
***cc1000とcc2420の違いを明確にする(6月) [#gd1caa19]
-cc1000とcc2420の違いは無線周波数の違いでした
-cc2420(2.4GHz),cc1000(433MHz,916MHz)
-MICAzにはcc2420が対応しているため、下のTinyOsの調査はcc1000であるため間違った↓
-ちなみにcc1000はMICA2に対応している 詳しくはXMeshユーザーマニュアルp21
***COLOR(#E000FF){TinyOs}の調査(6月) [#h68ab8ee]
-SIZE(16){cc1000の場合}
CENTER:&ref(TinyOs2.jpg);
-送受信の関数の呼び出し(プロトコルスタックに関して)~
--パケット受信(ソフト側で制御できる物理層にもっとも近いファイル!!)~
--/opt/MoteWorks/tos/radio/cc1000hp のファイル内のcrcByte関数を用いてcrcの計算を行う~
--このファイル内部でCRCのチェックを行い、パケットが壊れていないと判断した場合には、packet->crcに1を代入~
--ちなみに、このファイルではCRCによるフィルタリングは行わないため、CRC検査の結果によらずさらに上位のレイヤーにパケットを渡す~
-crcByte関数(CRCの関数)を定義しているファイル(恐らく、この箇所を変更すれば独自のCRC関数になる)
--/opt/MoteWorks/tos/system/crc.h
-ちなみに受信時のパケットの流れだが、cc1000hpの次はAMStandard.nc -> GenericComm.nc -> 独自アプリケーションという流れになるはず
-AMStandard.ncで実際にcrcによるパケットフィルタリングを行う
-[[TinyOsファイル]]
-SIZE(16){cc2420の場合}
***実際にCRCの記述を変更してみて、変わるかを確認(6月) [#a8b5bfc3]
-やり方としては、TERMというツールを使いTerminalに来る値を出力する
-はじめは、/opt/MoteWorks/tos/systemにあるcrc.hのファイルを変更したが応答なし、エラー出るように記述したのにエラー出ないため他のcrcのファイルを実行してることを確認した
-探した結果、/opt/MoteWorks/tos/platform/atm128にあるcrc.hファイルを変更したら、エラー発生!!!やっと見つけた!
**補足 [#ia28ada6]
-SIZE(15){LDPC符号(誤り訂正符号)}
--SIZE(11){詳しくはこちらー>[[ここ:http://zxp044.u-aizu.ac.jp/aslwiki/index.php?%C2%B4%B6%C8%CF%C0%CA%B8%28%BE%E9%C4%B9%A5%D3%A5%C3%A5%C8%B2%C4%CA%D1%A3%CC%A3%C4%A3%D0%A3%C3%C9%E4%B9%E6%B8%FE%A4%B1Sum-Product%A5%A2%A5%EB%A5%B4%A5%EA%A5%BA%A5%E0%A4%CE%B2%F3%CF%A9%B2%BD%29]]}
-SIZE(15){CRCアルゴリズム(誤り検出符号)}
--SIZE(13){CRCは、Cyclic Redundancy Check(巡回冗長検査)の略で、データの誤りを検出する仕組みの一つです。}
--SIZE(13){誤り検出方式は、単純にデータが壊れていないかだけを調べます。壊れたデータを復元する機能はありません。元データにわずかな誤り検出用データを付加するだけで利用できるのが特徴です}
CENTER:&ref(crc_01.gif);
--SIZE(13){CRCコードは、同一のファイルからは必ず同じコードが生成され、1バイトでもデータが異なると全く別のコードが生成されます}
--SIZE(13){送信データから生成されたCRCコードと、受信データから生成されたCRCコードを比較することで、誤りがあるかを検出します}
-SIZE(15){nesC}
--SIZE(11){COLOR(#E000FF){TinyOs}は省資源下での高効率処理を実現していますが、同時にソフトウェアの開発効率も高効率です。これを実現しているのが、COLOR(#E000FF){TinyOs}用のプログラミング言語であるnesCである}
--SIZE(11){nesCはC言語を拡張したプログラミング言語であり、コンポーネントをソフトウェアモジュール単位としたオブジェクト指向プログラミングを実現しています}
*コメント [#n97de62e]
研究を始めたばかりで、間違いがあるかと思います。
見つけた方は、申し訳ないですがコメントをいただけないでしょうか。すぐに直します。
#comment
ページ名: