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

【求助】关于货物的流向与拉入问题

技术交流2 1 1 2017-8-13 12:15:17
简化模型描述:前端集配20个轮胎(16个主胎,4个备胎),完成后转运至中间暂存区,进行人工二次集配(4个主胎,1个备胎上线)。

[color=blue][b]模型构建思路一[/b][/color]
为了实现二次集配作业,我采用在第二个合成器进入触发时发生消息给作业员,作业员在收到消息后,消息触发器触发,执行编写好的任务序列。
问题:实现了集配4个主胎,1个备胎的作业,但是如果中间暂存区没货了,操作员执行消息触发器的任务序列就会报错了。
[color=blue]解决办法:采用判定中间暂存区的货物量,来控制虚拟订单是否流入合成器[/color]
[color=#0000ff]思考:在中间暂存区缺货状态下,如何把取货任务序列先暂存起来(如暂存于操作员的任务序列队列,而不激活任务)。[/color]
[color=#0000ff][/color]

[color=#0000ff][b]模型构建思路二[/b][/color]
[color=black]采用合成器的拉入条件来进行拉入([color=#444444]4个主胎,1个备胎[/color]),这样的话只有在暂存区有货时,操作员就会去进行搬运,没货时就不搬运,从而不会发生上面的报错。[/color]


[color=#000000]问题[/color][color=blue]:(这个问题也是我经常弄不清楚的),模型运行时候只进行了一次拉入[/color][color=blue](4个主胎,1个备胎),[/color]
[color=blue]拉入的时候需要上游与下游同时准备好就可以进行拉入的触发,我理解的上游准备好就是触发了“发送至端口”触发器,[/color]
[color=blue]如果暂存区(上游)只进入了一个实体,就只触发了一次“发送至端口”触发器,那么是不是就意味着只能进行一次拉入的触发。[/color]
[color=#000000][/color]

──── 0人觉得很赞 ────

本帖子中包含更多资源

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

x
2017-8-17 10:11:21

思路一:在暂存区容量为零的时候,是不能创建任务序列的,此时搬运物的指向空,执行任务序列的时候会因为找不到临时实体而报错。我这里写了一种解决方案:在操作员上加一个“state”标签,初始值为0,下游合成器进入托盘的时候先判断暂存区的容量,如果非零才向操作员发送消息,并将操作员标签值设为0;如暂存区容量为零则将操作员标签纸更改为1,表示操作员出于等待任务的状态。同时,当暂存区每进入一个托盘的时候读取操作员的标签值,如果为1,则向操作员发送消息启动任务。此外你的模型还需完善的地方有:你的模型只是产生了一个托盘,若是上游托盘源源不断的产生,则代码有些地方需要作改变,比如暂存区里item的引用方式再用first就会出错了,或者是一个托盘还未装载完时进入了一个新的托盘等等。

思路二:你仔细读读你选择的临时实体类型数组的拉入方式代码,它的功能并不是按照数组临时实体类型的比例拉入item。你的模型只拉一次并不是这部分代码起的作用,而是暂存区使用运输工具里的代码的作用。对于拉入方式,我也在默认代码的基础上做了一些更改,可以达到你的要求。
ps:第一个模型版本是2017.1.4,第二个模型版本是7.3.6.

本帖子中包含更多资源

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

x
您需要登录后才可以回帖 立即登录
高级模式
返回
技术交流2
热门问答
查看更多
1
Flexsim初级建模工程师水平标准
Flexsim初级建模工程师水平标准
56
234
2
厂区生产线布局优化案例!新做的!
厂区生产线布局优化案例!新做的!
38
224
3
流水作业线的仿真
流水作业线的仿真
35
83
4
无意中找到的资料,非常适合于初学者
无意中找到的资料,非常适合于初学者
29
229
5
flexsim中文教程,pdf文档已整理-重新整理
flexsim中文教程,pdf文档已整理-重新整理
28
114
博主榜
+ 5