ANT无线通信技术(2) 通道配置

一、ANT通道介绍

ANT通道的配置是ANT应用开发中的关键。官方文档中的叫法是“channel”,之所以我翻译为“通道”,而不是“信道”或者“频段”,是因为后两词是常用于电子通信领域中的一个专有概念,往往带有许多的技术背景与色彩。而ANT技术灵活多变的组网通讯方式,使得ANT channel拥有了更为丰富的逻辑含义,使用汉语中意义最广泛的“通道”一词能更好得描述这个抽象的逻辑概念。

一个ANT通道用于连接至少两个节点,使其能够交换信息。每个通道至少有一个主节点(Master Node)和一个从节点(Slave Node)。

主节点的角色主要是是信息发送者,从节点的角色主要是信息接收者。注意这个用词“primary transmisstor”,也就说明主节点并不是完全不能接收信息,他也可以反向接收,从节点并不是完全不能发送信息,在必要的时候他也可以反向发送。

通常来说,我们定义数据消息的传输方向:

              1. 正向传输       主节点————————>从节点    (always)

              2. 反向传输   主节点<————————从节点    (optional)

二、ANT通道配置

之后通过设定一些参数,我们可以实现对ANT通道的配置。需要设定的参数有以下几个:


1.通道类型(channel type)

  1.1可选扩展分配(optional extended assignment)

2.无线频率(RF freq.)

3.通道ID(channel ID)

  3.1设备号(device ID)

  3.2传输类型(transmission type)

  3.3设备类型(device type)

4.通道周期(channel period)

5.网络(network)

  5.1网络号(network number)

  5.2网络密钥(network key)

下面来详细讲讲各个参数的具体内容。

1.通道类型 [8bit]

ANT协议根据对通道的使用方式定义了4种通道类型,使用一个8bit的数据域来定义。所有节点在通信前都需要设定自己使用的通道类型,我们可以理解为,这种“自律”的行为,其实也就是为我们定义节点的主从提供了方便。举个有趣的例子,把主节点比作皇阿玛,从节点比作奴才,那么自然就发现皇阿玛总是发号施令的人,而奴才只有听旨的份。 :D


数值


通道类型


描述


0x40


单向主/从通道


仅用于最经典且最“古老”的广播数据类型,节点要么单发,要么单收,因此并不能用于需要网络管理等高级机制的情况。


0x10


双向主通道


定义节点为双向通道中的主节点。


0x00


双向从通道


定义节点为双向通道中的从节点。


0x20


共享双向通道


这是最“高级”的形式,用于2个以上节点共用一个通道的情况。比如一个主节点在一个信道上分别对多个从节点交换数据。

                       表1    ANT通道类型

1.1可选扩展分配 [8bit?]

可选扩展分配通过设定一个字段,可以开启一些高级的功能,比如抗干扰的频率捷变功能(freq. agility),以及调试网络使用的后台搜索通道功能(background scanning channel)。我们到后面再详细说这些内容。

2.无线频率 [8bit]

ANT技术使用2.400GHz~2.524GHz频段也就是2400MHZ~2542MHz进行通信,以1MHz为间隔,划分为125个小频段使用。一个通道只能工作在一个小频段上,而不能同时工作在多个小频段。

以下公式用于确定节点工作的无线频率:

                           

其中无线频率设定值RF_Frequency_val的范围是 0x00~0x7c

3.通道ID [16bit+8bit+8bit]

通道ID包含三个内容:设备号、传输类型、设备类型。通道ID是一个通道的基本描述。对于主节点,应当设置其通道ID,表明自己的“属性”。比如“皇阿玛”和“大将军”,都是主节点,都能发送信息,但是一个是理政的“圣旨”一个是打仗的“军令”,明显类型不同,必须用设备类型来区分。再比如阿哥们给下边“传话”,小太监们怎么知道是哪个阿哥的话呢?从“大阿哥”到“bug”,设备号从一到八,这就好办了。另外传输类型,则可以用于定义某些传输特性,留给开发厂商们自由发挥。

这样一来,主节点设置好了自己的通道ID,从节点在寻找主节点的时候就可以利用ID来匹配主节点了。这个时候还可以使用0通配多个主节点。

3.1设备号 [16bit]

每个节点应拥有唯一的设备号,用于其它节点识别自己的身份。当然,从节点可以使用0通配所有主节点。如果是使用16位字段编号,我们可以计算出,在ANT网络的一个共享双向信道中,最多支持2^16-1个从节点,减去的那个1,是主节点。

3.2传输类型 [8bit]

传输类型用于定义设备的某些传输特征,可以让开发者们自由发挥。官方的做法是将其最高位的四位与前面的设备号联用,将设备号域扩展为20bit,然后将其最低的两位作为共享地址域的使能开关,用于表明有效数据载荷(data payload)中的共享地址域是否启用,以及长度多少。

3.3设备类型 [8bit]

用于将设备(主)按需分类,例如按功能逻辑心率表一类,温度表一类,这样设备(从)可以很方便地按照预先设定好的方式与某一类设备通信。8位中的最高位为配对位,表明是否允许该主设备被从设备配对,这个我们到后面的章节专门讲。也就是说,一共可以划分2^7个设备类型。

此外,如果将全部通道ID域当作设备号域来使用,我们得到ANT网络理论的最大节点数为2^32,官方数据就是这么来的。

4.通道周期 [16bit]

设定主节点的发送频率,范围0.5Hz~200Hz,即最慢2s一次,最快0.005s一次。通道周期由以下公式设定:

Channel_Period_val  取值范围 163.84~65536

官方推荐的通道周期是4Hz,也就是设定值为8192。这是在功耗,以及传输速率上的折中考虑,因为设备功耗与通道周期相关,周期越小,功耗越大,传输速率越快,设备搜索速度越快。

5.网络 [8bit+8*8bit]

一个ANT网络由至少2个节点组成,利用网络这个概念,可以将拥有不同通信规则的节点们区分开来。特定的网络拥有一套特定的规则,例如ANT+网络,其实质是由同一领域不同商家构成的开放的行业联盟。所谓开放是指仅仅对联盟内成员开放相关技术规格。也就是我们常说的配置方案“profile”。利用profile可以指定数据格式、通道参数、网络密钥(network key)等参数。

在我看来,ANT网络的出现,不仅有助于提高不同厂商间设备的互操作性,更重要的是有助于提高ANT技术的逼格,帮助ANT在某些领域巩固地位。通过提高准入的门槛,nordic可以轻松地将一大批擅长C2C的天朝寨厂吓跑,然后吸引资力雄厚的大腕厂商们来投ANT门下,一起抬高技术价格,赚取更多利润。当大厂们的东西占遍市场之后,借助行业优势就可以排斥后来技术,这样的事情尤其会发生在设备生命周期长,性能需求升级不多的领域。即便是有更新更好的技术,如果你不舍得便宜卖,那就卖不动。这一些都是技术层面之外的博弈,你想到什么了? TD对不对,呵呵。

扯远了,回到正题。既然是高大上,目前还玩不起的就简单点说吧!

  • 网络号(network number) :用于标识一个ANT网络,默认0为公共网络。
  • 网络密钥(Network Key):用于特定网络中的加密解密“通行证”,与网络号对应,默认0为公共网络密钥,贵。

以上就是ANT通道配置中的各个参数的介绍,下一章补充几个概念后,将给出一个ANT节点配对的通道配置实例。

             

时间: 2024-10-12 02:46:56

ANT无线通信技术(2) 通道配置的相关文章

ANT无线通信技术(3) 数据类型及拓扑结构

Previously,我们说了配置ANT通道相关的几个参数,但想要完成节点的通道配置与配对的全过程,我们还有几个概念与参数需要提前了解. 一.典型的ANT节点结构 这里我并不会过多地介绍ANT模块的硬件模块,但要说明的是,ANT作为一种高度集成且精简高效的商用私有协议,nordic提供了完整SoC无线解决方案.比如nRF24APx系列,nRF51xxx系列等,都是常用的ANT模块.只需要配合极少数的外部MCU资源就可以完成应用的开发.下图是一个典型的ANT节点结构图,ANT模块通过一个异步或同步

ANT无线通信技术(4) 配对实例

了解了有关通道配置的概念之后,接下来我们通过实例进行ANT配对的学习. 一.配对 在两个节点间建立一个ANT通道的过程,叫做配对(pairing).具体操作是,一个从节点获取一个主节点广播的唯一的通道ID,并储存或暂存在存储器中,然后节点间便可以开始通信.配对可以是永久的,半永久,或者暂时的.ANT提供多种功能,以满足不同的配对要求,但并非所有模块都能支持这些功能,具体情况可以参考模块手册. 配对位(pairing bit) 包含/排除列表(in/exclusion list) 临近搜索(pro

ANT无线通信技术(5) ANT与MCU的SPI通信时序分析及相关程序设计

ANT与MCU可以使用异步UART或同步SPI两种方式连接.异步通信与同步通信的各自特点这里不赘述,总之我们选择使用同步方式进行连接. 一.SPI简介 SPI(Serial Peripheral Interface),串行外设接口.是摩托罗拉公司开发的一种同步全双工通信协议.依靠收发两端的移位寄存器,以及主机master提供的时钟信号,双方可以实现较高速率的同步全双工传输. 标准的SPI是3/4根线,分别用于一主一从/多主从的情况.4根线分别是: MOSI 主机发,从机收 master out

Ant入门教程之安装配置

一.安装 下载地址:http://ant.apache.org/,本文中下载的是1.9.4版本. 解压到某个目录(例如D:\apache-ant-1.9.4)即可使用. 二.配置 添加系统环境变量:ANT_HOME 该变量指向Ant解压后的根目录,本文为:D:\apache-ant-1.9.4 添加Path变量 : 在path最后面追加 %ANT_HOME%\bin; (注意分号) 三.测试是否成功 打开cmd,运行命令ant -version,若安装和配置成功,则会显示Ant版本信息,如下:

以太通道配置

以太通道配置,布布扣,bubuko.com

个域网通讯协议 ZigBee - 另一个不老的短距离、低功耗无线通信技术

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 本来没想发此篇,对于 zigbee 的兴趣没这么深刻,可是看到下面截取百度百科原文的最后一句"2009年开始,Zigbee采用了IETF

MQ通道配置

转自:http://www.cnblogs.com/me115/p/3471788.html 通道是用来连接两个队列管理器的: 在单个队列管理器内读写消息不需要建立通道:但在一个队列管理器中写入消息,而从另一个队列管理器中的队列取出消息,这就需要建立通道: 通道,对跨机和本机的队列管理器不做区分,对于两个队列管理器,不论是否分布在同一个机器上,配置方式都是一样的,所不同的就是ip的地址配置: 通道类型 通信双方的通道类型配对并不是可以随意排列组合的,共有六种.(详见<精通MQ>1.2.4 p2

ant 和 ivy安装和配置(windows)

注意安装ivy之前先安装ant, 因为 ivy是基于ant的. ANT 的安装和配置 一.检查系统是否已安装过ant 快捷键 win+R 调出运行对话框,输入cmd 点击确定打开dos窗口. (1)直接输入命令 ant , 若出现下图所示说明已经安装并配置了环境变量. 或者:(2) 在命令窗口输入 ant -version 会出现ant的版本号说明已经安装并配置了环境变量. 如果出现: 'ant'不是内部或外部命令,也不是可运行的程序或批处理文件. 说明ant还没有安装或环境变量没有配置. 二.

Java构建工具Ant之在Windows下配置环境变量

配置环境变量这个东西应该要烂在程序猿,基本上Windows或者Mas osx还是Linux都有固定的配置方式,我们在使用任何软件都是基于系统这个最高层的应用程序上的,前面笔者已经介绍过如何在Max os配置java环境变量,这里不再赘述. 计算机->右键->属性 定义系统变量ANT_HOME 指定变量值"你的ant的安装目录" 跟Java环境变量配置方法一样,如果指定了ant环境变量之后,就可以在cmd命令行下使用ant提供的命令:ant -version 输出ant当前版