|
本帖最后由 qiush1234 于 2011-9-20 16:14 编辑 / h8 Y8 ^3 O& E: L# _7 e
+ z2 _3 R; k1 l: q如题:最近在做一个课题时。遇到一些问题。
' e/ n- B5 }* C8 D5 M行车将工件吊运到在等待中的运输车,运输车将工件送达处理区域。% ]; \. h0 Z2 ~- x' ~. D
此时运输车不能离开处理区域。5 N2 u7 V$ m* N) L
由顶升装置将运输车连同工件一起上升至处理位。+ M) a a; N: A8 s1 I
等处理完成后,运输车再次运送工件到卸载位。
: {% N' v& w2 x; ?, ]. a仍然由行车将工件吊运到储存区。
4 S/ D5 z2 A c+ {/ A9 T1 E* v8 _" L. e问题1:' v- m9 S. v p* N( [* H
下面是一段顶升装置上升下降的代码:
0 M7 h& `! |$ G9 h" e# o8 c- h% iif (msgparam(1)==1). V* B2 f" ]* Q
{
) t E" p7 J8 g L) D7 ]% q0 k2 Cinitkinematics(ki,sup);" H0 T. s/ Y$ T3 Z, k
double time1=addkinematic(ki,0,0,fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);8 u2 V1 ~# P9 D0 o8 K: j7 q" D
senddelayedmessage(zzc,time1-time(),current,1,0,0);
; K* T' k; O( ]+ |, \) n fdouble tiup=time1-time();" r6 H/ q7 p" F. U4 r2 p, w8 m
}8 u- U8 Q, c1 G% q8 D
else if(msgparam(1)==2)# w ]) u, r: h1 y8 O1 x2 k* p. s
{3 m+ s0 e# A0 C8 V! S
initkinematics(ki,sup);
" _& z" l: A/ R- vdouble time1=addkinematic(ki,0,0,-fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);
# o9 P4 b- b9 ]* X* a- W* jdouble tidown=time1-time();
7 V+ R& _: a0 ]4 ~- B* ?0 j' M}
& r3 ?4 L4 T* T( h3 Q/ W! J& L' W如何计算下降完成时间点-上升起始点的时间段?/ \: p; Q& I$ R' ]) O2 _+ |6 C* r" _
我现在是将这两个数值输入到标签中来进行计算。应该可以直接在代码中将它们提取出来吧。
- U$ p1 v2 j# s2 k" D5 \) z问题2:仿真速度对比中,按500~1000倍的速度模拟没有出现问题,上升下降后Z轴回到0点。( N X. Z* H) M" X/ C2 ?1 S
当仿真速度调到1000倍以上时,动作出现错误,一直上升或是下降,不回到起始位置?, h4 z2 w. d+ E8 A- U5 I8 D4 a
问题3:如何在临时物体不进入处理器的情况下触发处理器的处理行为? |
|