全球FlexSim系统仿真中文论坛

搜索
查看: 8513|回复: 5
打印 上一主题 下一主题

任务序列代码

[复制链接]
跳转到指定楼层
1#
啊钟 发表于 2014-5-29 14:53:14 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 啊钟 于 2014-5-29 21:31 编辑 - S8 K9 W0 j$ B$ f: K* [/ v# _

. U# D, ^1 H- j2 t: [这是我想用的任务序列,可是不知道为什么设置完了以后会显示程序出错,请问我是错在哪里呢?
( N- h( j6 S0 _( N2 p( H' ~# I% [3 D5 ^% l
treenode item = parnode(1);0 B6 ~) N. T& n- Y2 }2 d
treenode current = ownerobject(c);
+ S% r, y/ W9 b" |. ]* mint port = parval(2);
" V6 |# q2 \; J9 W# n& f2 T, V9 s6 L
treenode ts = createemptytasksequence(centerobject(current,1),0,0);7 k( B- Y2 Z: G* b( B1 a7 q
1 N3 m; b, Z2 L+ r
inserttask(ts,TASKTYPE_TRAVEL,current,NULL);
% ?  h' M* S0 x5 ]0 vinserttask(ts,TASKTYPE_FRLOAD,item,current,port);
9 H# ]6 Q; R4 l! P% d1 p! [: J+ Sinserttask(ts,TASKTYPE_TRAVEL,centerobject(current,2),NULL);) ^: Q' k7 b7 W9 T; l
inserttask(ts,TASKTYPE_DELAY,NULL,NULL,60,STATE_BUSY);
) y" H2 ~" R/ w' _0 jinserttask(ts,TASKTYPE_TRAVEL,outobject(current,port),NULL);& B( j5 y2 j/ O: R
inserttask(ts,TASKTYPE_FRUNLOAD,item,outobject(current,port),opipno(current,port));2 X  \/ V1 w& v# D; G9 ^
. A6 D7 D0 }) l6 _
dispatchtasksequence(ts);
: f* B: F# w: z% R& w
$ F1 u- T6 [7 ?0 C- `! P9 T8 Preturn 0;  // return a 0 so this object will know that you made your own tasksequence and it doesn't need to make the standard tasksequence automatically
6#
guozhongyun 发表于 2014-8-21 19:42:24 | 只看该作者
学习学习!!
5#
 楼主| 啊钟 发表于 2014-5-31 16:19:59 | 只看该作者
2# 慧娴亚伦
& l5 k2 D5 W# P; n1 i6 x# X& \0 c$ R1 e5 y; t% r) A% \* U

: e" e- `+ A9 s  }( x) u我仔细看了一下发现代码的顺序有点问题,改了一下,发现可以运行了
. H+ N' n% w& h2 t- k% Y
, r& u+ t3 t( v1 f4 H! T- q. `0 E, \treenode item = parnode(1);
# `8 _2 @7 k& [; s- C' Q$ vtreenode current = ownerobject(c);
% w& v0 ]- P) V* p2 u3 `int port = parval(2);) x) K# S* Q9 w+ D7 Z

5 W- l# O; t, o7 rtreenode ts = createemptytasksequence(centerobject(current,1),0,0);       //创建空任务序列
% U1 H0 ?5 R* ^/ Y# F) Rinserttask(ts,TASKTYPE_TRAVEL,current,NULL);                                   //走到本序列
5 L& K! R6 g% h- n  z- Linserttask(ts,TASKTYPE_DELAY,NULL,NULL,60,STATE_BUSY);                       //延时60秒: R' G' x! D% e! a3 y
inserttask(ts,TASKTYPE_FRLOAD,item,current,port);                             //装载实体
2 k& ~! B# O1 J+ k( z/ Sinserttask(ts,TASKTYPE_TRAVEL,outobject(current,port),NULL);                //走到下一序列
' I! l1 f9 x& Iinserttask(ts,TASKTYPE_DELAY,NULL,NULL,60,STATE_BUSY);                       //延时60秒
+ A& N# ~& f2 f$ C+ Rinserttask(ts,TASKTYPE_FRUNLOAD,item,outobject(current,port),opipno(current,port));
5 w5 y1 w7 i7 Y/ G0 N//卸载实体
) b$ \7 [* F/ u& U- G2 Y( G5 z
dispatchtasksequence(ts);                                                          //分配任务序列! S" G  H( ]6 i. H5 M& t0 z
' T. ~0 B$ B9 W8 F( u* Z' L
return 0;                                                                           // 返回0表示本对象创建自己的任务序列,而不是使用默认的自动创建的任务序列
6 m" T& `( }8 s' v
2 y& {/ r; I: Y- b0 g$ O, \2 z5 T: A1 G+ J
这样是可以的吗?谢谢您!
4#
 楼主| 啊钟 发表于 2014-5-31 09:13:33 | 只看该作者
本帖最后由 啊钟 于 2014-5-31 09:18 编辑 3 A2 f2 c* k( r- v/ V
6 C! j, g  k! |2 ~% S
3# 啊钟 就是这个# ]9 w: \1 D5 N. y& F& C: o7 A
) P1 P# {/ h% ?" e' ~, [$ H* H
由于模型要到实验室才可以修改,我自己的软件item有限所以上传不了加入了任务序列的模型,我的任务序列是添加给每一个source后的queue,下面是没有添加任务序列的模型。我的模型还有一个问题,就是货物会不断地堆积在queue中,而不会被sink吸收,这是为什么呢?求解,谢谢!!

本帖子中包含更多资源

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

x
3#
 楼主| 啊钟 发表于 2014-5-31 09:13:15 | 只看该作者
2# 慧娴亚伦 0 b& |8 ~, ?& v# l3 P3 X* {

& ?& j1 d, _. V2 g5 w0 _* ]
! S( n) K9 }. w# t/ J报错是这样的。其实我第一次输入代码的时候是可以运行的,但后来就一直不行了。

本帖子中包含更多资源

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

x
2#
慧娴亚伦 发表于 2014-5-30 10:07:18 | 只看该作者
单看代码是没有问题,但是需要结合具体的模型中的情况来看,您最好是能把报错截图上传。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-9-6 03:57 , Processed in 0.081805 second(s), 15 queries .

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

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