本文摘要(由AI生成):
本文介绍了叶片设计的关键步骤,包括确定翼型、弦长和扭角以构建叶片外形。叶片截面坐标变换涉及比例缩放、旋转和平移过程,可通过编程实现。文章还提供了三维坐标转换程序的使用说明,包括输入文件定义和UG建模步骤。该程序可快速生成叶片截面坐标数据,并导入UG进行建模,简化了叶片设计流程。
正如吴站长所言:“时间就像一头野驴,转起来就没个停”。一转眼,已经断更整整3个月了。隐身了这么长时间,我这头骡子也该出来溜溜了。
最近总有人问起叶片三维建模的问题。因为风电叶片外形确实不是规则图形,属于复杂曲面,所以在2021年2月2日这个有点2的日子,我发过一篇文章,介绍了如何通过UG建立叶片的三维模型。还非常“热情地”承诺下期发布15MW叶片建模的录屏。
不过由于当时还没入职,用的笔记本电脑早就到了退休的年纪,录频画叶片的时候一直很卡,就把这个事情无限期延后了,虽然心中一直耿耿于怀,但由于工作比较忙,就没有更新。
自出道以来,杨老师给人的印象除了靠谱之外,就是俩字:让人放心。
如今被“上门问罪了”,在诚实守信的形象即将倒塌之际,必须出来向这592个读者兑现承诺了。所以今天就再次啰嗦一下,如何通过UG建立风电叶片的三维模型。
-01-
风电叶片是一个不规则的曲面,但叶片沿展向的每一个截面都是标准翼型经过放大、平移和旋转三种基本操作所得到的二维平面图形。首先介绍一下翼型。
翼型(airfoil),最早应用于飞机机翼,翼型上下型线均为光滑的流线设计,上型线一般称为吸力面,下型线称为压力面。粗的一端叫前缘,尖的一端叫尾缘。前缘和尾缘的连接线为弦线,其长度为弦长。表示翼型特征的参数一般有2个:相对厚度和相对弯度。
相对厚度定义为翼型上下型线最大距离与弦长之比,相对弯度则指中弧线到弦线最大距与弦长之比。
一般来说,航空翼型由于运行工况气流速度很高,所以翼型相对厚度较小,而相对弯度较大。
风电叶片设计入流速度均较小,所以一般采用相对厚度较大的翼型,以保证低雷诺数下的优异气动性能。比如NREL 5MW叶片所采用的翼型,在气流速度最大的叶尖处采用了相对弯度为6%、相对厚度为18%的NACA64-618翼型,而在叶片中部则采用相对厚度较大的钝尾缘DU系列翼型。
-02-
叶片任意径向位置的截面均为一个翼型(叶根处则为圆,也可以视为一种特殊的翼型),弦长表示翼型的绝对大小,而扭角则表示翼型的平面摆放位置。
为了保持良好的气动性能,叶片截面的弦长和扭角均随当地半径增大而减小,从而使得叶片在设计工况下的实际攻角,具有较高的升力系数和较小的阻力系数。
因为叶片各个截面翼型特性相似,所以最佳攻角范围非常接近,一般在7°~9°的范围。攻角又与线速度相关,所以不同展向位置的叶片截面扭角各不相同。
在叶片设计的第一步,就是确定各个截面的翼型。当翼型确定好了之后,仅需要知道每个截面的弦长和扭角大小,就能确定叶片的整个外形。
一个标准翼型的坐标均为归一化的,即前缘点横坐标为0,后缘点坐标为1.叶片截面的绝对外形大小,就是归一化翼型坐标乘以弦长。
翼型的扭转形态由扭角决定,即将翼型扭转一定角度。此处涉及另一个问题:绕哪一个点旋转?这个点就是变桨轴线与截面的交点。
我们构建叶片三维模型的过程,有点像穿烤串的过程,翼型旋转参考点就是烤串木签的穿插点。木签就是变桨轴线,靠近叶片的腹板和主梁。对于不同的截面,穿插的位置肯定不同。对于规则的圆形,显然是穿在中间最稳定,就像羊肉串,所以叶根处的旋转参考点接近中间位置。而翼型属于前缘笨重后缘轻,穿插点应该靠近前缘点,就像韭菜是穿在梗上,而不是中间的叶子上。
翼型的特殊外形使得它的气动中心一般位于距离前缘点25%的弦长处,但是实际的叶片还要考虑结构设计,主梁一般保持30%~60%弦长跨度。为了保证良好的气动平衡和结构平衡,变桨轴线应该处于30%~40%的弦向位置。所以可以发现,在翼型截面处,NREL5MW、DTU10MW、Sandia13.2MW和IEA15MW叶片的pitch axis位置均在0.30~0.4区间内。
-03-
从上可知,叶片三维坐标变换其实就是对每一个叶片截面进行比例缩放、旋转和平移的过程。这三个步骤不分顺序,我的一般操作是先将变桨轴平移至坐标原点,然后进行比例缩放(乘以弦长),再进行扭转变换。
这一步的公式为:
由于我们需要的是三维坐标,z轴坐标即为该截面的当地半径。通过编程,循环计算每一个截面的坐标,就可以得到叶片三维建模所需要的数据。
正如往常一样,好久不见总要送点礼,今天压箱底的叶片三维坐标转换程序就送给大家了。这个程序是刚上研究生的时候写的,后面做了一些修改,目前的版本非常nice,可以直接生成UG的grip文件和导入截面曲线的宏文件。
这个程序有一个输入文件,文件名固定不变为“inputfile_for_TransBldCoords.txt”。
在这个文件里面,需要定义翼型坐标文件、叶片展向的弦长、扭角和预弯分布。其中预弯为绝对值,单位与半径和 弦长一样,均为m。
定义好这个文件后,运行“TransBldCoords.exe”,在0.2s内,就会完成叶片坐标变换,并输出每一个截面的坐标数据在指定文件夹内(第8行定义的变量名)
其中还包括一个宏文件,后缀名为“marco”,通过简单修改路径后,就可以直接运用UG调用,批量导入每一个截面的曲线。
因为UG画图时,对中文路径不够友好,所以需要将生成的sectional 文件放置在一个合适的路径下面,比如,我这里是放在
“F:\StudyJeyla\Research\WechatOfficial\paper9\BladeModeling\IEA15MWBlade”。通过记事本打开marco文件,将“TEMP_DIR_TO_BE_CHANGED”全部替换为:“F:\StudyJeyla\Research\WechatOfficial\paper9\BladeModeling\IEA15MWBlade”
-04-
首先打开NX UG,新建一个model。点击工具-宏-回放,或者快捷键ctrl shift p,打开宏文件。
选择刚刚修改好的宏文件,点击确定。
就开始批量读取每一个截面的坐标并生成曲线了。
导入曲线完成后,选择“曲面”→“通过曲线组”命令,做一点微小的设置调整。在“alignment”这一栏,选择“By Points”,在Patch type这栏选择“Match String”,然后关掉预览。
左键单击曲线1,中键确认选择,再选择曲线2,中键确认,以此完成所有曲线的“点击”和“确认”。最后还需要检查一下各个曲线的方向,保证每个曲线的法向对齐。发现这种交叉的现象,需要双击方向箭头,调整曲线的方向.
到此,我们就完成了叶片三维建模啦?是不是很简单~