NB-IoT使用CoAP协议接入华为IoT平台教程
文章目录
- 1、准备
- 1.1、NB-IoT模组
- 1.2、NB-IoT SIM卡
- 1.3、IoT平台
- 2、模块配置与IMEI号的获取
- 3、设备注册
该文章为本人原创,首发在华为云社区
上一次我们讲了“华为IoT平台环境搭建”,只用了虚拟设备进行演示,今天我们用真实的NB-IoT模块来进行通信。
1、准备
要完成这次实验需要以下几个东西。
1.1、NB-IoT模组
目前NB-IoT厂商与模组主要有以下几个
公司 | 模组名称 | 使用芯片 | 支持频段 | 通讯协议 |
---|---|---|---|---|
上海移远 | BC95-B5/8/20/28 | 华为Hi2110 | B5/B8/B20/B28 | UDP/CoAP |
BC26 | 联发科MT2625 | B1/B2*/B3/B5/B8/B12*/B13*/B17*/B18*/B19*/B20/B25*/B26*/B28*/B66* | TCP/CoAP/MQTT | |
BC28 | 华为Hi2115 | B1/B3/B5/B8/B20/B28* | UDP/TCP/CoAP/LWM2M/MQTT | |
BC35-G | 华为Hi2115 | B1/B3/B5/B8/B20/B28 | UDP/TCP/CoAP/LWM2M/MQTT | |
中移物联 | M5310 | 华为Hi2110 | B8 | LWM2M |
高新兴 | ME3612 | 高通MDM9206 | B3/B5/B8 | CoAP、TCP/UDP、MQTT、OMA-LWM2M |
我这次用的模组是BC35-G,支持移动、联通、电信三大运营商的NB卡,应该也是目前市面上占有率比较大的一款NB-IoT模组。
1.2、NB-IoT SIM卡
SIM 卡的作用是鉴权使用,NB设备接入核心网需要核心网认证,SIM 卡里存放认证的信息和密钥等。
简单来说就跟我们平常的手机卡的作用差不多,就是用来连接上网络,该SIM卡一般只用来连接网络,不打电话和收发短信。
目前市面上NB-IoT SIM卡主要有三大厂家的:中国电信、中国移动、中国联通。
(NB SIM卡去营业厅你可能买不到,因为运营商自己不卖,承包给第三方进行销售的,对该卡的充值方式也与普通SIM卡不一样,某宝上有售,一般买NB-IoT模块有送NB SIM卡,卡的充值与激活方式详情问卖家)
1.3、IoT平台
IoT平台目前主要有:华为物联网平台(OceanConnect),电信IoT平台(不面向个人开发者,电信购买的是华为的平台,所以电信IoT平台与华为物联网平台操作一样)、阿里云物联网平台、OenNET移动物联网平台、以及各个大小企业或个人搭建的平台。
如果还不了解华为物联网平台的可以点击这里看我上个帖子。
2、模块配置与IMEI号的获取
在上次创建完虚拟设备后,我们现在来创建真实设备
第一步:获取IMEI号(国际移动电话设备识别码)
IMEI号在NB-IoT模块上有写,或者通过扫描上面的二维码来获取IMEI号,或通过下方所说的AT指令进行获取
将模块通过串口连接上电脑,选择正确的端口号(不一定是10),波特率选择9600(IoT模块默认波特率为9600),勾选Send With Enter,如下图。(如果没有安装驱动得先安装驱动)
点击Open Port–>输入框里输入AT–>点击Send Command进行发送指令
返回OK,代表通讯正常。(如果没有反应,检查串口、波特率是否设置正确以及模块是否正常通电)
然后依次发送以下指令:
AT指令 | 含义说明 |
---|---|
AT+CIMI | 查询SIM卡上的IMEI号,该命令可以判断卡是否正常插上 |
AT+CGSN=1 | 获取设备IMEI号,也就是我们在华为IoT平台上注册设备需要的号码 |
AT+CSQ | 获取网络信号强度,返回的第一个十进制数字最好在12~30之间 |
AT+CEREG? | 获取模块注网状态,开机后需查询到返回x,1 才能代表联网成功,才能进行后续的操作 |
AT+NCDP=ip | 配置服务器地址,其中ip地址在左右的对接信息中可以找到(位于左侧应用–>对接信息–>设备接入信息–> 49.4.85.232:5683 (CoAP),如下图所示),所以我们输入:AT+NCDP=49.4.85.232 |
AT+NMGS=length,data[,<seq_num>] | 发送数据指令,length表示后续数据(data)的长度(10进制表示data数据的字节长度),data表示需要发送的数据,例如AT+NMGS=3,AA11BB |
3、设备注册
现在我们的模块已经配置完毕了,现在我们回到平台上把设备注册一下。
点击设备管理 --> 新建真实设备
选择对应的产品
然后输入设备名称,及我们获取到的IMEI号–>点击确定
PSK码是为加密设备使用的(如果使用的是加密端口就需要PSK码,如果以后用到可以把这设备删除,然后重新创建,重新获取PSK码,当然你也可以先保存下来)
然后我们就多了这个真实设备,目前是离线状态
通过查询官方的AT指令集了解到发送数据指令为:
AT+NMGS=length,data[,<seq_num>]
length表示后续数据(data)的长度(10进制表示data数据的字节长度),data表示需要发送的数据(16进制),例如:AT+NMGS=3,AA11BB
我们根据编解码插件里的数据结构来进行发送数据
发送:AT+NMGS=1,50
返回OK代表发送成功
此时设备变成在线,我们进入产品调试
接收到数据80(十进制)
我们尝试从云平台发送数据
同时串口助手也会收到十六进制的ASCII码
这样我们就完成了NB-IoT与华为物联网平台的连接
切记:NB-IoT采用低功耗模式,发送完数据大概20s后就会休眠,所以云端下发的数据是在下一次上传数据成功后,才会下发到设备。
———————————————————————————————————————————————
end
NB-IoT使用CoAP协议接入华为IoT平台教程相关推荐
- NB-IoT使用CoAP协议接入华为IoT平台(NB-IoT项目实战专栏—8)
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/m0_38106923/article/ ...
- 移远BC95使用CoAP协议接入华为IoT平台(NB-IoT专栏—进阶篇1)
目录 1.华为 NB-IoT CoAP总体方案拓扑 2.华为IoT平台环境搭建 3.NB-IoT上传数据到云平台 BC95的CoAP测试需要云平台配合,当前的支持CoAP协议的平台有华为OceanCo ...
- 移远BC20模组使用LwM2M协议接入华为IoT平台(NB-IoT专栏—进阶篇2)
目录 1.背景 2.部署华为云 3.华为云与BC20模组进行数据收发实验 1.背景 最近在做一个智慧路灯项目,构思使用STM32结合NB-IoT模组实现数据上传和联动控制,并且可以使用GPS模块上传路 ...
- 工业智能网关BL110应用之61:如何实现智能楼宇控制BACnet 接入华为云平台
COM口采集 楼宇控制BACnet的配置 工业智能网关一共有四个COM 接口, 以COM口采集楼宇控制BACnet MS/TP设备为例,COM口 485接口A+.B-分别对应楼宇控制 BACnet M ...
- QT使用MQTT协议对接华为IOT平台
QT使用MQTT协议对接华为IOT平台文章目录QT使用MQTT协议对接华为IOT平台一.环境说明二.QMQTT源码编译三.对接华为IoT平台四.效果验证 最近想使用QT通过MQTT协议接入华为的 ...
- 【安信可NB-IoT模组EC系列应用笔记⑨】使用CoAP协议接入OneNET Studio实现数据收发
文章目录 前言 一.OneNET Studio CoAP协议设备创建 1.产品生成 2.添加设备 3.Token 验证信息生成 二.接入OneNET Studio 1.配置入网 2.登录请求 三.数据 ...
- 工业智能网关BL110应用之37:实现台达 PLC Delta_DVP 接入华为云平台
COM口采集台达 PLC Delta_DVP的配置 工业智能网关一共有四个COM 接口, 4个COM口的配置内容一样,COM1固定为RS232,COM2.COM3和COM4是RS232/RS485可选 ...
- 工业智能网关BL110详解之5:实现三菱 PLC FX1S 接入华为云平台
COM口采集三菱 PLC FX1S 的配置 工业智能网关一共有四个COM 接口, 4个COM口的配置内容一样,COM1固定为RS232,COM2.COM3和COM4是RS232/RS485可选串口(默 ...
- 工业网关BL110实现西门子S7-200 PLC接入华为 云平台
COM口采集西门子S7-200 PLC的配置 工业智能网关一共有四个COM 接口, 4个COM口的配置内容一样,COM1固定为RS232,COM2.COM3和COM4是RS232/RS485可选串口( ...
最新文章
- 硬链接与软链接的区别有哪些?
- Java泛型-为什么允许“扩展T”但不允许“实现T”?
- 永久代内存java_Java8内存模型—永久代(PermGen)和元空间(Metaspace)
- Linux中基于snmp协议的mrtg安装及使用
- VTK:网格质量用法实战
- 10 个有关 String 的面试问题
- css3 下边框缓缓划过_CSS3 框大小
- mysql主从复制简单实现
- Spring Boot核心注解讲解
- cad化工设备绘图_化工设备CAD绘图技巧
- excel计算机考试操作题,Excel计算机考试操作题全解
- 根据经纬度查询位置百度api
- 北京迎来首场降雪 正逢国内观赏雪景好去处
- python stack unstack_Python之数据重塑
- 阿里短信平台初步使用(无账户可以用支付宝登录)
- Flink-Task、SubTask、并行度
- 建筑施工技术【18】
- java如何生成二维码
- 九宫格拼图游戏设计,及代码时序问题解决
- HDLBITS笔记30:rule 90、rule 100以及Conway‘s game of life 16*16
热门文章
- 如何创建一个Python Pandas的DataFrame变量,如何给一个DataFrame对象添加新的一行数据?
- VSCode配置Java运行环境
- 51单片机控制28BYJ48步进电机原理及代码
- java程序输出电话号码_【Java】生成随机的手机号码并输出到文件
- dl380 g10 linux,HPE ProLiant DL380 Gen10 服务器
- 小程序解析html,wxParse进行解析视频列表页面
- 【备忘】史上最全LINUX之13套开发视频教程下载
- HTML,JSP分页思路及代码实现(插件版)
- UTF8、unicode、GB2312、ASCII区别
- 生鲜电商,肉少僧多,叮咚买菜“卖”不动?