一句话总结:本文使用openCPU开发第3代5G NB-IoT模组,实现单模组上电即上华为云,同时打通NB模组内置的蓝牙BLE,实现手机APP近端调测NB模组。All-in-one技术的NB-IoT模组,开发产品时,最多可节省一颗MCU、一颗蓝牙、一颗GPS或北斗,一个外置的SIM卡,优势明显。 一、All-in-one技术大礼包,第三代5G NB-IoT模组来了 NB-IoT(Narrow Band Internet of Things)是一种基于蜂窝的窄带物联网技术,也是低功耗广域物联(LPWA)的最佳联接技术,是5G 时代下的基础联接技术之一。2020年NB-IoT全球连接数超1亿。根据预测,NB-IoT将在未来五年实现10亿级连接,推动物联网设备实现爆发性成长。 2021年2月20日,移远通信正式推出其第三代5G NB-IoT系列模组BC95-CNV和BC28-CNV。这两款模组基于海思Boudica 200平台,在大幅提升集成度、性价比、安全性和降低功耗的同时,新增了蓝牙、OpenCPU、GNSS定位等能力,为智能表计、烟感、智能停车、智慧路灯等百万级成熟NB-IoT应用提供了更优选择,也使更多创新的物联网应用成为可能。 All-in-one技术优势:
高集成度架构 |
Boudica 200在一颗SOC芯片上创新集成了上MODEM、MCU、PA、电源管理器件、Memory子系统等,极大减少了模组面积,典型频段配置的模组面积可以减少到10mm*10mm |
5G加持 |
支持3GPP R14、R15以及R16标准的持续演进,功耗更低 |
超大连接 |
单小区最大的接入数量50K,能够支持更多数量设备接入 |
超强覆盖 |
覆盖等级比GPRS提升20dB,具备更强的信号穿透力 |
超低功耗 |
典型应用功耗降低50%,支持PSM/eDRX/长周期TAU,水表场景下寿命高达10年 |
超低成本 |
芯片设计简化,外围电路精简,极大程度降低成本 |
安全加固 |
采用独立安全CPU和硬件安全机制,可支持安全启动、加载、执行、FOTA升级等功能 |
蓝牙BLE5.0 |
支持BLE5.0,长短距结合,方便表计和烟感等设备近场配置和维护 |
GNSS定位 |
包括GPS和北斗,支持物流跟踪、资产管理、老人及小孩定位等场景需求 |
轻量级iSIM |
集成轻量级SIM功能,可免去SIM卡槽,也进一步降低了终端的设计成本和体积 |
OpenCPU开发 |
增强OpenCPU开发能力,用户空间达256KB+64KB,且提供丰富的API接口及范例,开发更加友好 |
网络协议 |
支持包括MQTT、LwM2M等更多网络协议,方便用户应用 |
低工作电压 |
支持低压供电,最低工作电压2.1V(推荐2.1V ~ 4.2V) |
封装设计 |
管脚兼容,集成度更高,性能更优,产品无缝升级 |
用一张图来感受下:
二、All-in-one系列技术文章预告 由于技术点比较多,需要拆分为多个教程,包括但不限于: (1) 三步上云,NB-IoT使用LwM2M上华为云【完结】
(2) 三步上云,NB-IoT使用MQTT上华为云【完结】
(3) 上电即上华为云,NB-IoT基于openCPU开发智慧农业项目【进行中】
本文使用openCPU开发第3代5G NB-IoT模组,实现单模组上电即上华为云,同时打通NB模组内置的BLE能力,实现手机APP近端调测NB模组。 内容过多,现在拆分为2部分: (3.1)openCPU开发NB-IoT,实现上电即上云。【进行中】 (3.2)手机APP近端调测NB-IoT,实现上电即上云。 |
(4) 上电即上华为云,NB-IoT基于openCPU驱动X传感器(六轴姿态、光感等) (5) 上电即上华为云,smart智联NB-IoT + PLC无线网关 (6) 上电即上华为云,NB-IoT + lvgl 智能显示屏(猫眼、广告分发屏等) (7) 未完待续… 三、NB-IoT基础SDK BLE_BC95-CNV_BC28-CNV
基础SDK |
BC28CNV_THA_QuecOpen_NB2_SDK_V1.0_BETA0311A.zip |
二、华为云智联patch(含NB及BLE)
补丁包 |
patch_hwcloud_nb-iot_ble_bc95-cnv_bc28-cnv_opencpu_20210328-1825.rar |
四、需提前确认NB开发板、SIM卡均为可用状态
五、使用步骤
硬件连接 |
(1)硬件环境说明: 使用移远公司BC95-CNV开发板,插上NB-IoT SIM卡,usb口连接到电脑。 注意:开发板上的拨码开关,拨到 MAIN UART TO USB。不要选择MAIN UART TO MCU。
|
串口调试 助手 |
(1)打开串口调试助手QCOM,显示有4个COM口。 COM29:AT调试串口。波特率115200。 COM31:NB-IoT模组运行LOG串口。也是下载openCPU固件的下载口。 注意:具体COM口请根据实际情况来判断。
|
源代码编译环境搭建 |
(1)编译环境搭建,请参考《Quectel_BC28-CNV_THA_QuecOpen_快速开发指导》。内容很详细,过程很简单。最大的感受是,解压文件夹,直接就能编译了。我的电脑是windows 64位。
(2)解压基础SDK。有2个比较重要的文档,《Quectel_BC28-CNV_THA_QuecOpen_API参考手册》、《Quectel_BC28-CNV_THA_QuecOpen_快速开发指导》,需要看一看。 All-in-one技术大礼包的NB-IoT模组,开发产品时,最多可节省一颗MCU、一颗蓝牙、一颗GPS或北斗,一个外置的SIM卡,优势明显。
(3)打开SDK文件夹,双击命令提示符。
(4)输入命令scons.cmd
(5)提示build pass,表示代码编译成功。编译很快,操作很简单。
(6)打开build文件夹,发现NB-IoT的固件已经生成。
(7)下载软件是QFlash。点击Load FW Files,选择刚刚生成的固件。 注意:此开发板能识别出4个串口,一般第3个是下载和LOG串口。此处是COM31,波特率选择9600。
(8)点击Start。
(9)先提示Wait port(31) is normal,等一会后,提示Reset。此时,按一下NB-IoT开发板的Reset按键。
(10)开始下载固件,直到出现PASS。
(11)打开串口调试助手,注意下波特率的设置。按一下开发板的Reset键,输出<-- QuecOpen: ATC_PIPE Example --> 表示openCPU的ATC_PIPE代码已经跑起来了。
|
打补丁 |
(1)解压缩patch_hwcloud_nb-iot_ble_bc95-cnv_bc28-cnv_opencpu_20210328-1825 (2)给基础SDK代码,打补丁。此补丁包含openCPU的NB-IoT和BLE蓝牙功能。 |
华为云设置 |
(1)华为云的配置。选择产品:设备接入 IoTDA。 https://www.huaweicloud.com/product/iothub.html (2)华为云的其他配置,此处不再赘述。没有配置的开发者,请参考下面文章。 【上电即上华为云】华为云all-in-one智联模组_NB-IoT_BC95-CNV(BC28-CNV)_LwM2M_at https://bbs.huaweicloud.com/blogs/249241 |
代码调测 |
(1)继续scons.cmd 生成 BC28CNVAAR01A01_BETA0311A_HW001.fwpkg
(2)使用QFlash把新的固件下载到NB-IoT模组。
(3)下载固件完成后,NB开发板按一下Reset键。当串口调试助手出现hwcloud<-- hwcloud_app_data -->00050F0012,表示数据已经发给华为云IoT平台。
(4)登录华为云平台,可以查看云上已经收到数据。 0x05表示温度5度。0x0F表示湿度15,0x0012表示光照强度18。 关于数据格式,更详细的解释和说明,请参考【上电即上华为云】华为云all-in-one智联模组_NB-IoT_BC95-CNV(BC28-CNV)_LwM2M_at https://bbs.huaweicloud.com/blogs/249241
|
接收华为云命令下发 |
(1)进入产品区,点查看。选择“在线调试”。
(2)点调试按钮。选择命令Agriculture_Control_Light照明控制,选择ON参数,点缓存发送。 注意:由于NB-IoT有PSM(Powser Saving Mode)芯片级低功耗省电模式,如果进入PSM模式,华为云的命令不能触达NB-IoT模组。此处选择缓存发送,华为云会在NB-IoT模组上报数据时,进行命令下发。
(3)目前我在代码里设置的是间隔8分钟上传华为云一次数据,所以需要等一会。下一个文章,我会示范怎么使用手机APP近端发送数据,通过NB通道快速发到华为云。缓存命令下发时,可以看到串口助手已经解析,打开灯光Light。
(4)点调试按钮。选择命令Agriculture_Control_Motor电机控制,选择OFF参数,点缓存发送。 注意:由于NB-IoT有PSM(Powser Saving Mode)芯片级低功耗省电模式,如果进入PSM模式,华为云的命令不能触达NB-IoT模组。此处选择缓存发送,华为云会在NB-IoT模组上报数据时,进行命令下发。
(5)目前我在代码里设置的是间隔8分钟上传华为云一次数据,所以需要等一会。下一个文章,我会示范怎么使用手机APP近端发送数据,通过NB通道快速发到华为云。缓存命令下发时,可以看到串口助手已经解析,关闭电机Motor。
|
完成 |
ok。 |
源码获取 |
weixin关注公众号beigugong,或者扫描下方二维码。 回复NB-IoT_BC95-CNV_BC28-CNV,获取源码下载链接。
|
相关 |
【上电即上华为云】华为云openCPU智联模组_wifi_8720_MQTT https://bbs.huaweicloud.com/blogs/233458 |
|
【上电即上华为云】华为云openCPU智联模组_wifi_8720_LwM2M https://bbs.huaweicloud.com/blogs/236198 |
|
【上电即上华为云】华为云openCPU智联模组_wifi_BL602(RISC-V)_MQTT https://bbs.huaweicloud.com/blogs/238212 |
|
【上电即上华为云】华为云openCPU智联模组_wifi_BL602(RISC-V)_LwM2M https://bbs.huaweicloud.com/blogs/238213 |
|
【上电即上华为云】华为云openCPU智联模组_wifi_BL602(RISC-V)_CoAP https://bbs.huaweicloud.com/blogs/238214 |
|
【上电即上华为云】华为云AIoT智联开发板_mcu_HK32F103Vx https://bbs.huaweicloud.com/blogs/244682 |
|
【上电即上华为云】华为云smart智联PLC无线网关_plc_3121N-H(3121N-IED) https://bbs.huaweicloud.com/blogs/245850 |
|
【上电即上华为云】华为云openCPU智联模组_wifi_HF-LPX70_RISC-V_LwM2M https://bbs.huaweicloud.com/blogs/246215 |
|
【上电即上华为云】华为云openCPU智联模组_wifi_HF-LPX70_RISC-V_CoAP https://bbs.huaweicloud.com/blogs/247263 |
|
【上电即上华为云】华为云all-in-one智联模组_NB-IoT_BC95-CNV(BC28-CNV)_LwM2M_at https://bbs.huaweicloud.com/blogs/249241 |
|
【上电即上华为云】华为云all-in-one智联模组_NB-IoT_BC95-CNV(BC28-CNV)_MQTT_at https://bbs.huaweicloud.com/blogs/249333 |
|
【上电即上华为云】华为云all-in-one智联模组_NB-IoT_BLE_BC95-CNV_BC28-CNV_openCPU 本帖地址 |
|
评论(0)