首页/文章/ 详情

Abaqus PyQt Python平面变形欧拉角计算

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
从业经验5+年/博士学历/特邀专家/独家讲师
平台推荐
主编推荐
2年前浏览2486

在刚体运动学、飞机飞行、卫星姿态等领域,欧拉角是一个非常重要的概念和控制参数。


通俗讲,一个直角坐标系Sys-1,绕自己的X、Y、Z坐标轴依次转动一个角度,变为坐标系Sys-2,则转动的角度为欧拉角。欧拉角的值与转动顺序相关,例如从Sys-1转到Sys-2,转序X→Y→Z与转序Z→X→Y的欧拉角通常不同。因此,讲欧拉角时必须明确转序。除了绕3个轴转的欧拉角,还有绕2个轴转的欧拉角,例如转序X→Y→X。


除了运动学,精密设备的指向变化,有时也用欧拉角表示。例如,某精密指向、定位设备安装面为X-Y平面,指向为Z轴。由于外载荷(力、热等)作用,引起该设备安装面、指向发生变化,这时,可以用指定转序下的欧拉角表示设备指向状态的变化量。此处指定转序下的欧拉角称为绝对欧拉角。


对于有一定角度关系的两台精密设备,当关注两台设备相对指向变化时,引入相对欧拉角描述。


下面以简单例子介绍平面变形、指向欧拉角的计算,包括绝对欧拉角、相对欧拉角。


1 简化模型

下面的六面体为表面壳模型,下面由三段梁支持,三段梁分别沿X、Y、Z轴向。六个面的厚度不同,在上侧3个面施加不同的压力,如下左图所示。位移云图如下右图所示。

image.png


2 计算要求

计算六面体上面3个面的变形欧拉角,包括3个面的绝对欧拉角,平面2、3相对与平面1的相对欧拉角。平面1、2、3如下图所示。

image.png


3 数据处理

使用平面节点坐标、位移数据计算平面变形欧拉角。可以使用Python脚本输出平面节点编号、节点坐标(X、Y、Z)、节点位移(U1、U2、U3),如下图所示。下图为平面1的10个工况的数据文件,打开的文本文件中7列数据为节点编号、坐标、位移。

image.png

三个平面10个工况的节点数据文件如下图所示。每个文件中包含一个工况一个平面的节点编号、坐标、位移数据。



image.png

4 绝对欧拉角计算

使用PyQt Python开发了一个简单的小软件,计算绝对欧拉角、相对欧拉角。

首先计算各平面的绝对欧拉角。


image.png

计算平面1的10个工况的绝对欧拉角。

image.png


平面1变形的绝对欧拉角计算结果如下图所示。

image.png


伴随绝对欧拉角计算结果,软件同时写出了平面变形前后的坐标系数据,如下图。每行18个数据,每3个数据为一个坐标轴向量,变形前后2个坐标系,6个坐标轴,18个数据。

image.png


5 相对欧拉角计算

利用计算绝对欧拉角时得到的坐标系文件,计算平面变形相对欧拉角,如下图所示,计算平面2相当于平面1、平面3相对与平面1的相对欧拉角。

image.png


计算结果如下图所示。

image.png


6 小结

上述软件用的算法申请了发明专利,软件申请了软著。CAE工程师,也可以自制软件工具,解决重复性、复杂性数据处理等工作痛点。


2021年8月24日于西昌卫星发射中心


科普航天航空其他软件Abaquspython
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-06-14
最近编辑:2年前
KongXH
博士 专注于有限元分析领域,联合创作...
获赞 49粉丝 100文章 59课程 1
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈