NB-IOT 关键技术研究及实践

发表时间:2021/9/6   来源:《科学与技术》2021年第12期4月   作者:王史春
[导读] 针对NB-IOT开发难大,开发周期长。为了能够达到项目的应用,提高效率,本文根据金
       王史春
       台州职业技术学院  信息学院   浙江 台州 18000
        
       [摘  要]:针对NB-IOT开发难大,开发周期长。为了能够达到项目的应用,提高效率,本文根据金葫芦开发技术,结束具体应用项目进行研究,研究开发中的关键技术,解决开发中的难题,提出云平台建设,数据库技术,反向代理技术,网络穿透技术,数据处理技术。实践证明,通过对关键问题的解决,能更好解决NB-IOT的工程应用和教学。
       关键词: 项目化教学,项目团队,实践教学,问题导向
       中图分类号 :TP391         文献标识码:A        [文章编号]
       关键词:NB-IOT,云平台,网络穿透,数据类型,数据显示
       0 引言
       NB-IOT具有大连接,深穿透,低功耗,广覆盖,低成本的特点。但存在技术实现难度大,涉及的知识广,硬件开发,底层程序开发,通信模块开发,上位机应用程序开发,云平台设计等众多知识,对于初学者,设计系统复杂,需要团队开发,耗时多,技术难度大。本文引用苏州大学基于金葫芦IoT-GEC开发套件[1],实现快速应用开发,同时,在关键技术上进行创新及难点解决。本文就开发过程中难点问题进行分析及解决。
       1 NB-IOT设计理念及思路[1]
       系统涵盖了工业物联网应用通用软硬件开发模板、通用集成开发环境、云服务器监听软件模板和多个物联网客户端模板,从技术架构上来看,它是一个由N种GEC芯片、一个通用物联网应用架构和N个客户端模板构成的N+1+N物联网应用共性系统,在它的基础上进行工业物联网应用的开发,能够减少60%以上的开发时间,实现广覆盖的泛在物联网应用系统。
       2 关键疑难点技术解决
       在实际应用开发中,常会遇到一些难以解决的问题,现就工程中出现问题及解决问题的方法加以研究。
       2.1 解决云平台搭建的问题
       本工程NB-IOT整个系统架构中,必须有一台固定的IP地址,保证数据能正常的接收以及发送到客户端。为了解决实际应用项目能安全正确使用数据,必须自己搭建云服务器平台。本项目在华为云平台申请一个固定IP地址(119.3.167.180)的云平台服务器。同时,项目在微信小程序发布时,需要用到IP对应的域名,需要申请一个域名,申请程过程较长,需要安全认证等。
       工程中解决2个关键问题:
       2.1.1平台安全组设置[2]
为了能让不同用户通过IP地址及设置端口号,能正常访问云平台服务器,需要在“入方向规则”中设置协议及端口,通过“添加规则”,策略设置为“允许”,协议端口设置为“TCP”,协议端口设置为向客户开放的端口的范围,当然除了已经被用于系统的端口除外。类型设置为“IPv4”,源地址默认为“IP地址”,0.0.0.0/0。通过以上的设置,客户就能通过固定的IP地址及端口访问云平台服务器。
       2.1.2软件配置问题
项目的云平台服务需要布置CS_Monitor软件以及数据库,反向代理软件Nginx。


       (1)数据库问题
数据库主要为了存放传感器获取的数据,放在云平台服务器中,与CS_Monitor实时进行数据交互,CS_Monitor工程中APP.config文件中,设置路径的问题,设置数据源的问题,一般可以用相对路径,如下所示,采取相对路径,根据实际情况设置相对路径,同时,根据相对路径,数据库文件正确存放在相应的路径。
       (2)反向代理软件Nginx[3]
侦听的端口为443;server_name tzvtc-jy.club(本项目的域名);证书和秘钥需在申请域名时下载,放在指定的目录,并在Nginx中设置,ssl_certificate      certificate/server.crt;#证书存放位置;ssl_certificate_key  certificate/server.key;  #证书秘钥存放位置。域名和端口号修改为自己的域名和https网页发布的端口,#wss协议转发为ws 小程序里面要访问的链接:wss:/tzvtc-jy.club/shujia,二级目录设置与CS_Monitor以及客户端软件设置一致。
       2.2 解决数据显示的问题
       项目中经常会遇到数据显示的小数点问题[5],温度等数据需要加入小数点,才能准确显示数据,本工程中对于云平台CS_Monitor,CS_ client,WEB,微信小程序等客户端软件,需要不同处理。CS_Monitor工程中FrmRealtimeData文件中,处理文本字符,加入小数点; CS_Clint工程中FrmRealtimeData文件中,设置小数点,;WEB工程中realtime.asp文件中,加入小数点;微信小程序处理小数点,工程文件中realtime.js文件中,加入小数点。
                                                 
       2.3 解决上位机与底层数据类型的问题
       上位机与底层数据需要2方面进行处理,才能正确显示数据,否则数据不正常。首先,数据类型处理的问题,上位机通常用VS软件编写,底层用C语言编写,这就会存在数据类型的对接问题,对应关系如下,uint_8:byte;uint_16: ushort;int_32:int;uint_32:int;uint_64: ulong。其次,底层增加传感器数据时,需要在底层工程includes.h文件中UserData结构体中定义结构体变量,变量中顺序需要与上位机变量顺序对应,类型也要对应,结构休变量多余的变量必须删除,否则影响数据正常显示。
       
       3 总结
       本工程在基本框架下,进行应用开发,大大简化了项目开发的成本,时间,降低复杂度。但在开发和教学过程中,如何把现成的基本框架应用于具体的项目中,需要解决很多问题,本文就开发过程中的关键问题进行剖析总结,有利于进一步提高开发效率。
[参考文献]
[1] 王宜怀等. 窄带物联网NB-IOT应用开发共性技术[M]. 电子工业出版社,2018, 13:71.
[2] 李朋等. 技能型人才需求下可编程控制器课程项目化教学模式探索[J].西昌学院学报(自然科学版),2021, 35(1):120-123.
[3]董玉荣,聂云峰.基于 NB-IoT 的智慧停车系统研究与设计[J]. 南昌航空大学学报(自然科学版),2017,31(03):95-99.
[4]董玉荣,聂云峰.基于 NB-IoT 的智慧停车系统研究与设计[J]. 南昌航空大学学报(自然科学版),2017,31(03):95-99.
[6]潘磊磊,张桂青,田崇翼,王兆进,谭坤.基于 NB-IOT 的农业环 境监控系统设计[J].电子设计工程,2019,27(01):25-30+36.

        作者简介:王史春,男(1973.05-),汉族,浙江台州人,本科,台州职业技术学院 副教授,研究方向:嵌入式开发应用。
投稿 打印文章 转寄朋友 留言编辑 收藏文章
您可能感兴趣的其他文章
•   基...
•   ...
•   基...
•   论...
•   ...
•   ...
•   ...
•   水...
•   ...
•   ...
•   ...
•   ...
•   电气...
更多>>
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: