找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 3416|回复: 23

[分享] 表达式取值范围

[复制链接]

16

主题

556

回帖

9237

积分

少校

积分
9237

灌水王灌水王

发表于 2022-5-31 16:28:34 | 显示全部楼层 |阅读模式
attachments-2022-05-1DlbQa0j62948d6454b79.jpg
L(总宽)=100(X)(可变)
w(中间物体宽)=10
wpy(数量)=3
sp(物体间净空宽)=17.5±4
spy(数量)=wpy+1
设L=100(x),W=10,SP=17.5±4。求1;wpy数量等于多少?。求2;sp的宽是多少?
草稿公式100-(3*10)/4=17.5
当L改变时,wpy(数量)随之改变,sp(物体间净空宽)不变,请问如何在ug中创建表达式?

以上问题是我在网上看到的,我尝试去做了一下 水平不够没做出来,
sp(物体间净空宽)=17.5±4,我想的是取值可以用13.5+8*t来实现13.5~21.5数值的变化,t自变更0~1变化
但在表达式内只会显示成一个定值,只有用规律曲线来表达才能显示出变化,怎么让数值变动起来没想通


2022/05/31凌晨更新增加
在NX里面 我想好久没能解决 后面我用Catia研究了一下
在Catia里面解决了 而且方法也很简单 只要4个参数加一个方程求解就解决的,
时间比较晚了 有时间我把详细方法和做的思路分享出来,先上个图,有图有真相。。
snipaste_20220531_233203.jpg

16

主题

556

回帖

9237

积分

少校

积分
9237

灌水王灌水王

 楼主| 发表于 2022-5-31 17:47:50 | 显示全部楼层
原贴来自NX网,不能贴链接

16

主题

556

回帖

9237

积分

少校

积分
9237

灌水王灌水王

 楼主| 发表于 2022-6-1 12:07:27 | 显示全部楼层
上传一个演式动图,
Catia源文件也分享给大家交流学习,我用版本为Catia V5-R2016,低于此版本打不数据
WenTiJieDa.rar (72.71 KB, 下载次数: 9)
2022-06-01-11-47-13.gif

PS:我主用NX,辅用Catia
问题却不是用NX解决的,用点小失落,昨晚凌晨用Catia做出来后,
睡觉时一直在想NX中不能像Catia哪样有解方程式的功能(也许有,我不知道)
还有用什么方法来做,思虑了好久才睡
但灵光乍现,也许可以用优化功能来做,它能驱动表达式的值变化
待我去研究一下,有进展再分享

16

主题

556

回帖

9237

积分

少校

积分
9237

灌水王灌水王

 楼主| 发表于 2022-6-1 12:43:46 | 显示全部楼层
本帖最后由 奎子* 于 2022-6-1 15:40 编辑

主要思路分享1.SP=17.5±4 取值范围是17.5~20.5,怎么去限定SP这个参数的值在这个范围内
Catia中有一个功能轻松实现一个参数的取值范围,
我用NX感觉好羡慕,不知道有人知道NX中有类似的功能吗?
snipaste_20220601_122502.jpg

2.N是个数,不能出现小数,要限制它为一个整数,在创建时参数时要类型为整数


                                 | N=(L-SP*(N+1))/W;
3.列方程,求解方程   |
                                 | SP=(L-N*W)/(N+1)

               N--方块个数
               SP--等分间隙
              W--方块长宽高
               L--底板长
          N+1--间隙个数
Catia中知识工程模块→知识库向导中有一个方程式的功能,能列出方程求解,
NX中也没有方程式求解功能吧,又是让人羡慕的一点,若有求知道的分享
下载.png

如此处理后,变更L的值个数N和间隙宽SP就会自动求解变化,实现全参数化。
2022/06/01 14时 再次编辑追加说明
如果尝试在NX的表达式中,列以上述方程,你会发现它会报错
它会提示SP,N这两个参数 存在循环引用,无法生成表达式
2022/06/01  16时编辑增加
经过研究 在NX中 用优化功能、灵敏度研究功能 可能将SP=17.5±4 取值限制在范围是17.5~20.5内,
但还是存在问题
1.N是个数,理论上我们想让它成正整数变化,但在NX表达中设置类型为整数时,
在变更列表中就不会出现,当它常数时就能显示出来,不知道是不是存在BUG,整数类型无法指派为变量。
下方截图中的上下限约束,当你调成整数,如1~100,因为没有整数限制,运行优化会出现小数。

2.N与SP参数,存在相互引用,且是变量值,在NX表达式列不方程,无法建立表达式联系
这是最关键的一步入,运行N出现小数,可以用函数四舍五入实现取整,但无法建立方程联系
就不能做到参数化,目前没有新的思路 只能做到这一步的,若有懂的人看到烦请解答一下 谢谢


snipaste_20220601_153143.jpg




0

主题

109

回帖

8778

积分

少校

积分
8778

灌水王

发表于 2022-6-1 13:33:21 | 显示全部楼层
{:}向楼主学习!方程多年不用,退化了不少。感谢楼主精神。

0

主题

6

回帖

77

积分

上等兵

积分
77
发表于 2022-6-4 11:34:38 | 显示全部楼层
向楼主学习。{:}

13

主题

117

回帖

3493

积分

中尉

积分
3493
发表于 2022-6-6 13:39:50 | 显示全部楼层
实际用途是什么

5

主题

348

回帖

1万

积分

大校

积分
16422
发表于 2022-6-9 13:40:51 | 显示全部楼层
ZZ1.gif
是这样吗?

1

主题

33

回帖

2856

积分

少尉

积分
2856
发表于 2022-6-9 17:04:14 | 显示全部楼层
NX也可以
2022_06_09_16_57_29_507.gif

1

主题

33

回帖

2856

积分

少尉

积分
2856
发表于 2022-6-9 17:05:53 | 显示全部楼层
NX也可以
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2024-12-18 12:14 , Processed in 0.134618 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表