# smart-plc **Repository Path**: lushade/smart-plc ## Basic Information - **Project Name**: smart-plc - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-04 - **Last Updated**: 2025-07-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能生产线数字孪生系统 ## 项目简介 本项目为智能生产线数字孪生系统,集成了3D可视化、设备管理、实时监控、机械臂仿真等功能,前端采用 Vue3 + Three.js,后端基于 Spring Boot,支持多种工业协议(Modbus、OPC UA、S7、Profinet、OpenProtocol)。 ## 主要功能 - 生产线数字孪生3D可视化 - 设备状态实时监控与管理 - 机械臂产线仿真与控制 - 多协议工业设备接入 - 统一、现代化UI风格 - 设备告警、维护、报表等模块 ## 技术栈 - 前端:Vue3、Element Plus、Three.js、Vite - 后端:Spring Boot、MyBatis、WebSocket - 数据库:MySQL - 其它:Gitee、Git ## 架构设计图 Architecture Diagram ```mermaid graph TD A[用户浏览器] -->|HTTP/WebSocket| B[前端 Vue3 + Three.js] B -->|REST API/WS| C[后端 Spring Boot] C -->|JDBC/MyBatis| D[MySQL 数据库] C -->|协议驱动| E[工业设备] E --> E1[Modbus 设备] E --> E2[OPC UA 设备] E --> E3[S7/Profinet 设备] E --> E4[OpenProtocol 设备] B -->|3D渲染/交互| F[Three.js 场景] C -->|推送状态/告警| B ``` ## 详细目录结构 ``` smart-production-line/ ├── backend/ # 后端 Spring Boot 项目 │ ├── src/ │ │ └── main/ │ │ ├── java/ │ │ │ └── com/smart/plc/ │ │ │ ├── controller/ # 控制器(接口层) │ │ │ ├── service/ # 业务逻辑层 │ │ │ ├── entity/ # 实体类 │ │ │ ├── dto/ # 数据传输对象 │ │ │ ├── vo/ # 视图对象 │ │ │ ├── protocols/ # 工业协议驱动 │ │ │ ├── digitaltwin/ # 数字孪生相关 │ │ │ ├── ws/ # WebSocket │ │ │ ├── config/ # 配置类 │ │ │ └── ... │ │ └── resources/ │ │ ├── application.yml # 配置文件 │ │ ├── mapper/ # MyBatis 映射 │ │ └── sql/ # 数据库脚本 │ ├── logs/ # 日志目录 │ ├── pom.xml # Maven 配置 │ └── README.md # 后端说明 │ ├── frontend/ # 前端 Vue3 + Three.js 项目 │ ├── src/ │ │ ├── assets/ # 静态资源 │ │ ├── components/ # 公共组件 │ │ │ └── 3d/ # 3D 相关组件 │ │ │ └── digital-twin/ # 数字孪生相关组件 │ │ ├── views/ # 页面视图 │ │ ├── router/ # 路由配置 │ │ └── main.js # 入口文件 │ ├── public/ # 公共静态资源 │ ├── package.json # 前端依赖配置 │ ├── vite.config.js # Vite 配置 │ └── README.md # 前端说明 │ ├── .gitignore # Git 忽略文件 ├── README.md # 项目总说明 └── ... ``` ## 快速启动 ### 1. 后端启动 ```bash cd backend # 配置数据库(application.yml),导入 sql/init_database.sql mvn clean package java -jar target/*.jar # 默认端口 8080 ``` ### 2. 前端启动 ```bash cd frontend npm install npm run dev # 默认端口 8081 ``` ### 3. 访问系统 浏览器访问:http://localhost:8081 ## 常见问题 - **前端页面黑屏/3D不可见**:请检查Three.js依赖、容器尺寸、浏览器WebGL支持。 - **后端端口冲突**:可在 application.yml 修改端口。 - **Gitee推送失败**:请使用 SSH 地址或 Token 认证,详见下方说明。 ## Gitee推送说明 1. 配置远程仓库: ```bash git remote add origin git@gitee.com:你的用户名/你的仓库名.git ``` 2. 推送代码: ```bash git add . git commit -m "init project" git push -u origin master # 或 main ``` 3. 若遇到权限问题: - 推荐使用 SSH 公钥方式(Gitee 个人设置添加公钥) - 或生成 Token 并在推送时使用 ## 联系与贡献 如有问题或建议,欢迎提 issue 或 PR。