19269| 6
|
浅谈Xbee模块组网,顺带推荐下《例说XBee无线模块开发》 |
花了一个多星期把《例说XBee无线模块开发》大致了研究了一遍,怎么着也算好好看完一本书了,小时候落下的毛病,总觉得该写个读后感之类的东西才算完整,所以趁着新鲜出炉的热劲决定写些什么。 关于XBee模块,书的封皮有介绍: XBee模块时美国Digi公司的ZigBee模块产品,XBee是系列产品的名称。XBee模块是一种远程低功耗的无线模块,频段包含2.4G、900M、868M三种,同时可兼容802.15.4的协议。XBee模块可用于组建Mesh网络,每个模块都可以作为路由节点、协调器,以及终端节点。XBee模块的配置方式有两种,分别是AP和API命令。XBee模块分为嵌入式和贴片式两种,可即插即用自组网,使用起来非常方便。XBee模块的应用范围非常广泛,包括智能家居、远程控制、无线抄表、传感器、无线检测、资产管理等,同时还有对应的iDigi平台,提供各种常用的接入方式,更加方便远程控制。 下面粗略介绍下一个利用XBee模块进行的组网实验 从官网(http://www.digi.com/support/productdetail?pid=3352&osvid=57&type=utilities)下载了最新版的XBee调试软件:X-CTU5.2.8.6。 将两个XBee模块贴上标签,XMTR表示发射端,RCVR表示接收端,当然,XBee模块兼具发送和接收信息的功能,作为接收端同时也可以发送信息,这里贴上标签主要为了区分。 采用DFRobot出品的XBee转USB适配器v2连接到电脑: 此时再打开X-CTU软件,对XBee模块进行设置。 这里将RCVR和XMTR分别设置为协调器和终端,修改设置如下:
保持RCVR插在USB转XBee适配器上连接电脑。将XMTR经过XBee适配器插到面包板上,电源和地端口连接3.3V电源,DIO5-Associate端口接led和330欧电阻。led在这里作为一个可视化的指标进行测试和调试。 打开面包板电源,给XTMR模块供电,观察led,led点亮并保持4秒左右开始闪烁,说明该终端设备与协调器配对成功。只要配对的终端设备模块有电,它上面的led将一直闪烁。 打开X-CTU软件Terminal窗口,使用AT指令格式,输入“+++”(注意这里要检查输入法,全角输入的“+++”是无效的),等待来自连接到主机PC上的协调器回复“OK”。输入“ATND[ENTER]”,可以查看所有关联的终端设备模块信息。这里我只设置了一个终端,根据之前的参数设置,在窗口可以看到信息如下: 结果反映了终端设备XMTR的信息:
MY-16-Bit Address为0xFFFE,似乎很意外。为什么不是之前设置的0x2222呢?根据digi公司的XBee和Xbee PRO模块手册: 当一个终端设备与一个协调器配对时,它的MY参数设置成0xFFFE来使能64位寻址。模块的的64位地址被存储为SH和SL参数。发送一数据包到指定的模块,发送器的目的地址(DL+DH)必须匹配指定接收器的源地址(SL+SH)。 所以0xFFFE为临时MY值。 用API数据包检查数据响应。清空X-CTU终端窗口,单机“十六进制显示(Show Hex)”按钮,单击“生成数据包(Assemble Packet)”按钮。在“显示(Display)”标签中选择“十六进制(HEX)”,在“发送数据包(Send Packet)”窗口内输入: 7E 00 04 08 52 4E 44 13 这一系列十六进制值代表用来发现XBee模块的API ND命令数据包。 如图所示在终端窗口观察到终端设备模块XMTR的信息。 关于16进制命令格式的可以参考digi公司的XBee和Xbee PRO模块手册(“XBee/Xbee-PRO RF Modules”下载地址http://ftp1.digi.com/support/documentation/90000982_P.pdf)。 一个被配置作为协调器的模块能通过扫描来发现未使用的信道。XBee模块的非信标网络能够让你快速地“点名”来确定是否有特定终端设备已经配对协调器。 再次清空X-CTU终端窗口,开启十六进制显示。在左侧窗口输入“+++”,等待回复“OK”。接下来输入“ATDN”,紧随其后输入终端模块的名称(NI-Node Identifier信息),这里即“TEDDY”。执行该步骤后,可以观察到: 发聩的“OK”表明名为“TEDDY”的终端设备模块仍然运行在这个网络中,与我的协调器器RCVR配对。 那么如果协调器或者终端发生断电的情况会有什么变化呢? 先来看终端设备断电后。关掉XTMR模块的供电,等待几秒,这时从X-CTU“终端”窗口发送ATND节点发现命令到协调器,已经看不到终端设备XTMR的信息。给终端设备XTMR重新上电,与开始的时候类似,led点亮后几秒后开始闪烁表明已接入网络。 接下来断开协调器RCVR和USB转XBee适配器的USB数据线,关闭协调器。终端的led继续闪烁了30分钟。所以led在这里仅仅能够用作配对测试,而不能指示忘了的连接情况。重新连接协调器RCVR和USB转XBee适配器的USB数据线,需要重新打开XCU软件检查通讯连接。连接正常后在X-CTU终端窗口发送一条ATND指令给协调器,可是仍然看不到反馈终端设备XTMR的信息,说明设备没有配对。当网络中有带电终端模块,而协调器掉电,它不会自动与终端设备模块配对,此时可以发送给协调器一个RF(强制复位)命令强制重新配对。 在终端窗口输入“+++”并等待回复“OK”,然后输入“ATFR[Enter]”。你应该会看到终端窗口中的“OK”消息,并在十六进制窗口跟随两个数据包: 7E 00 02 8A 01 74 and 7E 00 02 8A 06 6F 表明终端设备已经重新配对。 以上是书中其中一个实验,包含了XBee模块的常用功能,更多精彩还有待小伙伴们亲身实践。 笔者在看完本书和进行了相关XBee的实践之余,不禁参考了当下几种主流无线射频或组网手段的应用情况。 ZigBee Zigbee是IEEE 802.15.4协议的代名词,这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。 其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。 蓝牙 蓝牙技术联盟(Bluetooth Special Interest Group,SIG)日前宣布正式采纳蓝牙规格4.0版本,并启动对应的认证计划。在3.0+HS版本标准加入高速传输技术的基础上,4.0版本又加入了之前诺基亚力推的Wibree低功耗传输技术。 至此,蓝牙已经不是当初大家熟悉的只适用于WPAN的“蓝牙”了。而是集IEEE 802.15.1传统蓝牙,IEEE 802.11物理层和MAC层以及Wibree标准的“三合一”的蓝牙。 低功耗传输部分作为蓝牙4.0版本的重点,沿用了曾经的Wibree标准。采用简单的GFSK调制,拥有极低的运行和待机功耗,使用一粒纽扣电池甚至可连续工作数年之久。 毫无疑问,新的低功耗蓝牙将挑战诸如ZigBee、NFC等技术,低功耗蓝牙的网络拓扑相比ZigBee的星型拓扑简单得多,而传输距离又比NFC有很大优势,尽管是个后来者,但凭借其在手机和音频领域的领先地位,未来发展还是值得期待。 蓝牙技术的缺点和优点一样明显: 数据传输瓶颈问题。高速跳频使得蓝牙传输安全性极高,同时也限制了蓝牙传输过程中数据包不可能太大,哪怕是在宣传的高保真蓝牙耳机中,它的高低频部分也是被严重压缩的。 WiFi WiFi(Wireless Fidelity,无线保真技术)即IEEE 802.11协议,是一种短程无线传输技术,能够在数百英尺范围内支持互联网接人的无线电信号。WiFi的第一个版本发表于1997年,其中定义了介质访问接入控制层(MAC层)和物理层。 覆盖范围广 蓝牙的电波覆盖范围很小,半径大约只有15 m,而WiFi的半径可达100 m,甚至可以覆盖整栋大楼。 WiFi的传输速度很快 最高可达54Mb/s,符合个人和社会信息化的需求。在网络覆盖范围内,允许用户在任何时间、任何地点访问网络,随时随地享受诸如网上证券、视频点播(VOD)、远程教育、远程医疗、视频会议、网络游戏等一系列宽带信息增值服务。并实现移动办公。 健康安全 IEEE 802.11规定的发射功率不可超过100 mW,实际发射功率约60~70 mW,而手机的发射功率约200mW~1 W,手持式对讲机高达5 W。与后者相比,WiFi产品的辐射更小。 在ZigBee和蓝牙的关系上,ZigBee联盟认为ZigBee和蓝牙是互为补充,而不是互相竞争。比较了蓝牙和ZigBee的各项技术指标,将两者相结合具有较好的发展前景。有研究表明两者共存以及相互干扰的特性,证明两者互联工作的方案切实可行。 其他还可以参考以下文章,除本书外可以从网上取得: 《例说XBee无线模块开发》 《XBee/XBee PRO Modules》 《ZigBee 、WiFi 、蓝牙等常用24Ghz 无线技术的区别》 《三种近距离技术ZigBee、蓝牙(Bluetooth)和WiFi介绍》 |
我是新新新手。。。现在手上有一对XBEE pro和USB adapter,也下载了X-CTU,但是连接起来以后它说“unable to open com port”,求助是怎么回事?:'( |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed