书签 分享 收藏 举报 版权申诉 / 13

类型基于WiFi的定位系统设计.docx

  • 文档编号:5852732
  • 上传时间:2023-01-01
  • 格式:DOCX
  • 页数:13
  • 大小:466.18KB

经度:

100px;

margin-right:

10px;"/>

纬度:

100px;margin-right:

10px;"/>

//XX地图API功能

varmap=newBMap.Map("allmap");

map.centerAndZoom(newBMap.Point(116.331398,39.897445),11);

map.enableScrollWheelZoom(true);

//用经纬度设置地图中心点

functiontheLocation(){

if(document.getElementById("longitude").value!

=""&&document.getElementById("latitude").value!

=""){

map.clearOverlays();

varnew_point=newBMap.Point(document.getElementById("longitude").value,document.getElementById("latitude").value);

varmarker=newBMap.Marker(new_point);//创建标注

map.addOverlay(marker);//将标注添加到地图中

map.panTo(new_point);

}

}

完成上述操作之后选中Form1,在事件选项中选择Load,并双击打开相应代码:

privatevoidForm1_Load(objectsender,EventArgse)

{

stringstr_url=Environment.CurrentDirectory+"/Map.html";

Uriurl=newUri(str_url);

this.webBrowser1.Navigate(url);

}

此时运行程序界面上会出现加载到WebBrowser的XX地图。

3.3.2获取AP的相关信息

(1)下载ManagedWiFi:

加入到工程中并添加引用,如下图3-10所示

 

图3-10添加AP

并申请命名空间为:

usingNativeWifi;

(2)获取WIFI的名称以及MAC地址,代码如下:

privatevoidbutton3_Click(objectsender,EventArgse)

{

WlanClientclient=newWlanClient();

foreach(WlanClient.WlanInterfacewlanIfaceinclient.Interfaces)

{

Wlan.WlanBssEntry[]WBE=wlanIface.GetNetworkBssList();

 

for(inti=0;i

{

for(intj=i;j

{

Wlan.WlanBssEntryindex;

if(WBE[i].rssi<=WBE[j].rssi)

{

index=WBE[i];

WBE[i]=WBE[j];

WBE[j]=index;

}

}

}

for(inti=0;i<3;i++)

{

STR[i]=newinfo(GetStringForMACAddress(WBE[i].dot11Bssid),WBE[i].rssi.ToString());

}

foreach(Wlan.WlanBssEntrysub_wbeinWBE)

{

stringSSID=GetStringForSSID(sub_wbe.dot11Ssid);

stringMAC=GetStringForMACAddress(sub_wbe.dot11Bssid);

stringRSSI=sub_wbe.rssi.ToString();

stringLinkQuality=sub_wbe.linkQuality.ToString();

textBox1.AppendText("SSID:

"+SSID+""+"MAC:

"+MAC+""+"RSSI:

"+RSSI+""+"LQ:

"+LinkQuality+System.Environment.NewLine);

}

 

}

JavaScriptSerializerSerializer=newJavaScriptSerializer();

strings=Serializer.Serialize(STR);

StringS="+s+"&type=1&key=5888d456644a4d8eb92cf9bc92fa8c85";

textBox2.Text=S;

textBox2.Show();

}

3.3.3提取MAC地址

privatevoidbutton4_Click(objectsender,EventArgse)

{

 

string_StringURL=textBox2.Text;

try

{

HttpWebRequestrequest=(HttpWebRequest)WebRequest.Create(_StringURL);

request.Method="GET";

request.Accept="*/*";

request.KeepAlive=false;

HttpWebResponseresponse=(HttpWebResponse)request.GetResponse();

StreamdataStream=response.GetResponseStream();

StreamReaderreader=newStreamReader(dataStream);

stringresponseFromServer=reader.ReadToEnd();

response.Close();

reader.Close();

dataStream.Close();

this.textBox2.Text=responseFromServer;

}

catch(Exceptionex)

{

MessageBox.Show(ex.ToString());

}

}

3.3.4解析MAC和SSID

privatestringGetStringForMACAddress(byte[]macAddr)

{

uintnum=(uint)macAddr.Length;

string[]array=newstring[num];

intnum2=0;

while((long)num2<(long)((ulong)num))

{

array[num2]=macAddr[num2].ToString("x2").ToUpper();//ToString("x2"):

X为十六进制,2为每次都是两位数.

num2++;

}

returnstring.Join(":

",array);//Join()方法:

串联数组里所有字符串,并用指定分隔符连接

}

privatestringGetStringForSSID(Wlan.Dot11Ssidssid)

{

returnEncoding.UTF8.GetString(ssid.SSID,0,(int)ssid.SSIDLength);//0表示索引,ssid.SSIDlength表示解码字节数

}

3.3.5将解析的数据定位到XX地图

privatevoidbutton1_Click(objectsender,EventArgse)

{

HtmlElementHE_longitude=webBrowser1.Document.GetElementById("longitude");

HE_longitude.SetAttribute("value",location[0]);

HtmlElementHE_latitude=webBrowser1.Document.GetElementById("latitude");

HE_latitude.SetAttribute("value",location[1]);

webBrowser1.Document.InvokeScript("theLocation");

}

 

四、结果分析

4.1WiFi定位分析图如下图:

图4-1WiFi定位图

由上图可知通过用C#软件编写程序实现了WiFi的定位的基本功能,通过点击获取按钮搜索到周边的WiFi,点击请求和解析的按钮然后得到对应的具体地址。

然后点击定位按钮并能将其成功的定位到XX地图上。

尽管界面比较简单,但是基本上能获取WiFi定位条件下所需要的数据。

经过多次的测试,程序还是比较稳定的,每次都能顺利的运行。

总体来说,该WiFi定位系统还是相对完善的,是可执行的。

 

五、结论(或总结)

通过本次WiFi定位系统的课程设计,我们了解了WiFi定位的基本原理以及它的实现过程。

尽管遇到过很多的问题,但是最终都能够得到解决。

同时这也是对个人能力的锻炼,使我们以后能很好的把理论应用于实践。

除了个人能力得到很好的锻炼之外,同时我也意识到自己有很多的不足之处,比如编写代码能力还不是那么熟练,好多编程思想不够成熟,希望能够在今后的学习中多多去改善这些不足,努力把自己的编程水平提升上去。

同时感谢老师的耐心指导、细心讲解,希望以后的学习中老师能够多多纠正我们学习之中的不足。

第二部分:

参考文献

 

学生签名:

填表日期:

年月日

第四部分:

指导教师评语

 

第五部分:

成绩评定

 

配套讲稿:

如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

特殊限制:

部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

关 键  词:
基于 WiFi 定位 系统 设计
提示  冰豆网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:基于WiFi的定位系统设计.docx
链接地址:https://www.bdocx.com/doc/5852732.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2008-2022 冰点文档网站版权所有

经营许可证编号:鄂ICP备2022015515号-1

收起
展开