全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
liuzhifan 发表于 2017-8-2 15:21:22 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我做了个小模型进行测试,发现任务分配器是无法传递任务先占值的,发生器5的状态属于aiting for transport,并且它具有先占值的,可是AGV还是去往发生器4
. D6 F5 ?; ~" ^  K1 X! R: G
- a2 c( F% `0 I9 e/ Z; @7 J  U

  v2 `# i6 K: a! f, y$ k5 ]6 J' u6 o# R8 h' R
9#
 楼主| liuzhifan 发表于 2017-8-8 15:12:51 | 只看该作者
慧娴亚伦 发表于 2017-8-8 13:50
! B! ?0 `3 E# e, B9 O0 B先占需要注意两点:
; X4 z7 Y1 E& U  d1、想要抢占当前的任务,这个任务必须分配出去,也就是说如果先占任务留在任务分配器 ...

) p" |$ X: E+ q我知道任务执行器正在执行的任务只能有一个。我拿别的电脑也试过了(16版的)也会出现这种情况,所以比较困惑。应该是软件版本的问题吧
8#
慧娴亚伦 发表于 2017-8-8 13:50:15 | 只看该作者
先占需要注意两点:
  `% |7 y$ q# O1 E1、想要抢占当前的任务,这个任务必须分配出去,也就是说如果先占任务留在任务分配器(简称DP)里面(而不是直接分到指定任务执行器(简称TE)身上)是不会出现抢占的,在DP使用“第一个可用”(return 0;)它只会向空闲的TE分派任务。您这个例子中如果直接使用return 1;强行分派给TE,那么先占完全可以实现;6 F' C4 ^) k  R
2、如果TE已经在执行先占任务,那么此时又传递过来一个先占任务,则基于他们的优先级,如果优先级高于当前执行的先占任务,才会发生抢占。(详见下面用户手册截图原话),否则将会跟一般任务一样存入任务序列队列中,自然不会发生抢占。$ F" A6 _& J1 q  I7 E% `

2 [3 q8 ^1 U6 {+ D( U我无法实现您截图树结构中的这种情况,因为激活的任务序列(activetasksequence)只可能有一个
" a- b7 K# `: \3 N$ X+ }
- x3 H; L, d1 C( i# |
3 I, x1 D* \7 k7 g$ I7 Z

本帖子中包含更多资源

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

x
6#
 楼主| liuzhifan 发表于 2017-8-8 11:39:52 | 只看该作者
慧娴亚伦 发表于 2017-8-8 11:27* f3 D. u4 C# j4 ~, S: n
运行了模型,没有发现您所说的问题,能否具体指出运行到什么时候会有问题?

- ?0 i$ I. \9 ~7 J0 d8 w陈老师你运行我后面刚上传的模型,这个模型的问题比较明显。下方的AGV会停止无法调用,并且它的正在执行的任务序列里面同时存在两个任务。
5#
慧娴亚伦 发表于 2017-8-8 11:27:10 | 只看该作者
运行了模型,没有发现您所说的问题,能否具体指出运行到什么时候会有问题?
4#
 楼主| liuzhifan 发表于 2017-8-8 09:37:55 | 只看该作者
慧娴亚伦 发表于 2017-8-2 20:04
2 I: u7 \$ F9 R4 K) O; _这块内容肯定没有问题,请仔细阅读用户手册关于先占的用法。

; K3 z3 ?! {, H" D6 l6 }我建立的先占值测试模型,16版的flexsim实现不了我的代码逻辑,但是用17版运行的是可以实现。我是不是又遇到软件BUG了。我对先占值的理解没有错,就是16版的flexsim一直运行让我得不到我想要的结果,所以导致我很困惑。我还有一个模型,16版与17版的运行结果也是不一样的。我想请问下,遇到这种情况,是我编程代码的问题,还是软件的问题。
3#
慧娴亚伦 发表于 2017-8-2 20:04:31 | 只看该作者
这块内容肯定没有问题,请仔细阅读用户手册关于先占的用法。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-30 00:00 , Processed in 0.062799 second(s), 15 queries .

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

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