1.一种用于无线传感器网络的定位方法,其特征在于,包括以下步骤:S1、移动节点通过MAC帧发起定位请求:移动节点发出只有一跳的定位请求帧到与其相邻的固定节点;
S2、固定节点接收定位请求帧:固定节点接收到定位请求帧后,判断该定位请求帧是否被重复接收,若是,则丢弃该帧;若否,则固定节点将获取移动节点短地址作为目的地址,并向移动节点发送一跳的响应定位帧;
S3、移动节点定位:移动节点接收到定位响应帧后,通过如下方法对移动节点进行定位:S31、移动节点判断是否在预设的时间内接收到定位响应帧,若是,则进入步骤S32;若否,则回到步骤S1;
S32、移动节点判断是否已经接收到超过3个固定节点的定位响应帧,若是,则选择3个接收信号强度指示最好的固定节点,固定节点到移动节点的距离根据接收信号强度指示符获得,将固定节点相对于移动节点的位置表示为以移动节点为中心、移动节点到固定节点的距离的2倍为边长的正方形,将正方形置于平面直角坐标系中,则选择的3个固定节点采用如下向量表示:N1=(X11,X12,Y11,Y12);
N2=(X21,X22,Y21,Y22);
N3=(X31,X32,Y31,Y32);
其中,Ni表示固定节点位置,Xi1表示正方形在X轴上的左边界,Xi2表示正方形在X轴上的右边界,Yi1表示正方形在Y轴上的下边界,Yi2表示正方形在Y轴上的上边界,下标i表示固定节点的序号;
获得3个固定节点的位置坐标向量后进入步骤S33;若否,则判断是否只接收到3个固定节点的定位响应帧,若是,则采用上述方法获得3个固定节点的位置坐标向量并进入步骤S33;若否,则判断是否接收到2个固定节点的定位响应帧,若是,则采用上述方法获得2个固定节点的位置坐标向量:N1=(X11,X12,Y11,Y12);
N2=(X21,X22,Y21,Y22);
并进入步骤S34,若否,则采用上述方法获得1个固定节点的位置坐标向量:N1=(X11,X12,Y11,Y12);
并进入步骤S35;
S33、通过如下公式获得移动节点的位置坐标向量:X00=Max{Min{X11,X12},Min{X21,X22},Min{X31,X32}};
X01=Min{Max{X11,X12},MaxX21,X22},Max{X31,X32}};
Y00=Max{Min{Y11,Y12},Min{Y21,Y22},Min{Y31,Y32}};
Y01=Min{Max{Y11,Y12},Max{Y21,Y22},Max{Y31,Y32}};
X00,X01,Y00,Y01,为3个固定节点所形成正方形的重叠区域向量坐标;
则获得移动节点的坐标(X0,Y0)如下:X0=(X00+X01)/2;
Y0=(Y00+Y01)/2;
进入步骤S4;
S34、通过如下公式获得移动节点的位置坐标向量:X00=Max{Min{X11,X12},Min{X21,X22}};
X01=Min{Max{X11,X12},Max{X21,X22}};
Y00=Max{Min{Y11,Y12},Min{Y21,Y22}};
Y01=Min{Max{Y11,Y12},Max{Y21,Y22}};
X00,X01,Y00,Y01,为2个固定节点所形成正方形的重叠区域向量坐标;
则获得移动节点的坐标(X0,Y0)如下:X0=(X00+X01)/2;
Y0=(Y00+Y01)/2;
进入步骤S4;
S35、获得移动节点的坐标(X0,Y0)如下:X0=(X11+X12)/2;
Y0=(Y11+Y12)/2;
S4、将步骤S3中获得的定位坐标发送到汇聚节点,并由汇聚节点将结果发送到计算机设备。