概述#本文档主要介绍如何使用DTU Tool配合移远DTU方案进行开发调试。DTU工具的功能有两大类查询与配置DTU设备参数。数据收发通过DTU设备与云端进行数据收发。参数查询与设置#功能描述查询IMEI号获取设备的IMEI号查询本机号码获取DTU设备中SIM卡手机号码查询信号强度获取csq信号强度信号强度值范围0~31数值越大表示信号越好设备重启重启DTU设备获取当前参数获取DTU设备当前的配置参数并跳转到参数配置和展示界面恢复出厂参数恢复出厂参数并重启DTU设备保存所有设置参数系统配置参数云平台类型、固件升级、脚本升级、历史数据存储串口参数配置串口号、波特率、数据位、校验位、停止位、流控、R485云参数配置阿里云、Mqtt私有云、Socket私有云查询IMEI号#在左侧串口数据显示框中以字符串格式显示出详细地串口数据右侧命令消息框显示出查询获得的IMEI号。查询本机号码#查询信号强度#设备重启#读取当前云平台参数#指令区域按键get current setting点击后请求DTU设备当前云参数配置界面自动跳转配置展示窗口。云参数配置和展示窗口。保存配置参数#读取当前配置参数后进入参数配置界面可以根据实际需求修改配置也可以不读取直接填写配置。在修改完成后返回交互页面点击按键save setting即可保存配置。点击按键restore factory setting即可恢复出厂设置。系统参数配置#基本配置参数项如上图参数名含义云平台通道类型云平台选择可选项阿里云、TCP私有云、MQTT私有云固件升级是否开启固件OTA升级脚本升级是否开启项目脚本OTA升级历史数据存储当通信异常DTU无法向云端发送数据时将发送数据保存待通信恢复正常后重新发送串口号外部MCU连接DTU串口号可选项012波特率串口波特率数据位奇偶校验停止位停止位长度可选项12流控硬件控制流可选项FC_NONEFC_HW控制485通信方向Pin串口发送数据之前和之后进行拉高拉低指定GPIO用来指示485通信的方向。如1、2代表UART.GPIO1、UART.GPIO2云参数配置#云参数配置项会根据基本云平台通信类型选择值变化。当云平台通信类型为MQTT时云参数配置项如下订阅主题和发布主题均采用主题id为key主题字符串为value的json格式。举例说明参数{0:/F79933DC83A4/connect_packet/adv_publish}表示id为0的主题/F79933DC83A4/connect_packet/adv_publish。DTU数据收发调试#数据发送框的格式要求数据发送的格式与MCU和DTU通信格式一致。针对和云端通信协议的不同模块和外部设备如MCU通信协议也会不同。当模块和云端通信使用TCP协议时由于TCP和串口都是数据流的形式所以直接透传数据不做任何处理当模块和云端通信使用MQTT协议时为了区分不同的数据帧模块的串口对外协议采用简单的数据帧topic_id,msg_len,msg_data。示例报文上行报文“1,6,abcedf”下行报文“1,6,ijklmn”模块和外部设备MCU上行报文和下行报文都是采用字符串格式数据项之间采用,相隔。二次开发#DTU工具是基于图形框架wxPython开发现阶段已编译成dtu_tool.exe仅支持Windows系统。用户可在Linux或macOS配置Python环境并安装wxPython后可直接运行dtu_tool.py或自行编译对应版本的二进制程序即可编译脚本dtu_tool/build.sh。DTU Tool源代码仓库链接https://github.com/QuecPython/DTU-tool.gitwxPython官方网站https://www.wxpython.org安装依赖#配置Python开发环境后使用pip工具安装如下依赖库span stylecolor:#262626span stylebackground-color:#ffffffspan stylebackground-color:#2d2d2dspan stylecolor:#cccccccode classlanguage-shellspan stylecolor:#7ec699Pypubsub/spanspan stylecolor:#67cdcc/spanspan stylecolor:#f08d494.0/span.3 span stylecolor:#7ec699wxPython/spanspan stylecolor:#67cdcc/spanspan stylecolor:#f08d494.1/span.1 span stylecolor:#7ec699pubsub/spanspan stylecolor:#67cdcc/spanspan stylecolor:#f08d490.1/span.2 span stylecolor:#7ec699pyserial/spanspan stylecolor:#67cdcc/spanspan stylecolor:#f08d493.5/span /code/span/span/span/span执行脚本#span stylecolor:#262626span stylebackground-color:#ffffffspan stylebackground-color:#2d2d2dspan stylecolor:#cccccccode classlanguage-shellpython dtu_tool.py /code/span/span/span/span界面展示#注调试前请启动DTU设备并在DTU工具的串口配置区域选择与DTU设备通信的串口并打开该串口。