loraenergysim
フレームワークは、3つの主要なコンポーネント、すなわち、ノード、エアインターフェイス、およびゲートウェイで構成されています。ノードは、エアインターフェイスを介してゲートウェイにメッセージを送信します。衝突と弱いメッセージは、AIRインターフェイスコンポーネントで検出されます。 ollidedされていない強力なパケットはゲートウェイに配信されますが、ノードで要求された場合、ダウンリンクメッセージがスケジュールされます。

引用する方法は?
@INPROCEEDINGS{8885739,
author={G. {Callebaut} and G. {Ottoy} and L. {van der Perre}},
booktitle={2019 IEEE Wireless Communications and Networking Conference (WCNC)},
title={Cross-Layer Framework and Optimization for Efficient Use of the Energy Budget of IoT Nodes},
year={2019},
volume={},
number={},
pages={1-6},
}その他の出版物:
G. Callebaut, G. Ottoy and L. V. d. Perre, "Optimizing Transmission of IoT Nodes in Dynamic Environments,"
2020 International Conference on Omni-layer Intelligent Systems (COINS), 2020, pp. 1-5, doi: 10.1109/COINS49042.2020.9191674.
使い方は?
フレームワークのソースは、 Frameworkフォルダーにあります。 Simulationsフォルダーにはいくつかの例が含まれています。
一般的なワークフロー
さまざまなsettings/configurations比較するために、ノードの位置がすべてのシミュレーションで同じであることが不可欠です。したがって、ファイルgenerate_locations.py例に含まれています。
ワークフロー:
- シミュレーション環境の設定を定義します。
- あなたの場所を生成してくださいこちらを参照してください。 GlobalConfigファイルで定義されている設定を使用します。
- ここで詳述されているように、
Simulation.pyファイルを作成します。
ノードの位置を生成します
構成可能なパラメーター:
- 場所の数、すなわち、IoTノードの数
- セルサイズ、セルはここに長方形の領域です。セルサイズはメートルのエッジの長さを決定します
- 実行するMonto-Carloシミュレーションの数。シミュレーションにはランダムおよび非決定的な動作と異なる位置セットが含まれているため、複数のシミュレーション上の結果を平均すると、より統計的な意味があります。
各シミュレーションについて、エリア内のランダムな場所のセットが生成され、 GlobalConfig.pyファイルで定義されたパラメーターであるlocation_fileに保存されます。
シミュレーション
シミュレーションファイルでは、フレームワークのビルディングブロックを使用して特定の環境をシミュレートし、消費されたエネルギーや衝突したメッセージの数などの結果を取得します。構成可能なパラメーターと出力については、セクションFramework (以下)を参照してください。シミュレーションファイルの書き込み方法については、 Example>simulation.pyをご覧ください。 simulation.pyでは、場所をロードし、結果を保持するオブジェクトを指定し、シミュレートするものを指定します。 SimulationProcessでは、シミュレーション自体が実行されます。ゲートウェイが作成され、ノードはロラパラメーターとエネルギープロファイルで生成されます。シミュレーションが実行されると。 1つのシミュレーションが完了した後、結果はオブジェクトから抽出され、返され、 simulation.pyファイルで使用されます。
プロジェクトは、最初にgenerate_locations.py実行してからsimulation.py実行して実行できるようになりました。
フレームワーク
最初に論文を読んで、ロラワンの操作と制限に関してフレームワークをより詳細に理解してください。
伝播モデル
伝播モデルは、メッセージが環境によってどのように影響するかを決定します。特定の環境に対して、トランスミッターと受信機の間で信号がどれだけ減衰されるか、つまり、パスの損失、つまりどれだけの金額を予測します。 PropagationModel.pyには(現在)2つの実装が含まれています。
- ログシャドウモデルまたはログダイスタンスパス損失モデル。デフォルトパラメーターは、ITU-R P.2346-0およびJ. Petajajarvi、K。Mikhaylov、A。Roivainen、T。Hanninen、M。Pettissaloに基づいています。 (ITST)、2015、pp。55-59、doi:10.1109/itst.2015.7377400。
- Cost231、環境に関する詳細、たとえば、建物の高さなど
SNRモデル
このモデルは、メソッドrss_to_snrによって受信信号強度(RSS)を信号対雑音比(SNR)に変換します。この瞬間、ノイズは熱ノイズのみの影響を受けます。これは(db)になります:
SNR = RSS - ( - 174 + 10 * log10 ( 125e3 ))
LORAパラメーター
LORAプロトコル(Lorawan)に固有のすべてのパラメーターと、これらのパラメーターに関連する測定されたエネルギー消費量をここに含みます。
ロラパケット
Lorapacketsは、ノードからゲートウェイにエアインターフェイスを介して送信されます。 LoRaPacketは、関連するメタデータやメッセージの状態に関する情報を含むアップリンクとダウンリンクのメッセージクラスが含まれています。
エネルギープロファイル
エネルギープロファイルクラスには、ノードの睡眠、処理、送信、受信電力が含まれています。これは、各ノードで異なる場合があり、 simulation.pyファイルで定義できます。
ノード
ノードクラスには、電力消費量、送信メッセージの数、ペイロード送信、再送信、...ノードに関するすべての情報が含まれています。それらの動作は、メインsimulation.pyファイルで決定されます。
シミュレーションを実行した後、次の障害を抽出できます。
-
energy_per_bit 。これは、1つのデータを送信するために消費されるエネルギーの量です transmit_related_energy_per_bit 。これには、送信モードでのエネルギー支出のみが含まれます。-
transmit_related_energy_per_unique_bit 。これには送信モードでのエネルギー支出のみが含まれ、TX'ed Recransmissionsは送信ビットに対してカウントされません total_energy_consumed-
get_simulation_data :
series = {
'WaitTimeDC' : self . total_wait_time_because_dc / 1000 , # [s] instead of [ms]
'NoDLReceived' : self . num_no_downlink ,
'UniquePackets' : self . num_unique_packets_sent ,
'TotalPackets' : self . packets_sent ,
'CollidedPackets' : self . num_collided ,
'RetransmittedPackets' : self . num_retransmission ,
'TotalBytes' : self . bytes_sent ,
'TotalEnergy' : self . total_energy_consumed (),
'TxRxEnergy' : self . transmit_related_energy_consumed (),
'EnergyValuePackets' : self . energy_value
}エアインターフェイス
Air Interfaceは衝突を検出し、Lorapacketオブジェクトを変更するため、ノードとゲートウェイはメッセージの送信中に何が起こったかを知ります。使用済みの伝播モデルとSNRモデルを使用して、転送が成功したかどうかを判断します。
ゲートウェイ
ゲートウェイでは、受信したSNRがチェックされ、必要なしきい値以下のメッセージが弱いとマークされ、rx'edではありません。ゲートウェイは、ノードで要求された場合、DLメッセージも処理します。
構成可能なプロパティ
- Energy_Profile:EnergyProfile、
- lora_parameters、
- sleep_time、
- process_time、
- ADR、
- 位置、
- payload_size、
- confirmed_messages = true
現在追跡されているもの
- 'waittimedc':total_wait_time_because_dc
- 'nodlreceived':num_no_downlink、
- 「UniquePackets」:num_unique_packets_sent、
- 「TotalPackets」:packets_sent、
- 'CollidedPackets':num_collided、
- 「再送信パケット」:num_retransmission、
- 'TotalBytes':bytes_sent、
- 「TotalEnergy」:Total_Energy_Consumed()、
- 'txrxenergy':transmit_related_energy_consumed()、
一般的なエロ
Q:Globaconfig、場所が見つかりません。
A:フォルダのフレームワークとシミュレーションがソースルートとしてマークされていることを確認してください。 pycharmの場合、フォルダを右クリック>>マークディレクトリとして>ソースルート
Q:IPython/Spyderには出力がありません
A:コードはデフォルトでParralelで実行され、その場合はSTD出力がうまく処理されません。コードを順番に実行でき、下部のpool.map関数に関する例/simulation.pyのコメントを参照してください。
シミュレータを使用したアカデミックワーク
引用。
で使用されるシミュレーター:
- F. de Rango、D。Stumpo、A。Iera、「スケーラブルなLORAネットワークの干渉領域認識チャネル割り当て」、2024年20回目のワイヤレスおよびモバイルコンピューティング、ネットワーキングと通信(WIMOB)、フランス、2024、19-24、doi:10.1109/Wimob61911.2024.10703109
- GL Scapin、G。Alvarez、N。Quiroga、F。Collado、Ja Fraire、「Lorawan DTS-Iot Networksのパフォーマンス評価:オペレーションモードとサーバー配置」、2024 IEEE Biennial Congress of Argentina(Argencon)、SanNicolásDeLosArroyos、Argentina、2024、pp。1-8、 10.1109/argencon62399.2024.10735884。
- Park、G.、Lee、W。、&Joe、I。(2020)。低電力幅のエリアネットワークの強化学習によるネットワークリソースの最適化。 Wireless Communications and NetworkingのEuraSip Journal、2020(1)、1-20。
- L. Beltramelli、A。Mahmood、P。Österberg、M。Gidlund、P。FerrariおよびE. Sisinni、「帯域外の同期とのスロット付きロラワン通信のエネルギー効率」、IEEE Transactions on Instrustation and Measurement、vol。 70、pp。1-11、2021、Art no。 5501211、doi:10.1109/tim.2021.3051238。
- Thoen B、Callebaut G、Leenders G、Wielandt S.低コストおよびエネルギー制約のIoTアプリケーション用の展開可能なLPWANプラットフォーム。センサー。 2019; 19(3):585。 https://doi.org/10.3390/S19030585
- T. Fedullo、A。Morato、F。Tramarin、P。Bellagente、P。Ferrari、およびE. Sisinni、「適応型ロラワン伝送補強学習:産業事例:産業事例」、2021 IEEE国際ワークショップインダストリー4.0およびIoT(Metroind4.0&IoT)、Rome、2021、PP。 10.1109/Metroind4.0iot51437.2021.9488498。
- Leenders G、Callebaut G、Ottoy G、van der Perre L、de Strycker L.リモートセンシング用のプリアンブルサンプリングを介したエネルギー効率の高いLoraマルチホッププロトコル。センサー。 2023; 23(11):4994。 https://doi.org/10.3390/S23114994
- Acosta-Garcia、L.、Aznar-Poveda、J.、Garcia-Sanchez、AJ、Garcia-Haro、J。、&Fahringer、T。(2023)。 LORAネットワークパフォーマンスを強化するための動的伝送ポリシー:深い強化学習アプローチ。モノのインターネット、24、100974。
- G. Leenders、G。Ottoy、G。Callebaut、L。vander Perre、L。deStrycker、「プリアンブルサンプリングによるエネルギー効率の高いLoraマルチホッププロトコル」、2023 IEEEワイヤレス通信およびネットワーキング会議(WCNC)、グラスゴー、イギリス、2023、PP。1-6、Doi: 10.1109/wcnc55385.2023.10118770。
- E. Sisinni et al。、「スマートメーターアプリケーション向けの新しいロラワン適応戦略」、2020 IEEEE国際ワークショップIndustry 4.0&IoT、Roma、Italy、2020、pp。690-695、DOI:10.1109/Metroind4.0iot48571.2020.9138226。
- T. Fedullo、A。Mahmood、F。Tramarin、A。Morato、M。Gidlund、L。Rovati、「ハイブリッド中程度のアクセス制御を利用し、LORAベースのセンサーネットワークのデューティサイクル制限を克服するための戦略を中継する」、2023 IEEE International Instrumentation and Measurement Technology Conference(I2MTC)、Kuala Lumpur、PPP. doi:10.1109/i2mtc53148.2023.10176039。
- F. de Rango、A。Ripari、D。Stumpo、およびA. Iera、「複数のゲートウェイと交通量の多いロラワンでのダイナミックスイッチング」、2021 IEEE Global Communications Conference(Globecom)、Madrid、Spain、2021、pp。1-6、DOI:10.1109/GlobeCom46510.2021.9685009。
- D. Stumpo、F。DeRango、F。Buffone、およびM. Tropea、「マルチゲートウェイシナリオと干渉管理のサポートにおける拡張Loraenergysimシミュレーターのパフォーマンス」、2022 IEEE/ACM 26th International Symposium on Distributed Simulation and Real Time Applications(DS-RT)、Alès、2022、PP。 10.1109/DS-RT555542.2022.9932063。
- G. Callebaut、G。OttoyおよびLV d。 Perre、「動的環境でのIoTノードの伝送の最適化」、2020 Omni-Layer Intelligent Systems(Coins)、バルセロナ、スペイン、2020、pp。1-5、doi:10.1109/Coins49042.2020.9191674。
- Križanović、V。; Grgić、K。; Spišić、J。; Zagar、D。LORAベースのワイヤレスセンサーネットワークを使用した精密農業における高度なエネルギー効率の高い環境監視。センサー2023、23、6332。
- チャン、jiayue。 「ゼロエネルギーデバイスの低電力通信プロトコルの設計ガイドライン。」 (2023)。
- Stumpo、Daniele、Floriano de Rango、Francesco Buffone。 「ロラエネルギーシミュレーターを拡張して、マルチゲートウェイIoTシナリオの下で干渉管理をサポートします。」 (2022)。
- T. Fedullo、A。Morato、F。Tramarin、P。Ferrari、およびE. Sisinni、「消費電力消費制約の下で適応型ロラワンを活用するスマート測定システム:RLアプローチ」、2022 IEEE国際ワークショップIndustry 4.0およびIoT(メトロインド4.0&IoT) 10.1109/Metroind4.0iot54413.2022.9831487。