全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
mymailmy001 发表于 2011-1-4 01:06:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
用combiner做装配生产线,零件装配位置不正确,如何调整+ i8 t5 N( v# M7 O" d; h, ]5 q
在什么地方设置,好心人发个图片说明一下
1 e2 r! V1 T/ z" h& }# W& u' w" W! c

2 l  N: D0 ^- K另:如果在离开COMBINER的时候,使实体显示导入的模型,在哪里设置
: g5 @* ~- M3 {. k# q* e- `请指教,越具体越好,如果用代码,请举例具体格式' F0 E4 ?+ x3 D2 {+ T) U$ L
我是初学,简化的答案我看不懂
% c% O- ~, e, g9 d3 X) L8 }谢谢啦
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! g$ g; z- x
第一个问题我也没有更好的办法,不过你可以试着了解坐标系之间的关系,你的组装是在组合器的坐标系下完成,所以这个跟系统坐标应该没有关系。你可以暂停运行的情况下,调整组件的坐标,让它达到理想的位置,然后记下坐标,再在相应的程序里面写下这些相对于组合器坐标的相对坐标。9 X- e( b' ^" |# |% D9 I
第二个问题,你给出的这些代码,前面带“//”一行语句只是当作说明,不起作用。至于在哪个触发器里面写代码,你应该去help文档里面了解相应的触发器是什么时候才会触发,然后决定在哪里写代码。setobjectshapeindex可以实现你要的功能。具体代码怎么写请参考help》command的相应指令介绍。一般代码都不需编译的,应用ok就行了。
4#
 楼主| mymailmy001 发表于 2011-1-4 13:58:55 | 只看该作者
我不会发图片,图片发不上去,就是下面这段代码,
* Z2 E8 U: `) \8 i; C
" J# z9 i# y4 l- f5 X1 yfsnode* item = parnode(1);0 {6 Y. H5 ^/ V6 d- A+ L) a) \
fsnode* current = ownerobject(c);
+ z, W3 m+ I6 c* ]! p6 h+ S' z. ~0 C8 b//PROSESTART7 B3 ]8 M& G% N* Z
//Change the 3D shape of: ~. q  e( _* {  K% B, l/ K; ^( Y/ o
//PROSEEND( s) U" X! H+ \0 w# P
fsnode* theobject =9 p; }/ M: c4 T8 j4 E" W
//PARAMSTART
* `# j2 K# ]4 y4 ~: n' a  } item
) E1 I  s9 O4 n, i0 {//PARAMEND
7 C3 W; \4 N% T* F& S$ F( K& D- ?* q;$ c/ m% i% D# |* v+ S% Z" ?' L
//PROSESTART
1 Q( \; A# X2 B6 N3 ~3 e# f+ n//object to shape index number$ \; @7 }. }( M8 E' v( e3 j
//PROSEEND
% J- ?, r" K& v2 e/ O1 E, j- l0 d* n' x# ]* w. Q/ p
int theindex =
% |( T- x, l0 W7 l//PARAMSTART
" T+ t. G' Z; j8 ^! v 1
' ^- N9 d9 `* Z//PARAMEND
8 ], o8 h- X5 ?- c* C% j  ];6 n0 ]+ D: K# i0 j& X( E
//PROSESTART
; y! B8 D1 w! G' s6 X: }% X//.
, O/ Z2 _+ N" k- q) M//PROSEEND
7 t' L) n$ i& x" A2 B5 j6 T( d, h- V% b9 v
setobjectshapeindex(theobject,theindex);
( J/ T7 I+ \$ I# `; B$ b* s7 B  [. \3 ^$ \+ O
怎么用?
$ }5 e4 z& n! {3 ~2 |: i如果这种方法可行,那么是在onentry里用,还是在onsetupfinish里用呢?$ u) `$ ?2 ?. Y4 Q: G1 c2 o" ]
请指教!
3#
 楼主| mymailmy001 发表于 2011-1-4 13:47:09 | 只看该作者
本帖最后由 mymailmy001 于 2011-1-4 13:51 编辑 ! Y" Z1 Y! X' E% v; s- ~

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

本版积分规则

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

GMT+8, 2025-5-12 19:02 , Processed in 0.064951 second(s), 14 queries .

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

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