コンベア – マテリアルハンドリングライブラリの学習(パート1)

コンベア – マテリアルハンドリングライブラリの学習

ウェビナー、ハウツービデオ、インタラクティブモデルなどを含むマテリアルハンドリングライブラリの包括的な概要については、 AnyLogic MHL email packを入手してください。


マテリアルハンドリングライブラリのリリースに合わせて、一連のトレーニングモデルを用意しました。コンベアシステムのサンプルを使用して、ライブラリの主な機能を示します。これらのシステムは、生産施設や倉庫によく見られます。ワークステーション間で部品を輸送し、完成品を分類して保管場所に配送します。

これからご紹介する一連のブログでは、新しいライブラリ用いたトレーニングモデル使用してマテリアルハンドリングモデルについて詳しく説明していきます。これらのモデルを自分で作成することで、ライブラリをより速く習得することができます。モデル作成に当たり、無料または商用バージョンのAnyLogic 8.3以上のバージョンを使用してください。

このブログは、コンベアのモデリングに関するものです。ConveyConveyorEnter、およびConveyorExitブロックは、他の特別なスペースマークアップ要素とともに、マテリアルハンドリングライブラリに組み込まれており、コンベアシステムのモデリングを簡素化します。サンプルモデルのConveyを使用して、それらを詳細に見ていきます。このConveyモデルは、AnyLogicのメイン画面の「How-To Models>>Material Handling Library」の「Example Models」セクションにあります。また、下記のアニメーションウィンドウでも動作を見ることができます。


Conveyモデル


運搬 (Convey)モデルのプロセス図

運搬 (Convey)モデルのプロセス図

モデルのメインブロックであるConveyは、コンベアネットワークに沿ってエージェントを移動する役割を果たします。ネットワークを作成するには、Conveyorレイアウトエレメントを使用して、任意の外観と線幅を描画します。

マークアッププロパティを次のように設定します:

  • シミュレートされたコンベアのタイプ:ベルト、ローラー、チルトトレイ(固定セル)コンベア;
  • 速度;
  • 加速および減速パラメータ;
  • 輸送されるエージェント間の距離

マークアップエレメントのプロパティで、すべてのデフォルト値のままにしておきます。

Conveyor要素プロパティ

Conveyor要素プロパティ

マルチコンベアネットワークを作成するには、2つのコンベアラインを接続するだけです。あるラインから別のラインにオブジェクトを移動するとジャンクションに表示されます。ジャンクション角度が直角の場合、Transfer 要素が作成されます。そうでない場合、Turntableが表示されます。これらは、パレットからドラッグしてコンベアネットワークに追加することもできます。これらのマークアップエレメントは、実際のコンベア装置を表しています。

コンベアネットワークでのターンテーブルと転送

コンベアネットワークでのターンテーブルと転送

Turntable要素のプロパティ

Turntable要素のプロパティ – オブジェクトの移動速度と回転速度を設定できます

パッケージングステーションでの処理(以下を参照)は、エージェントの移動を遅らせ、その状態を変更します。これは、レイアウトエレメントStationによってモデル化されます。パレットからドラッグして、コンベアネットワークに配置します。通常品向けの標準ステーションでのボックスの梱包時間は、アイテムプロパティのDelayフィールドで設定されます(このモデルでは1秒)。割れ物注意品(Fragile)梱包ステーションの場合、梱包時間は10秒に設定されています。

コンベアネットワーク上の処理ステーションの場所

コンベアネットワーク上の処理ステーションの場所

処理ステーションのプロパティ(割れ物注意品の場合)

処理ステーションのプロパティ(割れ物注意品の場合)

注文品タイプ(標準品、又は割れ物注意品)は、ボックスがコンベアに沿って移動する前に変数を使用して設定されます。ボックスを目的の梱包ステーションに移動するには、photoEyeマークアップ要素(Position on Conveyor)を使用します。これは、オブジェクトを認識して正しいコンベアラインに送るコンベア上のポイントです。この場合、それはターテーブル前のコンベアに置かれ、注文品のタイプを測定します。

コンベアネットワーク上のphotoEyeの位置

コンベアネットワーク上のphotoEyeの位置

Position on Conveyor プロパティ

Position on Conveyor プロパティ

コンベアネットワークの準備が整いました。処理するパッケージをいくつか与えましょう。

Sourceブロックは、毎分20の到着率でコンベアに沿って移動するボックスを生成します。AdvancedセクションのForced pushingオプションは非アクティブであることに注意してください。これは、Conveyブロックにはキューが組み込まれていないため、オブジェクトを受信するとすぐに移動を開始するためです。コンベアラインの先頭がすでに占有されている場合、新しいエージェントは入りません。Forced pushingオプションを使用すると、待機中のエージェントをSourceに保存したり(退出できないエージェントの場合は、このブロックで待機するオプションを設定)、削除(オプションを are destroyedに設定)したりできます。バッファ模倣キュー(Queue)を作成して、SourceブロックとConveyブロックの間に配置することもできます。

Sourceプロパティ

Sourceプロパティ

Sourceの後の次のブロックは、fromConveyorStartブロック(ブロックタイプConvey)です。これにより、ボックスがコンベアに沿ってphotoEyeに移動し、そこで注文品のタイプ(通常品、又は割れ物注意品)でそのパスが決定されます。Convey fromプロパティは、エージェントがどこから移動を開始するかを決定します。この場合、ボックスはコンベアの先頭から始まるため、デフォルト値のままにします。

fromConveyorStart(Convey)エレメントのプロパティ

fromConveyorStart(Convey)エレメントのプロパティ

Source Conveyorプロパティで、エージェントを表示する場所を選択します。プロパティ、Source Offset fromおよび Source Offsetは、コンベアの始点または終点からの距離を設定することにより、エージェントがコンベアのどこに表示されるかを決定します。この場合、エージェントはラインの先頭から移動を開始するため、プロパティ値は変更しないでください。Convey toプロパティは、エージェントがコンベアネットワーク内のどこに配送されるかを決定します。この場合、注文品タイプが決定されたポイントであるphotoEye (Point on Conveyor)の場所に配送されます。これを行うには、Convey toプロパティとして Position on Conveyorを指定し、Target PositionプロパティとしてpositionOnConveyorを選択します。

続いて、次のブロックはselectWay (SelectOutput)で、ボックスの流れを分割します。Select True outputIf condition is trueオプションが選択されている場合は、Conditionフィールドにコードを入力できます。この場合、agent.isFragile コードは、ボックス内の注文品が通常品か割れ物注意品かどうかを確認します。結果に応じて、ボックスは適切なConveyブロックに送られます。

selectWay(SelectOutput)のプロパティ

selectWay(SelectOutput)のプロパティ

次に、上部のtoStation (Convey) ブロックを見てみましょう。割れ物注意品を梱包するために、コンベアネットワークに沿ってボックスをステーションに移動します。Conveyブロックを使用すると、エージェントパスの開始点と終了点を選択できます。ボックスはすでにコンベア上に配置されているため、Convey fromプロパティの開始点として Current positionを選択します。配送先を設定するには、Convey toプロパティでProcessing stationを選択します。Target stationフィールドで、割れ物注意品のためのstationを選択します。

割れ物注意品のためのコンベア

割れ物注意品のためのコンベア

梱包後、ボックスはtoConveyorEnd (Convey)ブロックによってコンベアネットワークの終点に配送されます。これを行うには、開始点、Current positionオプション、目的地を選択します:Convey toプロパティで Conveyorの値を選択し、Target conveyorプロパティでその名前を指定します。

ボックスに割れ物注意品がない場合は、toConveyorEnd (Convey) ブロックに移動し、通常の梱包ステーションを通る最短ルートに沿って自動的に移動します。ステーション処理はプロセス図に表示されないことに注意してください。ここでの要点は、Conveyユニットが輸送とステーションでの処理エージェントを担当しているということです。

通常品用コンベア

通常品用コンベア

メインモデルビューでボタンput carton from order pickingzoneを使用して、手動でボックスをコンベアに配置できます。ボタンを押すと、inject関数が呼び出され、source1というブロックに新しいエージェントが追加されます。同時に、fromPosition (Convey) ブロックは、このエージェントをコンベアネットワークに配置します-コンベヤーの開始点からではなく、placingPoint (Position on Conveyor)で指定されたポイントからです。これを行うには、Convey fromドロップダウンメニューで Position on Conveyorオプションを選択し、Source positionplacingPoint(コンベア上の対応するポイントの名前)に設定します。

button (Button)のプロパティ

button (Button)のプロパティ

ConveyorExitモデル


デフォルトでは、Conveyブロックの終点に到達すると、エージェントはコンベアネットワークに残り、コンベア上のスペースを物理的に占有します。このロジックを変更するには、Conveyブロックで Leave conveyor on exitプロパティを設定します。これにより、エージェントは終点に到達するとすぐにコンベアネットワークを離れます。これは、オブジェクトがコンベアの終点から落下またはすぐに取り除かれたことを意味します。

しかし、コンベアを離れるプロセスが複雑である場合、或いは、さらなる処理に関連している場合はどうすればよいですか?オペレーターまたはロボットが必要で、別の優先度の高いタスクで忙しい場合はどうなりますか?同様の状況がサンプルモデル内にあるConveyorExitトレーニングモデルで説明されています:フォークリフトを使用して、コンベアの終点から重い荷物を取り除きます。エージェント(この場合はボックス)がコンベアの終点あるとき、エージェントはフォークリフトを待ち、他のエージェントが終点に到達するのを防ぎます。プロセスのフローチャートをさらに詳しく見てみましょう。

ConveyorExitプロセス図

ConveyorExitプロセス図

sourceHeavyLoad (Source)ブロックは、エージェントを作成し、それらをネットワーク内で移動するConveyブロックに渡します。単一のコンベアを最初および最終コンベアとして設定し、Conveyブロックの残りのパラメータを変更せずに、これを構成します。

Conveyプロパティ

Conveyプロパティ

СonveyユニットではLeave the conveyor on exitオプションが選択されていないため、エージェントは終点に到達してもコンベア上に残ります。さらにプロセス図に沿って、エージェントはseizeForklift (Seize)ブロックに入り、このブロックはforkliftのリソースをキャプチャします。オプションSend seized resourcesを選択し、Agentの移動送としてDestination isパラメータを設定します。これにより、コンベアの待機エージェント(品物)にフォークリフトが移動します。プロパティ Attach seized resourcesに注意してください:これにより、エージェントとそれを提供するリソースを接続し、さらなるオペレーションで使用できるようになります。

フォークリフトがコンベア上のボックスに近づくと、ConveyorExitブロックに移動します。これにより、コンベアから荷物が取り除かれ、次のボックス用のスペースが解放されます。取り除かれた荷物は、toStorage (Move to)ブロックを使用してストレージに移動され、releaseForklift (Release) ブロックがリソースを解放します。それは、storingブロックによって指定されてしばらくの間保存され、sinkブロックを介してモデルを離れます。空のフォークリフトは、別の荷物のためにコンベアに戻る場合があります。コンベアの終点に保留中の荷物がない場合、フォークリフトは開始点に戻ります。この動作は、ReleaseブロックのWrap-upパラメータであるWrap-up (i.e. go home)によって決定されます。 if no other tasksオプションを選択すると、フォークリフトが作業中でないときに駐機場に戻ります。

releaseForklift(リリース)ブロックのプロパティ

releaseForklift(リリース)ブロックのプロパティ

ConveyorEnterモデル


ConveyorExitとは異なり、ConveyorEnterは、エージェントがコンベアネットワークに沿って輸送される前に発生する複雑なプロセスに関連付けられています。この場合、エージェントはすでにコンベア上にあり、コンベアネットワーク上の他のエージェントと相互作用します。充填アクションはコンベア上で行われ、ネットワーク上の他のコンテナの移動をブロックします。提供されたロジックに応じて、それらはその後方に積み重ねるか、それを回避します。

下記のビデオはConveyorEnterトレーニングモデルに示します:パレットがコンベアに沿って移動する前に、滑り止めシートがその上に配置されます。

palletsSource (Source) ブロックはパレットを生成し、それがpalletBuffer (Queue) ブロックに転送されます。このブロックは、コンベアでのパレットのスタックをシミュレートします。liftUp (Delay)ブロックでは、パレットがコンベアの開始点に移動します。このブロックが必要なのは、conveyorEnterブロックがコンベアネットワークへのエージェントのロジカルな配置のみを担当し、このモデルでは、コンベアへのエージェントの転送をアニメーション化する必要があるためです。

ConveyorEnterモデル図

ConveyorEnterモデル図

同様に、sheetsSource(Source)、 sheetBuffer (Queue)、およびputSheetOnPallet (Delay)ブロックは、滑り止めシートを作成し、それらをパレットに配置します。

conveyorEnterブロックは、パレットをコンベアに配置しますが、どこにも移動しません。利便性と明確さのために、エージェントの場所はPosition on the conveyorの助けを借りてマークされています。パレットをこのポイントに正確に配置するには、conveyorEnterブロックで、パラメータとして定義されたエントリポイントをコンベア上の位置として設定し、コンベア上の対応するポイントを下で選択します。パレットをこのポイントに正確に配置するには、conveyorEnterブロックで、 Entry point defined as パラメータをPosition on conveyorに設定し、コンベア上の対応するポイントで選択します。必要に応じて、エージェントがコンベアネットワークに配置されたときのエージェントの方向を指定できます(オプションChange orientation)。

ConveyorEnterモデルステータスチャート

ConveyorEnterモデルステータスチャート

addSheet (Combine)ブロックに移動しても、パレットはまだコンベアの先頭、 positionOnConveyorポイントにあります。addSheet ブロックでは、パレットと滑り止めシートが接続されています。注:単一のコンベアライン内で輸送されるエージェントのタイプは変更できません。したがって、addSheetでパレットとシートを組み合わせる場合、受信するエージェントはすでにコンベア(agent1)上にあるため、The resulting agent isパラメータはagent1に設定されます。これは、conveyEnterブロックとсonveyブロックの両方が1つのタイプのエージェント(パレット)で機能し、エラーが発生しないことを意味します。

addSheetブロックを終了すると、holdブロックは次のパレットラインへの転送を開始できます。convey ブロックは、滑り止めシート付きのパレットをコンベアの終点まで輸送します。conveyorEnterはエージェントをコンベアに配置するため、Current position値をconveyブロックのConvey from値として使用できます。コンベアの端が目的地なので、Convey toフィールドでConveyorを選択します。その下のフィールドに、パレットを輸送するコンベアの名前を指定します。



これで最初のパートは終わりです。これらのモデルについて質問がある場合は、以下のコメントセクションにご記入ください。

第2パートでは、新しいライブラリのトランスポーターを紹介します。トランスポーターの動きを設定し、衝突を回避し、モデル内の他のオブジェクトとの相互作用をモデル化する方法です。ぜひご覧ください。

ブログをお見逃しなく!LinkedInFacebookTwitter、およびニュースレターでフォローしてください。

⭐ 新しいコンベアエレメントを使用してモデルを既に作成している場合は、それをAnyLogic Cloudにアップロードして公開してください。

関連記事