demo.dtu/docs/DTU_GUI_User_Guides.md
2022-09-14 13:53:06 +08:00

302 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# **DTU GUI工具使用说明**
## 1.基本概述
本文档主要介绍DTU GUI工具的使用。
DTU GUI工具现阶段主要为客户开发调试使用DTU GUI工具提供基础的查询与设置功能
用户可使用USB to TTL模块连接PC与DTU。
![](../../../docs/dtugui.png)
DTU GUI基于wxPython开发现阶段已编译的dtu_gui.exe仅支持Windows系统
用户在Linux/macOS配置Python环境并安装wxPython lib后可直接运行dtu_gui.py或自行编译对应版本的exe程序。
## 2. 运行DTU GUI 工具
**双击打开DTU GUI工具**
![](./media/DTU_GUI_User_Guides/gui_open_port.png)
运行后的DTU GUI的工具
![](./media/DTU_GUI_User_Guides/gui_open_port.png)
**打开串口**
![](./media/DTU_GUI_User_Guides/gui_open_port_done.png)
## 3. DTU GUI 功能介绍
## 3.1工具箱
**目前工具箱的查询功能如下:**
- 查询IMEI号
- 查询本机号码
- 查询版本号
- 查询信号强度
- 诊断查询
- 查询ICCID
- 查询ADC电压
- 查询GPIO信息
- 查询电池电压
- 查询温湿度
- 查询网络连接状态
- 查询基站状态
- 基站定位
### 示例:
查询IMEI号
![](./media/DTU_GUI_User_Guides/gui_get_imei.png)
返回的数据:
`【2021-11-24 20:35:39】 869537055499330`
## 3.2查询当前配置参数
**操作步骤如下图:**
![](./media/DTU_GUI_User_Guides/gui_check_config.png)
**以上步骤操作完再点击查询当前配置参数**
## 3.3导入配置参数
### 3.3.1基本参数配置
![](./media/DTU_GUI_User_Guides/gui_import_config.png)
**如上图的数字编号:**
1. **首次登录服务器发送注册消息**
开启之后会在成功登录tcp/udp服务器发送注册消息默认发送的注册消息如下的格式所示
`{"csq": "25", "imei": "864430010001091", "iccid": "898600F21274F6605263", "ver":"100"}`
如果在tcp/udp的配置参数中自定义了首次登录服务器发送的注册消息则会发送用户自定义的。
具体tcp/udp的参数配置后面会有详细的介绍
2. **参数版本号**
数值的范围是 > 0
3. **是否开启固件自动更新**
打开自动更新会在DTU启动的时候去OTA Cloud查看是否有需要更新的固件包如果有更新的任务就会下载固件包校验固件包。校验通过开始更新更新完毕会重启DTU固件。
4. **是否开启脚本文件自动更新**
打开自动更新会在DTU启动的时候去OTA Cloud查看是否有需要更新的脚本文件如果有更新的任务就会下载脚本校验脚本包。校验通过开始更新更新完毕会重启DTU。
建议:开启自动更新前可以根据需要手动备份之前的配置文件。暂时不支持自动备份的功能
### 3.3.2串口参数
![](./media/DTU_GUI_User_Guides/gui_serial.png)
有三个串口参数配置,每个串口配置的参数有:波特率,数据位,校验位,停止位
目前不支持串口参数的配置功能,此项配置功能后续上线
### 3.3.3网络参数配置
打开任意通道的"开启"按钮,则会将七个通道的数据导入到配置文件,由于其他的通道参数没有配置会导入空的配置参数到配置文件,因此点击"开启"按钮就需要按照需求将所以的通道配置参数都设置一下
#### 3.3.3.1 通道类型HTTP
![](./media/DTU_GUI_User_Guides/gui_channel_http.png)
| **字段** | **type** | **Required** | **含义** |
| --- | --- | --- | --- |
| method | Str | true | 提交请求的方法 |
| url | str | true | HTTP请求的地址和参数 |
| data | json | false | post请求填写get请求不填写 |
| timeout | int | false | HTTP请求最长等待时间 |
| serialD | int | true | HTTP绑定的串口号1~2 |
提示其中serialD的绑定串口号的功能暂未上线后期会和串口配置功能一同上线下同
#### 3.3.3.2 通道类型SOCKET TCP/SOCKET UDP
![](./media/DTU_GUI_User_Guides/gui_channel_socket.png)
上图中参数的对应含义:
| **字段** | **type** | **Required** | **含义** |
| --- | --- | --- | --- |
| tcp | str | true | Socket的tcp协议标识 |
| ping | str | false | 用户自定义的心跳包,只支持数字和字母,建议2-4个字节可不填默认"123" |
| time | int | true | 0为关闭心跳包建议60s-300s |
| url | str | true | socket的地址或域名 |
| port | int | true | socket服务器的端口号 |
| KeepAlive | int | false | 链接超时最大时间单位秒,默认300秒 |
| serialD | int | true | tcp/udp绑定的串口号(1~2) |
#### 3.3.3.3 通道类型MQTT
![](./media/DTU_GUI_User_Guides/gui_channel_mqtt.png)
| **字段** | **type** | **Required** | **含义** |
| --- | --- | --- | --- |
| clentID | int | true | 自定义客户端ID |
| keepAlive | int | false | 客户端的keepalive超时值。 默认为60秒 |
| address | str | true | MQTT的地址或域名 |
| port | int | true | socket服务器的端口号 |
| cleanSession | int | false | MQTT是否保存会话标志位,0持久会话,1离线自动销毁默认为0 |
| Sub | str | true | 订阅主题 |
| pub | str | true | 发布主题 |
| qos | int | true | MQTT的QOS级别,默认0 |
| retain | int | true | MQTT的publish参数retain默认0 |
| serialD | int | true | MQTT通道捆绑的串口ID (1~3) |
#### 3.3.3.4 通道类型:阿里云/腾讯云
在进行阿里云和腾讯云的一型一密的时候如果阿里云连接失败需要手动创建secret.json,里面是设备名和设备密钥的json文件。具体可以参考"secret.json"文件
![](./media/DTU_GUI_User_Guides/gui_secret.png)
同理如果腾讯云的一型一密连接失败也需要手动创建tx\_secret.json
![](./media/DTU_GUI_User_Guides/gui_tx_secret.png)
![](./media/DTU_GUI_User_Guides/gui_channel_at.png)
| **字段** | **type** | **Required** | **含义** |
| --- | --- | --- | --- |
| type | int | true | 一型一密tas/一机一密mos |
| keepAlive | int | false | 通信之间允许的最长时间段(以秒为单位),默认为300范围60-1200可不填 |
| clientID | str | true | clientID ,自定义字符不超过64 |
| Devicename | str | true | 设备名称 |
| ProductKey | str | true | 产品密钥 |
| DeviceSecret | str | false | 设备密钥(使用一型一密认证此参数不填) |
| ProductSecret | str | false | 产品密钥(使用一机一密认证时此参数不填) |
| cleanSession | int | false | MQTT 保存会话标志位( 0则客户端是持久客户端当客户端断开连接时订阅信息和排队消息将被保留, 1代理将在其断开连接时删除有关此客户端的所有信息 )默认为0 |
| QOS | int | false | MQTT消息服务质量默认0可选择0或10发送者只发送一次消息不进行重试 1发送者最少发送一次消息确保消息到达Broker |
| subTopic | str | true | 订阅主题 |
| pubTopic | str | true | 发布主题 |
| serialD | int | true | MQTT通道捆绑的串口ID (1~3) |
#### 3.3.3.5 通道类型:移远云
![](./media/DTU_GUI_User_Guides/gui_quecthing.png)
| **字段** | **type** | **Required** | **含义** |
| --- | --- | --- | --- |
| keepAlive | int | false | 通信之间允许的最长时间段(以秒为单位),默认为120范围60-1200可不填 |
| ProductKey | str | true | 产品key |
| ProductSecret | str | false | 产品密钥|
| Devicename | str | false| 设备名称 |
| DeviceSecret | str | false| 设备密钥 |
| QOS | int | false | MQTT消息服务质量默认0可选择0或10发送者只发送一次消息不进行重试 1发送者最少发送一次消息确保消息到达Broker |
| SessionFlag | bool | true | 配置与云平台通信的数据是否采用session加密默认值为FalseTrue加密False加密 |
| sendMode | str | true | 移远云数据收发模式phy物模型pass透传 |
| serialD | int | true | MQTT通道捆绑的串口ID (1~3) |
#### 3.3.3.6 通道类型:华为云
![](./media/DTU_GUI_User_Guides/gui_huaweiyun.png)
| **字段** | **type** | **Required** | **含义** |
| --- | --- | --- | --- |
| url | str | true | socket的地址或域名 |
| port | int | true | socket服务器的端口号 |
| Devicename | str | false| 设备名称 |
| DeviceSecret | str | false| 设备密钥 |
| keepAlive | int | false | 通信之间允许的最长时间段(以秒为单位),默认为120范围60-1200可不填 |
| SessionFlag | bool | true | 配置与云平台通信的数据是否采用session加密默认值为FalseTrue加密False加密 |
| subTopic | str | true | 订阅主题 |
| pubTopic | str | true | 发布主题 |
| QOS | int | false | MQTT消息服务质量默认0可选择0或10发送者只发送一次消息不进行重试 1发送者最少发送一次消息确保消息到达Broker |
| serialD | int | true | MQTT通道捆绑的串口ID (1~3) |
#### 3.3.3.5 APN设置
APN功能暂未上线
![](./media/DTU_GUI_User_Guides/gui_apn.png)
#### 3.3.3.6 GPIO引脚设置
GPIO引脚设置功能暂未上线
![](./media/DTU_GUI_User_Guides/gui_gpio.png)
NETLED -- 网路指示灯的GPIO (pio1~pio128)
NETRDY -- 与服务器连上后通知GPIO (pio1~pio128)
RSTCNF -- 重置DTU参数的GPIO (pio1~pio128)
## 3.4修改密码
![](./media/DTU_GUI_User_Guides/gui_pwd.png)
1. 勾选密码,输入当前的密码
2. 输入新的密码
3. 点击"修改密码"的按钮
![](./media/DTU_GUI_User_Guides/gui_pwd2.png)
## 3.5 输出数据格式配置
![](./media/DTU_GUI_User_Guides/gui_opt_format.png)
**HEX 将输出的数据转为十六进制的数据:**
![](./media/DTU_GUI_User_Guides/gui_opt_hex.png)
**时间戳:在输出的数据前面添加时间**
![](./media/DTU_GUI_User_Guides/gui_opt_time.png)
**清空接收: 将输出框的内容清空**
## 3.6 输入框的格式要求
![](./media/DTU_GUI_User_Guides/gui_input.png)
**1.查询指令:**
**不需要密码的查询指令**
输入 0 点击发送
![](./media/DTU_GUI_User_Guides/gui_send_cmd.png)
**需要密码的查询指令**
1.在输入框输入功能码,再在上面打开密码输入框,输入正确的密码点击"发送"
2.在输入框输入功能码和json数据
如: `28,1921009046,{"password":"123","data":{}}`
![](./media/DTU_GUI_User_Guides/gui_send_cmd_pw.png)
**2. 修改配置参数的指令**
功能码 + 修改的数据
`47,1564156496,{"password":"123","data":{"apn": ["", "", ""]}}`
中间用”:”隔开后面为修改的json数据
提示json数据里面不能出现中文字符
![](./media/DTU_GUI_User_Guides/gui_edit.png)
上图中返回的数据success 为1表示修改成功