【上級編】みかん選果場のモデルを作成する

概要

今回は大規模なモデルとしてみかんの選果場のモデルを作成してみましょう。assimeeでは検品プロセスを使って二値のステータス分け(正常、不良)が出来ますが、この仕組みを応用してモデル内を流れるパーツに対して2つ以上の複数ステータスの割り振りを行う方法を合わせて解説します。

今回のモデルは下図のようになります。複数段階の検品プロセスを活用し、特選品、秀品、優品、良品、加工品の5段階に選別するプロセスを再現します。

モデルの作成

モデルの前提

今回の選果場モデルは以下のような設定を考えて、入荷プロセスや分岐プロセス、置き場の容量やパーツの設定を行います。

  1. 入荷量:10分間に20ケース(1ケース100キロ)入荷、1時間12トン相当
  2. 稼働時間:1日8時間稼働により96トンを選果(480分でシミュレーション)
  3. 出荷:みかんは1箱10キロで出荷、廃棄は100キロ単位
  4. 選果のステータスは5段階(特選品、秀品、優品、良品、加工品)で、それぞれ選別後の割合が(17%、32%、32%、9%、9%)、廃棄品が1%となるように不良品率を設定
  5. 入荷と出荷用に約1000トンの倉庫を用意

またモデルが大きいため、入荷と目視選別のブロック(含不良品破棄)、洗浄ブロック、選果ブロック(含出荷)の3つのブロックに分けてモデル作成の解説を行います。

STEP1 プロセス図の作成

入荷と目視選別のブロック

下図のように入荷後に目視検査を行い、目視検査の合格品は洗浄ブロックへ移動、不合格品は破棄を行うところまで実装します。

入荷プロセス:
プロセス名を「入荷」へ変更

置き場プロセス:
プロセス名を「入荷品倉庫」へ変更

検品プロセス:
プロセス名を「入荷時検品」へ変更

分岐プロセス:
プロセス名を「目視選別」へ変更

分岐先として2つの置き場プロセスを設置:

置き場プロセス(洗浄ブロックへ):
プロセス名を「合格品置き場」へ変更

置き場プロセス(破棄へ):
プロセス名を「不良品置き場」へ変更

廃棄側

廃棄には出荷プロセスを使いますが、出荷と出力が混ざらないように加工(廃棄)を置き、名称を廃棄品へ変更します。

加工プロセス:
プロセス名を「廃棄」へ変更

出荷プロセス:
プロセス名を「廃棄品回収」へ変更

目視検査の合格品側の「合格品置き場」以降は洗浄ブロックで解説

洗浄ブロック

下図のように目視選別を終えたみかんを洗浄し、選別前の置き場まで運びます。

置き場プロセス(再掲):
プロセス名を「合格品置き場」へ変更

ローラーコンベアー:
特に変更なし

置き場プロセス:
プロセス名を「洗浄前置き場」へ変更

加工プロセス:
プロセス名を「洗浄」へ変更

置き場プロセス:
プロセス名を「洗浄後置き場」へ変更

ローラーコンベアー:
特に変更なし

置き場プロセス:
プロセス名を「選果前置き場」へ変更

この後は選果ブロックの検品プロセス「選果その1」へ接続します。

選果ブロック

以下の図のように複数の検品と分岐を配置することで複数のステータス分けを行います。assimeeの検品プロセスでは正常と不良へ分けることができますが、ステータスが正常なパーツに対して2段階目の検品を行うことで3つのステータス分岐ができます。同様に再度、正常なパーツに対して3段階目の検品を行うことで4つのステータス分岐を行うことができます。
*なお、今回のモデルでは使用していませんが、1度ステータスに不良を割り振った場合は再度検品を行ってもステータスを変更することができません。多重に検品を行う場合はステータス正常に対して検品を行ってください。どうしても、ステータス不良のパーツのステータスを再度変更したい場合は1度、加工プロセスを使い、パーツ名を変更してください。ステータスがリセットされます。

選果その1

検品プロセス:
プロセス名を「選果その1」へ変更

分岐プロセス:
プロセス名を「選別」へ変更

分岐先として2つのプロセスを設置:

置き場プロセス(加工品):
プロセス名を「加工用置き場」へ変更

検品プロセス(選別側):
プロセス名を「選果その2」へ変更

加工品側

置き場プロセス(再掲):
プロセス名を「加工用置き場」へ変更

加工プロセス:
プロセス名を「梱包」へ変更

置き場プロセス:
プロセス名を「出荷品倉庫」へ変更

ローラーコンベアー:
特に変更なし
出荷プロセス「出荷」へ合流

選果その2

検品プロセス(再掲):
プロセス名を「選果その2」へ変更

分岐プロセス:
プロセス名を「選別」へ変更

分岐先として2つのプロセスを設置:

置き場プロセス(良品):
プロセス名を「良品置き場」へ変更

検品プロセス(選別側):
プロセス名を「選果その3」へ変更

良品側

置き場プロセス(再掲):
プロセス名を「良品置き場」へ変更

加工プロセス:
プロセス名を「梱包」へ変更

置き場プロセス:
プロセス名を「出荷品倉庫」へ変更

ローラーコンベアー:
特に変更なし
出荷プロセス「出荷」へ合流

選果その3

検品プロセス(再掲):
プロセス名を「選果その3」へ変更

分岐プロセス:
プロセス名を「選別」へ変更

分岐先として2つのプロセスを設置:

置き場プロセス(優品):
プロセス名を「優品置き場」へ変更

検品プロセス(選別側):
プロセス名を「選果その4」へ変更

優品側

置き場プロセス(再掲):
プロセス名を「優品置き場」へ変更

加工プロセス:
プロセス名を「梱包」へ変更

置き場プロセス:
プロセス名を「出荷品倉庫」へ変更

ローラーコンベアー:
特に変更なし
出荷プロセス「出荷」へ合流

選果その4

検品プロセス(再掲):
プロセス名を「選果その4」へ変更

分岐プロセス:
プロセス名を「選別」へ変更

分岐先として2つのプロセスを設置:

置き場プロセス(秀品):
プロセス名を「秀品置き場」へ変更

置き場プロセス(特選品):
プロセス名を「特選品置き場」へ変更

秀品側

置き場プロセス(再掲):
プロセス名を「秀品置き場」へ変更

加工プロセス:
プロセス名を「梱包」へ変更

置き場プロセス:
プロセス名を「出荷品倉庫」へ変更

ローラーコンベアー:
特に変更なし
出荷プロセス「出荷」へ合流

特選品側

置き場プロセス(再掲):
プロセス名を「特選品置き場」へ変更

加工プロセス:
プロセス名を「梱包」へ変更

置き場プロセス:
プロセス名を「出荷品倉庫」へ変更

ローラーコンベアー:
特に変更なし

出荷プロセス:
プロセス名を「出荷」へ変更

他の出荷プロセス「出荷」へ合流させてください。

STEP2 パラメーターの設定

入荷と目視選別のブロック

みかんは100キロ単位のケースを想定し、10分間に20ケース入荷するように設定します。次の目視検査の合格品は洗浄ブロックへ移動、不合格品は破棄します。

001入荷:
入荷品目を「収穫済みかん」、個数を「20個」、時間間隔を「10分」

002入荷品倉庫:
容量を「10000個」と設定

003入荷時検品:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.1分」、人数を「20人」、不良品率を「1%」と設定

004目視選別:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.1分」、人数を「20人」と設定

分岐条件1:
 対象品目:正常:収穫済みかん
 送り先:005合格品置き場
分岐条件2:
 送り先:不良:収穫済みかん
 送り先:041不良品置き場

廃棄側

041不良品置き場:
容量を「1000個」と設定

042廃棄:
1回あたりの処理時間を「1分」と設定
対象品目を「収穫済みかん」、個数を「1個」、
出力品目を「ケース(廃棄)」、個数を「10個」と設定

043廃棄品回収:
特に変更なし

洗浄ブロック

005合格品置き場(再掲):
容量を「1000個」と設定

006ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

007洗浄前置き場:
容量を「1000個」と設定

008洗浄:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.5分」、人数を「10人」と設定
対象品目を「収穫済みかん」、個数を「1個」、
出力品目を「みかん」、個数を「1個」と設定

009洗浄後置き場:
容量を「1000個」と設定

010ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

011選果前置き場:
容量を「1000個」と設定

選果ブロック

選果その1

012選果その1:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「10人」、不良品率を「10%」と設定

013選別:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.1分」、人数を「20人」と設定

分岐条件1:
 対象品目:不良:みかん
 送り先:014加工用置き場
分岐条件2:
 対象品目:正常:みかん
 送り先:019選果その2

加工品側

014加工品置き場(再掲):
容量を「20000個」と設定

015梱包:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「5人」と設定
対象品目を「みかん」、個数を「1個」、
出力品目を「段ボール(加工品)」、個数を「10個」と設定

016出荷品倉庫:
容量を「20000個」と設定

017ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

選果その2

019選果その2(再掲):
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「10人」、不良品率を「10%」と設定

020選別:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.1分」、人数を「20人」と設定

分岐条件1:
 対象品目:みかん:不良
 送り先:021良品置き場
分岐条件2:
 対象品目:みかん:正常
 送り先:025選果その3

良品側

021良品置き場(再掲):
容量を「20000個」と設定

022梱包:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「5人」と設定
対象品目を「みかん」、個数を「1個」、
出力品目を「段ボール(良)」、個数を「10個」と設定

023出荷品倉庫:
容量を「20000個」と設定

024ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

選果その3

025選果その3(再掲):
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「10人」、不良品率を「40%」と設定

026選別:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.1分」、人数を「20人」と設定

分岐条件1:
 対象品目:みかん:不良
 送り先:027優品置き場
分岐条件2:
 対象品目:みかん:正常
 送り先:031選果その4

優品側

027優品置き場(再掲):
容量を「20000個」と設定

028梱包:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「5人」と設定
対象品目を「みかん」、個数を「1個」、
出力品目を「段ボール(優)」、個数を「10個」と設定

029出荷品倉庫:
容量を「20000個」と設定

030ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

選果その4

031選果その4(再掲):
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「10人」、不良品率を「66%」と設定

032選別:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「0.1分」、人数を「20人」と設定

分岐条件1:
 対象品目:みかん:不良
 送り先:033秀品置き場
分岐条件2:
 対象品目:みかん:正常
 送り先:037特選品置き場

秀品側

033秀品置き場(再掲):
容量を「20000個」と設定

034梱包:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1回あたりの処理時間を「1分」、人数を「5人」と設定
対象品目を「みかん」、個数を「1個」、
出力品目を「段ボール(秀)」、個数を「10個」と設定

035出荷品倉庫:
容量を「20000個」と設定

036ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

特選品側

037特選品置き場(再掲):
容量を「20000個」と設定

038梱包:
ウィンドウ最大化から詳細設定に入り、作業員にチェックを入れ、1人あたりの処理時間を「1分」、人数を「5人」と設定
対象品目を「みかん」、個数を「1個」、
出力品目を「段ボール(特選)」、個数を「10個」と設定

039出荷品倉庫:
容量を「20000個」と設定

040ローラーコンベアー:
搬送時間を「1分」、最大積荷個数を「100個」と設定

018出荷:
特に変更なし

シミュレーション

モデルの作成が終了したら、シミュレーション時間を480分に設定してシミュレーションを行います。
シミュレーションが終了すると表示されるダッシュボードからシミュレーションの結果を確認するため、「生産推移」と「生産割合」のグラフを選択し表示させます。
*各検品にはランダム変数が含まれるため、それぞれの割合が厳密には一致はしませんが、概ね下図のような結果となります。もし、結果が下図から大きくずれる場合は、設定ミスの可能性があるので、設定を見直してください。

また、右側の円グラフはステータス別(特選品、秀品、優品、良品、加工品、破棄品)の出荷割合を示しています。それぞれの割合は(16%、34%、30%、10%、9%、1%)となっており、乱数を含んでいるためずれがありますが、想定した(17%、32%、32%、9%、9%、1%)とほぼ同じ割合となっていることが分かります。

まとめ

今回はみかん選果場をサンプルとしたモデルを作成し、製品に対して複数のステータス分けを行う方法について解説しました。このようにassimeeの基本プロセスを上手に組み合わせて使うことで、再現できるモデルの幅が広がります。