跳到正文
hello world
文章封面

物联网设备断网简单调试

模式协议 发送传输方式 服务端接收方式 开发难度 实时性 适合场景
网络透传(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连接失败

评论

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

推荐阅读