Unipisa / Simu5G

Simu5G - 5G NR and LTE/LTE-A user-plane simulation model for OMNeT++ & INET
https://simu5g.org
Other
147 stars 83 forks source link

RSSI, RSRP, RSRQ, SINR in LteRealisticChannelModel #181

Open gehirndienst opened 1 year ago

gehirndienst commented 1 year ago

Hello,

I need to estimate these values in runtime in simu5g but I'm quite confused by how these values are partially presented in the model. With RSRP and SINR it is more or less clear and for SINR there are already proper signals. But when we move to RSRQ and RSSI I'm a bit lost.

For RSSI there is a block at the beginning of LtePhyUe::initialize(...) method:

std::vector<double> rssiV = primaryChannelModel_->getRSRP(frame, cInfo);

From my understanding, RSSI can't be just RSRP, especially measuring this from a UE perspective, it needs to take channel width and other stuff into account..

Then we go to RSRQ. There is a very strange block of code that is duplicated in both getSINR and getRSRP methods. Is there any example of such a log? Where should one get it? And what are rsrqScaleand rsrqShift?

   {
       int time = -1, rsrq = oldRsrq_;
       double currentTime = simTime().dbl();
       if (currentTime > oldTime_+1)
       {
           std::ifstream file;

           // open the rsrq file
           file.clear();
           file.open("rsrqFile.dat");

           file >> time;
           file >> rsrq;

           file.close();

           oldTime_ = simTime().dbl();
           oldRsrq_ = rsrq;

           std::cout << "LteRealisticChannelModel::getRSRP - time["<<time<<"] rsrq["<<rsrq<<"]" << endl;
       }

       double sinr = rsrqScale_ * (rsrq + rsrqShift_);
       std::vector<double> snrVector;
       snrVector.resize(numBands_, sinr);

       return snrVector;
   }

In short, my question is very simple: how to calculate RSSI and RSRQ parameters in runtime as it is done with both SINR and RSRP using the incoming airframes and appropriate methods from LteRealisticChannelModel.cc? Is there a way to calculate them in order to further propagate in the form of signals? If yes, then could you express how because I'm a bit lost.

With best regards Nikita

nazaninmehregan commented 8 months ago

Hi did you find a solution to this? thanks.