基于OpenManus的土木工程结构智能设计平台开发

作者:魏晴 时间:2026-06-09 点击数:

作品来源:2026届智能建造专业本科毕业设计

设计人:林怡然、魏晴

指导老师:骆剑彬、张鹤、关振长

源码下载:https://github.com/Lin-0408-Yiran/structural-design-system

作品视频

作品介绍

1. 系统背景与意义

随着人工智能技术在工程领域的快速渗透,传统结构设计流程面临效率瓶颈与知识壁垒的双重挑战。工程师开展梁、框架、桁架等结构设计时,需在参数确认、有限元建模、规范校核、图纸绘制、报告撰写等环节耗费大量工时。OpenManus 结构设计系统依托大语言模型 + 多 Agent 协作框架,打通自然语言需求输入到工程成果交付全链路自动化设计,作为土木工程智能化辅助设计工具落地应用。

本系统聚焦土木工程结构设计痛点:设计流程繁琐、入行专业门槛高、设计成果交付周期长。使用者仅需使用工程自然语言描述设计需求,无需手动建模、套用固定模板,系统自动调度多专业 Agent 分步完成参数采集、有限元运算、方案优选、图纸出图、报告编制。

支持结构类型:简支梁、悬臂梁、连续梁、桁架、框架 5 类;

交互机制:依托 WebSocket 实时推送任务执行进度,关键节点弹窗确认参数、多方案择优对比,设计流程全程可视可控;

账号管控:搭载用户权限 + 使用配额管理体系,区分普通用户、管理员两类角色差异化管控。

2. 系统架构与技术选型

系统采用B/S 浏览器服务器架构,用户浏览器直接访问,无需安装客户端,整体划分为前端展示层、后端服务层、异步任务层、多 Agent 编排层四大层级。

2.1 前端技术栈

组件

版本

用途说明

Vue

^3.x

前端开发框架

Vben Admin

5.7.0

后台管理脚手架(@vben/web-antd)

Ant Design Vue

^4.x

页面 UI 组件库

Vite

-

前端项目构建工具

Pinia

^2.x

前端状态管理

vue-router

^4.x

前端路由管理

marked

^17.0.5

Markdown 设计报告页面渲染

ECharts

^6.0.0

评估雷达图、各类数据图表展示

2.2 后端技术栈

组件

版本

用途说明

Python

3.12

后端服务、AI 引擎运行环境

FastAPI

0.109.0

后端 Web 接口框架,提供 RESTful 接口

SQLAlchemy

2.0.25

ORM 框架,对接 PostgreSQL 数据库

Celery

5.3.6

异步任务调度队列

Redis

5.0.1

消息中间件 Broker、消息发布订阅

PostgreSQL

≥14.x

系统主生产数据库

OpenSeesPy

-

结构有限元建模与力学计算引擎

ezdxf

1.1.3

生成 DXF 格式 CAD 工程图纸

2.3 核心多 Agent 编排层

为系统核心模块,基于 OpenManus 框架的 PlanningFlow 编排器统筹调度 5 类专业 Agent,Agent 间采用标准化 JSON 格式交互数据,各 Agent 可通过 WebAskHuman 工具在运行中向用户发起交互确认。

3. 系统功能模块设计

系统由五大核心业务处理模块 + 三大支撑管理模块组成,全覆盖需求录入至成果下载全设计流程。

3-1系统功能模块图

3.1 五大核心处理模块

3.1.1 结构参数收集与方案生成模块(StructuralDesignAgent)

解析用户自然语言输入,自动提取结构形式、几何尺寸、材料参数、荷载工况等关键数据;参数缺失、信息模糊时通过 AskHuman 弹窗和用户确认;参数完善后调用大模型生成标准化 JSON 格式初步设计方案(DesignProposal),向下游模块流转。

3.1.2 有限元分析模块(FEAnalysisAgent)

接收设计方案,依托工厂模式 AnalyzerFactory 匹配对应结构分析器,调用 OpenSeesPy 完成自动化建模、力学求解;输出位移、应力、弯矩、剪力等力学指标,同步完成规范合规校核,生成结构受力可视化图表;覆盖简支梁 / 悬臂梁 / 连续梁 / 框架 / 桁架全品类结构计算。

3.1.3 设计评估模块(EvaluationAgent)

安全性、经济性、结构效率、可持续性四大维度量化打分(0-100 分),分级:A+-D;系统批量生成多套优化方案,卡片化展示各项指标,全部方案生成后由用户选定最终实施方案。

安全性:安全系数、挠度富余值;

经济性:材料消耗量、造价成本;

结构效率:材料应力利用率、结构冗余系数;

可持续性:工程碳排放、建材可回收性能。

3.1.4 CAD 图纸自动生成模块(CADDrawingAgent)

依据定稿方案与有限元计算数据,基于 ezdxf 自动生成带尺寸、荷载、支座标注的 DXF 施工图,同步输出 PNG 预览图,支持在线预览、CAD 本地下载。

3.1.5 设计报告生成模块(ReportGenerationAgent)

汇总全流程数据,自动生成 Markdown 格式设计报告,内容包含项目概况、设计规范依据、计算摘要、有限元结果、方案评估、规范验算、优化建议;前端在线渲染预览,支持.md 文件下载。

3.2 三大支撑模块

3.2.1 用户权限与配额管理模块

采用 RBAC 角色权限控制,分普通用户(user)、管理员(admin);用户、角色、权限通过中间关联表实现多对多绑定;单次任务消耗 1 单位使用配额,配额消耗记录存入 QuotaUsageHistory,管理员后台可查询、重置用户配额。

3.2.2 API Key 安全管理模块

用户 API Key 采用 Fernet 对称加密存入数据库,全链路无明文存储传输;用户在个人中心配置 / 更新密钥,保存后输入框自动清空。

3.2.3 实时通信模块

Celery 任务状态经由 Redis 发布订阅推送,FastAPI 通过 WebSocket 转发至前端页面;全流程实时刷新任务进度,断线重连后读取数据库快照,恢复已完成阶段数据。

4. 系统数据库设计

数据库选用 PostgreSQL,通过 SQLAlchemy 2.0 ORM 管理数据表,核心数据表分类如下:

 

4 -1数据库ER图

4.1 用户权限类数据表

数据表名称

核心存储内容

users 用户表

存储系统用户基础信息,包含账号、邮箱、加密密码、加密APIKey、用户剩余配额等核心数据

roles 角色表

定义系统角色类型,预置普通用户、管理员两类角色,存储角色标识与角色描述信息

permissions 权限表

收录系统所有操作权限,包含任务新建、查看、下载、用户管理、配额管理等权限数据

user_roles 用户角色关联表

实现用户与角色的多对多绑定,为不同用户分配对应的系统角色

role_permissions 角色权限关联表

实现角色与权限的多对多绑定,为各类角色配置对应的操作权限

audit_logs 审计日志表

全程记录系统操作行为,包含操作IP、操作账号、操作行为、访问资源、操作时间等审计数据

4.2 任务管理类数据表

数据表名称

核心存储内容

tasks 任务主表

归属用户、任务状态(pending/running/completed/failed)、Celery任务ID、原始需求、结构类型、创建/完成时间、全流程快照result_json

task_files 任务附件表

存储各任务产出文件路径、文件格式、文件大小等附件相关信息

5.1 系统登录与注册

在浏览器中打开 http://8.155.172.84:8080,进入系统登录页面(如图 5-1)。首次使用的用户请点击 注册 按钮,填写用户名、邮箱和密码后完成账号创建(如图 5-2)。系统管理员账号需由超级管理员在后台配置中单独创建。注册完成后,在登录界面输入用户名和密码即可进入系统主界面。

5-1 系统登录页面

5-2 用户注册页面

5.2 API Key配置

系统的 AI 分析功能依赖大语言模型(LLM)服务,用户登录后需先配置个人API Key才能使用设计功能。

点击页面右上角的用户头像,进入个人中心 API Key 设置,在输入框中填入API Key(格式如sk-...),点击保存即可(如图5-3)。系统使用AES加密存储,数据库中不保存明文。

输入框默认以密码形式隐藏内容,点击显示按钮可切换为明文查看。保存成功后输入框将自动清空。

5-3 API Key配置页面

5.3 系统首页

登录成功后,系统默认进入结构设计任务列表页(如图5-4)。左侧导航栏包含结构设计关于系统两个主菜单,系统管理菜单仅管理员可见顶部导航栏提供用户信息、个人设置等入口。

5-4 结构设计任务列表页

5.4结构设计

结构设计模块是本系统的核心功能模块,位于左侧导航栏 结构设计菜单下,包含我的设计新建任务两个页面。

5.4.1 新建设计任务

点击导航栏结构设计 新建任务,进入任务创建页面(如图 5-5)。

若尚未配置 API Key,页面顶部将显示警告提示,用户进入个人中心完成配置后方可提交。

在页面的文本输入区域,用自然语言描述结构设计需求。系统对输入格式无严格限制,用户可按工程习惯自由描述,例如:

Plain Text
"请为一个跨度12米的简支梁进行结构设计,荷载为均布荷载30kN/m
 使用C30混凝土,截面宽度400mm"
"设计一个53跨的钢框架结构,层高3.5米,跨度6米,考虑地震荷载,
 设防烈度7度。"
"为悬臂长度8米的雨棚设计悬臂梁,活荷载2kN/m²,使用Q345钢。"

填写完成后,点击提交设计按钮,系统将自动跳转至任务详情页并开始执行分析流程。

5-5 任务创建页面

5.4.2 实时进度跟踪

任务提交后,页面自动跳转至任务详情页,顶部步骤导航栏显示五个阶段的执行状态(如图 5-6)。系统通过 WebSocket 连接实时推送各阶段执行状态,共包含五个分析阶段:

5-6 进度跟踪视图

第一阶段:参数收集与方案生成

解析用户的设计需求,提取结构类型、几何参数、材料参数、荷载条件等关键设计参数,并生成初步设计方案。

第二阶段:有限元分析

调用OpenSeesPy对设计方案进行有限元建模与计算,输出应力分布、位移变形、安全系数等分析结果,并生成结构响应可视化图表。

第三阶段:设计评估

从安全性、经济性、结构效率、可持续性四个维度对设计方案进行量化评分,给出综合得分与等级(A+D)。

第四阶段:CAD 图纸生成

根据设计方案与分析结果,自动生成包含尺寸标注、荷载标注、支座标注的DXF格式工程图纸,并输出PNG格式预览图。

第五阶段:设计报告生成

汇总各阶段成果,自动生成完整的Markdown格式设计报告,内容涵盖设计参数总结、有限元分析结果、评估报告、规范校核及优化建议。

页面进度条将实时更新当前阶段状态(如图 5-7),每个阶段完成后将显示阶段摘要信息。

5-7 设计阶段状态展示页面(有限元阶段)

5.4.3 人机交互问答

在任务执行过程中,系统可能需要向用户确认某些设计参数或请求补充信息(如图 5-8)。当出现交互问题时,页面将弹出问答窗口,展示系统的提问内容,用户在输入框中填写答复后点击确认提交,任务将继续执行。

5-8 人机交互问答页面

常见的人机交互场景包括:

在任务执行过程中,以下阶段可能触发人机交互(如图5-7):

  方案生成阶段:Agent提取参数后,询问用户确认设计参数是否正确,或选择修改方向。提供选项供用户单选,也可选择其他后自由输入。

  设计评估阶段:系统并行生成多个优化方案,以卡片形式实时推送展示各方案指标,全部方案就绪后询问用户选择目标方案,同时展示综合得分、等级及LLM改进建议供参考。

  报告生成阶段(可选):若系统配置了SpeckleIFC导出,此阶段会询问是否导出 BIM 模型(Speckle + IFC)?,用户选择后执行导出,选择则跳过。

  交互问题出现时,左侧面板显示提问内容,用户作答后点击确认提交确认选择,任务继续执行。

5.4.4 查看设计结果

任务完成后,下方会展示设计结果。

设计报告如图5-9,以渲染后的Markdown格式展示完整设计报告,内容包括项目概况、设计依据、计算过程摘要、结果汇总及优化建议。

5-9 设计报告页面

CAD图纸如图5-10,内嵌DXF图纸查看器,支持在线预览自动生成的工程图纸,包含平面图、立面图、截面图、详图等子标签页。图纸含尺寸标注、荷载示意、支座符号等标准制图内容,支持鼠标滚轮缩放与拖拽平移。

5-10 CAD图纸展示页面

可视化图纸如图5-11,以图片或交互式图表形式展示有限元分析的可视化结果,包括位移云图、弯矩云图、应力云图、弯矩图、层间位移角等。

5-11 可视化图纸展示页面

设计评估结果如图5-12,以雷达图和得分卡形式呈现四维度评估结果,包括综合得分(0-100分)与等级(A+/A/B+/B/C+/C/D),以及安全性、经济性、结构效率、可持续性各维度的详细评分与改进建议。

5-12 设计评估展示图纸

BIM模型如图5-13,若已启用Speckle BIM导出,此标签页提供跳转按钮,可在新窗口中查看在线3D结构模型。

5-13 3D模型展示页面

下载文件如图5-14,以列表形式展示所有可下载的输出文件,包括设计报告(Markdown)、各视图图纸(DXF)、可视化图表及 BIM 模型(IFC)。支持逐项下载,也可点击“打包下载全部(ZIP)”一次性获取所有文件。

5-14下载文件页面

原始数据如图5-15,以JSON格式展示任务的完整原始结果数据,供开发调试或二次处理使用。

5-15 原始数据展示页面

5.4.5 下载输出文件

在任务详情页右侧的“输出文件”区域(如图 5-16),可下载以下格式的设计成果文件:

DXF文件:AutoCAD格式工程图纸,可用AutoCAD软件打开编辑。

PNG文件:图纸与分析结果图的预览图片。

Markdown文件:完整设计报告,可用文本编辑器或Markdown阅读器打开。

IFC文件(如已启用):BIM格式模型文件,可导入 Revit软件。

点击对应文件右侧的“下载”按钮即可将文件保存至本地。

5-16 下载输出文件页面

5.5任务管理

点击导航栏“结构设计 → 任务列表”进入任务管理页面(如图 5-17)。

任务列表以表格形式展示用户所有设计任务,包含以下信息列:

①序号

②结构类型(简支梁 / 悬臂梁 / 连续梁 / 框架 / 桁架)

③任务状态( 进行中 / 已完成 / 失败)

④创建时间

点击任务行中的“查看”按钮可跳转至该任务的详情页。

如需删除任务记录,点击操作列的“删除”按钮,系统将提示确认后执行删除操作,同时清理对应的输出文件。

5-17 任务详情页面

5.6系统管理

系统管理功能仅管理员账号可见,位于导航栏“系统管理”菜单下,包含用户管理、角色管理两个子页面。

5.6.1 用户管理

用户管理页面以表格形式列出系统内所有已注册用户,展示用户名、邮箱及当前角色信息,角色以标签形式标注(管理员显示红色,普通用户显示蓝色)。

管理员可执行以下操作:

  ①查看用户列表:页面加载后自动显示所有用户信息。

5-18用户管理页面

  ②分配角色:点击操作列的“分配角色”按钮,在弹窗中选择目标角色后确认,权限立即生效。

5-19 管理员角色分配页面

 

5.6.2 角色管理

 角色管理页面以表格形式展示系统内所有角色及其描述,角色以标签形式标注。系统默认包含两种角色:

  ①普通用户(user):可创建设计任务、查看个人任务、下载输出文件,受配额限制。

  ②管理员(admin):在普通用户权限基础上,额外拥有用户管理等后台管理权限。

6. 系统作品亮点

1.全链路 AI 自动化设计LLM 驱动全流程,自然语言一键生成有限元计算数据、施工图纸、成套设计报告,压缩设计周期、降低专业使用门槛;

2. Agent 模块化协同架构OpenManus 框架 + PlanningFlow 编排器串联 5 类专用 Agent,标准化 JSON 数据互通,模块解耦、易于迭代扩展;

3.AI + 专业有限元深度融合:内嵌 OpenSeesPy 专业力学计算内核,工厂模式适配多结构类型,数值计算结果反向支撑方案评估与图纸报告生成;

4.交互式非黑盒设计:关键节点人机交互确认参数、优选方案,全过程透明可控;

5.断点续算与实时推送Redis+WebSocket 实时推送进度,全阶段数据落库快照,刷新 / 重进页面无缝接续任务;

6.完善安全管控体系RBAC 分级权限、Fernet 密钥加密存储、配额管控 + 操作审计日志,兼顾 AI 开放能力与系统资源、数据安全。

 

地址:福建省福州市福州大学城乌龙江北大道2号      邮编:350108      传真:86-0591-22866099      2021福州大学      闽ICP备05005463号-1