みかん選果場モデル作成の解説

assimeeによるモデル作成方法やプロセスについてのより深い理解のため、この記事を読む前にモデル作成の基礎を解説している以下の記事を先にご覧いただくことをことをお勧めします。

ー概要ー

今回の記事ではみかんの選果場をサンプルにモデルを作成してみましょう。assimeeでは検品プロセスを使って2値のステータス分け(正常、不良)が出来ますが、この仕組みを使ってモデル内を流れるパーツに対して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トンの倉庫を用意

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

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

下図のようにみかんを100キロ単位のケースで10分間に20ケース入荷するように設定し、目視検査を行う前提で実装します。また、目視検査の合格品は洗浄ブロックへ移動、不合格品の破棄を行うところまで実装します。

入荷プロセス:
プロセス名を「000入荷」へ変更、詳細設定からパーツの入荷情報を以下のように設定
入荷パーツ名を「収穫済みかん」、間隔を「10分」、個数を「20個」

置き場プロセス:
プロセス名を「001入荷品倉庫」へ変更、容量を「10000個」と設定

検品プロセス:
プロセス名を「002入荷時検品」へ変更、処理時間を「0.1分」、作業人数を「20人」、不良品率を「1%」と設定

分岐プロセス:
プロセス名を「003目視選別」へ変更、処理時間を「0.1分」、作業人数を「20人」と設定

分岐条件:
詳細画面の「分岐条件」右側のマークをクリックして編集画面を立ち上げ、2つの置き場を送り先として配置し、以下の条件を追加

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

置き場プロセス(洗浄ブロックへ):
プロセス名を「100合格品置き場」へ変更、容量を「1000個」と設定

置き場プロセス(破棄へ):
プロセス名を「200不良品置き場」へ変更、容量を「1000個」と設定

条件1:
・送り先:100合格品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:正常
条件2:
・送り先:200不良品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:不良

ー廃棄側ー

破棄の際に出荷プロセスを使いますが、出荷と混ざらないように加工で名称を廃棄品へ変更します。

加工プロセス:
プロセス名を「201廃棄」へ変更、処理時間を「1分」、作業人数を「1人」と設定、
対象パーツ名称を「収穫済みかん」、個数を「1個」、
出力パーツ名称を「ケース(廃棄)」、個数を「1個」と設定

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

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

洗浄ブロック

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

置き場プロセス(再掲):
プロセス名を「100合格品置き場」へ変更、容量を「1000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「101運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

置き場プロセス:
プロセス名を「102洗浄前置き場」へ変更、容量を「1000個」と設定

加工プロセス:
プロセス名を「103洗浄」へ変更、処理時間を「0.5分」、作業人数を「10人」と設定、
対象パーツ名称を「収穫済みかん」、個数を「1個」、
出力パーツ名称を「みかん」、個数を「1個」と設定

置き場プロセス:
プロセス名を「104洗浄後置き場」へ変更、容量を「1000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「105運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

置き場プロセス:
プロセス名を「106選果前置き場」へ変更、容量を「1000個」と設定

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

選果ブロック

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

検品プロセス:
プロセス名を「300選果その1」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「10%」と設定

分岐プロセス:
プロセス名を「301選別」へ変更、処理時間を「0.01分」、作業人数を「20人」と設定

分岐条件:
詳細画面の「分岐条件」右側のマークをクリックして編集画面を立ち上げ、以下のようにプロセスを送り先として配置し、条件を追加

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

置き場プロセス(加工品):
プロセス名を「302加工品置き場」へ変更、容量を「1000個」と設定

検品プロセス(選別側):
プロセス名を「310選果その2」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「10%」と設定

条件1:
・送り先:302加工品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:不良(ここでは加工用とする)
条件2:
・送り先:310選果その2
・分岐条件:パーツステータスが一致
・パーツステータス:正常

ー加工品側ー

置き場プロセス(再掲):
プロセス名を「302加工品置き場」へ変更、容量を「1000個」と設定

加工プロセス:
プロセス名を「303梱包」へ変更、処理時間を「1分」、作業人数を「10人」と設定、
対象パーツ名称を「みかん」、個数を「1個」、
出力パーツ名称を「段ボール(加工用)」、個数を「10個」と設定

置き場プロセス:
プロセス名を「304出荷品倉庫」へ変更、容量を「20000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「305運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

ー選果その2ー

検品プロセス(再掲):
プロセス名を「310選果その2」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「10%」と設定

分岐プロセス:
プロセス名を「311選別」へ変更、処理時間を「0.01分」、作業人数を「20人」と設定

分岐条件:
詳細画面の「分岐条件」右側のマークをクリックして編集画面を立ち上げ、以下のようにプロセスを送り先として配置し、条件を追加

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

置き場プロセス(良品):
プロセス名を「312良品置き場」へ変更、容量を「1000個」と設定

検品プロセス(選別側):
プロセス名を「320選果その3」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「40%」と設定

条件1:
・送り先:312良品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:不良(ここでは良とする)
条件2:
・送り先:320選果その3
・分岐条件:パーツステータスが一致
・パーツステータス:正常

ー良品側ー

置き場プロセス(再掲):
プロセス名を「312良品置き場」へ変更、容量を「1000個」と設定

加工プロセス:
プロセス名を「313梱包」へ変更、処理時間を「1分」、作業人数を「10人」と設定、
対象パーツ名称を「みかん」、個数を「1個」、
出力パーツ名称を「段ボール(良)」、個数を「10個」と設定

置き場プロセス:
プロセス名を「314出荷品倉庫」へ変更、容量を「20000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「315運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

ー選果その3ー

検品プロセス(再掲):
プロセス名を「320選果その3」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「40%」と設定

分岐プロセス:
プロセス名を「321選別」へ変更、処理時間を「0.01分」、作業人数を「20人」と設定

分岐条件:
詳細画面の「分岐条件」右側のマークをクリックして編集画面を立ち上げ、以下のようにプロセスを送り先として配置し、条件を追加

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

置き場プロセス(優品):
プロセス名を「322優品置き場」へ変更、容量を「1000個」と設定

検品プロセス(選別側):
プロセス名を「330選果その4」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「66%」と設定

条件1:
・送り先:322優品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:不良(ここでは優とする)
条件2:
・送り先:330選果その4
・分岐条件:パーツステータスが一致
・パーツステータス:正常

ー優品側ー

置き場プロセス(再掲):
プロセス名を「322優品置き場」へ変更、容量を「1000個」と設定

加工プロセス:
プロセス名を「323梱包」へ変更、処理時間を「1分」、作業人数を「10人」と設定、
対象パーツ名称を「みかん」、個数を「1個」、
出力パーツ名称を「段ボール(優)」、個数を「10個」と設定

置き場プロセス:
プロセス名を「324出荷品倉庫」へ変更、容量を「20000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「325運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

ー選果その4ー

検品プロセス(再掲):
プロセス名を「330選果その4」へ変更、処理時間を「1分」、作業人数を「10人」、不良品率を「66%」と設定

分岐プロセス:
プロセス名を「331選別」へ変更、処理時間を「0.01分」、作業人数を「20人」と設定

分岐条件:
詳細画面の「分岐条件」右側のマークをクリックして編集画面を立ち上げ、以下のようにプロセスを送り先として配置し、条件を追加

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

置き場プロセス(秀品):
プロセス名を「332秀品置き場」へ変更、容量を「1000個」と設定

置き場プロセス(特選):
プロセス名を「342特選品置き場」へ変更、容量を「1000個」と設定

条件1:
・送り先:332秀品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:不良(ここでは秀とする)
条件2:
・送り先:342特選品置き場
・分岐条件:パーツステータスが一致
・パーツステータス:正常

ー秀品側ー

置き場プロセス(再掲):
プロセス名を「332秀品置き場」へ変更、容量を「1000個」と設定

加工プロセス:
プロセス名を「333梱包」へ変更、処理時間を「1分」、作業人数を「10人」と設定、
対象パーツ名称を「みかん」、個数を「1個」、
出力パーツ名称を「段ボール(秀)」、個数を「10個」と設定

置き場プロセス:
プロセス名を「334出荷品倉庫」へ変更、容量を「20000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「335運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

ー特選品側ー

置き場プロセス(再掲):
プロセス名を「342特選品置き場」へ変更、容量を「1000個」と設定

加工プロセス:
プロセス名を「343梱包」へ変更、処理時間を「1分」、作業人数を「10人」と設定、
対象パーツ名称を「みかん」、個数を「1個」、
出力パーツ名称を「段ボール(特選)」、個数を「10個」と設定

置き場プロセス:
プロセス名を「344出荷品倉庫」へ変更、容量を「20000個」と設定

運搬(ローラーコンベア)プロセス:
プロセス名を「345運搬(ローラーコンベア)」へ変更、積荷容量を「100個」、処理時間を「1分」と設定

出荷

出荷には出荷プロセスのみを配置しますが、最初に「345運搬(ローラーコンベア)」の次に以下のように出荷プロセスを配置します。

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

他の「335運搬(ローラーコンベア)」、「325運搬(ローラーコンベア)」、「315運搬(ローラーコンベア)」、「305運搬(ローラーコンベア)」からは「既プロセスに接続」を使って出荷プロセス「400出荷」へ合流させてください。

以上を配置したらモデル名を「選果場モデル」として保存します。

ーシミュレーションー

保存が終了したら、シミュレーション時間を480分に設定してシミュレーションを行います。下図がシミュレーションの結果となります。検品にランダム変数が含まれるため、それぞれの割合が厳密には一致はしませんが、概ねこのような結果となります。もし、結果が大きくずれる場合は、設定ミスの可能性があるので、設定を見直してください。

下図はステータス別(特選、秀、優、良、加工用、破棄)の出荷割合で、それぞれ設定した(17%、32%、32%、9%、9%、1%)とほぼ同じ割合となっていることが分かります。

図:ステータス別出荷割合

ーまとめー

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

関連記事