当前位置:首页 期刊杂志

基于蓝牙透传模式的NB-IoT 信号检测系统设计

时间:2024-05-04

谭方勇,瞿伟,刘子宁,王昂

(苏州市职业大学计算机工程学院,苏州 215104)

0 引言

NB-IoT(Narrow Band Internet of Things,窄带物联网)是当前物联网技术中的一种基于蜂窝网络的低功耗广域网技术,它具有低功耗、低速率、广覆盖、大连接等主要特点,2016 年,3GPP 发布了 NB-IoT 的物理层协议标准,也标志着NB-IoT 正式走向市场[1]。因此,NB-IoT 技术在很多垂直行业都有着广泛的应用需求,特别是在大型的社会公共事业领域,如城市道路的智慧停车管理[2]、智慧路灯管理[3]、智能燃气表远程抄表[4]等应用。在这些行业应用中,基于NB-IoT 的终端设备需要通过NB-IoT 网络来传输到运营商的IoT 联接管理平台,这就需要有信号可靠的NB-IoT 网络来支撑,从而保证终端能够正常接入网络并上报或接收下发数据。

1 需求分析

目前,我国主要由三大运营商来建设、管理和运营NB-IoT 网络,运营商需要从物联网卡、终端模组、无线网络、核心网以及平台等多方面进行端到端的测试和验证[5],其中NB-IoT 无线网络信号的覆盖面以及信号质量的好坏决定了每一个NB-IoT 终端运行时通信的可靠性,因此,在部署这些终端时,对信号质量的测试尤为重要,如果某个地点信号较弱或者无信号覆盖,则在终端设备没有问题的前提下,通知运营商的网络信号优化人员来优化基站参数。

NB-IoT 网络信号的主要参数指标有SINR、RSRP、RSRQ 以及 RSSI 等。其中,SINR(Signal to Interference plus Noise Ratio,信号与干扰加噪声比)简称信噪比,用来表示接收到的有用信号的能量迁都与干扰信号强度的比值;RSRP(Reference Signal Receiving Power,参考信号接收功率)用来表示接收到的信号的强度,它跟SINR 结合来判断无线信号强度的关键指标。RSRQ(Reference Signal Receiving Quality,参考信号接收质量)和 RSSI(Received Signal Strength Indication,接收信号强度指示)这两个指标也是无线信号质量判断的关键因素。

NB-IoT 网络信号的检测方式目前主要有通过计算机串口连接至有NB-IoT 通信模组的开发板或测试设备,然后在计算机端用串口调试助手发送AT 指令的方式获取参数值,也可以通过手机USB 串口连接至测试设备,并编写串口通信软件来发送指令给测试设备来获取信号参数值。前者测试信号时不太容易携带,后者则必须一根带数据通信功能的USB 通信线缆才能进行测试,也不是很方便。本文设计了一种基于蓝牙透传模式的NB-IoT 信号检测系统,手机测试的App软件利用手机的蓝牙功能与信号检测仪中的蓝牙模块进行通信连接,测试时,App 直接可以通过蓝牙通信来实现信号的测试,既便捷又能很好地满足信号的测试要求。

2 系统总体架构设计

本系统的总体架构如图1 所示,Android 测试App软件通过蓝牙通信协议与NB-IoT 信号检测仪建立通信连接,并发送AT 信号测试指令,NB-IoT 信号检测仪的蓝牙模块接收AT 指令后,将指令通过透传模式发送给NB-IoT 通信模组,通信模组与NB-IoT 基站通过CoAP 协议建立通信连接,并由基站返回结果给模组,再有信号检测仪的蓝牙模块将该结果透传给Android测试App。App 将收到测试信号的信息通过移动通信网络上传至云端服务器进行记录存储,并提供联网的计算机进行Web 应用访问,查询相应位置的信号参数情况。

图1 NB-IoT信号检测系统网络架构

3 硬件系统设计

3.1 蓝牙通讯接口电路设计

采用汇承公司的蓝牙4.0(HC-08)或蓝牙4.0/2.0(HC-02)模块,安装不同的模块时兼容蓝牙4.0 和2.0通讯方式。便于后期App 程序开发。预留连接状态指示灯及通讯指示灯。如图2 所示,引脚1、2 分别为发送(TXD)和接收(RXD),分别与 NB-IoT 模组的接收和发送引脚相连,实现数据的透传。

图2 蓝牙通讯接口电路

3.2 NB-IoT通讯电路及天线设计

NB-IoT 通讯电路及天线设计如图3 所示,NB-IoT模组采用移远公司BC95-G 型模组,引脚29、30 为连接蓝牙模块的发送、接收引脚。同时,预留了引脚15为复位按键及调试升级接口。引脚38-40 用来连接物联网SIM 卡槽。

图3 NB-IoT通讯电路及天线

3.3 SIM卡接口电路设计

SIM 卡接口电路设计专用TVS 吸收电路及隔离电路,防止在拔插SIM 时产生干扰及静电损坏集成电路芯片。

图4 SIM卡接口电路

4 软件系统主要功能实现

4.1 手机与信号检测仪蓝牙通信流程设计

在Android 中实现蓝牙通信需要打开手机的蓝牙权限,其通信流程如图5 所示,并需要在工程在An⁃droidManifest.xml 文件中需要设置蓝牙访问的允许权限代码。

图5 蓝牙通信流程

4.2 蓝牙透传通信的软件实现

信号检测仪上的NB-IoT 模组与蓝牙模组之间通过RS-232 串口进行连接,手机端发送的NB-IoT 的AT 指令通过BLE4.0 蓝牙协议发送给蓝牙模组,蓝牙模组则通过RS-232 串口直接将指令发送给NB-IoT模组,其中不改变任何协议,实现透明传输。

蓝牙连接成功之后,开始搜索服务,当发现服务时,调用回调,表示通信建立成功。随后对发送数据进行回调使用,验证是否写入成功,为读取数据建立连接,代码如下:

发送数据后(写入结果)的回调,用于判断是否写入成功,代码如下:

对蓝牙接收数据的处理代码如下:

4.3 异步通信的问题解决

在上面硬件连接设计中,蓝牙模组与NB-IoT 模组之间主要采用UART 异步串行通信。发送方和接收方随时都可能发送或接收到数据,在正常开始中就设置接收监听。数据帧的形式大多是流式数据,传输过程中存在随机间隔甚至没有间隔等情况,必须添加特定位来进行区分。(特定位指开始位和结束位或固定数据长度)。利用NB-IoT 的AT 指令的固有特性,以回车换行符( )作为停止位,对每一段数据帧进行直接标识,来确定每一段完整的数据的结束。

在异步串行通信中,有可能要多次回调才能得到完整的数据,也有可能一次获得多个完整的数据帧,在异步串行通信中的流传输中,因为多次回调会收到不同的数据,此时需要对其进行拆分和组合,获得一个完整的数据。在进行AT 指令测试时,接收方接收到数据的同时发送方可以继续发送AT 指令测试,接收方会边处理边返回正常信息,并把完整的信息显示在界面上。

完成数据透传过程后,对NB-IoT 模组实现一个完整的数据帧的检测功能时,直接使用AT 指令进行拆包,对数据包进行区分和组合,从而获得一个完整的数据帧。

5 结语

随着NB-IoT 窄带物联网技术在各个垂直行业中的不断推广和应用,其网络信号的质量显得越来越重要,因为优良的信号质量能够保证NB-IoT 终端能够接入到网络并上报和接收下发数据。NB-IoT 网络信号检测系统目的主要是帮助NB-IoT 网络维护人员、工程师以及用户来测试NB-IoT 终端所在区域的网络质量,可靠性、便携性是信号检测设备的主要需求,基于蓝牙透传模式的NB-IoT 信号检测系统不仅简化了通信方式,对位置的信号参数进行云存储,记录已经测试过的位置上的信号质量,方便检测人员后期查看。NB-IoT信号检测系统在推动应用部署工作的便捷性的同时,也帮助了运营商进一步完善对于信号测试方面的服务,对于检测和建设NB-IoT 基站提供更好的技术支持,具有良好的应用价值和市场推广前景。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!