15. June 2016 at 17:00 #5590Manikantan SrinivasanParticipant
Dear Dr. Martin
Greetings. A long post..
I am trying to understand the features and support available in the LTE DL system simulator, to use it in my upcoming work.
In this work i need to enable a bunch of users, where users would belong to a profile, i.e. their data demands vary (not full buffer for all users) and users would be mobile, each with different speeds (atleast in 3 or 4 speed categories).
Can you please provide some pointers as how to program these user’s parameters?
In an attempt to understand the mobility support, (as there is no ready example [to my limited understanding], indicating what parameters are required to be set/configured), i am learning by trial and error, (it is taking time).
I am using the “LTE_sim_main_launcher_demo_basic” as reference (tweaking and learning)
First, i commented the “LTE_config.keep_UEs_still = true;” i.e., the UE_s are not still. I assumed the UEs are mobile by default. Since i had no idea as what else to configure, i just did this, and compared the results with the scenario, when the UEs are still. I saw a marked difference in the UE troughputs and metrics. They were very low.
I then dug into the code, to understand further. The function “move_all_UEs” is invoked when the users are mobile. In the function, an action is to be done for teleport or handover request, however this condition was never met. This i thought depends on the newly determined position.
I then checked the values of the UE’s new position determined by the “move” function. I observed the simulator uses the “sLvsLL” walking model as default. (i have not set any walking model).
Observations w.r.to “SLvsLLWalkingModel”:
a) The new position was generated only once in every 100 times. (not sure why?) This is controlled by the variables, av_numb and av_count.
av_numb is set to 100, and av_count initially set to same value, then reset to 0, incremented each time, and only when the av_count equals av_numb a new position is determined.
Please clarify why we should do it every hundred, should not the new position get calculated each time.
b) The “move” in the “SLvsLLWalkingModel” returns the same value, for each invocation, since the obj.distances and obj.direction is a fixed set. Ideally this value must be added to the current position of the UE, which is not used, though passed as an input parameter.
I tweaked to dig further.. i.e. (i) made the av_numb a 1, (ii) added current position value to the offsets determined.
The UEs now get new positions, with respect to their earlier positions, and leads to “handover” scenario (as i had expected, due to mobility).
tweaked code snippet. (Placed MANI in the comment for reference)
% Class constructor
function obj = SLvsLLWalkingModel
% If angle is specified, use it, if not assign a random one
obj.direction = 60;
obj.av_numb = 1; % MANI changed 100 to 1
obj.max_dist = 750;
obj.av_count = obj.av_numb;
% obj.distances = (linspace((15)^(1/3),(obj.max_dist)^(1/3),41)).^3;
% obj.distances = [15,17,18,22,25,30,35,45,50,55,60,70,80,90,100,110,120,135,150,165,180,200,240,280,320,360,400,450,500,550,600,650,700,750];
PL = 70:3:100;
obj.distances = 10.^(PL/20)*299792458/(4*pi*2e9);
% Based on the current position, outputs the next TTI’s position
function new_pos = move(obj,current_pos)
if obj.av_count == obj.av_numb
obj.pos_count = obj.pos_count+1;
new_pos = current_pos + obj.distances(obj.pos_count)* [ cosd(obj.direction) sind(obj.direction) ]; % MANI added current pos
obj.av_count = 0;
new_pos = current_pos;
obj.av_count = obj.av_count +1;
Now i have a crash, (as pasted below)
**** User 9, moving from (eNodeB 1) to (eNodeB 3)
No appropriate method, property, or field ‘set_fast_fading_model_model’ for class ‘channel_models.downlinkChannelModel’.
Error in network_elements.UE/start_handover (line 206)
Error in LTE_sim_main>move_all_UEs (line 674)
Error in LTE_sim_main (line 358)
Error in LTE_sim_main_launcher_demo_basic (line 96)
output_results_file = LTE_sim_main(LTE_config);
I don’t see the function “set_fast_fading_model_model” as part of the “downlink_channel” object definition.
I am unable to proceed.
Can you let me know the set of parameters that are to be enabled for user mobility for (1) a network that is automatically generated?
(2) when a network (site) positions are given as input. Please note, i have only the site location co-ordinates.
- You must be logged in to reply to this topic.