2015年无线传感器模拟试题__答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中南大学考试试卷
2014--2015 学年下学期(1)时间100分钟
无线传感器网络课程48 学时3 学分考试形式:闭卷专业年级:物联网12级总分100分,占总评成绩70 %
试题共8页,答案直接写在答题纸上,记得填姓名哦
姓名:
一、选择题。(选出一个正确答案,并将其代号写在相应题中的括号内。每小题2分,共14分)
1、Confirm的意思是( D)
A请求原语 B指示原语 C响应原语 D确认原语
2、ZigBee适应的应用场合___________。(D)
A.个人健康监护
B.玩具和游戏
C.家庭自动化
D.上述全部
3、Zigbee不支持的网络拓扑结构式:()C
A.星型 B.树型 C.环型 D.网状
4、下面哪一项不是WSN的强项。() C
A.自组织 B. 分布式 C. 安全性 D.节点平等
5、对于WSN来说,下面哪种说法不对。() C
A. 节点能力不高
B. 能量供应不好
C. 节点变化性不强
D.网络规模很大
6、产生载波频率在WSN中,是属于哪一层的事务。() A
A.物理层 B. 数据链路层 C. 网络层 D.以上都不是
7、S-MAC协议是属于() A
A.基于竞争的MAC协议 B.基于分配的MAC协议
C.混合型MAC协议 D. 跨层MAC协议
二、填空题。(每空1分,共30 分)
1.定向扩散路由机制可以分为三个阶段:兴趣扩展阶段、梯度建立阶段、路径加强阶段
2.无线传感器网络的收发模块的4个状态按能耗递减分别为发送;接收;空闲;睡眠。
3.WSN一般使用ISM频段,ISM是指无须注册的公用频段,ISM频段主要用于工业、科学和
医疗。ISM就是这三个词汇的缩写。
4.TRAMA协议由近邻协议(NP)、分配交换协议(SEP)和自适应选举算法(AEA)
三个部分组成。
5.无线传感器网络器网络的特征包括自组织,分布式,节点平等,可靠性要求高,节点资源有限,
网络规模大,时效性等。
6.ISM频段是指无须注册的公用频段、具有大范围的可选频段、没有特定的标准,可以灵活使用,
ZSTACK将ISM频段划分为16 个信道。
7.ZStack中如果节点正在休眠,则广播信息将会被保持在它的父节点,直到该休眠设备获得该信息或
该信息时间溢出。
8.Z-Stack中OSAL的任务通过函数指针来调用,参数有任务标识符(taskID )和对应的事件
(event)9.ZStack支持三种网络拓扑,即星形网络,树形网络,网状网络。
10.对于差分脉冲位置调制机制,它采用两个32-chip PN码,I、Q通道各一个,通过周期性移动PN
11.
12.无线传感器网络中,信道共享容易造成两个问题数据冲突和串扰。
13.S-MAC把时间分割成许多时隙,在每个时隙中又划分为侦听和睡眠两个状态。
14.ZigBee中,端点(EndPoint)定义了一个设备内的一个通信实体,一个特定的应用通过它来执行。ZDO
的端点号是0。
15.基于竞争的MAC协议--T-MAC协议中,采用满缓冲区优先和未来请求发送两种方法解决早睡问
题。
16.相对于传统网络,WSN具有以下特征:1)大规模分布式应用2)以数据为中心3)基于局部拓扑
信息4)基于应用5)数据的融合
17.
18.
19.
20.
21.
22.
三、简答题(40分。尽可能简单)
1、什么是Ad Hoc网络?
Ad hoc网是一种多跳的、无中心的、自组织无线网络,又称为多跳网(Multi-hop Network)、无基础设施网(Infrastructureless Network)或自组织网(Self-or-ganizing Network)。整个网络没有固定的基础设施,每个节点都是移动的,并且都能以任意方式动态地保持与其它节点的联系。在这种网络中,由于终端无线覆盖取值范围的有限性,两个无法直接进行通信的用户终端可以借助其它节点进行分组转发。每一个节点同时是一个路由器,它们能完成发现以及维持到其它节点路由的功能。
2、逻辑链路与物理链路有何区别?
物理链路就是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。逻辑链路就是数据链路,是物理链路加上必要的通信规程。数据链路则是另一个概念。这是因为当需要在一条线路上传送数据时,除了必须有一条物理线路外,还必须有一些必要的规程来控制这些数据的传输。
3、分析UWB技术的优势。
系统结构实现简单;高速的数据传输;功耗低;安全性高;多径分辨能力强;定位精确;工程简单造价便宜
4、介绍LEACH协议的主要阶段。
主要包括建立阶段和数据传输阶段。在建立阶段:节点运行算法,确定本次自己是否成为簇头;簇头节点广播自己成为簇头的事实;其他非簇头节点按照信号强弱选择应该加入的簇头,并通知该簇头节
- 1 -
点;簇头节点按照TDMA的调度,给依附于他的节点分配时间片;在数据传输阶段:非簇首节点负责采
集数据,如果需要发送数据,就用最小的能耗发送给它的簇首节点;非簇首节点节点在分配给他的时间
片上发送数据,在不属于自己时隙的期间可以进入睡眠状态以节省能耗,而簇首节点则必须始终处于接
收状态;所有非簇首节点的TDMA时隙都轮过后,簇首节点对接收到的数据进行融合压缩,然后直接发
送给Sink节点。
5、分析GPSR协议的优缺点。
优点:采用局部最优的贪婪算法,不需要维护网络拓扑,路由开销小;可适用于静态和移动的WSN
网络;缺点:需要地理位置信息的支持;需要维护邻居节点位置信息。
6、说明zigbee网络建立的主要过程。
首先未加入网络的协调器节点建立ZigBee网络;处于激活状态的设备可以直接加入网络,也可以通
过关联操作加入到网络中,设备寻找父设备,经过父设备的同意加入网络;设备加入到网络之后,网络
就会为其分配网络地址;设备节点的离开有两种不同的情况:第一种是子设备向父设备请求离开网络,
第二种是父设备要求子设备离开网络。每个网络中的节点维护一个邻居列表,其中包含传输范围内所有
节点的信息。
7、分析T-MAC协议的未来发送机制的过程和优缺点。
未来请求发送:采用提前通知需要接收数据的节点的方法来实现早睡的避免:当中继节点C接收到
CTS后,除了触发自己保持监听状态之外,还发送一个FRTS分组给下一节点D,FRTS分组中含有下一
节点D需要等待的时间,在此空闲状态中,下一节点必须要保持侦听状态。在中继节点C发送FRTS时
看哪个节点会干扰源节点A发送的数据,因此源节点A需要延迟原数据的发送响应的时间,但是又必须
保持对信道的占用,因此源节点A在这段时间内发送一个与FRTS一样长度的分组,该分组不包含任何
有用的数据,然后才接着发送有用数据信息。从而数据传到中继节点C之后中间节点D还是处于唤醒状
态,保证数据的实时传输。
由于采用了未来请求发送机制,协议需要增加一个FRTS分组传输的时间,该方法提高了系统吞吐量
和实时性,但是多了一些控制消息,相应地要消耗能量。
8、ZStack的协议栈结构为APP,HAL,MAC,MT,NWK,OSAL,Profile,Security,Services,Tools,
ZDO,ZMac,ZMain和Output。,简述期中HAL,MT,Profile这三层的功能。
HAL(Hardware (H/W) Abstraction Layer ):硬件层目录,包含有与硬件相关的配置和驱动及操作函
数。
MT(Monitor Test):实现通过串口可控各层,与各层进行直接交互。
Profile:AF (Application work )层目录,包含AF 层处理函数文件。
9、举一个您认为是WSN应用的最好的例子,简要介绍一下如何实现的。
四、程序题
1、 #define led1 P1_0
#define led2 P1_2 //这两条语句的含义是定义P1_0 为led1 P1_2为 led2 void led_init(void)
{
P1SEL = 0x00; //P1为普通 I/O 口
P1DIR |= 0x05; //P1.0 P1.2 输出
led1 = 0;
led2 = 0;
}
void io_init(void)
{
P0IEN |= 0X02; // 设置为中断方式
PICTL &=~ 0X02; // 下降沿触发
IEN1 |= 0X20; // 允许P0口中断;
P0IFG = 0x00; // 初始化中断标志位
EA = 1; //这一条语句的含义开总中断
};
#pragma vector = P0INT_VECTOR
__interrupt void P0_ISR(void) //这表示是什么程序 P0中断服务程序
{
P0IFG = 0 ;
led1 = ~led1; //这一条语句的含义是 led1取反,让led1闪烁 P0IF = 0;
}
2、
float getTemperature(void) // ADC 获得到实际温度值程序
{
unsigned int value;
ADCCON3 = (0x3E); //选择1.25V为参考电压;14位分辨率;对片内温度传感器采样ADCCON1 |= 0x30; //选择ADC的启动模式为手动
ADCCON1 |= 0x40; //启动AD转化
while(!(ADCCON1 & 0x80)); // 等待ADC转化结束
value = ADCL >> 2; // 低字节的高6位,高字节的低两位构成温度值
value |= (ADCH << 6); // 取得最终转化结果,存入value中
return value*0.06229-311.43; //根据公式计算出温度值
}
3、下面程序是人体感应传感器中的两个子程序,请加相应注释。
void led_init(void) //LED灯初始化
{
P1SEL = 0x00; // P1为普通I/O 口
P1DIR |= 0x05; // P1.0 P1.1 输出
led1 = 0;
led2 = 1;
}
void io_init(void)
{
P0SEL &= ~0x80; // 设置P0.7为普通io口
P0DIR &= ~0x80; // 设置P0.7为输入
- 2 -