|
本帖最后由 qiush1234 于 2011-9-20 16:14 编辑
! p" N+ b P: k8 e# W2 T! B7 T$ W' g0 I* T8 K7 H
如题:最近在做一个课题时。遇到一些问题。, D7 T2 d4 T3 n0 a4 i! ^
行车将工件吊运到在等待中的运输车,运输车将工件送达处理区域。1 u7 ~$ G, {: e' H) m4 Q7 v; w
此时运输车不能离开处理区域。
& I- K* _% Q2 t# Y1 Q! g由顶升装置将运输车连同工件一起上升至处理位。
7 m; ? P2 z) W* ]5 a; e- j等处理完成后,运输车再次运送工件到卸载位。
& `+ o8 P# u6 y$ Y5 d仍然由行车将工件吊运到储存区。# q4 a* ?; m4 |# R" P2 n/ H, z
问题1:% ^% n% ]5 y' a4 O; @3 a
下面是一段顶升装置上升下降的代码:4 Z. F6 ? `; J. J4 ?( e
if (msgparam(1)==1)
P1 [5 o( j/ |2 O( }{; T' m! k5 k9 l" W
initkinematics(ki,sup);
2 }0 U2 C6 S$ _' ~" q% }double time1=addkinematic(ki,0,0,fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);
0 _3 r# S6 X; x' Esenddelayedmessage(zzc,time1-time(),current,1,0,0);
% o# q* n; Y# e* ~0 Bdouble tiup=time1-time();
9 {% t% n U2 l6 m}0 K$ h: a& l, H+ u1 _
else if(msgparam(1)==2)' f: p& Q% d1 {3 @+ @& Q1 A5 h8 ~
{6 @+ J7 l V* N7 N
initkinematics(ki,sup);
, [- M% K: ^" e0 b: h3 `double time1=addkinematic(ki,0,0,-fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);6 b3 |8 H8 n% M& H
double tidown=time1-time();- v8 H! n. v, j0 K, D- b! M" [
}/ J( P/ p0 P/ Z( a' c
如何计算下降完成时间点-上升起始点的时间段?
/ m7 n3 I8 L5 s: L1 o我现在是将这两个数值输入到标签中来进行计算。应该可以直接在代码中将它们提取出来吧。% E. _0 H- M P6 g1 u
问题2:仿真速度对比中,按500~1000倍的速度模拟没有出现问题,上升下降后Z轴回到0点。
. H" p3 v6 E$ v. M# c% M; Z" y 当仿真速度调到1000倍以上时,动作出现错误,一直上升或是下降,不回到起始位置?8 @0 x+ p# u2 n8 P) L+ j
问题3:如何在临时物体不进入处理器的情况下触发处理器的处理行为? |
|