
大家好,我是小郭老师,中科院硕士,长期从事 ANSYS 二次开发与仿真流程自动化,曾帮助多个研究所、研究院、国企和大型企业完成 ANSYS 二次开发项目。
之前我写过两篇 Mechanical 表格瞬态数据导出的文章,主要讲如何从已有结果表格中提取瞬态数据。
这类方法很好用,但有一个前提:选择范围内要有有效网格节点。
而实际项目中,试验测点、传感器位置或设计监测点,通常给的是空间坐标,很可能不一定正好落在某个节点上。
在 Mechanical 里插入 Probe 时,很多人默认使用 Geometry Selection。
也就是先选一个几何点、边、面或 Named Selection,再让 Probe 提取这个位置或范围上的结果。

这个习惯没有错。但它容易让人误以为 Probe 只能基于几何选择。
实际上,Probe 的 Details 里有一个很关键的属性:
Location Method如果把它从 Geometry Selection 改成 Coordinate System,Mechanical 就会使用指定局部坐标系的原点作为 Probe 的结果提取位置。


更稳的做法是:
用局部坐标系定义测点位置,
再让 Stress Probe 使用这个坐标系作为 Location。也就是说,脚本要完成三件事:
1. 创建一个局部坐标系 monitor_point;
2. 将坐标系原点设置到目标测点坐标;
3. 创建 Stress Probe,并让它使用 monitor_point 作为结果提取位置。
核心流程如下:

这里最关键的是:monitor_point 不是提前手动创建好的对象,而是脚本创建出来的局部坐标系。后面 Stress Probe 的 Location 直接指向这个脚本对象。

首先,创建脚本入口

接着创建局部坐标系,并写入测点坐标:

这里采用的是 Mechanical 录制脚本中的写法:通过 OriginDefineBy、OriginX、OriginY 和 OriginZ 定义坐标系原点。
然后创建 Stress Probe,并把它绑定到刚创建的 monitor_point:

其中最重要的是:

也就是说,Probe 的结果提取位置由脚本创建的局部坐标系决定。
脚本运行后的结果如下图所示:
这时 Stress Probe 不再通过几何选择定位,而是通过 monitor_point 坐标系定位。坐标系原点就是测点位置:
X Coordinate = 4.1 m
Y Coordinate = 0.517 m
Z Coordinate = 0.475 m由于脚本设置了:
stress_probe.ResultSelection = ProbeDisplayFilter.Equivalent因此这里提取的是该测点位置处的等效应力结果。
这个脚本只演示一个测点。实际项目中,可以继续扩展成一套测点 Probe 自动化模板。
第一个方向,是多测点批量创建。
可以把测点整理成表格:
point_name x y z unit
MP_01 4.1 0.517 0.475 m
MP_02 4.3 0.520 0.480 m
MP_03 4.5 0.530 0.490 m脚本读取表格后,批量创建:
• monitor_point_MP_01 这类局部坐标系;
• Stress Probe_MP_01 这类应力探针;
• 每个 Probe 对应自己的测点坐标系。
第二个方向,是加入同名对象检查。
本文脚本是演示版,每次运行都会创建新的坐标系和 Probe。项目版脚本可以先检查对象是否已存在,存在则更新坐标和 Details,不存在再创建。
第三个方向,是和结果导出结合。
Probe 创建完成后,可以继续读取 Probe 结果、导出表格、截图,或者生成测点应力对比报告。
这一篇解决的是一个具体问题:
测点不在网格节点上时,如何在 Mechanical 中提取该位置处的等效应力。
核心思路是:
测点坐标
-> 局部坐标系 monitor_point
-> Stress Probe
-> Coordinate System Location
-> Equivalent Stress本文脚本完成了:
1. 创建局部坐标系 monitor_point;
2. 写入坐标系原点坐标;
3. 创建 Stress Probe;
4. 将 Location Method 设置为 Coordinate System;
5. 将 Location 绑定到 monitor_point;
6. 将 Result Selection 设置为 Equivalent;
7. 刷新并激活结果对象。
需要注意的是,非节点位置处的结果通常来自插值。它适合虚拟测点、试验测点对比和关键空间点监测;如果项目要求读取某个节点 ID 的原始结果,就应该使用节点提取或 DPF 路线。
点击阅读原文,立即学习《ANSYS Workbench & Mechanical企业级二次开发程序与Python应用入门进阶》,掌握ANSYS Workbench & Mechanical的脚本自动化开发能力。
ANSYS Workbench & Mechanical企业级二次开发程序与Python应用入门进阶
本课程从基础脚本开发到多工况批量计算的自动化实现,手把手教你用Python打通「仿真流程自动化 - 多工况批量计算」全链路,让「重复仿真工作自动化、复杂工况高效计算」从想法变成日常。
我还为付费用户提供VIP群进行交流、答疑服务、持续加餐内容、提供定制化培训和咨询服务、仿真人才库高薪内推就业、仿真秀还提供奖学金、学完此课程,推荐学习者报名参加工程仿真技术(CAE分析职业能力等级评价证书)。
