|
本帖最后由 qiush1234 于 2011-9-20 16:14 编辑
7 W: K2 O/ b2 n- U! O* ^6 U/ r" N6 p8 g& P6 k/ @( Z& K& e
如题:最近在做一个课题时。遇到一些问题。
. c1 L. Y6 O+ v$ G( f行车将工件吊运到在等待中的运输车,运输车将工件送达处理区域。
- l& O( g( _8 p此时运输车不能离开处理区域。
$ T9 p+ q4 a t2 }+ `6 \! r" Z由顶升装置将运输车连同工件一起上升至处理位。
$ s& A% G: f2 q; c4 T! W1 I等处理完成后,运输车再次运送工件到卸载位。
, v7 q/ K! B" M; c仍然由行车将工件吊运到储存区。" s# ^3 u8 @4 o* r
问题1:
/ b2 p D' S' D下面是一段顶升装置上升下降的代码:
* q9 `' X5 Z8 Wif (msgparam(1)==1)
4 {6 P" V8 O+ Z, v2 _+ X. F{. V7 K2 H/ |& @9 s* _
initkinematics(ki,sup);
0 X/ W8 n4 N' k4 l: [0 ddouble time1=addkinematic(ki,0,0,fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);
7 w$ R! R. u' _senddelayedmessage(zzc,time1-time(),current,1,0,0);+ K. y" V' t' a. t) _
double tiup=time1-time();
6 b) G6 ? h) u/ e: r* [}& ]" S+ y5 D! G* e2 |1 k4 p
else if(msgparam(1)==2)
0 D( y+ T4 |: p{
5 O; o! P! ]# m+ r4 ainitkinematics(ki,sup);
! A5 F U7 L3 f; ]1 Rdouble time1=addkinematic(ki,0,0,-fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);* \; {3 J. m1 y8 [. V1 U* ^! q2 ?
double tidown=time1-time();7 k3 e- P9 x8 M W$ P' D
}& v: e7 b3 @- ]& J2 f
如何计算下降完成时间点-上升起始点的时间段?
/ [0 J$ s( B0 g7 E3 D# `: {我现在是将这两个数值输入到标签中来进行计算。应该可以直接在代码中将它们提取出来吧。
* G/ r; \: ]0 q' p1 c: Q/ L: I问题2:仿真速度对比中,按500~1000倍的速度模拟没有出现问题,上升下降后Z轴回到0点。
t0 K" x2 p* U/ r2 U5 m* _ 当仿真速度调到1000倍以上时,动作出现错误,一直上升或是下降,不回到起始位置?
( K/ ^8 z$ ~/ P4 z2 r: ]. j问题3:如何在临时物体不进入处理器的情况下触发处理器的处理行为? |
|