立体仓库叉车运输系统仿真模型


一、 模型描述
    假设有一立体仓库系统有一排立体货架(2列10层)用于存储产品,有一辆叉车用于存入产品。产品到达时间间隔服从均值为5分钟的负指数分布,到达批量为1,产品在仓库入口处通过输送链运至入库台,入库台自动将产品从输送链上卸到入库点的临时库存,卸载时间服从Uniform(0.5,1.5)。叉车从临时库存装载产品,装载时间为uniform(1,2),叉车运行速度为20M/Min,到库位入库的时间为1+uniform(0.2,0.5)*库位层。货架每列的宽度为1M,货架最前列到临时库存的距离为3M。产品在仓库中存储时间达到2小时,被送出库存系统,WITNESS仿真模型下载
该模型建立有以下目的:
 掌握叉车入库作业的建模
 掌握物品自动退出仓库的建模
 掌握根据条件控制车辆运行的建模
二、 模型建立
2.1 模型最终界面
   模型最终界面如图1所示:



图1 模型最终界面


2.2 元素说明
   该模型的元素较为复杂,首先,part元素产品经过输送链conveyor元素的运输,被入库台卸载,卸载之后被储存于临时仓库(buffer元素)。再经过叉车经过四个track元素进行货架1和货架2之间的运输。具体元素详见下表:


表1 元素说明


 

2.3 元素可视化设计
(1)Part元素可视化设计
Part元素只有产品,只需对其name属性和icon进行可视化设计即可。Icon选择红色圆圈图案表示。如图1所示。
(2)Buffer元素可视化设计
Buffer元素主要有临时仓库和仓库两个元素。两者都对其name属性和part queue属性可视化设计。其中part queue属性选择count选项。对buffer元素中包含的产品数量实现可视化设计。
(3) track元素可视化设计
track元素有T1、T2、T3和T4四个元素,主要对其name属性和path属性进行可视化设计。
(4) machine元素和conveyor元素可视化设计
Machine元素和conveyor元素需要对其icon属性、part queue属性以及icon属性(静态图标)、icon(动态图标)进行可视化设计。
2.4 元素详细设计
(1)Part元素详细设计
Part元素详细设计如图2所示:



图2 产品元素详细设计


其中,点击“To…”按钮,输入:push to Conveyor001 at Rear,表示产品以均值为5min的速度进入系统后转移到输送链上运往入库台。
(2)machine元素详细设计
   按照模型描述所讲,入库台自动将产品从输送链上卸到入库点的临时库存,卸载时间服从Uniform(0.5,1.5)。这里入库台用machine元素表示。具体设计如图3所示:



图3 入库台详细设计


其中:

    “from”中输入:pull from Conveyor001(1) at Front,表示入库台主动向输送链要零件进行卸载。
    “to”中输入:push to 临时仓库,表示被卸载完成的产品暂时放在临时仓库保存。
     Cycle time中输入:UNIFORM (0.5,1.5),表示卸载产品时间服从0.5到1.5的平均分布。
(3) track元素详细设计
    Track元素主要有T1、T2、T3、T4。叉车首先从T4的尾部运行到首部,然后对临时仓库中的产品进行装载,如果临时仓库中没有产品,叉车则在T4首部等待直到有产品被装运。装载完成后,叉车转移到T1上运行,运行到T1首部后进行判断:产品是否属于库位列1?如果产品在库位列1存储,则将产品卸载,叉车按照T4路径返回;如果产品属于库位列2,则叉车将从T1转移到T2上运行,到T2首部将产品卸载,卸载后按照T3、T4路径返回。
了解其运行规则后,对四个路径逐一进行设置。
T4元素详细设计
T4元素需要对general选项、loading选项进行详细设计。如图4和图5所示:



图4 T4元素详细设计


其中,点击“output”按钮,输入:PUSH to T1(1),表示T4完成一切操作后将叉车转移到T1上继续运行。



图5 T4loading详细设计


其中:

     点击“input loading rule”按钮,输入:PULL from 临时仓库,表示T4装载的零件是从临时仓库取出的。
     点击“actions on loading”,输入:
          IF NFREE (仓库(1)) > 0
               库位列 = 1
               库位层 = NPARTS (仓库(1)) + 1
          ELSEIF NFREE (仓库(2)) > 0
               库位列 = 2
               库位层 = NPARTS (仓库(2)) + 1
          ELSE
               库位列 = 10
          ENDIF

    注:为每个产品的库位列和层进行赋值,如果库位1中还有空位,则货物的库位列属性为1,即该产品放置于仓库1中,否则,产品将放置于仓库2中。


 T1元素详细设计
     T1元素主要是在T4元素装载wan产品之后,对产品进行运送的路径,在该路径的首部,即仓库1的入口处,有对产品的库位列进行判断的语句,当产品的库位列属性为1时,在T1首部将产品卸载,否则,应转移到T2上继续运送产品至仓库2。具体设计如图6和图7所示:



图6 T1general选项详细设计


其中,点击“output”按钮,输入:
    IF NPARTS (VEHICLE (ELEMENT,1)) = 0
        PUSH to T4
    ELSE
        PUSH to T2
    ENDIF

    注:完成T1所有操作之后,判断叉车的运行方向,如果叉车上没有产品,则直接转至T4返回,否则将送往T2路径,继续运送产品至仓库2.



图7 T1unloading选项详细设计


其中,点击“output loading rule”,输入:push to 仓库(1),表示如果产品满足库位列=1的条件,产品被卸载,并且卸载至仓库(1)中。


T2素详细设计
    T2元素主要是运送去往仓库(2)的产品,所以也需要对其unloading选项进行详细设计。具体如图8和图9所示。



图8 T2元素详细设计


其中,点击“output”按钮,输入:push to T3,表示当T2元素所有动作完成后,小车将运送至T3路径返回临时仓库。



图9 T2元素unloading选项详细设计


其中,点击“output”按钮,输入:
    IF 库位列 = 2
       PUSH to 仓库(2)
    ELSE
       PUSH to SHIP
    ENDIF

    注:仓库2只接收库位列为2的产品,其他不符合条件的将送出系统。


T3素详细设计
T3元素属于叉车送完仓库2产品后的返回路径。具体设计如图10所示:



图10 T3元素详细设计


其中,点击“output”按钮,输入:
    IF NFREE (仓库) > 0
      PUSH to T4(1)
    ELSE
      Wait
    ENDIF

    注:判断仓库是否还有空位,如果有空位,叉车将沿着T3、T4返回继续输送产品,否则叉车等待仓库有空位才能开始活动。
(3) vehicle元素详细设计
Vehicle元素详细设计如图11所示:



图11 vehicle001细设计


其中,点击“to”按钮,输入:Push to T4 at rear,表示叉车进入系统时在T4路径的尾部。
(3) buffer元素详细设计
仓库中存放的零件以某种规则要送出系统,需要对buffer元素进行详细设计。如图12所示:



图12 仓库元素详细设计


点击“exit rule”按钮,输入:push to ship,表示产品在系统中停留60个时间单位之后离开系统。
三、 运行模型
系统运行200分钟,结果如表2所示:


表2 系统运行数据统计


上表可以看出,仓库1其主要存储作用。只有当仓库1满仓才送往仓库2储存。