本发明涉及数据采集系统技术领域,具体地说是一种基于BLE4.0的中继集中器及低功耗拓扑组网方法。
背景技术:
传统的BLE4.0 Central—Peripheral通讯方式,只能进行单一的点对点传输和简单的星型拓扑连接,并且在连接过程之中需要进行“扫描——连接——配对——绑定——传输——断开”的繁琐过程,而且在其过程之中,容易存在扫描缺失,连接配对反应时间过长等问题。并且在星型拓扑的连接过程之中,主机最多只能连接8个从机,无法实现大规模的组网。而另一种传统的BLE4.0 Observer—Broadcaster的连接方式,虽然无需连接,但是无法进行大规模的数据传输采集。
技术实现要素:
本发明的目的在于解决现有技术的不足,提供一种连接快速、自组网能力大、抗电磁干扰、数据传输精确的基于BLE的中继集中器及低功耗拓扑组网方法。
本发明解决其技术问题所采用的技术方案是:
一种基于BLE的中继集中器,其特点在于设有主机BLE终端节点电路模块、从机BLE终端节点电路模块和电源供电模块,电源供电模块分别为主机BLE终端节点电路模块和从机BLE终端节点电路模块供电,所述主机BLE终端节点电路模块通过USB_P与USB_M两端口与从机BLE终端节点电路模块相连接,并通过IIC方式进行通讯,所述主机BLE终端节点电路模块包括CC2540处理器U5,电容C29,C31,C33,C27,C25,C21,C22,C19,C17,C13,电阻R9,电感L5,L7,L9,L11,晶振Y3,Y5,PCB天线E2,其中U5,R9,C33以及由晶振Y5和电容C29,C31构成的32.768k晶振系统以及晶振Y3,电容C27,C25构成的32M晶振系统共同构成了单片机最小工作系统,即单片机CC2540正常工作所需的电路系统,由电容C13,C17,C21,C22和电感L5,L7,L9,L11构成巴伦支匹配电路,用于调制发射与接收信号的阻抗匹配,并由天线E2负责信号的接收与发送;
所述从机BLE终端节点电路模块包括CC2540处理器U6,电容C30,C32,C34,C28,C26,C24,C23,C20,C18,C14,电阻R10,R11,R12,R13,R14,电感L6,L8,L9,L12,晶振Y4,Y6,PCB天线E3,LED指示灯D5,D6,D7,D8,其中U6,R10,C34以及由晶振Y6和电容C30,C32构成的32.768k晶振系统以及晶振Y4,电容C28,C26构成的32M晶振系统共同构成了单片机最小工作系统,即单片机CC2540正常工作所需的电路系统,由电容C14,C18,C23,C24和电感L6,L8,L10,L12构成巴伦支匹配电路,用于调制发射与接收信号的阻抗匹配,并由天线E2负责信号的接收与发送,电阻R11,R12,R13,R14和LED指示灯D5,D6,D7,D8构成指示灯系统,用以显示中继器工作状态,以利于通过若干中继集中器与上位机形成树状拓扑数据读写,使之形成大规模的数据传输,再通过中继集中器与若干BLE节点装置形成星形拓扑数据读写,突破了原先组网的8个从机的上限,省略了不必要的“扫描-连接-配对-绑定”的繁琐过程,使连接时长缩减为3ms,大大降低了功耗,并使得无线传输距离更远。
本发明所述中继集中器采用半双工的工作方式,以利于避免BLE节点之间的电磁干扰,达到数据传输精确的作用。
本发明所述中继集中器中的的数据包信息都带有经节点的ID号与报头报尾封装,以利于方便判别信息来源。
本发明所述电源供电模块包括直流稳压芯片AMS-1117 U4,钽电容C15,C16,电源外置接口P1,其中U4负责将外部电源降压为3.3V,C15,C16为稳压作用。
一种基于BLE4.0的中继集中器的低功耗拓扑组网方法,其特征在于组网方法步骤包括采用RSSI强度判断组建网拓扑结构和系统数据采集,采用RSSI强度判断组建网拓扑结构的步骤具体为;
1)上位机通过调用协议栈和盲连接的方式逐个向所有数据中继集中器发出搜索组网命令,以达到省去传统的BLE连接过程中不必要的繁琐等待时间;
2)数据中继集中器收到搜索组网命令后,开始启动扫描从机,并将读取到的从机IEEE地址和信号RSSI值存储;
3)上位机逐个读取数据中继集中器中存储的IEEE地址和其信号RSSI数值;
上位机将读取的BLE节点的IEEE地址和自身的对照表进行比对,与其数据库中的ID号进行映射,确定唯一关系;
4)上位机判断,是否有同一BLE节点的IEEE地址出现在不同的中继集中器返还的数据之中,如果有,则判断哪一个数据中继集中器返还的RSSI值更强,保证唯一性;
5)上位机确定BLE节点和数据集中器的从属关系,并映射BLE节点与数据集中器的ID号,建表,完成自组网;
所述系统数据采集的步骤具体为:
1)上位机确定所采集的BLE终端节点与数据中继集中器的从属关系,并向其中一个数据中继集中器发起忙连接;
2)上位机向一个数据中继集中器发布采集命令,命令中包含要信息采集的种类,采集BLE终端的节点数,采集BLE终端的IEEE地址;
3)数据中继集中器向上位机返回确认信息;
4)上位机与数据中继集中采集器断开连接;
5)上位机重复本步骤中的(1)—(4)过程,直到与所有通讯节点所属的数据中继集中器完成采集命令发布通讯;
6)数据中继集中器对其中一个BLE终端节点发起盲连接;
7)数据中继集中器向BLE终端节点发布数据采集命令;
8)BLE终端节点回复数据,数据中包含自身的BLE节点ID号;
9)数据中继集中器将回复的数据添加报头报尾封装,并在数据中添加自身的数据集中采集器ID号;
10)数据中继集中器与BLE终端节点断开连接;
11)数据中继集中器重复本步骤中的(6)—(10)过程,直到完成对所有BLE终端节点的信息采集;
12)上位机再次向数据中继集中器发起盲连接;
13)上位机向数据中继集中器发布数据返还命令;
14)数据中继集中器向上位机逐条发送所采集到的数据;
15)数据中继集中器向上位机发送数据传输完成信息;
16)上位机与数据中继集中器断开连接;
17)上位机重复本步骤中的(12)—(16)过程,直到所有数据采集完毕。
本发明所述组网方法还包括数据中继集中器判忙机制,其步骤具体为:
1)上位机与数据中继集中器发起连接,并与数据中继集中器的BLE从机部分相连接;
2)连接建立后,数据中继集中器的BLE从机部分自动通过I2C总线与数据中继集中器的BLE主机部分相通讯,询问主机工作状态;
3)数据中继集中器的BLE主机部分若忙,则回复忙。若处于正常工作状态,则回复正常;
4)数据中继集中器BLE从机部分,在收到主机工作状态后,将主机工作状态回复上位机;
5)上位机在收到数据中继集中器工作状态后,若数据中继集中器处于正常状态,则正常进行数据读取工作;
6)若上位机收到数据中继集中器工作状态为忙,则立刻断开连接,并添加备注事件;
7)在上位机与其他数据中继集中器通讯完成之后,查看备注事件,与备注事件中尚未通讯完成的数据中继集中器重复(1)—(6)过程;
8)若上位机对某一数据中继集中器判断始终处于忙的状态,则发出报警,以利于及时判断中继集中器的正常使用状态。
本发明由于采用上述结构和方法,具有连接快速、自组网能力大、抗电磁干扰、数据传输精确等优点。
附图说明
图1是本发明中继集中器的电气原理图。
图2是图1中主机BLE终端节点电路模块的放大图。
图3是图1中从机BLE终端节点电路模块的放大图。
图4是RSSI强度判断组建网拓扑结构的流程图。
图5是系统数据采集的流程图。
图6是数据中继集中器判忙机制的流程图。
具体实施方式
下面结合附图对本发明进行说明。
如附图所示,一种基于BLE的中继集中器,其特点在于设有主机BLE终端节点电路模块1、从机BLE终端节点电路模块2和电源供电模块3,电源供电模块3分别为主机BLE终端节点电路模块1和从机BLE终端节点电路模块2供电,所述主机BLE终端节点电路模块1通过USB_P与USB_M两端口与从机BLE终端节点电路模块2相连接,并通过IIC方式进行通讯,所述主机BLE终端节点电路模块包括CC2540处理器U5,电容C29,C31,C33,C27,C25,C21,C22,C19,C17,C13,电阻R9,电感L5,L7,L9,L11,晶振Y3,Y5,PCB天线E2,其中U5,R9,C33以及由晶振Y5和电容C29,C31构成的32.768k晶振系统以及晶振Y3,电容C27,C25构成的32M晶振系统共同构成了单片机最小工作系统,即单片机CC2540正常工作所需的电路系统,由电容C13,C17,C21,C22和电感L5,L7,L9,L11构成巴伦支匹配电路,用于调制发射与接收信号的阻抗匹配,并由天线E2负责信号的接收与发送;
所述从机BLE终端节点电路模块包括CC2540处理器U6,电容C30,C32,C34,C28,C26,C24,C23,C20,C18,C14,电阻R10,R11,R12,R13,R14,电感L6,L8,L9,L12,晶振Y4,Y6,PCB天线E3,LED指示灯D5,D6,D7,D8,其中U6,R10,C34以及由晶振Y6和电容C30,C32构成的32.768k晶振系统以及晶振Y4,电容C28,C26构成的32M晶振系统共同构成了单片机最小工作系统,即单片机CC2540正常工作所需的电路系统,由电容C14,C18,C23,C24和电感L6,L8,L10,L12构成巴伦支匹配电路,用于调制发射与接收信号的阻抗匹配,并由天线E2负责信号的接收与发送,电阻R11,R12,R13,R14和LED指示灯D5,D6,D7,D8构成指示灯系统,用以显示中继器工作状态,以利于通过若干中继集中器与上位机形成树状拓扑数据读写,使之形成大规模的数据传输,再通过中继集中器与若干BLE节点装置形成星形拓扑数据读写,突破了原先组网的8个从机的上限,省略了不必要的“扫描-连接-配对-绑定”的繁琐过程,使连接时长缩减为3ms,大大降低了功耗,并使得无线传输距离更远。
本发明所述中继集中器采用半双工的工作方式,以利于避免BLE节点之间的电磁干扰,达到数据传输精确的作用。
本发明所述中继集中器中的的数据包信息都带有经节点的ID号与报头报尾封装,以利于方便判别信息来源。
本发明所述电源供电模块包括直流稳压芯片AMS-1117 U4,钽电容C15,C16,电源外置接口P1,其中U4负责将外部电源降压为3.3V,C15,C16为稳压作用。
一种基于BLE4.0的中继集中器的低功耗拓扑组网方法,其特征在于组网方法步骤包括采用RSSI强度判断组建网拓扑结构和系统数据采集,采用RSSI强度判断组建网拓扑结构的步骤具体为;
1)上位机通过调用协议栈和盲连接的方式逐个向所有数据中继集中器发出搜索组网命令,以达到省去传统的BLE连接过程中不必要的繁琐等待时间;
2)数据中继集中器收到搜索组网命令后,开始启动扫描从机,并将读取到的从机IEEE地址和信号RSSI值存储;
3)上位机逐个读取数据中继集中器中存储的IEEE地址和其信号RSSI数值;
上位机将读取的BLE节点的IEEE地址和自身的对照表进行比对,与其数据库中的ID号进行映射,确定唯一关系;
4)上位机判断,是否有同一BLE节点的IEEE地址出现在不同的中继集中器返还的数据之中,如果有,则判断哪一个数据中继集中器返还的RSSI值更强,保证唯一性;
5)上位机确定BLE节点和数据集中器的从属关系,并映射BLE节点与数据集中器的ID号,建表,完成自组网;
所述系统数据采集的步骤具体为:
1)上位机确定所采集的BLE终端节点与数据中继集中器的从属关系,并向其中一个数据中继集中器发起盲连接;
2)上位机向一个数据中继集中器发布采集命令,命令中包含要信息采集的种类,采集BLE终端的节点数,采集BLE终端的IEEE地址;
3)数据中继集中器向上位机返回确认信息;
4)上位机与数据中继集中采集器断开连接;
5)上位机重复本步骤中的(1)—(4)过程,直到与所有通讯节点所属的数据中继集中器完成采集命令发布通讯;
6)数据中继集中器对其中一个BLE终端节点发起盲连接;
7)数据中继集中器向BLE终端节点发布数据采集命令;
8)BLE终端节点回复数据,数据中包含自身的BLE节点ID号;
9)数据中继集中器将回复的数据添加报头报尾封装,并在数据中添加自身的数据集中采集器ID号;
10)数据中继集中器与BLE终端节点断开连接;
11)数据中继集中器重复本步骤中的(6)—(10)过程,直到完成对所有BLE终端节点的信息采集;
12)上位机再次向数据中继集中器发起盲连接;
13)上位机向数据中继集中器发布数据返还命令;
14)数据中继集中器向上位机逐条发送所采集到的数据;
15)数据中继集中器向上位机发送数据传输完成信息;
16)上位机与数据中继集中器断开连接;
17)上位机重复本步骤中的(12)—(16)过程,直到所有数据采集完毕。
本发明所述组网方法还包括数据中继集中器判忙机制,其步骤具体为:
1)上位机与数据中继集中器发起连接,并与数据中继集中器的BLE从机部分相连接;
2)连接建立后,数据中继集中器的BLE从机部分自动通过I2C总线与数据中继集中器的BLE主机部分相通讯,询问主机工作状态;
3)数据中继集中器的BLE主机部分若忙,则回复忙。若处于正常工作状态,则回复正常;
4)数据中继集中器BLE从机部分,在收到主机工作状态后,将主机工作状态回复上位机;
5)上位机在收到数据中继集中器工作状态后,若数据中继集中器处于正常状态,则正常进行数据读取工作;
6)若上位机收到数据中继集中器工作状态为忙,则立刻断开连接,并添加备注事件;
7)在上位机与其他数据中继集中器通讯完成之后,查看备注事件,与备注事件中尚未通讯完成的数据中继集中器重复(1)—(6)过程;
8)若上位机对某一数据中继集中器判断始终处于忙的状态,则发出报警,以利于及时判断中继集中器的正常使用状态。
本发明由于采用上述结构和方法,具有连接快速、自组网能力大、抗电磁干扰、数据传输精确等优点。