メイン Scenario Setup & Configuration 802.15.4モデル下でのエラーについて | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
1019 | 投稿日時: 2013/8/5 9:24 |
新米 登録日: 2013/8/5 居住地: 投稿: 2 |
802.15.4モデル下でのエラーについて センサネットワークのシミュレーションを行おうと思っています。
そこで、GUI上でグリッド状にノードを64個(150m間隔)設置し、それぞれのノードの物理層、MAC層を802.15.4に設定をしました。また一つのノードをPANcoordinator、残りのノードをCoordinatorに設定し、シミュレーションを走らせました。はじめは、各ノードが順々にPANにアソシエイトしていくのですが、途中で "Indirect transmission towards parent is taking place" というアサートが出て終了してしまいました。 ソースコードを見たところ、どうやらある二つのノードがそれぞれもう片方のノードを親ノードにしていることが問題のようです。 ノード1の親ノード2 ノード2の親ノード1 このような問題が発生するのは、ノードが密集しているからなのでしょうか。うまく全てのノードがPANに接続するにはどのように設定をしたらよいのでしょうか。 |
hiro | 投稿日時: 2013/8/10 16:49 |
長老 登録日: 2005/7/16 居住地: 投稿: 452 |
Re: 802.15.4モデル下でのエラーについて ノードが密集していない条件ではどのような結果になったのか教えて下さい。
|
1019 | 投稿日時: 2013/8/12 10:58 |
新米 登録日: 2013/8/5 居住地: 投稿: 2 |
Re: 802.15.4モデル下でのエラーについて ご返答ありがとうございます。
ノードが密集していない場合、例えば単純にノード数を8個(間隔は150m)に減らして行った場合は、正常に終了します。 当初のノード数で行った場合、ある既にPANに参加しているノードがビーコンの受信に連続で失敗し、他のコーディネータにアソシエイトするときに、そのコーディネータが自分の子のビーコンを受信して、そこにアソシエイトリクエストを送信してしまうことから、ループが発生してしまうようです。 やはりノード間の干渉が少ないように、ノードの配置を考える必要があるのでしょうか。 |
mast | 投稿日時: 2013/8/15 15:40 |
一人前 登録日: 2005/4/7 居住地: 投稿: 93 |
Re: 802.15.4モデル下でのエラーについて 該当のAssert条件周辺のソースコードを見てみました。
「自身の親宛のPendingパケットが見つかった」ということでシミュレーションを強制終了させていますね。 自分の親宛のパケットをIndirect Transmissionで送るのは802.15.4的には違反行為なので、確かに間違った動作ではないですね。 以下のような対処(ソースコード改造)が考えられそうですのでよければ試してみてください。 ・リンク切れを検出して再アソシエーションする際には、Indirect Transmission用のPending Packetのリストをクリアする ・上記のようなことは行わず、自身の親宛のPendingパケットが見つかったときはそのパケットをそっと捨てる あるいは、ノード間の干渉が少ないようにしても評価したいシナリオに影響が無いようであれば、ノード配置でそれを実現するのではなく、電波の伝搬距離の設定でそれを実現すれば良いかと思います。 Channel PropertiesにMaximum Propagation Distanceという設定パラメータがあるので、これを170とかに設定してみてはいかがでしょうか。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |