全球FlexSim系统仿真中文论坛

标题: 关于在使用操作员搬运的情况下基本传送带触发器失灵的问题 [打印本页]

作者: 657776724    时间: 2015-8-22 09:22
标题: 关于在使用操作员搬运的情况下基本传送带触发器失灵的问题
不知道各位有没有遇到过基本传送带决策点完全不触发的情况?! A" l1 i" p. E- v7 ^
! z9 O2 }- M3 n0 ~
想要实现的是这样的一个模型:
' o" G  d- Y4 Z" k" d一个基本传送带上有多个决策点,不同类型的临时实体从不同的决策点离开。离开的方式是使用人工搬运的方法离开。& r0 c+ M9 w0 |
) G( D1 p- W5 P9 A: L2 P5 c4 R3 T
问题:- \0 @1 r, `0 o3 n0 P
1、如果没有使用releaseitem命令直接写任务序列,那么会导致多个决策点完全不会触发。3 Z$ j! d3 ^  \5 g; Z! j
2、如果使用了releaseitem命令,那么临时实体会直接跳到下游,不会等待人工搬运。9 v" h$ U. x, G- o9 a) n* s
3、如果使用 bcsetitemconveystate(current,item,position,0,0,0)命令之后再写任务序列可行,但是会使临时实体停下,堵塞后面的临时实体。
7 D) g/ ?+ ]. s: y$ g- D4、如果bcsetitemconveystate(current,item,position,0,1,0)命令之后再写任务序列,又会出现触发器失灵的现象。
; w" I1 j% E& q: P! O. {( D
/ [$ G8 F0 ?; P8 v# q1 J& v+ L请大神们指点迷津!
作者: FFFrenk    时间: 2015-8-22 13:37
本帖最后由 FFFrenk 于 2015-8-22 20:32 编辑
8 Z5 r. r5 f9 W2 a  k0 P1 f% w6 _) U: B9 d' g  l3 a% Q
---15082220---update---
1 G9 w) \4 y* W+ J1 }# N经过提醒,修改了一下帖子中的receiveitem和releaseitem命令的混用~
/ A: Z! a1 ^* k2 Q0 l# K
. p9 M" {/ D+ K$ g. {2 [--原答案-昏割线---
& x- C9 o9 e: v0 Y' }# V- H首先,建模之前得弄清楚,自己要实现怎样的功能,用哪些实体来实现这种功能。
# _4 O1 x* X1 j5 M* P& Y. K从你的描述中来看,我实在看不出你必须使用基本传送带的理由。基本传送带,BasicConveyor,Basic表示原始的意思,是非常非常原始的部件,需要自行开发的太多了。
- B) B0 d  Q: F) B5 B; Q& v就像,你要开发一款游戏,市面上有很多引擎(传送带等其他实体)你不用,偏偏要用机器语言(01010101010之类)来开发。
7 P0 l1 C. r0 P# [5 Z9 H- A3 i- H. j" j3 s8 P
其次,基本传送带的基本原理,你可能还没有搞清楚,包括receiveitem和releaseitem的原理。; O, m% B+ d/ o. Y
简单的说,receiveitem是使得基本传送带能够接受实体,releaseitem使传送带释放该实体(当然,这你都知道)。
3 a. n" J% p: @5 W" T8 U8 V# P* B) q
使用releaseitem后,如果指定了运输工具,则会调用任务执行器来搬运,这是你问题2的答案9 Q1 d( O( `# H4 U/ L
如果没有使用releaseitem,而另外的使用其他任务将其搬运出传送带,则会破坏传送带原来的系统,会出现决策点无法触发等其他奇怪的问题,这是你问题1和4的答案。, N7 N5 ~9 `' P' @
, }/ c, o& j8 a- y# C$ ~( B6 t
然后,以你现在的模型策略来说,一个解决方法是,每个决策点对应一个暂存区,分别发送至决策点对应的暂存区(releaseitem),暂存区内调用操作员搬运即可。6 }) [/ [; O: ^- f4 x

8 y2 f% m6 J% V- s6 H嘿,发现了什么吗?对,这样你就自己开发了一个分拣传送带。你可以仔细观察一下以基本传送带为基础开发的分拣传送带,就没有使用运输工具这一项,FlexSim开发者早就考虑到这个问题了。
* U  B; U6 o7 M$ u% O7 |( l+ {; i1 w3 C9 V/ x
另外,直接使用传送带也可以实现你需要的效果啊。) h1 l! X$ l/ H% E
! `% Q8 u! h2 @  z: L+ {
最后,FlexSim,Flexible Simulation,灵活运用实体能够快速、简单、有效地解决你的问题。不要沉迷于单一的实体,能实现效果的方法中,越快越简单越稳定的最好。* b- f1 K' m, ?$ l, {1 b+ O, |
. `- g6 H9 H+ S- w- y9 w  {
以上~
作者: 657776724    时间: 2015-8-22 16:24
2# FFFrenk
2 F/ \4 e7 c6 h2 T4 @感谢大神!我现在处于学习的阶段,所以想尝试使用一些模块。这个模型我用一般传送带、新传送带模块和基本传送带都做过。新传送带模块可以比较简单的完成这样的功能,如果用一般传送带拼接的话,也会完成这样的功能,但是因为自身逻辑的限制,所以有些细微的逻辑不好操作。所以我就想用基本传送带试试,没想到出现了以上的困惑。
作者: 慧娴亚伦    时间: 2015-8-22 19:52
2楼说的很棒,另外建议2楼将原文中一些receiveitem()和releaseitem()混用的地方重新编辑一下(全文实际上只出现了receiveitem())! q* }% `2 j- N
我们在仿真的过程中,模型要强调从“真”出发,为什么分拣传送带在flexsim中不能直接调用运输工具呢?我想有一个很重要的原因就是,自动分拣设备本身就很少会直接调用搬运工具进行搬运,都是通过外接的传输设备再进行分流,一个明显的原因就是,如果需要分拣的时候没有搬运工具可用的话,很自然会造成堵塞,这类的堵塞情况对运作的自动设备运作效率的影响是非常大的。因此不影响主分拣道口是实际设备设计过程中的重要考量因素。
( R/ [( ]/ i* |' M6 h; q练习或者了解flexsim的逻辑通过楼主的方法是一个很不错的渠道,但是不要太过于钻牛角尖,在仍然是用户(user)的现阶段,理清运作规律而不是全盘搞懂核心机制,才会更直接更快速的提高建模水平,在累积了一定的建模经验之后,我们再回头来弄清楚运作机制,很多原先无法理解或者很难理解的内容将会豁然开朗。
作者: lulu-luka    时间: 2017-4-11 07:31





欢迎光临 全球FlexSim系统仿真中文论坛 (http://www.flexsimasia.com/) Powered by Discuz! X3.3