Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to set Pcmax #18

Closed
MWFox opened this issue Jan 6, 2021 · 3 comments
Closed

How to set Pcmax #18

MWFox opened this issue Jan 6, 2021 · 3 comments

Comments

@MWFox
Copy link

MWFox commented Jan 6, 2021

Slightly modifying lte-sl-out-of-covrg-comm.cc for PC1 simulation.

Increased TxPower to 31, but results no different than 23.0 setting

Config::SetDefault ("ns3::LteUePhy::TxPower", DoubleValue (31.0)); // simulation results no different from 23.0 setting

Probably Pcmax must be increased however it is not obvious how to do it.

Config::SetDefault ("ns3::LteUePowerControl::SetPcmax", DoubleValue (31.0)); // does not work

'build' finished successfully (4.046s)
msg="Could not set default value for ns3::LteUePowerControl::SetPcmax", file=../src/core/model/config.cc, line=854
terminate called without an active exception

Any hint would be welcome, and if this will be enough for PC1 results.

@MWFox
Copy link
Author

MWFox commented Jan 7, 2021

Using:

Config::SetDefault ("ns3::LteUePowerControl::Pcmax", DoubleValue (31.0)); // does not fail

However running simulations for PC1 with:
Config::SetDefault ("ns3::LteUePhy::TxPower", DoubleValue (31.0)); // simulation results no different from 23.0 setting
Config::SetDefault ("ns3::LteUePowerControl::Pcmax", DoubleValue (31.0));

And then position of the node Ue2 was changed to 1300 and 1400 m, the simulation returned the same number of Rx packets between PC3 and PC1 power levels.

Ptr positionAllocUe1 = CreateObject ();
positionAllocUe1->Add (Vector (0.0, 0.0, 1.5));
Ptr positionAllocUe2 = CreateObject ();
positionAllocUe2->Add (Vector (1400.0, 0.0, 1.5));

For a distance of 1400m both PC1 and PC3 simulations show the same number of rx packets 2!
:~/ns3/psc-ns3-3.0.1/scratch$ grep rx ../UePacketTrace.tr | wc
3 21 151

At 1300m both PC1 and PC3 show all 30 packets:
~/ns3/psc-ns3-3.0.1/scratch$ grep rx ../UePacketTrace.tr | wc
31 217 1439

And at a distance of 1500 both PC1 and PC3 simulations show 0 rx packets.

Clearly more needs to be done for a correct PC1 simulation.
Hints appreciated.

@richardrouil
Copy link
Collaborator

With power control, there are several places that configure the maximum transmit power. The following variable need to be modified:

Config::SetDefault ("ns3::LteUePhy::TxPower", DoubleValue (23.0));
Config::SetDefault ("ns3::LteUePowerControl::Pcmax", DoubleValue (23.0));
Config::SetDefault ("ns3::LteUePowerControl::PscchTxPower", DoubleValue (23.0));
Config::SetDefault ("ns3::LteUePowerControl::PsschTxPower", DoubleValue (23.0));

@MWFox
Copy link
Author

MWFox commented Jan 8, 2021

This works.
Thank you!

@MWFox MWFox closed this as completed Jan 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants