全球FlexSim系统仿真中文论坛

搜索
查看: 5420|回复: 8
打印 上一主题 下一主题

任务分配器如何实现任务传递时按照先占值进行任务的抢占

[复制链接]
跳转到指定楼层
1#
liuzhifan 发表于 2017-8-2 15:21:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我做了个小模型进行测试,发现任务分配器是无法传递任务先占值的,发生器5的状态属于aiting for transport,并且它具有先占值的,可是AGV还是去往发生器4
4 }) G) L7 v6 B) J- G' \" N6 W

2 N+ A+ O1 O( I6 l2 D+ {  ]; f0 d4 j' C; `' c

7 j2 [; J: T+ S9 _4 L
3#
慧娴亚伦 发表于 2017-8-2 20:04:31 | 只看该作者
这块内容肯定没有问题,请仔细阅读用户手册关于先占的用法。
4#
 楼主| liuzhifan 发表于 2017-8-8 09:37:55 | 只看该作者
慧娴亚伦 发表于 2017-8-2 20:04
9 ]+ [: z4 _& {# D# Q! S$ t这块内容肯定没有问题,请仔细阅读用户手册关于先占的用法。
+ p: u3 q4 W9 f2 _
我建立的先占值测试模型,16版的flexsim实现不了我的代码逻辑,但是用17版运行的是可以实现。我是不是又遇到软件BUG了。我对先占值的理解没有错,就是16版的flexsim一直运行让我得不到我想要的结果,所以导致我很困惑。我还有一个模型,16版与17版的运行结果也是不一样的。我想请问下,遇到这种情况,是我编程代码的问题,还是软件的问题。
5#
慧娴亚伦 发表于 2017-8-8 11:27:10 | 只看该作者
运行了模型,没有发现您所说的问题,能否具体指出运行到什么时候会有问题?
6#
 楼主| liuzhifan 发表于 2017-8-8 11:39:52 | 只看该作者
慧娴亚伦 发表于 2017-8-8 11:27
4 K! L+ H: P9 K运行了模型,没有发现您所说的问题,能否具体指出运行到什么时候会有问题?
5 L4 ~2 M' E) t1 Y% C5 q. v0 \
陈老师你运行我后面刚上传的模型,这个模型的问题比较明显。下方的AGV会停止无法调用,并且它的正在执行的任务序列里面同时存在两个任务。
8#
慧娴亚伦 发表于 2017-8-8 13:50:15 | 只看该作者
先占需要注意两点:  d% Z- H+ Q9 w7 V% C
1、想要抢占当前的任务,这个任务必须分配出去,也就是说如果先占任务留在任务分配器(简称DP)里面(而不是直接分到指定任务执行器(简称TE)身上)是不会出现抢占的,在DP使用“第一个可用”(return 0;)它只会向空闲的TE分派任务。您这个例子中如果直接使用return 1;强行分派给TE,那么先占完全可以实现;0 h9 b( n, M8 d3 X2 g( i5 T1 C
2、如果TE已经在执行先占任务,那么此时又传递过来一个先占任务,则基于他们的优先级,如果优先级高于当前执行的先占任务,才会发生抢占。(详见下面用户手册截图原话),否则将会跟一般任务一样存入任务序列队列中,自然不会发生抢占。4 k- D: T# N/ {7 d; f
& T1 s7 w" l# ]2 u9 W
我无法实现您截图树结构中的这种情况,因为激活的任务序列(activetasksequence)只可能有一个, F/ }. ~: y/ o
/ E5 c: P2 q* x
) G5 I. m! g; `' y% _2 }

本帖子中包含更多资源

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

x
9#
 楼主| liuzhifan 发表于 2017-8-8 15:12:51 | 只看该作者
慧娴亚伦 发表于 2017-8-8 13:50
+ P/ B  O/ m/ D先占需要注意两点:, N/ A& M, b, P) a5 ?' S8 f
1、想要抢占当前的任务,这个任务必须分配出去,也就是说如果先占任务留在任务分配器 ...
. e. _' v7 a; P, z+ f8 ]1 |
我知道任务执行器正在执行的任务只能有一个。我拿别的电脑也试过了(16版的)也会出现这种情况,所以比较困惑。应该是软件版本的问题吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-2 13:50 , Processed in 0.080207 second(s), 14 queries .

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

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