EMQ X 助力运营商搭建大规模 NB-IoT 平台

NB-IoT是由 3GPP 标准化组织制定的一种新型蜂窝技术,属于低功率广域 (LPWA) 物联网连接的一种,主要用于连接带宽资源受限的终端,允许终端以比 GRPS、3G、LTE等技术更少的资源收集和交换数据。

NB-IoT 在2017-2018年发展迅速,全球众多运营商陆续实现了商用部署。NB-IoT 的低成本、低功耗和广覆盖使得用户能够实现传统蜂窝网络无法支持的新场景新应用。

NB-IOT 技术的优势

  • 为物联网和 M2M 设计的新蜂窝技术
  • 覆盖距离单元 10km 的大面积区域
  • 电源效率,一个电池在现场工作长达10年
  • 低成本, NB-IoT 模块成本在20元左右,且有逐年降低的趋势

NB-IoT 应用场景

  • 消费电子
  • 城市物流
  • 智慧城市
  • 智能家居
  • 公用事业
  • 自然灾害管理

从2017年起,EMQ X 公司开始与某顶级运营商合作研发物联网平台项目,在2018年发布了支持 NB-IoT 技术的全新物联网应用使能平台 (AEP)。该平台允许广大行业客户的 NB-IoT 终端,通过运营商 NB-IoT 网络直接接入,并通过平台开放能力快速构建物联网应用。

借助于 AEP 平台提供的设备接入、消息路由、数据存储,以及设备管控服务,可大大简化应用程序的开发过程,大多数应用通过平台组件的拖放以及模板定义即可完成;客户亦可通过平台丰富的 API 接口,配合少量编码工作,就可以拥有功能完整的自研 IoT 应用,客户开发的应用能够直接运行在平台上,可节省大量运营成本。

在本项目中,EMQ X 物联网消息中间件作为平台的核心部件,用于接入运营商全国范围内(以 NB-IoT 为主,亦包括 3G,4G,PON,LAN 等所有网络)的各类物联网设备,通过高效的协议解析与消息路由能力将海量的设备消息汇聚到平台数据层,也为后端的设备管理和应用模块提供可靠的反向控制通道。

EMQ X 创新的分布式集群方案,能够实现新节点的自动增加和故障节点的自动删除,有力保障了 AEP 平台接入容量的自动伸缩和长期稳定运行,提升了运营商客户业务的可靠性。

EMQ X 具备的海量设备接入、千万级高并发、物联网全协议栈、以及毫秒级低延时等能力,助力电信级物联网AEP平台在数月内搭建完成,有效的支撑了该运营商 NB-IoT 乃至整个 IoT 平台战略的落地与商业化运营。


更多信息请访问我们的官网 emqx.io,或关注我们的开源项目 github.com/emqx/emqx ,详细文档请访问 官方文档

转载于:https://my.oschina.net/u/4174826/blog/3083027

### NB-IoT 数据通过 MQTT 协议传输的方法 为了实现NB-IoT数据到MQTT协议的转换并完成数据传输,需理解两者的工作机制及其集成方式。 #### 1. 理解基础概念 MQTT是一种基于发布/订阅模式的消息传递协议,专为受限环境设计,具有极低的网络流量消耗特点[^1]。此特性使得它非常适合应用于资源有限的小型设备间的数据交换场景中,比如采用NB-IoT技术接入互联网的各种传感器节点。 #### 2. 准备工作 - **硬件准备**:确保拥有支持NB-IoT功能的模块,例如文中提到的LPM2100或BC26型号,并确认这些模块已成功连接至运营商提供的蜂窝网络。 - **软件工具**:选择合适的MQTT客户端应用程序来调试和监控消息流。推荐使用如MQTT.fx这样的图形界面工具来进行初步配置与测试;也可以考虑更现代化的选择如MQTTX作为替代方案[^3]。 - **服务器设置**:挑选一个可靠的MQTT代理(Broker)。对于开发阶段而言,可以选择公开可用的服务提供商,像`broker-cn.emqx.io:1883`就是一个不错的选择。 #### 3. 实现过程 当NB-IoT模组收集到来自外部世界的测量值或其他形式的信息之后,会按照预设逻辑将其打包成适合在网络上传输的形式——即构建符合MQTT标准的有效负载(payload),连同目标主题(Topic)一起提交给指定的MQTT Broker。具体来说: - 需要在NB-IoT模组内部编写相应的固件代码负责处理原始传感数据并向远端MQTT Server发起请求; - 发送过程中涉及的关键参数包括但不限于Socket ID、Packet ID、QoS级别以及Retain标志位等信息,这些都是用来控制消息行为的重要属性[^2]; - 成功建立连接后,即可依据实际需求定期推送更新或者响应来自其他系统的查询指令。 ```python import paho.mqtt.client as mqtt def on_connect(client, userdata, flags, rc): print("Connected with result code "+str(rc)) client = mqtt.Client() client.on_connect = on_connect # Connect to the broker client.connect("broker-cn.emqx.io", 1883) # Publish a message topic = "/public/scau/bc26" payload = "Hello from NB-IoT!" qos_level = 1 retain_flag = False client.publish(topic, payload=payload, qos=qos_level, retain=retain_flag) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值