全球FlexSim系统仿真中文论坛

搜索
查看: 6018|回复: 6
打印 上一主题 下一主题

处理器的处理状态如何触发?仿真速度加快,动作出错。

[复制链接]
跳转到指定楼层
1#
qiush1234 发表于 2011-9-20 15:35:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 qiush1234 于 2011-9-20 16:14 编辑 2 `0 |( k3 X# S& H

6 M; F2 L1 Z$ @; z& Z1 V+ Z如题:最近在做一个课题时。遇到一些问题。
% ]! `% X& |4 V4 P行车将工件吊运到在等待中的运输车,运输车将工件送达处理区域。
6 {) @5 @! \) S1 H- g此时运输车不能离开处理区域。4 U; D5 [( ^, f6 b, [& o
由顶升装置将运输车连同工件一起上升至处理位。
0 ?% U$ t2 E' D3 V( z等处理完成后,运输车再次运送工件到卸载位。
2 x% u" v$ I& r% d. G. c仍然由行车将工件吊运到储存区。
; {! y1 \7 v% W* @问题1:$ [) z( Y0 F' w7 Z2 f' S
下面是一段顶升装置上升下降的代码:2 u: X2 N4 d8 [
if (msgparam(1)==1)
2 K) `! T7 E; N$ x% ~0 _, [{
2 U! [5 k9 g$ X9 m$ hinitkinematics(ki,sup);
9 Q! d. P5 ?! j" Fdouble time1=addkinematic(ki,0,0,fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);
3 ^% `1 f9 p1 e1 G: \) Usenddelayedmessage(zzc,time1-time(),current,1,0,0);
1 P1 U0 N7 P% Idouble tiup=time1-time();
4 L8 [9 T! z$ |  M# J& E- r}5 x/ k9 j7 w- s
else if(msgparam(1)==2)! l  }% B5 m1 a5 `8 `7 n
{+ ^7 u7 y8 K+ ^9 K# q. k1 c5 _
initkinematics(ki,sup);- y  v# W' r( a. G6 V, d
double time1=addkinematic(ki,0,0,-fl,1,0,0,0,0,time(),KINEMATIC_TRAVEL);
" T! X$ G8 _; I' @6 j  z/ _double tidown=time1-time();: I* y6 a( h, Q( }
}! i$ _5 j0 X& r, V. Y$ C
如何计算下降完成时间点-上升起始点的时间段?
# b3 z6 r3 ~& d  Z" ?6 d+ p# G0 O我现在是将这两个数值输入到标签中来进行计算。应该可以直接在代码中将它们提取出来吧。, V# t/ z& T6 H, U) O# x+ Z) O
问题2:仿真速度对比中,按500~1000倍的速度模拟没有出现问题,上升下降后Z轴回到0点。
0 }2 s! Y9 @" u4 l1 V. L       当仿真速度调到1000倍以上时,动作出现错误,一直上升或是下降,不回到起始位置?
( W5 K6 D6 K6 ^9 D# w问题3:如何在临时物体不进入处理器的情况下触发处理器的处理行为?
2#
domcylai 发表于 2011-9-20 17:21:04 | 只看该作者
3#
xiexiaoch134 发表于 2011-9-20 19:06:38 | 只看该作者
问题1:可以通过getkinematics来获取对应的时间。
7 c# o4 C5 p& B4 S% B问题2:flexsim中如果仿真速度过快,会出现动力学执行不完整的现象。3 i* N* n7 i% k6 m6 S: o
问题3:没有临时实体的处理行为有意义吗?如果你的意思只是想触发处理器的某一触发器的话,sendmessage命令可以任意时间任意地点触发处理器。
4#
 楼主| qiush1234 发表于 2011-9-20 20:15:18 | 只看该作者
因为临时物体经过处理后仍然是由运输车运输到卸载位。- A1 ]0 j( e) a/ E8 |
进入处理器后如何让临时物体返回运输车,再由行车运输到卸载。
5#
xiexiaoch134 发表于 2011-9-20 22:19:38 | 只看该作者
请上传模型,不能因为人总会饿所以不要吃饭。
6#
 楼主| qiush1234 发表于 2011-9-26 08:15:06 | 只看该作者
完善了模型后出现临时物体消失的问题:
+ e* v7 C: F- u# s- R流程简介- H- v/ G4 F( x3 ?" Q
1.自发生器644生成货物,
9 G* K* U  Y- C) T; p2.由行车吊运至暂存区5788 F$ a2 J$ X! J& w+ ^
3.暂存区578的到处理器579由任务执行器运输到位,上升后将临时物体移交至处理器579中。3 j% C) x9 M( J5 [- B$ Z4 j
4.当处理器579处理完成后,又由任务执行器将货物运输至暂存区693,然后任务执行器中的升降装置返回。
# |- t: O5 Z. \$ W9 H( K; P, R# R2 ]+ {5.最终由行车将暂存区693处理完成的货物运输到下一个处理器。. K& g0 n7 [+ R9 L

6 c/ H1 q! Z& u4 r当程序运行到第4条时临时物体出现了位置错误。(临时物体的位置:X:8655644.000,Y:0,Z:-3)9 A. @: `, B' b, t2 P
直到进行到暂存区693时又出现了。
! \& i9 B/ G1 }6 B1 H/ f3 D我在任务执行器的进入触发中已经设置了临时物体的坐标的,为何临时物体还会移动到很远的地方呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
7#
vivion 发表于 2012-5-15 15:25:08 | 只看该作者
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-29 03:50 , Processed in 0.077455 second(s), 14 queries .

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

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