5.4 KiB
5.4 KiB
CAE网格生成助手
基于AI的自动化CAE网格生成系统,专门用于涡扇叶片的网格划分。
功能特性
- 🚀 自动化网格生成: 基于ANSYS Mechanical的智能网格划分
- 📁 文件上传: 支持STEP格式的3D模型文件上传
- 🎯 智能识别: 自动识别叶片关键区域(前缘、后缘、根部)
- 📊 质量检查: 实时网格质量评估和报告
- 🖥️ Web界面: 现代化响应式用户界面
- 📈 实时监控: 处理进度实时显示和状态更新
系统要求
必需组件
- Python 3.8+
- Flask 2.0+
- ANSYS Mechanical 2023R1+ (可选,用于实际网格生成)
Python依赖
pip install -r requirements.txt
快速开始
1. 安装依赖
# 克隆项目
git clone <repository-url>
cd cae-mesh-generator
# 安装Python依赖
pip install -r requirements.txt
2. 启动应用
# 使用启动脚本(推荐)
python run_app.py
# 或直接运行Flask应用
python app.py
3. 访问应用
打开浏览器访问: http://localhost:5000
使用说明
基本工作流程
-
上传文件
- 点击上传区域或拖拽STEP文件
- 支持.step和.stp格式
- 文件大小限制:100MB
-
开始处理
- 文件上传成功后,点击"开始生成"按钮
- 系统将自动进行网格划分
-
监控进度
- 实时查看处理进度和状态
- 查看详细的处理日志
-
查看结果
- 网格统计信息
- 质量评估报告
- 可视化展示(开发中)
-
下载结果
- 网格文件下载
- 质量报告下载
- 可视化图像下载
项目结构
cae-mesh-generator/
├── app.py # Flask应用主入口
├── start.py # 快速启动脚本
├── config.py # 配置文件
├── requirements.txt # Python依赖
├── README.md # 项目说明
├── backend/ # 后端代码
│ ├── api/ # API路由
│ ├── core/ # 核心业务逻辑
│ ├── models/ # 数据模型
│ ├── utils/ # 工具函数
│ └── pymechanical/ # ANSYS集成
├── frontend/ # 前端资源
│ ├── index.html # 主页面
│ ├── static/ # 静态资源
│ │ ├── css/ # 样式文件
│ │ └── js/ # JavaScript文件
│ └── uploads/ # 上传文件存储
├── scripts/ # 脚本工具
│ ├── demo_launcher.py # 演示启动器
│ ├── deployment_check.py # 部署检查
│ └── run_app.py # 应用启动脚本
├── test/ # 测试文件
├── results/ # 结果文件存储
└── temp/ # 临时文件
API接口
文件上传
POST /api/upload
Content-Type: multipart/form-data
参数:
- file: STEP文件
开始网格生成
POST /api/mesh/generate
Content-Type: application/json
查询处理状态
GET /api/mesh/status
获取结果
GET /api/mesh/result
测试
运行集成测试
# 启动应用
python run_app.py
# 在另一个终端运行测试
python test_integration.py
测试内容
- 前端页面加载
- 静态文件服务
- API端点响应
- 文件上传功能
开发模式
启用调试模式
export FLASK_ENV=development
export FLASK_DEBUG=1
python app.py
代码结构说明
后端组件
- API层: 处理HTTP请求和响应
- 核心层: 业务逻辑和ANSYS集成
- 模型层: 数据结构定义
- 工具层: 辅助功能和工具函数
前端组件
- HTML模板: 响应式用户界面
- CSS样式: 现代化视觉设计
- JavaScript: 交互逻辑和API调用
配置选项
环境变量
# Flask配置
FLASK_ENV=development
FLASK_DEBUG=1
# 文件上传配置
MAX_CONTENT_LENGTH=104857600 # 100MB
# ANSYS配置
ANSYS_VERSION=231 # ANSYS版本
ANSYS_MODE=batch # 运行模式
配置文件 (config.py)
FLASK_CONFIG = {
'MAX_CONTENT_LENGTH': 100 * 1024 * 1024, # 100MB
'UPLOAD_FOLDER': 'uploads',
'RESULT_FOLDER': 'results',
'TEMP_FOLDER': 'temp'
}
故障排除
常见问题
-
ANSYS连接失败
- 检查ANSYS是否正确安装
- 确认PyMechanical模块可用
- 检查许可证状态
-
文件上传失败
- 检查文件格式(仅支持STEP)
- 确认文件大小不超过100MB
- 检查uploads目录权限
-
前端无法加载
- 确认Flask应用正在运行
- 检查静态文件路径配置
- 清除浏览器缓存
日志查看
# 查看Flask应用日志
tail -f app.log
# 查看ANSYS处理日志
tail -f ansys.log
贡献指南
- Fork项目
- 创建功能分支
- 提交更改
- 推送到分支
- 创建Pull Request
许可证
本项目采用MIT许可证 - 查看LICENSE文件了解详情
联系方式
如有问题或建议,请通过以下方式联系:
- 创建Issue
- 发送邮件至: [your-email@example.com]
更新日志
v1.0.0 (2025-01-01)
- 初始版本发布
- 基本网格生成功能
- Web用户界面
- API接口实现
- 质量检查系统
注意: 本系统目前处于开发阶段,部分功能可能不完整。建议在生产环境使用前进行充分测试。