勇哥注:
下面是对于大型项目做nx mcd仿真时的一些经验分享。读者如果对mcd非常了解,应该从本文本中读到一些共鸣的经验。欢迎大家补充。
准备工作
仿真场景的步骤:
(1)删除不需要的组件(真空阈、气管嘴、一些不需要展示的内部的细节部件等)
不需要的料盘删除,保留部分料盘用于测试。
对箱子内的部件删除。
对于料盘的感应器调整高度。
拖链删除,电磁阈删除,光纤放大器删除,真空发生器删除,接线板删除,这些东西对应的安装支架删除。
气路及安装板删除
完成后保存此初始场景。(后期做mcd设置后,可能出现重启软件载入失败的问题)
(2)移动对象
各种感应器的位置调整
不合理位置的对象做调整
料盘数据源的位置调整
卡簧角度的调整
轴的原点感应版位置的调整
(3)轴的原点位置纠正
跟据情况决定是否做,这个比较麻烦。
(4)轴的正负限位
通过测量取得,并且必须要填写,因为后面的轴IO信号完全依赖这个信息
(5)各类感应器:有料感应等
必须做好,位置要调整一下。
(6)轴的感应器:正限位、负限位、原点感应
气缸的动点和原点感应。
必须做。按测量值来定义。
(7)轴速度、轴编码器位置
必须做。否则上位机没办法用。
(8)不需要下面的命名:
mcd对象命名名,以a,b,c,d开头,代表不同的根层级,相当于命名空间的区分,一定程度避免重名、
原因是命名都会有:所有者组件
重名的也可以用此区分。
另外,因为编辑mcd属性严格在各层级进行,因此也不会有干涉。
在根层级查看时,如果有重名,则用所有者组件信息进行区分(它是按这个排序的)
(9)设置轴、气缸的刚体和运动副
先不用设置位置与速度控制,这样可以鼠标拖动观察。
经验分享
(一)轴做了刚体和滑动副,只设置连接体,没有指定基本体,会下落?
情况1:发现跟轴的刚体选择,没有选择完全有关系。
情况2:没设置上下限,比如气缸,没设的话就会直接落下。
(二)为啥mcd设置会没有了?
其中一个原因跟场景显示有关系。比如ABC三段设备,你当初做mcd设置时ABC都显示,然后你把AB显示关闭
,这个时候会发现mcd设置不见了,把ABC都显示出来,mcd就又出现了。
这个其实就是mcd配置是跟随装配层级来定义的。(跟定义的人有关系,他是否是按层级来定义的?)
(三)载入设置了mcd的场景失败,说找不到根对象。
以下是猜测:
1. 直接在根场景设置mcd,而不是进入每个部件设置mcd
2. 保存时要让ABC全部显示。
3. 不要打开了装配场景进行编辑,并设置mcd,这个可能是重要原因。
(四)有些刚体定义异常,但是删除不了,一删除就出现一个“删除”类对话框,无法操作。
这种情况下,一般是在组件导航器中找到对应的组件把它删除,你就会发现刚体这边对应的定义也删除了。
(五)如果导入了当前项目外部的组件,记得把这个组件复制到当前项目录,否则你下次打开项目后,会报找不到那个外部组件。
如果此时你复制过来(位置可以是根,或者其它位置,你可以试下),然后重新打开项目也是可以的。
(六)类盘和物料的碰撞设置
坑面,碰撞类别 3
底部,碰撞类别 0
表面,碰撞类别 4
物料选择Box碰撞方式,碰撞类别 3
这样对于多坑的料盘设置是比较好的。
(七)如果提前把刚体放到指定容器下,则添加碰撞体后,它会和刚体分家,不再显示到刚体下面。
因此,你得在一切完成后,再把各种对象移动到指定容器下。
可能又是软件的一个bug
(八)载盘上的光电传感器往往旋转在凹坑里,得把它抬高位置,否则一但载盘表面设置为碰撞面,光电传感器就直接变成有信号了。
(九)对于多段式设备,把当前段“设为工作部件”后,你会发现mcd列表中只会出现相关的内容,就不会出现其它内容,有效避免工作时的干扰。
这个功能就是用于局部一段段的调试用。
同样的,仿真序列也是这样设计的。
因此需要摸索正确的操作方式。不然整机所有东西显示在一起调试就非常麻烦。
(十)移动多个对象组成的对象,无法一起移动的问题
这种情况下是因为各个零件属于不同的图纸部分(属于多个装配层级)。
只能选择能一起移动的一起移动,分多次移动。
(十一)当移动对象时,会进入到某个子装配视图,这个时候怎么回到低级装配视图呢?
方法是双击装配文件名,比如你双击根装配名字,则会显示全部。
也可以双击子装配文件名,则以隔离显示的方式实显当前的,其它的装配对象则以灰色显示。
这个好像跟“设为工作部件”意义是一样的。
另外,双击置为当前的装配文件名是以粗黑体显示。
(十二)场景中选中一个零件,怎么在装配导航器中自动展开树定位到对应的位置?
一般你要展开所有层级,才可以自动定义到。
系统不会自己来展开所有层级。
(十三)当创建完信号适配器后,你就无法再运行查看器中修改位置(位置控制)来动轴了。
同样的,在序列编辑器中你如果想做“位置控制”,也是无效果的。
除非你把信号适配器去掉勾选禁用。
(十四)按层级做mcd设置
上料机
机箱模级
上料模块
中转组件
料盘输送组件
如上面的抽装配体层级,根是“上料机”,那么你应该在下面4个子层级中分别配置mcd。
同样的仿真序列也应该这样做。
最后在根层级上做一些全局的设置,以及总控用的仿真序列。
(十五)设置刚体时,选择批量组件的技巧
不能只靠增量点击,那样太慢了。
需要借助于装配导航器,用框选+增量点击的方式。
选择错误的话,用shift+点击去掉不要的。
另外,必须双击进入子装配层级,再操作,这样虚线部分框选时就不会被选中,
有效避免了干扰。
如果是移动批量的对象,上面的策略就不适用。
因为移动时必须是同一层级的对象,但是很多时假我们要移动的跨越了多个层级。
因此,你只能依次移动多次
这个时候,还是要借助于装配导航器,你先选择一个层级,这个时候全选了层级的对象,再点移动对象,此时移动对象窗口已经选择了一个组件了。
你不能先开移动对象窗口,再到装配导航器点击,这个时候会全选所有层级组件。
(十六)不要轻易移动复制关联的项目
比如像真空表这样的对象,你移动一个,其它的都会变换位置。
还有像卡簧这样的。
除非找到方法把关联断掉。
在nx 2412版本里,这个功能叫“建立不重复项”,它是把当前零件起一个新的名字(原来的零件还在,相当于多了一个命名不同相同零件),
但是这个功能有个坑,就是你要保存才会生效!!!保存了才会形成磁盘上的新零件,否则没效果!
(十七)第一次是打开solidworks的SLDASM总装文件。
然后你保存后,就形成了下面第二种part文件。你接下来要打开的就是它,而不要再次打开SLDASM文件。
SMQ510三段式通用型检测设备V1.0-20250613.SLDASM
SMQ510三段式通用型检测设备V1.0-20250613_sldasm.prt
(十八)mcd对象的层级命名
子级配置mcd对象命名后,在顶层这个命名会自动加下划线编号。
并且有意思的是,顶层这个命名其实跟子级的命名没有关联,它们是独立的。
你改了顶层的命名,不会影响到子级。子级的命名修改,只会影响顶层一次,过后你修改子级的命名,不会再影响到顶层。
(十九)当按层级定义mcd,并且仿真序列也按层级进行。
你会看到当切换成顶层后,仿真序列会自动形成分组(按子层级的名字)、
(二十)信号类型
(1)启动停止复位按钮信号
(2)安全门信号,安全门控制信号信号
(3)真空感应信号,破真空信号信号
(4)气缸压表信号信号
(5)感应器信号
(6)气缸动点、原点、out信号信号适配器
(7)轴的IO信号:正限位,负限位,原点信号适配器
(8)轴的速度与编码器位置信号适配器
(二十一)定义刚体的时候,假设你多次定义ABCD四个对象。
则定义完A后,点应用,而不要点确定。
这样的好处是A的对象集体会透明显示,以方便你继续选择后面的BCD对象。
如果你不小退出了刚体定义面板,可以人工选择A刚体,再点刚体定义,此时效果是一样的,A以透明显示,你可以继续方便的定义BCD。

