# appliction **Repository Path**: xtwc/appliction ## Basic Information - **Project Name**: appliction - **Description**: 自己开发的软件(默认不支持win7系统),欢迎clone,后果自负。 1.包含 modbus主从一体模拟器 2.包含自己的物联网平台PC端软件 3. - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-06-21 - **Last Updated**: 2024-07-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: modbus, 物联网平台 ## README [TOC] # 项目介绍 自己开发的软件,欢迎git clone使用,免费试用,后果自负。 # 一、个人物联网平台PC端 ### 主页 ![](https://gitee.com/xtwc/appliction_build/raw/master/images/iot_main.png) ### 产品 ![](https://gitee.com/xtwc/appliction_build/raw/master/images/iotmodel.png) ### 数据库 ![](https://gitee.com/xtwc/appliction_build/raw/master/images/iot_product.jpg) ![](https://gitee.com/xtwc/appliction_build/raw/master/images/iot_database.png) 前端服务器 ```html http://120.79.49.108 ``` MQTT服务器 ``` 120.79.49.108:1883 用户:test 密码:test ``` MySql数据库服务器 (只读账户) ``` 地址 :120.79.49.108:3306 用户 :public 密码 :123456 ``` 设备授权 ``` 方式1:平台分配授权码(序列号sn) 平台授权 方式2:设备请求授权码(序列号sn) 联网自动授权 ``` ## MQTT通信协议 {pid}:产品id占位符 {sn} :设备sn占位符 mid:消息id,比较随意,短时间内每次不一样就行,建议采用时间 ### 上报心跳 client/{pid}/{sn}/heartbeat ```json {"mid":"yyMMddhhmmsszzz.0"} ``` server/{pid}/{sn}/heartbeat_reply ```json {"mid":"yyMMddhhmmsszzz.0"} ``` ### 上报数据 client/{pid}/{sn}/data ```json { "mid"::"20240101T203000", "time":"20240101T203000", "data":[ {"key1":"value1"}, {"key2":"value2"}, {"png":"base64"} ] } /*************************************************** mid:消息id time:采集时间,若不存在,服务器使用当前时间 data:数据体 ***************************************************/ ``` server/{pid}/{sn}/data_reply ```json {"mid":"yyMMddhhmmsszzz.0"} ``` ### 上报事件 client/{pid}/{sn}/event ```json { "mid"::"20240101T203000", "time":"20240101T203000", "event":[ {"key1":"value1"}, {"key2":"value2"}, {"key3":""} ] } /*************************************************** mid:消息id time:告警时间,若不存在,服务器使用当前时间 event:数据体 ***************************************************/ ``` server/{pid}/{sn}/event_reply ```json {"mid":"yyMMddhhmmsszzz.0"} ``` ### 下发配置 server/{pid}/{sn}/config ```json { "mid":"xx", "config":[ {"key1":"value1"}, {"key2":"value2"}, {"xx.bin":"base64"}, {"file":"http://127.0.0.1/xxx.json"} ] } /*************************************************** mid:消息id config:数据体 ***************************************************/ ``` client/{pid}/{sn}/config_reply ```json {"mid":"yyMMddhhmmsszzz.0"} ``` ### 下发升级 server/{pid}/{sn}/ota ```json { "mid":"xx", "url":"http://127.0.0.1/xxx.bin", "data":"base64" } /*************************************************** mid:消息id url:有效时,http下载升级文件。 data:hex转base64数据。data有效时,mqtt分包下发base64文件,data为空""表示发送结束。 若接收重复mid包,设备丢弃此帧。 ***************************************************/ ``` client/{pid}/{sn}/ota_reply ```json { "mid":"yyMMddhhmmsszzz.0", "code":0/1 } // 0:失败 1:成功 ``` # 二、modbus主从一体模拟软件 modbus_master_slave,这是一款用于modbus调试的主从一体模拟器,全自动读取,reg支持0~5000范围。支持03,04,06,10功能码。 ![](https://gitee.com/xtwc/appliction_build/raw/master/images/modbus_master_and_slave.png)