Loraenergysim
เฟรมเวิร์กประกอบด้วยองค์ประกอบหลักสามประการคือโหนดอินเตอร์เฟสอากาศและเกตเวย์ โหนดส่งข้อความไปยังเกตเวย์ผ่านอินเตอร์เฟสอากาศ ตรวจพบการชนและข้อความที่อ่อนแอในส่วนประกอบอินเตอร์เฟสอากาศ แพ็คเก็ตที่ไม่ได้รับการตรวจสอบและแข็งแกร่งจะถูกส่งไปยังเกตเวย์หลังจากนั้นข้อความ Downlink จะถูกกำหนดหากขอโดยโหนด

วิธีการอ้างอิง?
@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
- สร้างสถานที่ของคุณดูที่นี่ มันจะใช้การตั้งค่าที่กำหนดไว้ในไฟล์ GlobalConfig
- สร้างไฟล์
Simulation.py ตามรายละเอียดที่นี่
สร้างตำแหน่งโหนด
พารามิเตอร์ที่กำหนดค่าได้:
- จำนวนสถานที่เช่นจำนวนโหนด IoT
- ขนาดเซลล์เซลล์อยู่ที่นี่เป็นพื้นที่สี่เหลี่ยม ขนาดเซลล์จะกำหนดความยาวของขอบเป็นเมตร
- จำนวนการจำลอง Monto-Carlo ที่จะทำงาน เนื่องจากการจำลองมีพฤติกรรมแบบสุ่มและไม่ได้กำหนดและชุดตำแหน่งที่แตกต่างกันการเฉลี่ยผลลัพธ์มากกว่าการจำลองหลายครั้งจะมีความหมายทางสถิติมากขึ้น
สำหรับการจำลองแต่ละครั้งชุดของสถานที่สุ่มภายในพื้นที่จะถูกสร้างขึ้นและถูกเก็บไว้ใน location_file ซึ่งเป็นพารามิเตอร์ที่กำหนดไว้ในไฟล์ GlobalConfig.py
การจำลอง
ในไฟล์จำลองคุณจะใช้การสร้างบล็อกในกรอบเพื่อจำลองสภาพแวดล้อมที่เฉพาะเจาะจงและรับผลลัพธ์เช่นพลังงานที่ใช้และจำนวนข้อความที่ชนกัน ดู Framework ส่วน (ด้านล่าง) สำหรับพารามิเตอร์และเอาต์พุตที่กำหนดค่าได้ โปรดดูความคิดเห็นใน Example>simulation.py เกี่ยวกับวิธีการเขียนไฟล์จำลอง ใน simulation.py คุณโหลดตำแหน่งระบุวัตถุเพื่อเก็บผลลัพธ์และระบุสิ่งที่คุณต้องการจำลอง ใน SimulationProcess การจำลองสถานการณ์จะถูกเรียกใช้ เกตเวย์ถูกสร้างขึ้นโหนดจะถูกสร้างขึ้นด้วยพารามิเตอร์ LORA และโปรไฟล์พลังงาน หลังจากที่การจำลองทำงาน หลังจากเสร็จสิ้นการจำลองหนึ่งครั้งผลลัพธ์จะถูกดึงออกมาจากวัตถุและส่งคืนเพื่อใช้ในไฟล์ simulation.py
ตอนนี้โครงการสามารถเรียกใช้งานได้โดยใช้ generate_locations.py และ simulation.py เป็นครั้งแรก
กรอบ
โปรดอ่านบทความก่อนเพื่อให้เข้าใจอย่างละเอียดเกี่ยวกับกรอบงานเกี่ยวกับการดำเนินการและข้อ จำกัด ของ Lorawan
รูปแบบการแพร่กระจาย
รูปแบบการแพร่กระจายกำหนดว่าข้อความได้รับผลกระทบจากสภาพแวดล้อมอย่างไร มันทำนายการสูญเสียเส้นทางเช่นสัญญาณถูกลดทอนระหว่างเครื่องส่งและตัวรับสัญญาณสำหรับสภาพแวดล้อมที่กำหนด PropagationModel.py มี (ปัจจุบัน) การใช้งานสองครั้ง:
- โมเดล Log Shadow หรือ Log-Distance Path Loss Model ซึ่งพารามิเตอร์เริ่มต้นจะขึ้นอยู่กับ Rep. 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) เป็นอัตราส่วนสัญญาณต่อเสียงรบกวน (SNR) โดยวิธี rss_to_snr ในขณะนี้เสียงจะได้รับผลกระทบจากเสียงความร้อนเท่านั้น ผลลัพธ์นี้เป็น (db):
SNR = RSS - ( - 174 + 10 * log10 ( 125e3 ))
พารามิเตอร์ LORA
พารามิเตอร์ทั้งหมดที่เฉพาะเจาะจงกับโปรโตคอล LORA (LORAWAN) และการใช้พลังงานที่วัดได้ที่เกี่ยวข้องกับพารามิเตอร์เหล่านี้รวมอยู่ที่นี่
ลอราปาเก็ต
Lorapackets จะส่งผ่านอินเตอร์เฟสอากาศจากโหนดไปยังเกตเวย์ LoRaPacket มีคลาสข้อความอัปลิงค์และดาวน์ลิงก์รวมถึงข้อมูลเมตาที่เกี่ยวข้องและข้อมูลที่เกี่ยวข้องกับสถานะของข้อความเช่นได้รับการชนกัน ...
โปรไฟล์พลังงาน
คลาสโปรไฟล์พลังงานประกอบด้วยการนอนหลับการประมวลผลการส่งและรับพลังงานของโหนด สิ่งนี้อาจแตกต่างกันสำหรับแต่ละโหนดและสามารถกำหนดในไฟล์ simulation.py
โหนด
คลาสโหนดมีข้อมูลทั้งหมดเกี่ยวกับการใช้พลังงานจำนวนข้อความส่งส่งการส่งสัญญาณส่งการส่งสัญญาณใหม่ ... โหนดทำหน้าที่เป็นโหนด IoT จริงเข้าร่วมเครือข่ายรอการนอนหลับการส่งสัญญาณและการรับ พฤติกรรมของพวกเขาถูกกำหนดในไฟล์ simulation.py หลัก
หลังจากดำเนินการจำลองคุณสามารถแยกการกระจายตัวต่อไปนี้:
-
energy_per_bit นี่คือปริมาณพลังงานที่ใช้ในการส่งข้อมูลหนึ่งบิต -
transmit_related_energy_per_bit สิ่งนี้มีเฉพาะการใช้จ่ายพลังงานในโหมดส่ง -
transmit_related_energy_per_unique_bit สิ่งนี้มีเพียงการใช้จ่ายพลังงานในโหมดการส่งสัญญาณและ TX'ed retransmissions จะไม่นับรวมกับบิตที่ส่งผ่าน -
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
} ส่วนต่อประสานอากาศ
อินเตอร์เฟสอากาศตรวจจับการชนและเปลี่ยนแปลงวัตถุ Lorapacket เพื่อให้โหนดและเกตเวย์รู้ว่าเกิดอะไรขึ้นระหว่างการส่งข้อความ มันใช้โมเดลการแพร่กระจายที่ใช้แล้วและโมเดล SNR เพื่อตรวจสอบว่าการถ่ายโอนนั้นสำเร็จหรือไม่
เกตเวย์
ที่เกตเวย์ SNR ที่ได้รับจะถูกตรวจสอบและข้อความด้านล่างเกณฑ์ที่ต้องการจะถูกทำเครื่องหมายว่าอ่อนแอและไม่ได้เป็น RX'ED เกตเวย์ยังจัดการกับข้อความ DL หากร้องขอโดยโหนด
คุณสมบัติที่กำหนดค่าได้
- Energy_profile: Energyprofile,
- lora_parameters
- sleep_time
- process_time
- ADR,
- ที่ตั้ง,
- payload_size
- ยืนยัน _Messages = true
สิ่งที่ติดตามอยู่ในปัจจุบัน
- 'waittimedc': total_wait_time_because_dc
- 'nodlreceived': num_no_downlink
- 'UniquePackets': num_unique_packets_sent,
- 'TotalPackets': Packets_sent,
- 'CollidedPackets': num_collidide,
- 'retransmittedpackets': num_retransmission,
- 'TotalBytes': bytes_sent,
- 'Totalenergy': total_energy_consumed (),
- 'txrxenergy': transmit_related_energy_consumed (),
Erros ทั่วไป
ถาม: ไม่พบ globaconfig, สถานที่, ....
ตอบ: ตรวจสอบให้แน่ใจว่าเฟรมเวิร์กโฟลเดอร์และการจำลองถูกทำเครื่องหมายเป็นรากของแหล่งที่มา สำหรับ Pycharm คลิกขวาที่โฟลเดอร์> Mark Directory เป็น> แหล่งที่มาของแหล่งที่มา
ถาม: ไม่มีเอาต์พุตใน ipython/Spyder
ตอบ: รหัสถูกเรียกใช้ใน parralel โดยค่าเริ่มต้นและเอาต์พุต STD ไม่ได้รับการจัดการที่ดีในกรณีนั้น คุณสามารถเรียกใช้รหัสอย่างต่อเนื่องดูความคิดเห็นในตัวอย่าง/simulation.py เกี่ยวกับฟังก์ชัน pool.map ที่ด้านล่าง
งานวิชาการโดยใช้เครื่องจำลองของเรา
อ้างถึงใน
เครื่องจำลองที่ใช้ใน:
- F. de Rango, D. Stumpo และ A. Iera, "ภูมิภาคสัญญาณรบกวนการกำหนดช่องสัญญาณการมอบหมายสำหรับเครือข่าย Lora ที่ปรับขนาดได้" 2024 การประชุมนานาชาติครั้งที่ 20 เกี่ยวกับคอมพิวเตอร์ไร้สายและมือถือ, เครือข่ายและการสื่อสาร (WIMOB), ปารีส, ฝรั่งเศส, 2024, pp. 19-24, DOI: 10.1109/WIMOB61111.2024
- Gl Scapin, G. Alvarez, N. Quiroga, F. Collado และ Ja Fraire, "การประเมินประสิทธิภาพของเครือข่าย Lorawan DTS-Iot: โหมดการทำงานและการจัดวางเซิร์ฟเวอร์" 2024 IEEE Biennial Congress ของ Argentina (Argencon), San Nicolás de Los Arroyos 10.1109/Argencon62399.2024.10735884
- Park, G. , Lee, W. , & Joe, I. (2020) การเพิ่มประสิทธิภาพทรัพยากรเครือข่ายด้วยการเรียนรู้การเสริมแรงสำหรับเครือข่ายพื้นที่กว้างพลังงานต่ำ วารสาร Eurasip เกี่ยวกับการสื่อสารไร้สายและเครือข่าย, 2020 (1), 1-20
- L. Beltramelli, A. Mahmood, P. Österberg, M. Gidlund, P. Ferrari และ E. Sisinni, "ประสิทธิภาพการใช้พลังงานของการสื่อสาร Lorawan แบบ slotted กับการซิงโครไนซ์นอกวง" ในการทำธุรกรรม IEEE เกี่ยวกับเครื่องมือวัดและการวัด 70, pp. 1-11, 2021, หมายเลขศิลปะ 5501211, ดอย: 10.1109/tim.2021.3051238
- Thoen B, Callebaut G, Leenders G, Wielandt S. แพลตฟอร์ม LPWAN ที่ใช้งานได้สำหรับแอปพลิเคชัน IoT ที่มีต้นทุนต่ำและ จำกัด พลังงาน เซ็นเซอร์ 2019; 19 (3): 585 https://doi.org/10.3390/S19030585
- T. Fedullo, A. Morato, F. Tramarin, P. Bellagente, P. Ferrari และ E. Sisinni, "การส่งสัญญาณ Lorawan ที่ปรับตัวได้จากการเรียนรู้เสริมแรง: กรณีอุตสาหกรรม" 2021 IEEE International Workshop เกี่ยวกับมาตรวิทยาสำหรับอุตสาหกรรม 4.0 & ioT (Metroind4.0 10.1109/metroind4.0iot51437.2021.9488498
- Leenders G, Callebaut G, Ottoy G, Van der Perre L, de Strycker L. โปรโตคอล Multi-Hop 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: วิธีการเรียนรู้การเสริมแรงอย่างลึกซึ้ง Internet of Things, 24, 100974
- G. Leenders, G. Ottoy, G. Callebaut, L. van der Perre และ L. de Strycker, "โปรโตคอล Multi-Hop ที่ประหยัดพลังงานผ่านการสุ่มตัวอย่างคำนำ" 2023 IEEE การสื่อสารไร้สายและการประชุมเครือข่าย (WCNC) 10.1109/WCNC55385.2023.10118770
- E. Sisinni et al., "กลยุทธ์การปรับตัวของ Lorawan ใหม่สำหรับแอพพลิเคชั่นการวัดแสงอัจฉริยะ," 2020 IEEE International Workshop เกี่ยวกับมาตรวิทยาสำหรับอุตสาหกรรม 4.0 & IoT, Roma, อิตาลี, 2020, pp. 690-695, DOI: 10.1109/Metroind4.0iot48571.2020
- T. Fedullo, A. Mahmood, F. Tramarin, A. Morato, M. Gidlund และ L. Rovati, "การใช้ประโยชน์จากการควบคุมการเข้าถึงสื่อไฮบริดและการถ่ายทอดกลยุทธ์เพื่อเอาชนะข้อ จำกัด รอบการทำงานในเครือข่ายเซ็นเซอร์ที่ใช้ Lora 01-06, ดอย: 10.1109/i2mtc53148.2023.10176039
- F. de Rango, A. LiPari, D. Stumpo และ A. Iera, "การสลับแบบไดนามิกใน Lorawan ภายใต้เกตเวย์หลายแห่งและการจราจรหนาแน่น" 2021 IEEE Global Communications Conference (Globecom), มาดริด, สเปน, 2021, pp. 1-6, DOI: 10.1109/Globecom46510.2021.
- D. Stumpo, F. de Rango, F. Buffone และ M. Tropea, "ประสิทธิภาพของ Loraenergysim Simulator ขยายในการสนับสนุนสถานการณ์หลายช่องทางและการจัดการสัญญาณรบกวน" 2022 IEEE/ACM Symposium นานาชาติที่ 265 10.1109/DS-RT55542.2022.9932063
- G. Callebaut, G. Ottoy และ LV d. Perre, "การเพิ่มประสิทธิภาพการส่งผ่านของโหนด IoT ในสภาพแวดล้อมแบบไดนามิก" การประชุมนานาชาติ 2020 เกี่ยวกับระบบอัจฉริยะ Omni-Layer (เหรียญ), บาร์เซโลนา, สเปน, 2020, pp. 1-5, ดอย: 10.1109/Coins49042.2020.9191674
- Križanović, V .; Grgić, K .; Spišić, J .; Žagar, D. การตรวจสอบสิ่งแวดล้อมอย่างประหยัดพลังงานขั้นสูงในการเกษตรที่มีความแม่นยำโดยใช้เครือข่ายเซ็นเซอร์ไร้สายที่ใช้ LORA เซ็นเซอร์ 2023, 23, 6332
- จางเจียว "แนวทางการออกแบบของโปรโตคอลการสื่อสารพลังงานต่ำสำหรับอุปกรณ์พลังงานเป็นศูนย์" (2023)
- Stumpo, Daniele, Floriano de Rango และ Francesco Buffone "การขยาย Loraenergysim Simulator เพื่อรองรับการจัดการสัญญาณรบกวนภายใต้สถานการณ์ IoT แบบหลายเกตเวย์" (2022)
- T. Fedullo, A. Morato, F. Tramarin, P. Ferrari และ E. Sisinni, "ระบบการวัดอัจฉริยะที่ใช้ประโยชน์จากการปรับตัว Lorawan ภายใต้ข้อ จำกัด การใช้พลังงาน: แนวทาง RL," 2022 IEEE International Workshop เกี่ยวกับมาตรวิทยาสำหรับอุตสาหกรรม 4.0 & ioT (Metroind4.0 10.1109/metroind4.0iot54413.2022.9831487