无线传感器网络实验指导书
无线传感器网络实验报告

一、实验背景随着物联网技术的飞速发展,无线传感器网络(Wireless Sensor Networks,WSN)作为一种重要的信息获取和传输手段,在军事、环境监测、智能交通、智能家居等领域得到了广泛应用。
为了深入了解无线传感器网络的工作原理和关键技术,我们进行了本次实验。
二、实验目的1. 熟悉无线传感器网络的基本概念和组成;2. 掌握无线传感器网络的通信协议和拓扑结构;3. 熟悉无线传感器网络的编程与调试方法;4. 通过实验,提高动手能力和实践能力。
三、实验内容1. 无线传感器网络概述无线传感器网络由传感器节点、汇聚节点和终端节点组成。
传感器节点负责感知环境信息,汇聚节点负责收集和转发数据,终端节点负责处理和显示数据。
传感器节点通常由微控制器、传感器、无线通信模块和电源模块组成。
2. 无线传感器网络通信协议无线传感器网络的通信协议主要包括物理层、数据链路层和网络层。
物理层负责无线信号的传输,数据链路层负责数据的可靠传输,网络层负责数据路由和传输。
3. 无线传感器网络拓扑结构无线传感器网络的拓扑结构主要有星形、树形、网状和混合形等。
星形拓扑结构简单,但易受中心节点故障影响;树形拓扑结构具有较高的路由效率,但节点间距离较长;网状拓扑结构具有较高的可靠性和路由效率,但节点间距离较远。
4. 无线传感器网络编程与调试本实验采用ZigBee模块作为无线通信模块,利用IAR Embedded WorkBench开发环境进行编程。
实验内容如下:(1)编写传感器节点程序,实现数据的采集和发送;(2)编写汇聚节点程序,实现数据的收集、处理和转发;(3)编写终端节点程序,实现数据的接收和显示。
5. 实验步骤(1)搭建实验平台,包括传感器节点、汇聚节点和终端节点;(2)编写传感器节点程序,实现数据的采集和发送;(3)编写汇聚节点程序,实现数据的收集、处理和转发;(4)编写终端节点程序,实现数据的接收和显示;(5)调试程序,确保各节点间通信正常;(6)观察实验结果,分析实验现象。
无线传感网实验报告

Cent ral SouthUniversity无线传感器网络实验报告学院:班级:学号:姓名:时间:指导老师:第一章基础实验1了解环境1.1实验目的安装 IAR开发环境。
CC2530 工程文件创建及配置。
源代码创建,编译及下载。
1.2 实验设备及工具硬件:ZX2530A 型底板及CC2530 节点板一块,USB 接口仿真器,PC 机软件:PC 机操作系统 WinXP,IAR集成开发环境,TI 公司的烧写软件。
1.3实验内容1、安装IAR 集成开发环境IAR 集成开发环境安装文件所在光盘目录:物联网光盘\工具\C D-EW8051-76012、ZIBGEE 硬件连接安装完IAR 和 Smartrf Flash Programmer 之后,按照图所示方式连接各种硬件,将仿真器的20 芯 JTAG口连接到ZX2530A 型 CC2530 节点板上,USB 连接到PC 机上,RS-232串口线一端连接ZX2530A 型 CC2530节点板,另一端连接 P C机串口。
3、创建并配置 CC2530 的工程文件IAR是一个强大的嵌入式开发平台,支持非常多种类的芯片。
IAR 中的每一个 Project,都可以拥有自己的配置,具体包括Device 类型、堆/栈、Linker、Debugger 等。
(1)新建Workspace 和Project首先新建文件夹ledtest。
打开 IAR,选择主菜单File ->New -> Workspace 建立新的工作区域。
选择Project ->Create New Project -> Empty Project,点击 OK,把此工程文件保存到文件夹ledtest 中,命名为:ledtest.ewp(如下图)。
(2)配置Ledtest工程选择菜单Project->Options...打开如下工程配置对话框选择项 General Options,配置 Target 如下Device:CC2530;(3)Stack/Heap设置:XDATA stack size:0x1FF(4)Debugger 设置:Driver:Texas Instruments (本实验为真机调试,所以选择TI;若其他程序要使用IAR仿真器,可选 Simulator)至此,针对本实验的IAR 配置基本结束.4、编写程序代码并添加至工程选择菜单 File->New->File创建一个文件,选择File->Save 保存为main.c将 main.c 加入到 ledtest 工程,将实验代码输入然后选择 Project->Rebuild All 编译工程编译好后,选择Project->Download and debug 下载并调试程序下载完后,如果不想调试程序,可点工具栏上的按钮终止调试。
无线传感器网络实验手册cygwin

XLUC目录实验一开发环境搭建实验 (2)实验二程序烧录实验 (10)实验三硬件接口实验 (13)实验四 ADC采样实验 (19)实验五串口通讯实验 (24)实验六点对点射频实验 (32)实验七传感器添加实验 (39)实验八基于网关板的pc机数据采集和分析实验 (48)实验九基于sink节点数据采集和分析实验 (57)实验十基于web的数据录入和数据访问实验 (61)实验一开发环境搭建实验以下步骤描述了如何逐步搭建无线传感器网络实验开发环境注:本开发环境是在Windows XP操作系统下搭建的先决条件:∙AtoseNet环境:Cygwin atos4tinyos.msi安装包,在光盘的路径为,无线传感器网络1.5\TinyOS2\TinyOS_install\atos4tinyos.msi 。
∙Keil C51编译器安装包:c51v808a.exe,在光盘的路径为,无线传感器网络1.5\TinyOS2\TinyOS_install\c51v808a.exe 。
∙IIS服务器:准备一张Windows XP professional 的安装光盘。
∙SQL SERVER 2005数据库管理工具:准备一张SQL SERVER 2005的安装光盘。
创建AtoseNet环境:Cygwin1.打开无线传感器网络光盘,进入如下路径\TinyOS2\TinyOS_install\, 双击atos4tinyos.msi 进入安装过程2.进入如下界3.单机下一步4.选择合适的路径(这里选择缺省路径),点击“下一步”5.单击安装,进入安装进程如下6.安装完成后将出现如下两个界面7.选择完路径后单击“点击开始安装”8.进入Cygwin安装界面,安装完成后自动弹出如下界面:9.请任意键后即可完成安装。
桌面上会自动建立Cygwin的快捷方式,单击进入即可安装Keil C51 编译器10.打开无线传感器网络光盘,进入如下路径\TinyOS2\TinyOS_install\, 双击c51v808a.exe 进入安装过程11.单击“Next”并且选中“I agree to all the terms of the preceding LicenseAgreement”12.选择默认的路径13.选择安装路径后,单击“Next”:14.输入用户名等资料后单击“Next”进入安装进度界面:15.单击“Finish”完成安装过程。
无线传感网实验报告

无线传感网实验报告一、实验目的本实验的主要目的是了解无线传感网(Wireless Sensor Network,WSN)的基本原理和特点,以及进行一些简单的WSN实验,掌握其基本应用方法。
二、实验器材1.电脑2. 无线传感器节点(如Arduino)3. 无线通信模块(如XBee)4.传感器(如温度传感器、光照传感器等)三、实验步骤和内容1.了解无线传感网的基本概念和特点。
2.搭建无线传感网实验平台。
将无线传感器节点和无线通信模块进行连接。
3.编程控制无线传感器节点,收集传感器数据并通过无线通信模块进行传输。
4.在电脑上设置接收数据的接口,并接收传感器数据。
5.对传感器数据进行分析和处理。
四、实验结果和讨论在实验中,我们成功搭建了一个简单的无线传感网实验平台,并通过无线通信模块进行数据传输。
通过编程控制,我们能够收集到传感器节点上的温度数据,并通过无线通信模块将数据传输到电脑上进行接收。
在实验过程中,我们发现无线传感网的优点是具有灵活性和扩展性。
通过无线通信模块,传感器节点之间可以进行无线通信,灵活地传输数据。
同时,我们还可以通过添加更多的传感器节点来扩展整个无线传感网的功能和覆盖范围。
然而,无线传感网也存在一些限制和挑战。
首先,无线通信模块的传输距离和传输速率有限,可能会受到环境因素的影响。
其次,无线传感器节点的能耗问题需要考虑,因为它们通常是使用电池供电的,而且在实际应用中通常需要长时间连续工作。
五、结论通过本次实验,我们对无线传感网的基本原理和特点有了一定的了解,并掌握了一些简单的无线传感网应用方法。
我们成功搭建了一个实验平台,并通过无线通信模块和传感器节点进行数据传输和接收。
实验结果表明,无线传感网具有一定的灵活性和扩展性,但同时也面临着一些挑战。
对于以后的无线传感网应用和研究,我们需要进一步探索和解决这些挑战。
工业、农业无线传感器网络设备使用指导手册.

1、XL91智能网关——适用于构建小容量的传感网络
应用领域: 1、油田、油井、气田监测 2、蒸汽管道、供暖管道监测 3、供水管道、水泵房的监测 4、污水监测 5、粮食仓储监测 6、农业大棚监测 7、DCS系统 8、能源管理系统
1、XL91智能网关——适用于构建小容量的传感网络 GPRS网关方案应用领域: 1 、油田、油井、气田监测: 采集压力、温度、气体、流量 等参数上传 2 、蒸汽管道、供暖管道监测: 采集压力、温度、流量等 3 、供水管道、水泵房的监测: 采集压力、流量、水泵工作状 态等参数上传 4 、污水监测:采集污水监测 点的参数上传 5 、粮食仓储监测:采集仓储 环境、仓储物内部参数(温湿 度、气体)上传 6 、农业大棚监测:采集农业 大棚环境参数(温湿度、 气体、 光照)上传
3、XL60无线测控装置ቤተ መጻሕፍቲ ባይዱ
3、XL60无线测控装置
4、XL62智能智能测控装置 智能测控装置是无线测控装置的升 级产品, 智能化更高、扩展性更强、 功耗更低、 应用更广
4、XL62智能智能测控装置
4、XL62智能智能测控装置
4、XL62智能智能测控装置
4、XL62智能智能测控装置
4、XL62智能智能测控装置
2、XL90智能网关——适用于构建大容量的传感网络
GPRS网关方案应用领域: 1、作为GPRS接点接入后台监控计算 机的网关 2、将GPRS接点的数据写入数据库: 适用于将监控数据 写 入 M E S 、 E MS、 ERP系统 3、将GPRS接点数据同时转发至不同 位置的监控服务 器
2、XL90智能网关——适用于构建大容量的传感网络
1、XL91智能网关——适用于构建小容量的传感网络
2、XL90智能网关——适用于构建大容量的传感网络
无线传感网络实验报告

-------无线传感网络实验报告学院:信息工程学院专业:网络工程学号:201216213姓名:张新龙LEACH协议LEACH协议简介分簇算法LEACH 协议是Wendi B. Heinzelman , AnanthaP. Chandrakasan , Hari Balakrishnan (MIT ,电子与计算机系) 2000 年提出的分层的传感器网络协议, 它采用分层的网络结构. LEACH,协议是通过基于簇的操作使WSN减少功耗,LEACH,协议的目的是在网络中动态地选择传感器节点作为簇头并形成簇。
在LEACH 算法中, 节点自组织成不同的簇, 每个簇只有一个簇首.各节点独立地按照一定概率决定自己是否做簇首,周期性的进行簇首选举和网络重组过程, 避免了簇首节点能耗过多, 影响网络寿命. LEACH 算法建立在所有节点都是平等且无线电信号在各个方向上能耗相同的假设上。
LEACH协议有时候也会动态地改变簇的活跃动态,如果采用高功率的方式使网络中的所有传感器节点与汇聚节点进行通信。
LEACH协议原理LEACH 协议分为两个阶段操作, 即簇准备阶段(set - up phase)和就绪阶段(ready phase). 为了使能耗最小化, 就绪阶段持续的时间比簇准备阶段长簇准备阶段和就绪阶段所持续的时间总和称为一轮(round). [ 7-8]在簇准备阶段, 随机选择一个传感器节点作为簇首节点(cluster head node), 随机性确保簇首与Sink 节点之间数据传输的高能耗成本均匀地分摊到所有传感器节点. 簇首节点选定后, 该簇首节点对网络中所有节点进行广播, 广播数据包含有该节点成为簇首节点的信息. 一旦传感器节点收到广播数据包, 根据接收到的各个簇首节点广播信号强度, 选择信号强度最大的簇首节点加入, 向其发送成为其成员的数据包.以便节省能量.簇头建立阶段:初始阶段,每个节点从0和1中随机产生一个数,如果这个数小于阀值T(n),该节点就成为当前轮的簇头。
第四次无线传感器网络实验.doc

南昌航空大学实验报告二O 一六年四月20 日课程名称:无线传感器网络实验名称:CC2530 数据采集及AD 转换实验班级:姓名:指导教师评定:签名:一、实验目的1. 通过实验掌握CC2530 芯片GPIO和AD转换寄存器的配置方法2. 掌握AD 转换函数程序的编程方法3. 掌握光敏传感器的操作使用4. 掌握光照传感器采集程序的编程方法二、实验内容1. 在IAR 集成开发环境中编写光照传感器采集程序,设计实验检测光照的强度,通过AD转换将光照强度通过串口调试助手显示出来。
三、基础知识1. 光照传感器介绍采用GL7516 光敏电阻进行光照强度的检测。
光敏电阻式一种半导体材料制成的电阻,其电导率随着光照度的变化而变化。
利用这一特性可以制成不同形状和受光面积的光敏电阻。
GL7516 就是其中的一种,光越强阻值越大。
光敏电阻工作原理简介:本实验采用光敏电阻来采集光照度信息。
它的工作原理是基于光电效应。
在半导体光敏材料两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻。
为了增加灵敏度,两电极常做成梳状。
构成光敏电阻的材料有金属的硫化物、硒化物、碲化物等半导体。
半导体的导电能力取决于半导体导带内载流子数目的多少。
当光敏电阻受到光照时,价带中的电子吸收光子能量后跃迁到导带,成为自由电子,同时产生空穴,电子—空穴对的出现使电阻率变小。
光照愈强,光生电子—空穴对就越多,阻值就愈低。
当光敏电阻两端加上电压后,流过光敏电阻的电流随光照增大而增大。
入射光消失,电子‐空穴对逐渐复合,电阻也逐渐恢复原值,电流也逐渐减小。
2. 光照传感器的接口电路光照传感器的接口电路如下图所示。
通过CC2530 的AD 口,采集光照传感器和固定电阻分压后的电压值,从而感知光照传感器随光强变化的情况。
3.AD 转换寄存器CC2530的ADC支持14位模拟数字转换,转换后的有效数字位高达12位。
ADC 包括一个8路独立可配置通道的模拟多路转换器和一个参考电压发生器。
ZigBee无线网络实验实训手册V2.0

无线传感网络实验实训手册0、实验准备0.1、硬件认知节点ZigBee模块采用TI最新一代ZIGBEE芯片CC2530支持基于IEEE802.15.4的ZIGBEE2007/PRO协议采用WXL标准的20芯双排直插模式接入网关主板和感知节点CC2530特点:低功耗④主动模式RX(CPU 空闲):24 mA ④主动模式TX 在1dBm(CPU 空闲):29mA ④供电模式1(4 µs 唤醒):0.2 mA ④供电模式2(睡眠定时器运行):1 µA ④供电模式3(外部中断):0.4 µA④宽电源电压范围(2 V 3.6 V)微控制器④优良的性能和具有代码预取功能的低功④耗8051 微控制器内核④32-、64-或128-KB 的系统内可编程闪存④8-KB RAM,具备在各种供电方式下的数④据保持能力④支持硬件调试 外设④强大的5 通道DMA④IEEE 802.5.4 MAC 定时器,通用定时器(一个16 位定时器,一个8 位定时器)④IR 发生电路④具有捕获功能的32-kHz 睡眠定时器④硬件支持CSMA/CA④支持精确的数字化RSSI/LQI④电池监视器和温度传感器④具有8 路输入和可配置分辨率的12 位ADC④AES 安全协处理器④ 2 个支持多种串行通信协议的强大USART④21 个通用I/O 引脚( 19× 4 mA,2×20 mA)④看门狗定时器节点底板④支持4节电池供电④96*16液晶显示④1个多功能按键④一个miniUSB串口,可通过伸缩USB线缆供电④标准WXL20针高频模块接口以及标准的传感器模块接口。
图表 1传感器/控制扩展模块图表 2LED*4图表 3继电器图表 4RFID图表 5振动传感器图表 6人体红外传感器图表 7温度光敏传感器图表 8温湿度传感器图表 9C51RF-3仿真器USB接口:通过USB接口把C51RF-3仿真器与计算机有机的连接起来。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
无线传感器网络 实验指导书
信息工程学院 实验一 质心算法 一、实验目的 掌握合并质心算法的基本思想; 学会利用MATLAB实现质心算法; 学会利用数学计算软件解决实际问题。 二、实验容和原理 无需测距的定位技术不需要直接测量距离和角度信息。定位精度相对较低,不过可以满足某些应用的需要。 在计算几何学里多边形的几何中心称为质心,多边形顶点坐标的平均值就是质心节点的坐标。 假设多边形定点位置的坐标向量表示为pi= (xi,yi)T,则这个多边形的质心坐标为:
例如,如果四边形 ABCD 的顶点坐标分别为 (x1, y1),(x2, y2), (x3, y3) 和(x4,y4),则它的质心坐标计算如下:
这种方法的计算与实现都非常简单,根据网络的连通性确定出目标节点周围的信标参考节点,直接求解信标参考节点构成的多边形的质心。 锚点周期性地向临近节点广播分组信息,该信息包含了锚点的标识和位置。当未知结点接收到来自不同锚点的分组信息数量超过某一门限或在一定接收时间之后,就可以计算这些锚点所组成的多边形的质心,作为确定出自身位置。由于质心算法完全基于网络连通性,无需锚点和未知结点之间的协作和交互式通信协调,因而易于实现。 三、实验容及步骤 该程序在Matlab环境下完成无线传感器中的质心算法的实现。在长为100米的正方形区域,信标节点(锚点)为90个,随机生成50个网络节点。节点的通信距离为30米。 需完成: 分别画出不同通信半径,不同未知节点数目下的误差图,并讨论得到的结果
所用到的函数: 1. M = min(A)返回A最小的元素. 如果A是一个向量,然后min(A)返回A的最小元素. 如果A是一个矩阵,然后min(A)是一个包含每一列的最小值的行向量。
2. rand X = rand返回一个单一均匀分布随机数在区间 (0,1)。 X = rand(n)返回n--n矩阵的随机数字。
12341234,,44xxxxyyyyxy
3. S = sum(A)返回 A 沿其大小不等于 1 的第一个数组维度的元素的总和。 如果A是一个向量,sum(A)可返回元素的总和。 如果A是一个矩阵,然后sum(A)返回一个行向量包含每个列的总和。
4. inf无穷大 此 MATLAB 函数 返回正无穷大的 IEEE 算术表示。除以零和溢出等操作会生成无穷值,从而导致结果因太大而无法表示为传统的浮点值
5. zeros - 创建全零数组 X = zeros返回标量0. X = zeros(n) -由-n矩阵的零返回n.
6. plot(X,Y)画出Y随X变化的2D 曲线。 plot(X,Y,o)用o描述(X,Y)这一点。
7.n= norm(v)返回的 2-数或欧氏数的向量v. n = norm (v,p)返回向量数定义的sum(abs(v)^p)^(1/p),这里p是任何正值, Inf或-Inf.
8.s = num2str(A)数值数组转换为字符数组输出,它表示的数字。输出格式取决于原始值的大小。num2str是用于标签和标题情节与数字值。
所用到的变量: xy:均匀分布的信标节点位置矩阵 n:未知节点数量 SS: 未知节点位置矩阵 dm:通信半径 cent:质心 MM:未知节点估计坐标矩阵 e:估计位置和实际位置距离矩阵(误差) 四、源程序 clear clc %锚节点节点设置 for i=1:1:10%1到10,步长是1;画出锚点,前一个括号是标号。 for j=1:1:10 x(j+(i-1)*10)=(i-1)*10; y(j+(i-1)*10)=(j-1)*10; end end figure%出现图形界面 plot(x,y,'k.'); %黑点 hold on %继续画图 axis([0 100 0 100]); xy=[x;y];把X,Y的坐标付给矩阵XY xy; hold on
xm=90; ym=90; n=50; %未知节点 for i=1:1:n Sx(i)=rand(1,1)*xm;%产生一个一行一列的矩阵;依然是0-1中任意一个值。 Sy(i)=rand(1,1)*ym; plot(Sx(i),Sy(i),'r*');% 红星 xlabel('x轴'); ylabel('y轴'); hold on end dm=30 ;%通信半径 m=100; 一共100个点; for j=1:1:n%未知节点循环;每一个未知节点都与在通讯围所有的锚点算一遍距离,放到一个矩阵中,通讯距离以外的点为零。 SS=[Sx(j);Sy(j)]; k=0;%表示通信半径的信标节点数 for i=1:1:m d=norm((xy(:,i)-SS),2);%2数就是求直线距离;不管行,第i列; if d<=dm 是否在围,取出信标节点,放到XX,yy中 xx(j,i)=xy(1,i);第1行第i列;%X坐标都给了XX yy(j,i)=xy(2,i); 第2行第i列; k=k+1; else xx(j,i)=0; yy(j,i)=0; end end if k~=0%k不等于零 cent(:,j)=[sum(xx(j,:));sum(yy(j,:))]/k;%第j行的所有列 else cent(:,j)=0; 令第j列的所有元素为零。 end plot(cent(1,j),cent(2,j),'o') ; hold on plot([cent(1,j) Sx(j)],[cent(2,j) Sy(j)],'R--') ;%估计位置和真实位置连接 title('Centroid'); hold on MM=[cent(1,j);cent(2,j)]; e(j)=norm((MM-SS),2); %定位误差 end % figure/dm % axis([0 n 0 1]) % j=1:1:n % plot(j,e(j) ,'-r.') % hold on % title('Centroid') % E=sum(e)/n E=sum(e)/(n*dm); disp(['定位误差=',num2str(E)]); %将结果转换成字符串输出 实验二 DV-hop算法 一、 实验目的 掌握DV-hop算法的基本思想; 学会利用MATLAB实现DV-hop算法; 学会利用数学计算软件解决实际问题。 二、实验容和原理 DV-Hop算法解决了低锚点密度引发的问题,它根据距离矢量路由协议的原理在全网围广播跳数和位置。 已知锚点L1与L2、L3之间的距离和跳数。L2计算得到校正值(即平均每跳距离)为(40+75)/(2+5)=16.42m。假设传感器网络中的待定位节点A从L2获得校正值,则它与3个锚点之间的距离分别是L1=3×16.42,L2=2×16.42,L3=3×16.42,然后使用多边测量法确定节点的位置。
图1 DV hop 算法示意图 三、实验容及步骤 该程序在Matlab环境下完成无线传感器中的DV-Hop算法的实现。在长为100米的正方形区域,随机生成100个网络节点,其标节点(锚点)为8个,未知坐标节点为92个。节点的通信距离为50米。可算出最短路经算法计算节点间跳数、每个信标节点的校正值并可用用跳数估计距离。(1000-1000, 300个节点,60个信标节点) 所用到的函数: 参见上节:质心算法; 需完成: 1) 运行程序,生成随机分布的节点; 2) 更正程序中的错误,求每个信标节点的校正值; 3) 继续运行程序,利用跳数估计待求节点的距离。 四、源程序 %~~~~~~~~~~ DV-Hop算法 ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ % BorderLength-----正方形区域的边长,单位:m % NodeAmount-------网络节点的个数 % BeaconAmount---信标节点数 % Sxy--------------用于存储节点的序号,横坐标,纵坐标的矩阵 %Beacon----------信标节点坐标矩阵;BeaconAmount*BeaconAmount %UN-------------未知节点坐标矩阵;2*UNAmount % Distance------未知节点到信标节点距离矩阵;2*BeaconAmount %h---------------节点间初始跳数矩阵 %X---------------节点估计坐标初始矩阵,X=[x,y]' % R------------------节点的通信距离,一般为10-100m clear,close all; BorderLength=100; NodeAmount=100; BeaconAmount=8; UNAmount=NodeAmount-BeaconAmount; R=50; % D=zeros(NodeAmount,NodeAmount);%未知节电到信标节点距离初始矩阵;BeaconAmount行NodeAmount列 h=zeros(NodeAmount,NodeAmount);%初始跳数为0;NodeAmount行NodeAmount列 X=zeros(2,UNAmount);%节点估计坐标初始矩阵 %~~~~~~~~~在正方形区域产生均匀分布的随机拓扑~~~~~~~~~~~~~~~~~~~~ C=BorderLength.*rand(2,NodeAmount); %带逻辑号的节点坐标 Sxy=[[1:NodeAmount];C];%将1-NodeAmount与C上下合到一起,产生一个总矩阵。 Beacon=[Sxy(2,1:BeaconAmount);Sxy(3,1:BeaconAmount)];%信标节点坐标 UN=[Sxy(2,(BeaconAmount+1):NodeAmount);Sxy(3,(BeaconAmount+1):NodeAmount)];%未知节点坐标 %画出节点分布图 plot(Sxy(2,1:BeaconAmount),Sxy(3,1:BeaconAmount),'r*',Sxy(2,(BeaconAmount+1):NodeAmount),Sxy(3,(BeaconAmount+1):NodeAmount),'k.') xlim([0,BorderLength]); ylim([0,BorderLength]); title('* 红色信标节点 . 黑色未知节点') %~~~~~~~~~~~~~~~~~~~~~~~~~~~~初始化节点间距离、跳数矩阵~~~~~~~~~~~~~~~~~~~~~~ for i=1:NodeAmount for j=1:NodeAmount Dall(i,j)=((Sxy(2,i)-Sxy(2,j))^2+(Sxy(3,i)-Sxy(3,j))^2)^0.5;%所有节点间相互距离 if (Dall(i,j)<=R)&(Dall(i,j)>0) h(i,j)=1;%初始跳数矩阵