DTU的
参数版本
是非常重要的值,用于判别设备参数版本以及是否更新;初始值为0代表未配置,设备不会获取此空值;每次修改保存参数后参数版本增加1,设备更新时发现远程参数版本号变化即更新。
配置只会从WEB端往设备发,设备上位机配置的参数并不会上传到WEB;如果用上位机修改了配置,重启后发现配置变了,一般就是被WEB端配置覆盖了。此时要么删除WEB端设备,只用上位机配置,要么不用上位机只用WEB配置。或者强制写入设备,但是需要保持
参数版本
和WEB端一致,则不会被WEB端覆盖
其他
, 打开控制台
,点读取参数
,复制返回的json配置;json
按钮,粘贴进去刚刚读取的配置,点击更新;添加了分组配置,此时设备配置变成了分组配置,需要去改分组的配置;或者取消分组
ID或者表改为uartid|devid
的形式,比如串口1, modbusid1写1|1
, 串口2 modbusid4写2|4
。 需要注意输入数据源需要选多个串口。网络通道是101开始,如网络1 101|1
${imei}
控制台下发 rrpc,function,os.remove("/lua/userapp.lua")
直到返回ok成功,然后重启一下设备即可
一般是启用了WEB配置,导致被WEB端参数覆盖了,需要关注参数版本。解决方案:
DTU的参数版本是非常重要的值,用于判别设备参数版本以及是否更新;初始值为0代表未配置,设备不会获取此空值;每次修改保存参数后参数版本增加1,设备更新时发现远程参数版本号变化即更新。
配置只会从WEB端往设备发,设备上位机配置的参数并不会上传到WEB;如果用上位机修改了配置,重启后发现配置变了,一般就是被WEB端配置覆盖了。此时要么删除WEB端设备,只用上位机配置,要么不用上位机只用WEB配置。或者强制写入设备,但是需要保持参数版本和WEB端一致,则不会被WEB端覆盖
正常情况usb无法直接写入超过8k长度的配置,有以下两个替代方案
4G
通信的, 新建文件名config4.cfg,否则文件名应该为config5.cfg大括号
里面的json替换成你的json, 可以先在这里[http://www.esjson.com/jsonyasuo.html]压缩一下json长度return '{"type":"base","version":"V4","base":{"host":"","param_ver":0,"flow":0,"fota":1,"log":1,"ntp":0,"nnt":3,"shell":[1,120,1],"report":0,"pmod":0,"pswd":"","pins":[13,8,12],"reboot":0,"mqr":[1,20,100,1],"lbs":1,"ofm":0,"eth":[1,"","",""],"apn":[0,"","",""]},"uconf":[[1,9600,8,0,1,19,1,20,"",0],[],[]],"nconf":[[],[],[],[],[],[]],"param_ver":0,"h2r":[],"mb":[],"d6":[],"szy":[],"up":{},"vd":{},"rule":[],"lora":[],"tts":[]}'
增量下载
检查是否插天线
检查是否插卡,也可以用上位机读取iccid,能读到说明卡插好了
卡插好了还是没网,查询卡是否有流量
卡有流量,查询卡是否机卡分离,如果锁卡了需要激活
检查网络通道数据源,是否选择为自定义,选串口是透传
设置好Modbus点写入配置的时候页面上提示红色字体映射地址错误: 原因是映射地址必须要包含在指令起始加读取长度里面; 如起始地址1,读取长度2,代表读取的地址是1和2,则只能在地址1、2里面映射。
检查串口波特率有没有错误
设备id或者表号错误,接一个表的情况下可以使用12个A电表广播地址测试
硬件接线或者其他问题
读取指令或者地址设置错误
先用电脑modbus poll软件或者抄表软件读一下设备,确定一下正确的指令以及通不通
正常情况下,串口有数据收发蓝灯会突发闪一两次,是正常现象。异常现象如没网,蓝灯是周期性闪烁
接上usb查看设备管理器,如果只有一个串口SPRD,先检查黑色复位小按钮是否卡住,没有卡住,重新下载固件即可,如果下载固件还是只有SPRD请联系售后支持
如果有多个串口COM, 多半是固件被擦除了,比如点了全量下载或者擦除。重新下载固件即可
已经激活成功,只需要设备联网重启一次即可
打开上位机配置窗口,选择自定义配置,如下图,选择指令function
参数输入
sys.publish("D_SEND_1", "1234")
, 1234
是发送字符串sys.publish("D_SEND_1", string.fromHex("0011"))
, 0x00 0x11
是发送hexrrpc,function,sys.publish("D_SEND_1", string.fromHex("0011"))
或者直接在串口发送窗口手动发送:
rrpc,function,sys.publish("D_SEND_1", string.fromHex("0011"))
查看回复:
已经V1.0.3版本上位机存在bug,需要升级到V1.1.3版本