发帖
 找回密码
 立即注册
搜索
5 0 0

任务序列代码

技术交流2 5 5 2014-5-29 14:53:14
[i=s] 本帖最后由 啊钟 于 2014-5-29 21:31 编辑 [/i]

这是我想用的任务序列,可是不知道为什么设置完了以后会显示程序出错,请问我是错在哪里呢?

treenode item = parnode(1);
treenode current = ownerobject(c);
int port = parval(2);

treenode ts = createemptytasksequence(centerobject(current,1),0,0);

inserttask(ts,TASKTYPE_TRAVEL,current,NULL);
inserttask(ts,TASKTYPE_FRLOAD,item,current,port);
inserttask(ts,TASKTYPE_TRAVEL,centerobject(current,2),NULL);
inserttask(ts,TASKTYPE_DELAY,NULL,NULL,60,STATE_BUSY);
inserttask(ts,TASKTYPE_TRAVEL,outobject(current,port),NULL);
inserttask(ts,TASKTYPE_FRUNLOAD,item,outobject(current,port),opipno(current,port));

dispatchtasksequence(ts);

return 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
──── 0人觉得很赞 ────
2014-5-30 10:07:18
单看代码是没有问题,但是需要结合具体的模型中的情况来看,您最好是能把报错截图上传。
2014-5-31 09:13:15
[b] [url=http://www.flexsim.asia/redirect.php?goto=findpost&pid=12776&ptid=4537]2#[/url] [i]慧娴亚伦[/i] [/b]


报错是这样的。其实我第一次输入代码的时候是可以运行的,但后来就一直不行了。

本帖子中包含更多资源

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

x
2014-5-31 09:13:33
[i=s] 本帖最后由 啊钟 于 2014-5-31 09:18 编辑 [/i]

[b] [url=http://www.flexsim.asia/redirect.php?goto=findpost&pid=12786&ptid=4537]3#[/url] [i]啊钟[/i] [/b]就是这个

由于模型要到实验室才可以修改,我自己的软件item有限所以上传不了加入了任务序列的模型,我的任务序列是添加给每一个source后的queue,下面是没有添加任务序列的模型。我的模型还有一个问题,就是货物会不断地堆积在queue中,而不会被sink吸收,这是为什么呢?求解,谢谢!!

本帖子中包含更多资源

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

x
2014-5-31 16:19:59
[b] [url=http://www.flexsim.asia/redirect.php?goto=findpost&pid=12776&ptid=4537]2#[/url] [i]慧娴亚伦[/i] [/b]


我仔细看了一下发现代码的顺序有点问题,改了一下,发现可以运行了

treenode item = parnode(1);
treenode current = ownerobject(c);
int port = parval(2);

treenode ts = createemptytasksequence(centerobject(current,1),0,0);       //创建空任务序列
inserttask(ts,TASKTYPE_TRAVEL,current,NULL);                                   //走到本序列
inserttask(ts,TASKTYPE_DELAY,NULL,NULL,60,STATE_BUSY);                       //延时60秒
inserttask(ts,TASKTYPE_FRLOAD,item,current,port);                             //装载实体
inserttask(ts,TASKTYPE_TRAVEL,outobject(current,port),NULL);                //走到下一序列
inserttask(ts,TASKTYPE_DELAY,NULL,NULL,60,STATE_BUSY);                       //延时60秒
inserttask(ts,TASKTYPE_FRUNLOAD,item,outobject(current,port),opipno(current,port));
//卸载实体

dispatchtasksequence(ts);                                                          //分配任务序列

return 0;                                                                           // 返回0表示本对象创建自己的任务序列,而不是使用默认的自动创建的任务序列


这样是可以的吗?谢谢您!
2014-8-21 19:42:24
学习学习!!
您需要登录后才可以回帖 立即登录
高级模式
返回
技术交流2
热门问答
查看更多
1
Flexsim初级建模工程师水平标准
Flexsim初级建模工程师水平标准
62
234
2
厂区生产线布局优化案例!新做的!
厂区生产线布局优化案例!新做的!
43
224
3
无意中找到的资料,非常适合于初学者
无意中找到的资料,非常适合于初学者
39
229
4
流水作业线的仿真
流水作业线的仿真
36
83
5
flexsim中文教程,pdf文档已整理-重新整理
flexsim中文教程,pdf文档已整理-重新整理
32
114
博主榜
+ 5