wikiroute

networking recipes

User Tools

Site Tools


exploring_lora

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
exploring_lora [2018/09/27 08:53] – [2. Software Tools] samerexploring_lora [2018/09/27 11:56] – [3.1. Modifying the Radio Parameters] samer
Line 8: Line 8:
   * How LoRa is compatible with LPWAN requirements and constraints?   * How LoRa is compatible with LPWAN requirements and constraints?
 </WRAP> </WRAP>
-===== -. Hardware Platform =====+ 
 +===== -. Setting the Lab ===== 
 + 
 +==== -. Hardware Platform ====
  
 In order to design and implement experiments with LoRa, you will use the following devices:   In order to design and implement experiments with LoRa, you will use the following devices:  
Line 21: Line 24:
   * Give an estimated cost of your platform.   * Give an estimated cost of your platform.
 </WRAP> </WRAP>
-===== -. Software Tools =====+ 
 +==== -. Software Tools ====
  
 Download the following software on your PC: Download the following software on your PC:
Line 32: Line 36:
 Note well the location of the library folder on your computer. In the following, you will be required to modify source files located in this folder.  Note well the location of the library folder on your computer. In the following, you will be required to modify source files located in this folder. 
 </WRAP> </WRAP>
-===== -. Installation =====+ 
 +==== -. Installation ====
  
 Start by plugging the Dragino shields on the Arduino devices and mounting the antennas as shown in Fig. 1. Start by plugging the Dragino shields on the Arduino devices and mounting the antennas as shown in Fig. 1.
Line 45: Line 50:
 For Arduino Mega 2560, additional drivers for Microsoft Windows can be installed from [[http://wch.cn/download/CH341SER_ZIP.html]]. For Arduino Mega 2560, additional drivers for Microsoft Windows can be installed from [[http://wch.cn/download/CH341SER_ZIP.html]].
 </WRAP> </WRAP>
-===== -. Running Basic Sketches ===== + 
-Start by setting the central frequency of the LoRa modules. For this, open the ''RH_RF95.cpp'' file locate in the ''RadioHead'' folder and change the frequency to 868.10 (Group 1), 868.30 (Group 2), and 868.50 MHz (Group 3).+===== -. Theoretical Study ===== 
 + 
 +In this section, you will perform a theoretical assessment of the performance of LoRa modulation. You will later compare this theoretical results to the experimental ones as in a typical scientific study.   
 + 
 +<WRAP left round help 100%> 
 +  * What is the relation between processing gain and spreading factor in LoRa modulation? Explain. 
 +  * How does the spreading factor impact the coverage of a LoRa transmitter?  
 +  * For each of the three possible configurations of your LoRa module, what is the transmission bit rate? Explain your computation. 
 +  * Compute the receiver sensitivity, assuming the following parameters: channel bandwidth = 125 kHz, spreading factor = 7, coding rate = 4/5, bit error rate (BER) target = 10<sup>-4</sup>, and receiver noise figure = 6 dB. Refer to this {{ :1705.05899.pdf | article}} to determine the mapping between the BER and the SNR. 
 +  * Compare the computed sensitivity to that provided by the {{ :an1200.22.pdf |Semtech Application Note AN1200.22}} for the same parameters. 
 +</WRAP> 
 + 
 +===== -. Configuring and Running the Lab ===== 
 + 
 +==== -. Modifying the Radio Parameters ==== 
 + 
 +Start by setting the central frequency of the LoRa modules. For this, open the ''RH_RF95.cpp'' file locate in the ''RadioHead'' folder and change the frequency according to the following table: 
 + 
 +^  Group Number  ^   Frequency     ^ 
 +|                   866.7      | 
 +|                   866.9      | 
 +|              |      867.1      | 
 +|              |      867.3      | 
 +|              |      867.5      | 
 +|              |      867.7      | 
 +|              |      867.9      | 
 +|              |      868.1      | 
 +|              |      868.3      | 
 +|       10            868.5      | 
 +|       11            868.7      | 
 +|       12            868.9      |
  
 <file cpp RH_RF95.cpp> <file cpp RH_RF95.cpp>
 setFrequency(868.X); setFrequency(868.X);
 </file> </file>
- 
-Download the {{ :example-lora-sketch.zip | basic sketches}} that implement a reliable LoRa communication between the two modules. Open the sketches with Arduino IDE, compile and upload on the two arduino modules, respectively. On the serial interfaces, you should obtain similar results as in Fig. 2 and Fig. 3. The client sends a short message and waits for an acknowledgement message from the server. Both modules output the RSSI (received power in dBm) for each received message. 
- 
-[{{ :client-iotlab1.png?direct&600 ||Figure 2. Client serial monitor}}] 
-[{{ :server-iotlab1.png?direct&600 ||Figure 3. Server serial monitor}}] 
-===== -. Modifying the Radio Parameters ===== 
  
 The typical configuration for LoRa modules consists of 125 kHz sub-channels, a coding rate of 4/5, and a spreading factor equal to 7. You can modify the radio parameters by selecting one of the three available configurations: The typical configuration for LoRa modules consists of 125 kHz sub-channels, a coding rate of 4/5, and a spreading factor equal to 7. You can modify the radio parameters by selecting one of the three available configurations:
Line 68: Line 97:
 setModemConfig(Bw125Cr45Sf128); setModemConfig(Bw125Cr45Sf128);
 </file> </file>
 +==== -. Running Basic Sketches ====
  
-<WRAP left round help 100%> +Download the {{ :example-lora-sketch.zip | basic sketches}} that implement reliable LoRa communication between the two modules. Open the sketches with Arduino IDEcompile and upload on the two arduino modules, respectivelyOn the serial interfacesyou should obtain similar results as in Fig. 2 and Fig. 3. The client sends a short message and waits for an acknowledgement message from the server. Both modules output the RSSI (received power in dBmfor each received message. 
-  * What is the relation between processing gain and spreading factor in LoRa modulation? Explain. + 
-  * How does the spreading factor impact the coverage of a LoRa transmitter?  +[{{ :client-iotlab1.png?direct&600 ||Figure 2Client serial monitor}}] 
-  * For each of the three possible configurations of your LoRa modulewhat is the transmission bit rate? Explain your computation. +[{{ :server-iotlab1.png?direct&600 ||Figure 3Server serial monitor}}]
-  * Compute the receiver sensitivityassuming the following parameters: channel bandwidth = 125 kHz, spreading factor = 7, coding rate = 4/5, bit error rate (BERtarget = 10<sup>-4</sup>, and receiver noise figure = 6 dBRefer to this {{ :1705.05899.pdf | article}} to determine the mapping between the BER and the SNR. +
-  * Compare the computed sensitivity to that provided by the {{ :an1200.22.pdf |Semtech Application Note AN1200.22}} for the same parameters. +
-</WRAP>+
  
 In the remainder of this lab, you will conduct measurements to validate the obtained theoretical receiver sensitivity. In the remainder of this lab, you will conduct measurements to validate the obtained theoretical receiver sensitivity.
 +
 ===== -. Performance Evaluation ===== ===== -. Performance Evaluation =====
 In the following, you will design and implement a set of scenarios that enable to evaluate the performance of the LoRa modulation. As you will deal with scientific assessment, you are required to use scientific tools to show the results. You have the choice between [[http://www.gnuplot.info | gnuplot]], [[https://matplotlib.org/index.html#|matplotlib]] with Python, and MATLAB. Take some time to become familiar with one of these software as you will be required to use them in different occasions of your academic programme. In the following, you will design and implement a set of scenarios that enable to evaluate the performance of the LoRa modulation. As you will deal with scientific assessment, you are required to use scientific tools to show the results. You have the choice between [[http://www.gnuplot.info | gnuplot]], [[https://matplotlib.org/index.html#|matplotlib]] with Python, and MATLAB. Take some time to become familiar with one of these software as you will be required to use them in different occasions of your academic programme.
 +
 ==== -. Time on Air ==== ==== -. Time on Air ====
  
Line 100: Line 129:
   * What type of mathematical models enables to theoretically compute the PER?   * What type of mathematical models enables to theoretically compute the PER?
 </WRAP> </WRAP>
 +
 ==== -. Coverage ==== ==== -. Coverage ====
  
exploring_lora.txt · Last modified: 2021/10/20 12:52 by samer