# modbus-protocol-plugin **Repository Path**: alliu/thingspanel-modbus-protocol-plugin ## Basic Information - **Project Name**: modbus-protocol-plugin - **Description**: ThingsPanelModbus协议插件库 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-26 - **Last Updated**: 2024-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Modbus Protocol Plugin 使用指南 ## 简介 ThingsPanel 支持通过开发协议插件服务来接入非 MQTT 协议的设备。本指南将介绍 Modbus Protocol Plugin 的部署和使用方法。 ## 目录 1. [前置条件](#前置条件) 2. [部署步骤](#部署步骤) 3. [插件注册与配置](#插件注册与配置) 4. [系统架构](#系统架构) 5. [常见问题](#常见问题) ## 前置条件 - Go 语言环境(版本 1.22.x 或更高) - Git - (可选)进程管理工具,如 PM2 ## 部署步骤 ### 1. 获取源码 ```bash git clone https://github.com/ThingsPanel/modbus-protocol-plugin.git cd modbus-protocol-plugin ``` ### 2. 构建和运行 选择以下方法之一: #### 开发环境 ```bash go run . start ``` #### 生产环境(推荐) ```bash go build -o modbus-plugin ./modbus-plugin start ``` ### 3. 使用进程管理工具(推荐) 使用 PM2 来提高可靠性和便于管理: ```bash # 安装 PM2(如果尚未安装) npm install -g pm2 # 使用 PM2 启动应用 pm2 start ./modbus-plugin --name "modbus-protocol-plugin" -- start # 设置开机自启 pm2 startup pm2 save ``` ### 其他部署建议 - 考虑使用 Docker 容器化应用,以简化部署和环境管理。 ## 插件注册与配置 选择以下方法之一注册并配置插件: ### 方法一:手动注册和配置 #### 步骤 1: 添加新插件 1. 登录超管用户 2. 导航至:应用管理 -> 插件管理 -> 添加新插件 3. 添加两个插件:MODBUS_TCP 和 MODBUS_RTU,填写以下信息: - 服务名称:必填,创建设备时会显示在选择协议下拉框中 - 服务标识符:必填 - 类别:必填 - 版本:非必填 示例: | 服务名称 | 服务标识符 | 类别 | 版本 | |--------------|-----------|----------|--------| | MODBUS_TCP协议 | MODBUS_TCP | 接入协议 | v1.0.0 | | MODBUS_RTU协议 | MODBUS_RTU | 接入协议 | v1.0.0 | #### 步骤 2: 插件配置 添加完新插件后,点击"插件配置"进行详细设置: 1. HTTP服务地址:必填,插件HTTP服务的ip地址和端口(供平台后端和插件通讯) - 注意:如果MODBUS协议插件是Docker部署,这里要填平台后端能够访问到的ip 2. 设备类型:必填 3. 服务订阅主题前缀:必填 4. 设备接入地址:非必填,插件设备服务的ip地址和端口(仅作为平台中的提示信息,没有实际意义) 配置示例: | 服务名称 | HTTP服务地址 | 设备类型 | 服务订阅主题前缀 | 设备接入地址 | |--------------|--------------|----------|------------------|--------------------------| | MODBUS_TCP协议 | 127.0.0.1:503 | 网关设备 | plugin/modbus/ | [插件设备服务的ip地址]:502 | | MODBUS_RTU协议 | 127.0.0.1:503 | 网关设备 | plugin/modbus/ | [插件设备服务的ip地址]:502 | ### 方法二:SQL 导入 (待完善) ## 系统架构 ### 结构图 ![结构图](./images/协议插件.png) ### 时序图 ![时序图](images/时序图.png) ## 常见问题 如遇到安装或使用问题,可加入以下 QQ 群寻求帮助: - QQ 群①:260150504(已满) - QQ 群②:371794256 如需更多帮助或有特定部署需求,请联系 ThingsPanel 官方人员。