(自编)批量完成螺栓连接
本帖最后由 fridecailei 于 2013-8-19 19:15 编辑set Connector_Comp "Connector"
*collectorcreateonly components $Connector_Comp "" 32
*createmarkpanel comps 2"select comps"
set complist
set holelist ;
#生成孔圆心
set L
for {set i 0} {$i<$L} {incr i} {
set W ];
for{set j 1} {$j<$W} {incr j 1} {
set center_cordinate ;
*createpoint ;
}
}
#生成螺栓
*createmark surfaces 1"displayed"
*maskentitymark surfaces 1 0
for {set layer 3} {$layer>=2} {incr layer -1} {
*CE_GlobalSetInt "g_ce_spotvis"0
*CE_GlobalSetInt "g_ce_seamvis"0
*CE_GlobalSetInt "g_ce_areavis"0
*CE_GlobalSetInt "g_ce_boltvis"1
*CE_GlobalSetInt "g_ce_applymassvis"0
*createmark points 1 displayed
*createstringarray 5"link_elems_geom=elems" "link_rule=at_fe_realize" "relink_rule=none" "tol_flag=0" "tol=30.000000"
*CE_ConnectorCreateByMark points 1 "bolt" $layer components 2 1 5
*createmark connectors 1 displayed
*createstringarray7"ce_configfile=D:/Program Files/Altair/12.0/hm/bin/win64/feconfig.cfg"\
"ce_propertyscript=" "ce_notuseijk=1" "ce_connectivity=0" "ce_boltmindiameter=1.000000"\
"ce_boltmaxdiameter=50.000000" "ce_systems=0"
*CE_FE_RealizeWithDetails 1 "bolt" "nastran" 1001 52 0 30 1 7
*CE_GlobalSetInt "g_ce_spotvis"1
*CE_GlobalSetInt "g_ce_seamvis"1
*CE_GlobalSetInt "g_ce_areavis"1
*CE_GlobalSetInt "g_ce_boltvis"1
*CE_GlobalSetInt "g_ce_applymassvis"1
#合并节点
*createmark elements 1"by collector name" $Connector_Comp
*equivalence elements 1 0.1 0 0 0
*createmark elements 1"by collector name" $Connector_Comp
*equivalence elements 1 0.1 1 0 0
#删除重复单元
*createmark elements 1"displayed"
*createmark elements 2
*elementtestduplicates elements 1 2 1
*deletemark elements 2
#删除未realized单元
*createmark connectors 2 displayed
set ce_list [ hm_getmark connectors 2 ];
foreach ce_id $ce_list {
#set ce_fes [ hm_ce_getallfe $ce_id ];
setce_state [ hm_ce_info $ce_id "state"];
if {$ce_state !="realized" } {
*createmark connectors 1$ce_id
*deletemark connectors 1
}
}
}
###
这是以前写的一个小程序,批量处理螺栓连接,只是个人的想法,有其他方法的可以交流交流;请批评与指正!
以一个示例说明:
首先建立三个COMPS(nastran模板)和如下的网格:
第二步:file----run----tcl/tk scripts,选择相应的tcl程序注意:在运行程序之前必须确认一下几方面的内容:然后选择上述三个COMPS最后螺栓生成
注意:此例连接单元为RBE2,所有连接孔必须在不同的component中,否者会报错!
图中的模型文件(*****必须用HM12才行*********:lol)
在下也有往这边学习的向往 790662872 发表于 2013-8-17 09:09 static/image/common/back.gif
在下也有往这边学习的向往
这是在做白车身装配的时候,想到的,有时候需要一个项目来启发你的思维,完成一个小程序 lz可否把算例的hm文件上传? 蓝牙 发表于 2013-8-18 19:48
lz可否把算例的hm文件上传?
很简单的三个带孔板,板间距10mm fridecailei 发表于 2013-8-19 14:21 static/image/common/back.gif
很简单的三个带孔板,板间距10mm
我做过相似的连接,知道批处理的好处,如果有时间请lz上传hm,对于初学者,这可是一个标杆啊!
先谢了 大神呀! 牛逼啊,要好好学习啊 高人无处不在 很不错的东西哦,谢谢。 不错,一直想写这么一个程序 能写命令,必然是高手啊
很好,谢谢分享:) 牛,学习啦 谢谢高手 厉害~~~~~~:) 可以开发任意层螺栓连接 谢谢!!! 楼主 你好如果是实体和壳单元的螺钉连接这样还可以吗 高手,厉害呀!
页:
[1]