全球FlexSim系统仿真中文论坛

搜索
查看: 9476|回复: 9
打印 上一主题 下一主题

用combiner做装配生产线,零件装配位置不正确,如何调整

[复制链接]
跳转到指定楼层
1#
mymailmy001 发表于 2011-1-4 01:06:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
用combiner做装配生产线,零件装配位置不正确,如何调整) M2 v& V: I5 j& R
在什么地方设置,好心人发个图片说明一下  U; A6 Z& i8 B) V0 |
/ [% i( O: i# y$ Z; [/ V
4 a" ]3 p# p  L, P* a
另:如果在离开COMBINER的时候,使实体显示导入的模型,在哪里设置
7 U3 L8 g1 h2 n( _1 F2 L" O请指教,越具体越好,如果用代码,请举例具体格式
( w, Y1 h/ S3 `" k1 w% d' @我是初学,简化的答案我看不懂
! S! r" V; L% c谢谢啦
9#
Rosalyn 发表于 2011-3-16 21:28:57 | 只看该作者
楼主应该是用3.0做的,setobjectshapeindex的第二个参数,应该是在工具箱里的导入媒体文件里查找你导入的图片序列号,也可以用getshapeindex("D:\Program Files\Flexsim3ChDemo\fs3d\OperatorFRAME5.3DS")这是一个绝对路径的引用,如果模型和图片在同一文件夹下可以直接写getshapeindex("OperatorFRAME5.3DS")
8#
wang-csn 发表于 2011-3-12 18:20:02 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
7#
wang-csn 发表于 2011-3-12 18:15:29 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
6#
 楼主| mymailmy001 发表于 2011-1-5 00:40:35 | 只看该作者
我是初学的,能得到帮助非常感激!
5#
xiexiaoch134 发表于 2011-1-4 20:48:56 | 只看该作者
指教不敢当。
# M! [; e7 {- B# R( x  Q第一个问题我也没有更好的办法,不过你可以试着了解坐标系之间的关系,你的组装是在组合器的坐标系下完成,所以这个跟系统坐标应该没有关系。你可以暂停运行的情况下,调整组件的坐标,让它达到理想的位置,然后记下坐标,再在相应的程序里面写下这些相对于组合器坐标的相对坐标。
6 L9 o% H2 D* V  m; M第二个问题,你给出的这些代码,前面带“//”一行语句只是当作说明,不起作用。至于在哪个触发器里面写代码,你应该去help文档里面了解相应的触发器是什么时候才会触发,然后决定在哪里写代码。setobjectshapeindex可以实现你要的功能。具体代码怎么写请参考help》command的相应指令介绍。一般代码都不需编译的,应用ok就行了。
4#
 楼主| mymailmy001 发表于 2011-1-4 13:58:55 | 只看该作者
我不会发图片,图片发不上去,就是下面这段代码,
( l" D7 M  c$ O# [( n5 I5 N! n7 n1 A+ Z8 F" \
fsnode* item = parnode(1);& ?* F! D' W% q0 C- T" I, i- q7 f  r
fsnode* current = ownerobject(c);
8 O: w* X0 o/ }6 j9 s//PROSESTART
" z( R, j% E& V//Change the 3D shape of/ N1 m4 G7 v7 u2 q
//PROSEEND2 l0 A. _. `- i5 j! o
fsnode* theobject =
/ f, U2 `# y: [//PARAMSTART6 p0 q' i4 _3 _, S
item
2 E. ?, F: U, L1 M3 R7 d//PARAMEND
9 `9 B& r  R) M# j  V% p! w( v;
6 ]  u* G. M) U7 V9 [9 \; o//PROSESTART" S( m3 V# P& e
//object to shape index number
3 O9 \6 W5 N7 K4 _' @9 K+ r! A4 ?//PROSEEND
# R" N) \* x5 ]1 m; R& H2 U
. v5 k! G; ]4 G; u+ d& v3 A& Yint theindex =6 W7 f2 |5 I( F: M# w
//PARAMSTART
+ H' @# v- k5 e5 {( S 1
) J# O7 A: U$ m) Y0 Y0 \9 R9 I7 \  k+ {//PARAMEND
; e6 Y2 I9 r% g9 Z7 b6 J;
( `3 D0 ~& f: E' V/ O$ C" d! l//PROSESTART& r) Z' e  l* m2 C* `# P
//.  A: N( P. r1 O! Q+ B* `' O; L
//PROSEEND
* Z% B/ ]6 X5 Q6 G* B9 g3 i
4 C% E: @( B+ _setobjectshapeindex(theobject,theindex);
2 u5 o% P6 T7 C' [* N+ U1 D, r7 \9 r% I1 f
怎么用?! ?& P$ J! d4 p% Q5 c: p- g/ a
如果这种方法可行,那么是在onentry里用,还是在onsetupfinish里用呢?2 x) F; K& a( s( v) L
请指教!
3#
 楼主| mymailmy001 发表于 2011-1-4 13:47:09 | 只看该作者
本帖最后由 mymailmy001 于 2011-1-4 13:51 编辑 " P" g5 l( j9 t5 H' |

, U0 z  v2 ]( {, o" [先谢谢,辛苦啦/ u  ~+ F! ~  Z3 S
其实我只想做出装配的效果,上边问的是我听说的两种解决办法,但我都不会5 L! k' O! g) |4 ]; `) `2 z
你说的在onentry触发器里面setloc我用过了,但是用于复杂部件定位很难,且多数位置需要坐标换算
4 J$ @2 ^+ I4 W/ P% i
+ N2 {/ d) _& z1 G, \第二个问题是这样的,如果把上一步骤装配好的东西做成一个3DS文件并导入Flexsim的临时实体库中,让临时实体离开COMBINER时显示这个装配好的模型,每一步都这样重复往,就实现每步装配后的效果了(QQ群听说的,还没弄明白),好像用触发器代码有个setobjectshapeindex(如下图),好像是往里输入代码,我不会。这种方法对么,能做到么?如果能行,请告诉我这个代码的格式好么。尝试了好多次,编译都不对。
0 m- w/ o+ ]7 K3 q! j2 l* VD:\1.jpg
2#
xiexiaoch134 发表于 2011-1-4 11:39:06 | 只看该作者
第一个问题可以参照本论坛的案例下载里面的“DVD装配”模型,调整零时实体位置可以在onentry触发器里面setloc。0 }& |  u0 Z5 z
第二个问题,我不明白你的意思。请描述清楚。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-10-19 05:30 , Processed in 0.071390 second(s), 14 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

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