RFID定位----RFID射线建模

利用RFID进行移动目标定位,这里面采用的是指纹定位方法。
根据接收信号功率随距离变化的规律建模,建模可以得到理想值,再将其与实际测量值进行匹配就可以得到拟合值。之后可以对拟合值进行进一步处理。
首先来介绍建模原理:
一般而言认为,路径损耗和阴影效应是影响接收信号功率随距离变化的主要影响因素。

路径损耗:由发射功率的辐射扩散及信道的传播特性造成。一般认为对于相同收发距离,路径损耗相同。
**阴影效应:**由于发射机和接收机之间的障碍物造成。障碍物通过吸收、发射、散射和绕射等方式衰减信号功率,甚至严重时阻断信号。
路径损耗引起在长距离上,
阴影引起在障碍物尺寸
距离上功率变化分为:大尺度传播效应和小尺度传播效应。

无线电磁波传播的常见近似方法有:
射线跟踪模型:忽略Maxwell方程散射效应,该模型又常分为:两径模型、经验模型、统计模型等。

接下来介绍一下发送和接收信号模型
发送信号:在这里插入图片描述
接收信号:在这里插入图片描述

发送信号s(t)的概率为Pt,接收信号r(t)概率为Pr,则信道的路径损耗为:(路径损耗真值的分贝数)
在这里插入图片描述
信道是无源的,只能衰减信号,用分贝表示的路径损耗一般都是非负值。
路径增益分贝值:路径损耗分贝值的负数(通常为负值)
:在这里插入图片描述

自由空间路径损耗定义为:自由空间模型下的路径损耗:
在这里插入图片描述
则自由空间路径增益则为:
在这里插入图片描述
上式中,Gl:视距方向上发射天线和接收天线的增益之积。
可以发现,接收功率与收发天线间距离d的平方成反比。还有就是接收功率与波长的平方成正比,即载波频率越高接收功率越小

上述是仅考虑路径损耗下的信号接收功率,接下来讨论阴影效应下的射线跟踪,利用射线跟踪法来利用简单几何方程取代Maxwell方程,近似反射、绕射和散射对波前的影响

几种射线跟踪模型:
1.两径模型:地面反射波+直射波—>少量反射体的固定区域---->只需知道天线高度
2.十径模型:适于街道、走廊---->天线高度/街道、走廊宽度
3.通用模型:任意传播环境----->还需反射体、绕射体、散射体集合和介电特性

两径模型:
用于在单一的地面反射波在多径效应中起主导作用的情形
在这里插入图片描述
接收信号:经自由空间到达接收端的直射分量+经过地面反射到达接收端的反射分量
在这里插入图片描述
当其中d充分大时,接收功率为:
在这里插入图片描述
在这里插入图片描述
十径模型(介电峡谷):
城市微小区模型:假定城市的街道两边是建筑物,发射天线和接收天线高度接近地面,两旁排列着建筑物的街道对于无线电信号相对于介电峡谷。
经由建筑物反射至接收机的射束有无限个,每次反射---->能量衰减------>经过三次以上反射的路径可以忽略不计。
十径模型:包括各种一次、两次和三次反射信号,具体:直射LOS、地面反射GR、一次墙面反射SW、两次墙面反射DW、三次墙面反射TW、墙地反射路径WG和地墙反射路径GW。
在这里插入图片描述
十径模型下的接收信号:
在这里插入图片描述
信号为窄带,则其接收功率:
在这里插入图片描述
在这里插入图片描述

通用路径跟踪
对于任意建筑物布局和任意天线位置的情形,用通用路径跟踪(GRT)来预测场强和时延扩展
在这里插入图片描述
接收信号推导有点复杂,这里就直接给出结论。对于有一条直射路径、Nr条反射路径、Nd条绕射路径和Ns条散射路径,总的接收信号:
在这里插入图片描述
本文采用的是通用模型,以下是Matlab code

function  Power_all=generate_map(room_x,room_y,room_z,source_x,source_y,source_z,grid_size,f)
     room_x=1000*room_x;         //地图X轴大小
     room_y=1000*room_y;         //地图Y轴大小
     room_z=1000*room_z;
     source_x=1000*source_x;
     source_y=1000*source_y;
     source_z=1000*source_z;
     grid_size=1000*grid_size;
     
     %介电常数、电导率
     epsilon_c=10-1.2j;
     epsilon_w=6.1-1.2j;
     
     if   room_x*room_y / grid_size^2 > 100000000
           disp('Tip: The project requires too much memory and needs to be reconsidered');
           input('Continus to enter; exit:ctrl+c');
     end
     
     T=1/(f*10^6);
     c=3.0e8;
     lambda=c/(f*10^6);
     
     %二维网格化
     [X,Y]=meshgrid(grid_size:grid_size:(room_x-grid_size),grid_size:grid_size:(room_y-grid_size));
     L=[X(:),Y(:)];
     L = [L, zeros(size(X(:))) + source_z];
     
     %%  direct path
     d_direct=sqrt((L(:,1) - source_x).^2 + (L(:,2)-source_y).^2 + (L(:,3) - source_z).^2);
     t_direct_0 = d_direct./1000./c;  % time delay of direct path
     p_direct = mod(t_direct_0*2*pi/T,2*pi);% phase of direct path
     E_direct = (lambda./(4.*pi.*d_direct./1000));% E in here and below is not necessarily exactly the size of the field strength, but it is proportional to the field strength.
     E0=E_direct.* exp(1i.*(-p_direct));
     %%  前平面反射路径
      Li=[L(:,1) , 2.*room_y-L(:,2) , L(:,3)]; %Calculate the mirror point
    d_reflect = sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2+(Li(:,3)-source_z).^2);%Reflected path length
    t_reflect_1 = d_reflect./1000./c;%time delay
    p_reflect = mod(t_reflect_1*2*pi/T,2*pi);%phase
    thet = abs(atan((Li(:,2)-source_y)./(Li(:,1)-source_x)));% Incident angle
    reflect_coefficient = (sin(thet)-sqrt(epsilon_w-(cos(thet)).^2))./(sin(thet)+sqrt(epsilon_w-(cos(thet)).^2));%The reflection coefficient is also a matrix.
    E_reflect = (lambda./(4.*pi.*d_reflect./1000)) .*  reflect_coefficient;
    E1=E_reflect .* exp(1i.*(-p_reflect)); % The phase of the delay is added in, together with the attenuation and phase changes caused by reflections.

    %% Rear plane reflection path
    Li=[L(:,1) , -L(:,2) , L(:,3)]; % Calculate the mirror point
    d_reflect = sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2+(Li(:,3)-source_z).^2);%Reflected path length
    t_reflect_2 = d_reflect./1000./c;%time delay
    p_reflect = mod(t_reflect_2*2*pi/T,2*pi);%phase
    thet = abs(atan((Li(:,2)-source_y)./(Li(:,1)-source_x)));% Incident angle
    reflect_coefficient = (sin(thet)-sqrt(epsilon_w-(cos(thet)).^2))./(sin(thet)+sqrt(epsilon_w-(cos(thet)).^2));
    E_reflect = (lambda./(4.*pi.*d_reflect./1000)) .*  reflect_coefficient;
    E2=E_reflect .* exp(1i.*(-p_reflect));%The phase of the delay is added in, together with the attenuation and phase changes caused by reflections.

    %% Left plane reflection path
    Li=[-L(:,1) , L(:,2) , L(:,3)]; %Calculate the mirror point
    d_reflect = sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2+(Li(:,3)-source_z).^2);%Reflected path length
    t_reflect_3 = d_reflect./1000./c;%time delay
    p_reflect = mod(t_reflect_3*2*pi/T,2*pi);%phase
    thet = abs(atan((Li(:,1)-source_x)./(Li(:,2)-source_y)));%Incident angle
    reflect_coefficient = (sin(thet)-sqrt(epsilon_w-(cos(thet)).^2))./(sin(thet)+sqrt(epsilon_w-(cos(thet)).^2));
    E_reflect = (lambda./(4.*pi.*d_reflect./1000)) .*  reflect_coefficient;
    E3=E_reflect .* exp(1i.*(-p_reflect));%The phase of the delay is added in, together with the attenuation and phase changes caused by reflections.

    %% Right plane reflection path
    Li=[2*room_x-L(:,1) , L(:,2) , L(:,3)]; %Calculate the mirror point
    d_reflect = sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2+(Li(:,3)-source_z).^2);%Reflected path length
    t_reflect_4 = d_reflect./1000./c;%time delay
    p_reflect = mod(t_reflect_4*2*pi/T,2*pi);%phase
    thet = abs(atan((Li(:,1)-source_x)./(Li(:,2)-source_y)));%Incident angle
    reflect_coefficient = (sin(thet)-sqrt(epsilon_w-(cos(thet)).^2))./(sin(thet)+sqrt(epsilon_w-(cos(thet)).^2));
    E_reflect = (lambda./(4.*pi.*d_reflect./1000)) .*  reflect_coefficient;
    E4=E_reflect .* exp(1i.*(-p_reflect));%The phase of the delay is added in, together with the attenuation and phase changes caused by reflections.

    %% Upper plane reflection path
    Li=[L(:,1) , L(:,2) , 2*room_z-L(:,3)]; %Calculate the mirror point
    d_reflect = sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2+(Li(:,3)-source_z).^2);%Reflected path length
    t_reflect_5 = d_reflect./1000./c;%time delay
    p_reflect = mod(t_reflect_5*2*pi/T,2*pi);%phase
    thet = abs(atan((Li(:,3)-source_z)./sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2)));%Incident angle
    reflect_coefficient = (-sin(thet).*epsilon_c+sqrt(epsilon_c-(cos(thet)).^2))./(epsilon_c.*sin(thet)+sqrt(epsilon_c-(cos(thet)).^2));%现在的反射系数也是矩阵了
    E_reflect = (lambda./(4.*pi.*d_reflect./1000)) .*  reflect_coefficient;
    E5=E_reflect .* exp(1i.*(-p_reflect));%The phase of the delay is added in, together with the attenuation and phase changes caused by reflections.
    E5=E5  .*   cos(pi*sin(thet)/2)./(cos(thet)+0.00001)  .*  cos(thet); %The upper and lower planes of the electric field need to add this due to the pattern and vertical decomposition.
    %% Lower plane reflection path
    Li=[L(:,1) , L(:,2) , -L(:,3)]; %Calculate the mirror point
    d_reflect = sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2+(Li(:,3)-source_z).^2);%Reflected path length
    t_reflect_6 = d_reflect./1000./c;%time delay
    p_reflect = mod(t_reflect_6*2*pi/T,2*pi);%phase
    thet = abs(atan((Li(:,3)-source_z)./sqrt((Li(:,1)-source_x).^2+(Li(:,2)-source_y).^2)));%Incident angle
    reflect_coefficient = (-sin(thet).*epsilon_c+sqrt(epsilon_c-(cos(thet)).^2))./(epsilon_c.*sin(thet)+sqrt(epsilon_c-(cos(thet)).^2));
    E_reflect = (lambda./(4.*pi.*d_reflect./1000)) .*  reflect_coefficient;
    E6=E_reflect .* exp(1i.*(-p_reflect));%The phase of the delay is added in, together with the attenuation and phase changes caused by reflections.
    E6=E6  .*   cos(pi*sin(thet)/2)./(cos(thet)+0.00001)  .*  cos(thet); %The upper and lower planes of the electric field need to add this due to the pattern and vertical decomposition.

    E = E0 + E1 + E2 + E3 + E4 + E5 + E6; % All the electric field strengths here represent the multiples of loss with path and reflection.
    Power_all = 20 * log10(abs(E)) + 2 * 2.15;%Synthetic power. Actually an attenuation factor, incidentally plus two antenna gains, assuming 2.15dbi.
    
    Power_all = reshape(Power_all, room_y / grid_size - 1, room_x / grid_size - 1)';
      
end

接下来一篇会接着讲述如何将模型值和数据值进行匹配得到拟合优化值。

扫描二维码关注公众号,回复: 5903554 查看本文章

猜你喜欢

转载自blog.csdn.net/qq_24251645/article/details/89219604