【垂直切换】TD-SCDMA与TD-LTE异构网络垂直切换仿真

1.软件版本

matlab2013b

2.本算法理论知识

TD-SCDMA与TD-LTE共覆盖的范围内覆盖半径1000m;

TD-SCDMA中心坐标(0,0),覆盖半径1000m;

两个TD-LTE基站的中心坐标为(150,0)(-150,0)覆盖半径为170m;

用户在这个范围内一以0-15m/s 的速度随机游走,行走路线可固定(必须要经过两个LTE基站重叠区域)也可随机无方向

切换判决模块:切换判决模块主要是测量3个网络的接收信号迁都,判断是否满足硬性接入条件,在满足硬性接入条件后再调度其他判决参数。这里的判决策略采用二维收益加权法其他的判决参数包括:接收功率、切换时延、最大传输速率、价格。

·得到语音业务、数据业务在判决策略时的网络收益,以及在时间段该接入哪个网络,结果分析出来合理。

·得到语音业务、数据业务在RSS判决的条件下和在加入了切换判决策略的条件下切换次数的对比图,结果分析出来合理。

我们的整个算法的流程图如下所示:

3.部分源码

%%
%参数初始化
R_tds  = 1000;      %TDSCDMA范围
R_tdl  = 170;       %TDLTE覆盖范围

P_tds  = [0,500];     %TDSCDMA基站坐标
P_tdl1 = [-150,0];  %TDLTE1基站坐标
P_tdl2 = [150,0];   %TDLTE2基站坐标

F_tds  = 2020*10^6; %TDSCDMA的频率,根据国内指标,均为B频段:2010M~2025M之间
F_tdl  = 2600*10^6; %TDLTE的频率,假设是中移动的38号TDLTE频段:2570M~2620M之间 

Sp_ms  = [5];       %移动设备速度,由于内存限制,这里将速度涉及为整数形式

Pow_tds= 70;        %功率
Pow_tdl= 65;        %功率
ISFAST = 1;         %是否要考虑快衰落情况
%移动设备必须经过的关键点
VP_ms  = [-600,300;   %A
          -290,105;   %B
           -20, 40;   %C
             0, 40;   %D
            20, 40;   %E
           250,120;   %F
           600,500]  ;%G

type   = 1;%业务类型:1:语音业务,2:数据业务,3:视频模型

%各个网络的接入,断开功率门限值
Rss_tds_in   = -55;%dbm
Rss_tds_out  = -70;%dbm

Rss_tdl1_in  = -50;%dbm
Rss_tdl1_out = -65;%dbm

Rss_tdl2_in  = -50;%dbm
Rss_tdl2_out = -65;%dbm

%定义用户运动的距离 
Xp           = 0;
Yp           = 0;
%定义仿真时间参数
delta        = 0.01;
Time         = 300;
t            = 0;
%数组计数器
Ind          = 0;
Ind2         = 0;


%接收功率、最大的传输速率、时延、费用价格
%其中接收功率为实测
POW_tds  = 0;
Rb_tds   = 1.28;
DLY_tds  = 20;
MNY_tds  = 0.3;

POW_tdl1 = 0;
Rb_tdl1  = 8;
DLY_tdl1 = 40;
MNY_tdl1 = 0.2;

POW_tdl2 = 0;
Rb_tdl2  = 8;
DLY_tdl2 = 45;
MNY_tdl2 = 0.1;
%接收功率、最大的传输速率、时延、费用价格 
% w1       = 0.2; 
% w2       = 0.3;
% w3       = 0.3;
% w4       = 0.2;

ViewS    = 20;%减小消耗内存,采样显示结果

%定义分层矩阵
C        = zeros(4,4);


%%
%场景的初始化
%X,Y为MB移动的路径,随着时间的变化而X,Y的变化值,用于循环仿真使用
[X,Y] = func_Simu_Scene(P_tds,P_tdl1,P_tdl2,VP_ms,R_tds,R_tdl);
save My_Result\Simu_Scene.mat 

%%
%主循环
%定义变量
Len       = min(Time/delta,floor((length(X)-Sp_ms)/Sp_ms));
%定义网络ID变量
ClK                       = zeros(Len,1); 
IDs                       = zeros(Len,3);
RSS_tdss                  = zeros(Len,1);
RSS_tdl1s                 = zeros(Len,1);
RSS_tdl2s                 = zeros(Len,1);
Networkcontribution_tdss  = zeros(Len,1);
Networkcontribution_tdl1s = zeros(Len,1);
Networkcontribution_tdl2s = zeros(Len,1);
IDs2                      = zeros(Len,1);
while (t < Time & Ind < length(X)-Sp_ms)
   %计算时间
   t
   t    = t    + delta;
   Ind  = Ind  + Sp_ms;
   Ind2 = Ind2 + 1;
   
   %根据坐标位置,得到MB的当前区域
   Xp  = X(Ind);
   Yp  = Y(Ind);
   %根据不同的区域,确定有几个网络
   ID = func_NET_ID(Xp,Yp,P_tds,P_tdl1,P_tdl2,R_tds,R_tdl);
   
   %计算RSS值
   RSS_tds  = func_Rss_cal(Xp,Yp,Sp_ms,P_tds ,F_tds,t,Pow_tds,ISFAST);
   RSS_tdl1 = func_Rss_cal(Xp,Yp,Sp_ms,P_tdl1,F_tdl,t,Pow_tdl,ISFAST);
   RSS_tdl2 = func_Rss_cal(Xp,Yp,Sp_ms,P_tdl2,F_tdl,t,Pow_tdl,ISFAST);
........................

4.仿真结论

 

 

 

 

 

 A01-59

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fpga和matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值