首页
学习
活动
专区
工具
TVP
发布

不会参数化分析的天平设计师不是好程序员

设计本身就是一段程序!

春节后第一篇推文(我要穿越)几天就获得了过百的阅读量!这对一个关注量并不多的“冷门科技号”来说真的是满满的正能量啊!查看后台竟然有好几个妹纸关注,天平君只能说不去看直播、玩抖音的妹纸都是正经妹纸!反之不成立哈,别对号入座。其实,最近后台还有一些互动,问题也是五花八门的,但我挺高兴能有人提问。所以无论如何,都欢迎留言给我,探讨使人进步!而且,无论如何我都会一直写下去,毕竟不喜欢写作的攻城狮不是好教授!

对于应变式传感器设计,说来简单。只要输入力时能有电信号输出就行了。怎么才能输出电信号?只要有一定的应变,应变计组成的电桥就能感受并转换为电信号。但是问题是要在量程内有合适的应变量,才能获得合适的信号输出。这就是通常所说的力传感器要有合适的灵敏度。比如对于应变天平,一般要求1mV/V的灵敏度(这时的弹性敏感元件贴片处的应变大约为500με)。这几乎是全世界通用的基本设计准则。灵敏度大了,则刚度不足,可能出现模型试验系统抖动问题;如果太小了,则分辨率不够,使得测量不确定度增加。不能大,又不能小,那就是一个优化问题了。

几何形状和尺寸决定了弹性敏感结构的灵敏度。当然载荷是需要给定的。设计测量力1000N和力矩20N.m的传感器,其最优测量范围大约在量程的70%左右。所以,结构设计时,总是以最大量程的载荷去估算应变,计算灵敏度。如果是单分量或者不存在耦合关系的多分量,这个问题并不算复杂。列出应变的计算公式,用高等数学的求极值方法,总是能找到一组尺寸与量程对应,使得灵敏度接近1mV/V。如果是存在耦合关系,那么该如何决定结构参数呢?

若干年前,天平君为了设计出第一个作品,用MFC框架写了个程序来确定这些参数。用矩形梁测量升力Y、俯仰力矩Mz、滚转力矩Mx、侧向力Z和偏航力矩My。界面是这样的。

她看起来非常简陋,甚至计算也不是那么准确,毕竟是使用材料力学基本公式进行简化计算的。但是这已经能通过手动调整截面的两个参数b、h及截面距离设计中心的长度l来研究所测量的五个力学量之间的灵敏度耦合关系了。然后还写了个四柱梁的程序。这个更不准确,因为受力更加复杂,材料力学公式已经算不准啦!

后来觉得MFC维护和使用都很困难,干脆改写成了VBA代码嵌入了EXCEL计算表格,使用起来更加方便了。写这些程序一点都不难,但调试几百行的VBA代码,各种BUG绝对会浪费很多时间和精力。但是一旦调试完成,那就可以重复利用,并且快速计算一个方案的主要参数。所以天平君一直乐此不疲的编写程序代码、找BUG,而唯一的用户就是自己。有那么一段时间,感觉自己像个程序员,但其实并不可能是。

当然这些简单计算结果还需要在ANSYS这样的有限元软件中去进一步优化。从ANSYS5.6版本开始,天平君就成了一名忠实的FEMer,结构问题总是想在ANSYS上跑一下。那个年代,通过有限元分析几何变量对结果的影响基本上难以实现,几十万网格都要算半天。但是作为一名非专业的程序员,怎么可能不用APDL来提高效率呢?连建模都可以用APDL搞定,更不用说结果后处理,分分钟输出到文件,算完直接看结果。然而,您以为这很高效?其实同样免不了调试和BUG,有时候ANSYS经典界面下的计算会莫名其妙终止跳出。有时候只想砸电脑、扔鼠标……最后我只能放弃这种吃力不讨好的方式,只将一些常用宏做成按钮,比如实现材料参数、载荷步文件、应变提取等功能,直接一键搞定。这样倒是大大节约了点鼠标的时间,然而对参数化分析,就可能呵呵了!

显然,大部分天平设计师并不是程序员,有这编程调试的功夫,早就把图纸画出来交差了。可天平君一直都在一边搞设计,一边探索和学习一些新的设计方法。有的时候,新技术可以更好的为应变测力服务,何乐而不为?有很多同行都不太喜欢新的东西,学会了经曲界面下加载的命令流,便不去学习其它的了,反正够用就行。后来ANSYS Workbench(AWB)发布了也不愿意学习和使用,直到大家都用AWB了,才不得已去用。讲真,AWB确实比经典界面好用多了,至少我是这么觉得。

AWB也很容易上手,建模、网格划分以及后处理都很灵活。求解也很稳健,不会一不小心就莫名中断或退出。基本上建立一个标准流程,其它项目都可以另存然后直接导入新模型,指定边界条件就可以计算,如果后处理做得不错,甚至可以直接生成一个标准报告。

貌似不再需要编程了,但是编程的思想还是在的。比如参数化分析,就是把每一个求解过程看成是一个完整程序,然后变化的东西看作变量,进行一系列重复求解,最后选择最好的参数组合,使得设计指标达到最优。

说得再多,不及一个例子。不知有没有人研究过AWB的应变分析分辨率到底有多大?我们分析应变大概是0.0005(500με)的量级,一般情况下AWB的分辨率应该是够了,至少10 με对于灵敏度来说影响也不大。那如果要做干扰分析,可能就需要知道AWB的应变对载荷到底有多敏感?

先上一张项目分析流程框图。采用静力学分析模块,并使用参数化分析方法。

为了消除网格的影响,采用了悬臂梁简单模型。直接在AWB中建立了模型,也可以导入其它实体模型,本例的分析对象不需要参数化。

保存模型,进入分析模块。为了方便自动提取计算结果,在要提取的表面建立一条Y坐标从-2到+2的路径。这在很多参数化分析中都很有用,本例中要提取这条线上的最小应变。

划分网格,分别对六面体和四面体网格进行了对比分析。经过初步分析发现,网格对计算结果基本没有影响,后面采用了六面体网格。

以载荷为参数进行分析, 在Y分量前面标记为“P”就可以了。可以在参数化分析前先固定一些参数分析一下,检验各项设置是否正确。当设置成参数后,原来的试分析设置会变成灰色,不能在这里改变,但可以在流程框图中的参数设置中进行参数设置。

参数设置中,Y加载范围是500至-1N。人为确定非等长步长,共进行18次仿真。最小步长为0.05N。

后处理结果选择显示路径中的应变,将最小应变选为参数。这样参数与求解结果形成闭环,就可以进行求解了。

求解后可以导出所有计算结果,与材料力学公式手动计算进行了对比,并整理形成表格。与公式计算结果相比,应变在载荷为0.1N时出现不同,差异为2e-11。当拉压时,有限元结果在0.1N时出现大约3e-11的差异。因此在默认设置的情况下,AWB的分辨率很高,大约在3e-5με。

本例还将网格设置为参数进行了研究,不同大小的网格对应变分辨率并没有明显影响。还施加了力矩进行了弯曲分析,至少可以分辨出1e-3με的应变。因此在应变分析时,这样的分辨率足够。

小结。参数化分析是设计利器,在很多场合都是设计的主要依据。程序设计不是每个人都精通,至少编程思想可用于解决一些实际问题。

你以为有了AWB就不用编写程序,那就太天真了!有了AWB的参数化分析功能,确实不用我们在仿真分析中再去编写程序了,但是作为一个天平设计师我会停止编写程序么?

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180405G1C0V100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券