| 模式协议 | 发送传输方式 | 服务端接收方式 | 开发难度 | 实时性 | 适合场景 |
|---|---|---|---|---|---|
| 网络透传(TCP/UDP) | 设备通过 Socket 长连接发送原始数据(二进制/字符串) | 服务端监听 TCP/UDP 端口(如 Netty Server),接收 byte 数据后自行解析协议 | 高 | 最高 | 工业设备、PLC、传感器、DTU |
| HTTPD(HTTP) | 设备主动发起 HTTP 请求(POST/GET),发送 JSON 或表单数据 | 服务端提供 HTTP API 接口(如 Spring Boot Controller),接收 HTTP 请求并解析参数 | 低 | 一般 | 简单设备、低频数据上传 |
| 短信透传(SMS) | 设备通过 SIM 卡发送短信文本数据 | 服务端通过短信网关接收短信,再解析短信内容 | 低 | 最低 | 偏远地区、无网络环境监测 |
| MQTT | 设备连接 MQTT Broker,通过 Topic 发布消息 | 服务端订阅 Topic,通过 MQTT Client 接收消息(通常经过 Broker 转发) | 中 | 高 | 大规模物联网平台、农业物联网 |
TX = Transmit(发送)
RX = Receive(接收)
换了个位置,设备断网了
设备断网后,发送 AT 指令测试:
AT+SYSINFO: 0,No Network
AT+CEREG: 1,0
AT+CGATT: 0
AT+CIP: +CME ERROR:50
`
首先看 AT+CIP 返回的:
+CME ERROR:50
这个错误说明模组没有成功注册移动网络,结合:
AT+SYSINFO: 0,No Network
基本可以确定不是服务器问题,而是设备没有入网。
继续检查:
AT+CGDCONT?
发现:
+CGDCONT: 1,"IP","","0.0.0.0",0,0
APN 为空,说明没有配置运营商接入点。
重新配置 APN:
AT+CIPSHUT
AT+CGDCONT=1,"IP","CMIOT"
AT+SAVE
AT+REBOOT
重启后测试:
AT+CIPSEND=5
hello
发送成功,说明设备网络恢复。
烧录下吧,最终原因:
APN未配置
→ 无法注册数据网络
→ CGATT=0
→ TCP连接失败

评论
填写昵称与邮箱即可评论,无需登录。