zigbee组网函数在哪儿
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zigbee组网函数在哪儿相关的知识,希望对你有一定的参考价值。
参考技术A zigbee协议栈使用的是zstack版本,该协议栈的整体功能有点类似于操作系统。下面以SimpleApp例程为例,对协议栈的组网流程进行描述。
协议栈是用C语言实现的,由于C语言的入口都是main函数,因此需要找到main函数,下图为协议栈各层列表 (主要包括应用层、硬件层、MAC层、网络层、安全层、服务层等),TI公司的编程比较规范,文件的命名就意味着相关的功能。可以看到,ZMain文件下面有Mainc文件,而该文件就是整个协议栈的入口地址, 打开ZMain.c文件,可以看到函数intmain( void);该函数就是整个协议栈最开始的入口。在main函数里面可以看到语句:
// Initialize the operating system
osal init system():
该语句的实际含义是初始化zigbeet协议栈。
进入函数osal init system(的内部(具体方法:使鼠标停留在osal init system上,并且单击右键,在弹出的选项中选择"go todefinition of osal init syster" ).定位到下列语句:
// Initialize the system tasks.
osallnitTasks0;
从这个函数的名字就可以知道它是用于初始化系统任务的。在zigbee协议栈中, 一个非常重要而且贯穿协议栈生命周期的概念就是任 务,也就是说协议栈的信息处理利数据传输等过程都是通过任务来实现的,即如果某个节点需要传输一个数据包, 它会通过调用相关任务通知操作系统需要发送数据包。
既然任务员个非常重要的概念,那么就很有必要进入allnitTasks()函数内部,看看这个函数究竞是初始化那些任务!!
zigbee技术的组网优势在哪?
Zigbee是IEEE 802.15.4协议的代名词。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。优势有以下几点:
①自动组网,网络容量大。Zigbee网络可容纳多达65000个节点,网络中的任意节点之间都可进行数据通讯。网络有星状、片状和网状网络结构。在有模块加入和撤出时,网络具有自动修复功能。
②网络时延短。Zigbee的响应速度较快,一般从睡眠转入工作状态只需15ms,节点连接进入网络只需30ms,进一步节省了电能。相比较,蓝牙需要3~10s、WiFi需要3s。
③模块功耗低,通讯速率低。模块有较小的发送接收电流,支持多种睡眠模式,一个10AH的电池,在Zigbee水表中可使用8年.Zigbee通讯速度最高可达250Kbps,适合用于设备间的数据通讯,不太适合用于声音、图像的传送。
④传输距离可扩展。举例DIGI的XBEE增强型模块,相邻模块通讯距离可达1.6Km,有效距离范围内的模块自动组网,网络中的各节点可自由通讯,这样传输距离得到了扩展.
⑤成本低。Zigbee模块工作于2.4G全球免费频段,故只需要先期的模块费用,无需支付持续使用费用.若采用丰宝代理的DIGI公司的Zigbee模块,则可无需再次开发,通过TTL的RX,TX便可进行数据发送接收,大量减少了产品开发周期,获得了更好的市场先机.
⑥可靠性好,安全性高。Zigbee具有可靠的发送接收握手机制,可靠地保证了数据的发送接收,另Zigbee采用AES128位密钥,保证数据发送的安全性。
Zigbee与其它技术的简单比较:
Wbee是一种跟蓝牙类似的无线通讯技术,不过它的速度比蓝牙慢,但是传输距离更大一些(一般可以达到4KM)。了解无线通讯的人都知道,所谓各种无线通讯技术,就是将数据转换成频率段不同的波,然后发射出去,在接收端将波再解析成相应的数据。Wbee也不例外,它在国际通用的工作频段是433 MHz频段来进行无线通讯,Wbee的通信技术所采用的蜂窝式自组织网通信的方式。
Wbee通信是怎么回事?简单的举一个例子就可以说明这个问题。比如汽车防盗问题,在车上安装一个Wbee 网络模块终端,当开启报警系统后,车子跟报警器只要他们彼此间在网络模块的通信范围内通过彼此自动寻找,很快就可以形成一个互联互通的Wbee网络。只要汽车有一些违规操作,比如开门、插钥匙等触发报警然后通过Wbee把报警信息传输到报警器上,并产生报警信号。由于汽车是移动的,彼此间的联络还会发生变化。因而,模块还可以通过重新寻找通信对象,确定彼此间的联络,对原有网络进行刷新,这就是自组织网本回答被提问者采纳 参考技术B 1.功耗低,Zigbee网络节点设备工作周期较短,收发信息功率低,并且采用休眠模式,所以Zigbee技术特别省电,避免了频繁的更换电池或充电,从而减轻了网络维护的负担。
2.成本低,Zigbee协议栈设计简单,因此它的研发和生产成本相对较低,普通网络节点硬件上只需8位微处理器以及少量的软件即可实现,无须主机平台。
3.延时短,通信延时和从休眠状态激活的延时都非常短,设备搜索延时为30ms,休眠激活延时为15ms,活动设备信道接入延时为15ms。
4.传输范围小,在不使用功率放大器的前提下,Zigbee节点的有效传输范围一般在10m-75m,基本上能够覆盖普通的家庭和办公场所,具体情况则依据实际发射功率的大小和各种不同的应用模式来设定。
5.工作频段灵活,数据传输速率低。
6.数据传输的可靠性高。
7.网络容量大,1个Zigbee网络最多可支持255个设备,也就是说,1个主设备可以与另外254个从设备相连接,1个区域内最多可以同时存在1000个Zigbee网络。
以上是关于zigbee组网函数在哪儿的主要内容,如果未能解决你的问题,请参考以下文章