文档
MN316 NB-IoT模块技术手册
中移物联 MN316 | 3GPP R13/R14 | B3/B5/B8 | UART AT指令 | MQTT/CoAP/TCP
一、概述
MN316是中移物联推出的超低功耗NB-IoT通信模组,符合3GPP Release 13/14标准。模块内置完整的TCP/UDP/MQTT/CoAP/LwM2M协议栈,通过标准UART AT指令接口即可完成网络附着、数据传输和云平台对接,无需外挂MCU运行协议栈逻辑,适合水质监测、环境传感、智慧农业等电池供电的低功耗广域网场景。
核心特性
| 特性 | 说明 |
|---|---|
| 频段 | B3(1800MHz) / B5(850MHz电信) / B8(900MHz移动) |
| 发射功率 | 23dBm ± 2dB |
| 接收灵敏度 | -117dBm (重传模式下可达-130dBm) |
| 数据速率 | DL 127kbps / UL 159kbps |
| 工作电压 | 2.1V ~ 4.2V,推荐 3.3V |
| 低功耗 | PSM模式下功耗 < 5μA;eDRX模式下 < 0.5mA |
| 接口 | UART (9600bps, 8N1, TTL 3.3V) |
二、引脚定义
MN316采用LCC封装,共42个引脚。关键引脚如下:
| 引脚编号 | 名称 | 方向 | 功能 | 备注 |
|---|---|---|---|---|
| 1 | GND | - | 电源地 | |
| 2 | VBAT | PWR | 供电输入 | 2.1V~4.2V,需并联100μF+10μF+100nF |
| 7 | PWRKEY | I | 开机控制 | 拉低 ≥1s 开机;拉低 ≥8s 关机 |
| 15 | TXD | O | 模块串口发送 | 接MCU RX,TTL 3.3V |
| 16 | RXD | I | 模块串口接收 | 接MCU TX,TTL 3.3V |
| 17 | RESET | I | 硬件复位 | 拉低 ≥50ms |
| 18 | VDD_EXT | O | 外部IO参考电平 | 1.8V,不可带大负载 |
| 27 | NETLIGHT | O | 网络状态指示 | 可通过LED指示注册状态 |
| 30 | SIM_CLK | O | SIM卡时钟 | |
| 31 | SIM_DATA | I/O | SIM卡数据 | |
| 32 | SIM_RST | O | SIM卡复位 | |
| 33 | SIM_VDD | O | SIM卡供电 | 1.8V/3.0V自适应 |
NETLIGHT指示含义
| 闪烁模式 | 含义 |
|---|---|
| 常亮 | 模块运行中 |
| 200ms亮/1800ms灭 | 搜网中 |
| 200ms亮/600ms灭 | 已注册网络 |
| 快闪(125ms周期) | 数据传输中 |
三、电气特性
3.1 极限参数
| 参数 | 最小值 | 最大值 | 单位 |
|---|---|---|---|
| VBAT供电 | -0.3 | 4.5 | V |
| IO电压(VDD_EXT=1.8V) | -0.3 | 2.1 | V |
| 工作温度 | -40 | +85 | °C |
| 存储温度 | -45 | +90 | °C |
3.2 典型功耗
| 模式 | 电流 | 说明 |
|---|---|---|
| PSM休眠 | < 5μA | 仅RTC运行 |
| eDRX待机 | < 0.5mA | eDRX周期约20.48s |
| 空闲(DRX) | ~3mA | 监听寻呼 |
| 接收 | ~60mA | |
| 发射(23dBm) | ~220mA | 峰值,需确保电源能提供≥500mA |
⚠️ 电源设计注意:NB-IoT发射瞬间电流脉冲可达300mA/1ms,VBAT引脚必须并联 100μF钽电容 + 10μF MLCC + 100nF,走线宽度≥1mm。
四、典型应用电路
4.1 最小系统接线
VBAT (3.3V)
│
┌───────┼───────┐
│ 100μF │ 10μF │ 100nF
│ ║ │ ║ │ ║
│ ║ │ ║ │ ║
GND GND GND GND
│
┌───────┴─────── MN316-2(VBAT)
│
│ MCU MN316
│ ┌─────┐ ┌──────────┐
│ │ TX ├──────────┤16 RXD │
│ │ RX ├──────────┤15 TXD │
│ │ GPIO├──────────┤7 PWRKEY │
│ │ GPIO├──────────┤17 RESET │
│ │ GND ├──────────┤1 GND │
│ └─────┘ │ │
│ │27 NETLIGHT──▶ LED ── 1kΩ ── VDD_EXT
│ │ │
│ │ SIM接口 │
│ │30 CLK ─── SIM_CLK
│ │31 DATA ── SIM_DATA ── 22Ω ── VDD_EXT(上拉)
│ │32 RST ─── SIM_RST
│ │33 VDD ─── SIM_VDD ── 100nF ── GND
│ └──────────┘
4.2 PWRKEY开机时序
VBAT: ──────────────────────────────────────
│
PWRKEY: ───────┘ ├─── ≥1s ───┤
│
TXD: ──────────────────────┼──────── AT ready ──
│
← 上电后2~3s → ← 可发AT →
五、AT指令核心命令
5.1 基础指令
| 指令 | 响应 | 说明 |
|---|---|---|
AT |
OK | 模块存活检测 |
AT+CGMM |
MN316 | 查询型号 |
AT+CGSN=1 |
+CGSN: xxxxx | 查询IMEI |
AT+CIMI |
xxxxxxxxxxxxxx | 查询SIM卡IMSI |
AT+CSQ |
+CSQ: rssi,ber | 信号质量 (rssi=99表示无信号) |
AT+NRB |
REBOOTING | 软复位模块 |
5.2 网络注册
| 指令 | 说明 |
|---|---|
AT+CFUN=0 |
关闭射频(配置模式) |
AT+NBAND=5,8 |
设置频段 B5(电信)+B8(移动) |
AT+CFUN=1 |
开启射频 |
AT+CGATT=1 |
附着网络 |
AT+CGATT? |
查询附着状态 (+CGATT:1=已附着) |
AT+CEREG? |
查询EPS注册状态 |
AT+CPSMS=0 |
关闭PSM(调试用) |
AT+CEDRXS=0 |
关闭eDRX(调试用) |
5.3 MQTT (OneNET接入)
| 指令 | 说明 |
|---|---|
AT+MQTTCFG="ip",port,"clientid",keepalive,"user","pwd",clean,0 |
配置MQTT连接 |
AT+MQTTOPEN=1,1,0,0,0,"","" |
打开MQTT连接 |
AT+MQTTSTAT? |
查询连接状态 (+MQTTSTAT:5=已连接) |
AT+MQTTSUB="topic",0 |
订阅主题 (QoS=0) |
AT+MQTTPUB="topic",0,0,0,len,hex |
发布消息 (hex编码payload) |
AT+MQTTDISC |
断开MQTT |
AT+MQTTDEL |
删除MQTT配置 |
5.4 TCP Socket
| 指令 | 说明 |
|---|---|
AT+NSOCR=STREAM,6,port,1 |
创建TCP Socket |
AT+NSOCO=0,"ip",port |
连接服务器 |
AT+NSOSD=0,len,hex,flag |
发送数据 |
AT+NSOCL=0 |
关闭Socket |
5.5 URC (非请求结果码)
| URC | 含义 |
|---|---|
+MQTTTO |
MQTT连接超时断开 |
+MQTTPUBLISH:0,topic,len,payload |
收到订阅消息 |
+CGEV:ME PDN ACT 0 |
PDN激活 |
+CEREG:1 |
EPS注册成功 |
六、OneNET物模型接入
6.1 Topic格式
| 类型 | Topic |
|---|---|
| 属性上报 | $sys/{pid}/{device}/thing/property/post |
| 属性回复 | $sys/{pid}/{device}/thing/property/post/reply |
| 事件上报 | $sys/{pid}/{device}/thing/event/post |
| 命令下发 | $sys/{pid}/{device}/thing/service/+/invoke |
6.2 属性上报Payload示例 (JSON)
{
"id":"1234567890",
"version":"1.0",
"params":{
"ph":{"value":7.2},
"turbidity":{"value":15.3},
"temperature":{"value":25.1},
"signal_strength":{"value":-85},
"device_status":{"value":1}
}
}
关键注意:MN316的
AT+MQTTPUB中payload需转成十六进制字符串传入,模块内部自动解码为二进制发送。不要直接传JSON原文(含双引号会导致AT解析异常)。
七、使用注意事项
电源设计:VBAT必须就近并联储能电容(100μF钽+10μF MLCC+100nF),走线短且宽。发射时峰值电流大,若电源不足会导致模块反复重启。
电平匹配:MN316 IO电平为1.8V(VDD_EXT输出),直连3.3V MCU需确认MCU端口支持1.8V识别。实际使用中多数3.3V TTL MCU可直连(MN316 TXD容忍3.3V),但建议串470Ω电阻保护。
频段选择:电信IoT卡使用B5(850MHz),移动IoT卡使用B8(900MHz)。
AT+NBAND=5,8同时开启两个频段,模块自动选择。MQTTPUB hex编码:
AT+MQTTPUB="topic",0,0,0,<byte_len>,<hex_string>— 第5参数是原始JSON的字节数(len),不是hex字符串长度!PSM唤醒:模块进入PSM后无法被网络侧寻呼,仅可通过MCU拉低PWRKEY重新唤醒。调试阶段建议
AT+CPSMS=0关闭PSM。MQTT断连重连:收到
+MQTTTOURC后需先AT+MQTTDISC再AT+MQTTDEL释放资源,然后重新AT+MQTTCFG→AT+MQTTOPEN。信号判断:
AT+CSQ返回的rssi值需转换:dBm = -113 + rssi×2。rssi=99表示无信号,需检查天线和SIM卡。固件版本:建议使用MN316的最新固件,旧版本可能存在MQTT长连接稳定性问题。可通过
AT+CGMR查询固件版本。