0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Digi XBee3 ZigBee组网和通信测试步骤

lcdz66 来源:雨飞工作室 2023-12-14 09:17 次阅读

下面采用Digi的XBee ZigBee mesh网络开发套件来进行组网和通信操作,需要装备好至少两个模块和对应的开发底板。

首先,确保您的电脑上已经安装好Digi的开发工具XCTU,请下载对应您的电脑操作系统的最新版本。将两个Digi的XBee ZigBee模块通过开发底板和电脑连接起来,打开XCTU,用左上角的带有放大镜图标的查找按钮来查询连接到电脑上的模块,并把它添加到XCTU左侧的无线模块列表中。在XCTU软件中,默认是位于配置窗口中,点击左边模块,便会读取模块相关的参数,在配置窗口中展现出来。

wKgZomV6WDmAYXbxAALUVS7ToJo903.jpg

XCTU的参数区域的上方,有一排常用的按钮,分别是读取(read),写入(write)参数,加载默认参数(default),升级固件(update),配置导入导出(profile)。首次使用,建议用Update按钮更新一下到最新固件,在firmware version中选择最上方最新的固件,确定是ZigBee协议的固件,去掉“强制模块保留当前配置”的选项,然后点update按钮。这样就恢复模块到出厂的设置。如果您的模块已经是最新固件,请用参数区上方的“Default”按钮加载模块的默认参数,并按“Write”写入模块,使模块恢复出厂的配置,确保不会因为之前使用时的不恰当参数影响通信效果。写入默认值后,再按“Read”按钮重新加载一下参数到XCTU右侧的参数栏上。

点击左侧另一个模块,用同样的方式恢复一下模块的出厂设置。在配置模式下,如果仅对某个参数进行读取和写入,可以使用对应参数右方的刷新和写入按钮。

两个ZigBee模块要相互通信,必须在同一个网络中,所以我们需要**将一个模块配置成协调器,另一个模块配置成路由器并加入到协调器的网络中。**注意:模块默认的NJ为254s,所以在5min内会关闭允许加入,为了避免加入窗口被关闭,可以把NJ改为FF,也就是永远允许加入。

以下两个模块简称A和B。
A模块:CE=1 配置为协调器,DL=FFFF,NJ=0xFF
B模块:不改任何参数。

将A模块的CE改为1,就把模块配置成协调器了,这时模块会生成一个网络号为ID指定值的ZigBee网络,默认ID=0,因此协调器会生成一个随机64bit的网络号的ZigBee网络。如果刷新模块参数,会发现OP和CH有一个值了,这里OP是指当前的网络号,CH是指当前的信道号。DH和DL组成模块的目标地址,我们把DL改为FFFF,是因为默认DH和DL都为0,这样指代协调器本身,DH为0而DL=FFFF则是广播地址。

B模块是默认的路由器的出厂配置,ID=0表示可以加入任意网络。如果周边没有其它ZigBee网络,B模块又是首次使用,那么它肯定会在10秒内加入A模块的网络,可以读取一下B模块的OP和CH,观察它是否和A模块相同,以此来判断是否在同一个网络中。默认地B模块的DH和DL都是0,表示目标地址是协调器。入网后,模块的入网指示灯会均匀地闪烁(每秒两次),这样我们已经配置好两个对发的模块了。如果B模块的Assoc指示灯没有闪烁而是常亮,那表示还没有入网,这时可以手动在commissioning按钮上连按四下,让这个模块离开原来网络,以便加入A模块的网络,通常只要天线连着,就可以看到B模块入网,然后我们就可以做透传对发测试。

这时我们可以点击右上角的图标切换到终端窗口,来观察串口数据透传的效果。终端窗口实际上是个带有ASCII和16进制显示终端的串口调试工具,有个串口打开/关闭按钮,以及一个视图分离按钮,方便查看两个模块各自的收发数据。

wKgaomV6WDmAAHLUAAGqmKVmDwg773.jpg

分别选中模块,并在终端模式中打开串口,将其中一个模块的串口终端视图分离,我们在任意一个终端中输入数据,另一个模块的张端就能收到相同的数据。如下图所示:

wKgaomV6WDmAE9xAAAFg6sfc3V0639.jpg

在透传模式下,数据送入A模块的串行UART接口,就会被发到目标地址指定的B模块上,从B模块的串行UART中输出,所以称之为透传。平时模块处于空闲或传输数据的状态,当我们需要更改模块参数时,就可以通过向串口发指定时序的特定字符串来进入命令模式,以便更改模块配置。默认地,在空闲期间连续输入三个“+”号可进入命令模式,这时可以通过向串口发AT命令来实现特定功能。比如,我们之前设置协调器的目标地址为0xFFFF,这样网络内所有的模块都能收到该数据并转发;如果我们只需向特定的模块发送数据,就不应该用广播模式,而需要把目标地址设置为特定的模块的MAC地址。

下面AT命令演示了读取B模块的自身地址并将它设置为A模块的目标地址的过程:

在B模块上,用“+++“进入命令模式,发ATSH,ATSL分别读出模块64位MAC地址的高位和低位。切换到A模块的终端窗口中,用ATDH和ATDL把刚才获取得的参数设置目标地址,并用ATWR写入flash,这样断电重启后配置不会被清空。注意:**默认地在命令模式中如果10s内无任何输入,就会退出命令模式,回到透传模式的空闲状态。**所以AT命令中的字符请连续输入不要间停超过10s,否则需要重新用”+++“进入命令模式。

wKgZomV6WDmAGd77AAEmjhIRi2Y621.jpg

静静等待约10s后模块退出命令模式(也可以发ATCN命令直接退出命令模式),这时在终端窗口中输入数据,另一个模块的终端也能收到数据。只不过,此时作为协调器的A模块不再是广播模式,而是只定向往B模块发数据了。

通过AT命令可以设置很多参数,比如NI是设置模块的ASCII名称,NR是退网命令,ID是指定网络名称,还可以通过AT命令读取或设置模块的IO口状态等。

下面我们将把A模块的网络ID更改,让B模块重新加入,以下是完整操作过程的相关AT命令:

A模块:1)读一下CE,以确定是要操作的协调器A模块;2)读一下当前ID值;写入新的网络ID;3)配置写入flash;4)稍等片刻后查询当前工作的网络ID。

wKgZomV6WDmAMJXCAAE9HnUP5nw118.jpg

B模块:1)读一下CE,确定是路由器;2)读一下当前网络ID;3)读一下当前信道;4)发退网命令,离开之前加入的网络;5)稍等片刻查询新加入的网络ID;6)查询当前信道。

wKgZomV6WDmAdLapAAFIuzjMvLI853.jpg

由于透传模式下,需要通过特定字符组合和时序进入命令模式,在一些需要频繁使用AT命令的场景下就显得很不方便,因此Digi的模块除了支持透传模式外,还可以通过API模式更灵活地使用模块。







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ZigBee
    +关注

    关注

    158

    文章

    2268

    浏览量

    242508
  • 路由器
    +关注

    关注

    22

    文章

    3705

    浏览量

    113513
  • Mesh网络
    +关注

    关注

    0

    文章

    44

    浏览量

    14156
  • 协调器
    +关注

    关注

    0

    文章

    29

    浏览量

    15929
  • xctu
    +关注

    关注

    0

    文章

    3

    浏览量

    3018

原文标题:Digi XBee3 ZigBee组网和通信测试

文章出处:【微信号:雨飞工作室,微信公众号:雨飞工作室】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Digi采用电池供电长寿命无线传感器XBee

      Digi近日推出了XBee传感器。这是一种由电池供电的长寿命无线传感器,易于连接到 Drop-in Networking 网络应用或 ZigBee 网络中。ZigBee 技术使低成
    发表于 10-29 14:52

    Digi长寿命XBee无线电池传感器

      Digi推出了 XBee (R) 传感器。这是一种由电池供电的长寿命无线传感器,易于连接到 Drop-in Networking 网络应用或 ZigBee 网络中。ZigBee
    发表于 10-29 15:43

    Digi用于创建无线传感器网络的XBee传感器

      Digi近日推出了XBee传感器。这是一种由电池供电的长寿命无线传感器,易于连接到 Drop-in Networking 网络应用或 ZigBee 网络中。ZigBee 技术使低成
    发表于 11-15 16:53

    Digi推出新一代XBeeXBee

    关键词:Digi , XBee , XBee-PRO , ZigBee模块 美国明尼苏达州明尼通卡市(2010年6月8日)? Digi In
    发表于 10-14 17:30 664次阅读

    关于Digi International XBee® S2D ZigBee线程就绪射频模块的分析介绍

    Digi XBee S2D ZigBee 线程就绪射频模块提供更大的内存容量,使得设计人员能够升级到线程网络协议。 此线程就绪射频模块不仅保留了之前 XBee 型号的优势,同时还采用了
    的头像 发表于 08-23 10:54 2767次阅读

    基于XBee进行ZigBee组网——XBee介绍

    XBee模块是Digi公司的一款采用ZigBee技术的无线模块,通过串口与单片机等设备间进行通信,能够非常快速地实现将设备接入到ZigBee
    发表于 07-06 10:29 2765次阅读
    基于<b class='flag-5'>XBee</b>进行<b class='flag-5'>ZigBee</b><b class='flag-5'>组网</b>——<b class='flag-5'>XBee</b>介绍

    Digi XBee LR模块的主要特点

    全球领先的物联网连接产品、解决方案和服务提供商迪进国际(Digi International®, NASDAQ: DGII)今天发布了Digi XBee® LR模块,这是首款XBee
    的头像 发表于 07-04 15:44 788次阅读

    将超声波测距传感器与Digi XBee3连接

    电子发烧友网站提供《将超声波测距传感器与Digi XBee3连接.zip》资料免费下载
    发表于 12-06 15:04 0次下载
    将超声波测距传感器与<b class='flag-5'>Digi</b> <b class='flag-5'>XBee3</b>连接

    带有BMP180的DIGI XBEE3

    电子发烧友网站提供《带有BMP180的DIGI XBEE3.zip》资料免费下载
    发表于 12-12 10:24 0次下载
    带有BMP180的<b class='flag-5'>DIGI</b> <b class='flag-5'>XBEE3</b>

    带雨滴传感器的DIGI XBEE3

    电子发烧友网站提供《带雨滴传感器的DIGI XBEE3.zip》资料免费下载
    发表于 12-12 09:50 0次下载
    带雨滴传感器的<b class='flag-5'>DIGI</b> <b class='flag-5'>XBEE3</b>

    将 SiLabs XBee3 LTE-M 连接到 Medium One 物联网云

    将 SiLabs XBee3 LTE-M 连接到 Medium One 物联网云
    的头像 发表于 12-30 09:40 487次阅读

    看图细说Digi XBee模块型号

    先说说Digi XBee模块的分类,从频段、扩频技术、封装、天线接口、发射功率几个方面划分。
    的头像 发表于 01-09 17:20 1783次阅读

    Digi XBee3 Zigbee模块的硬件设计Troubleshooting问题分析

    Digi XBee3 Zigbee模块的硬件设计指南里,有个Troubleshooting问题,值得注意。
    的头像 发表于 02-06 09:51 871次阅读

    浅谈Digi XBee模块的操作模式

    一般地,Digi XBee模块有空闲模式、接收模式、发送模式、睡眠模式和命令模式5种操作模式。下面以XBee3 Zigbee模块来说明。
    的头像 发表于 02-06 14:08 1657次阅读

    浅谈Digi XBee3模块如何设置“自定义默认值”

    Digi XBee3模块的设备参数一旦在应用程序中进行测试并最终确定,这次参数,客户就可以把它们设为默认值。 这些自定义配置可以在制造设备时锁定固件版本或设置命令值,从而无需安装工程师现场调整设备参数。
    的头像 发表于 02-10 11:32 1013次阅读