タスク2.1 - 平均コンテンツコレクターを構築する
タスクの概要
このタスクでは、FlexSimのインストールに付属しているモデルを使用します。モデルファイルは、FlexSim 2021 Projects/tutorials/FlexSim21.0フォルダのDocuments内にあります。このモデルは、単純な梱包出荷施設です。出荷パレットの注文が入ります。それに応じて、オペレーターが3つのステーションのそれぞれでパレットを梱包してから出荷します。
このチュートリアルタスクでは、統計コレクターの基本設定と、統計コレクターツール内の一部の機能の基本操作を体験します。チュートリアルを終了すると、テーブル内のデータを収集するカスタム統計コレクターが出来上がります。
ダッシュボードチャートを統計コレクターのデータテーブルにリンクして、データを視覚化する方法についても学習します。
ステップ1 モデルを開いて新しい名前で保存する
このステップでは、このチュートリアルのすべてのタスクの出発点になるモデルを開きます。次に、そのモデルに新しい名前を付けて別のディレクトリに保存します。
- メインツールバーで、開くボタンをクリックして、モデルオープンダイアログを開きます。
- Documentsフォルダに移動してから、FlexSim 2020 Projectsフォルダに移動します。
- ここから、tutorialsフォルダに移動し、FlexSim20.1フォルダに移動します。
- StatisticsCollectorTutorialModel.fsmという名前のモデルを開きます。
- メインメニューで、[ファイル]メニューを開き、[モデルを別名で保存...]を選択して、モデル保存ダイアログを開きます。
- Documentsフォルダー内のFlexSim 2020 Projectsフォルダーに移動します。
- ファイルをStatsCollectorTutorialModified.fsmとして保存します。
このチュートリアル内のすべてのタスクに対してこのステップを行う必要があるのは1回だけです。もう一度チュートリアルを実行したい場合は、いつでも、インストールしたチュートリアルモデルの新しいコピーを保存できます。
ステップ2 基本的な統計コレクターを作成する
このステップでは、基本的な統計コレクターを作成して設定します。リッスンするイベントと結果として収集するデータをそのコレクターに指示します。
統計コレクターを設定するには:
- 画面の左側で[ツールボックス]タブをクリックします。
- ボタンをクリックして、ピックリストオプションを開き、新しいツールを追加します。
- [統計情報]オプションを選択してから、[統計情報コレクター]オプションを選択し、新しい統計コレクターツールを作成します。これにより、新しく作成された統計コレクターのプロパティウィンドウが自動的に開きます。
- 新しく開いたプロパティウィンドウの一番上のフィールド内をクリックして、「StationAvgContent」と入力します。
- プロパティウィンドウの開いている[イベント]タブで、ボタンをクリックしてピックリストオプションを開き、リッスンする統計コレクターの新しいイベントを追加します。
- [リセット時にイベントを作成する]オプションを選択します。
- [名前]ボックスをクリックし、「On Reset」という名前を入力します。
- [行の値]ボックスの横にあるサンプラーツールをクリックします。3Dモデルに移動して、選択されたサンプラーツールを使用して、[Station 1]をクリックし、ピックリストから[Station 1]オプションを選択します。
- これで、[行の値]フィールドに「/Station1」と入力されているはずです。
- プロパティウィンドウで、[列]タブをクリックします。
- ボタンをクリックして、[列の追加]オプションを選択します。
- [名前]ボックスをクリックして、列の名前を「ステーション」に変更します。
- [行追加値]ボックスの横にある矢印をクリックして、[IDs]をポイントしてから、[行の値のID]オプションを選択します。
- [適用]ボタンをクリックします。
モデルをリセットする場合は、[ツールボックス]タブの[統計コレクター]セクションでStationAvgContentコレクターを右クリックし、[テーブルを表示]オプションを選択できます。これで、テーブルが列と行で構成されていることを確認できます。
説明
イベント
すべての統計コレクターがイベントをリッスンすることによって機能します。これが、統計コレクターがモデルを観察する方法です。イベントが発生すると、統計コレクターはそのテーブルを何らかの方法で更新します。このケースでは、モデルがリセットされたときに発生するイベントをリッスンしました。
イベントの行の値
リッスンするイベントを指定するときに、行の値も指定する必要があります。イベントが発生すると、指定された行の値が生成されます。統計コレクターは、行の値の内部リストを維持します。イベントでリスト上に存在しない行の値が生成された場合は、統計コレクターがそのテーブルに新しい行を追加し、その行の値を新しい行に接続します。このケースでは、モデルがリセットされると、ステーションイベントでStation1が行の値として生成されます。その値の行が存在しなかった場合は、統計コレクターがその値の新しい行を追加します。
列の行の追加の値
統計コレクターは、行を追加すると、各列を調査します。その列に行の追加の値が含まれていた場合は、統計コレクターがその列内の行の追加の値を新しい行に記録します。このケースでは、[ステーション]列に行の値のIDが記録されます。モデル内の行の値はStation1であったことを思い出してください。
data
エンティティ
イベントが発生すると、統計コレクターがdata
という名前のエンティティを作成します。data
エンティティは、イベントの関する情報を記録します。この情報は、列の値を更新すると参照できます。このタスクでは、発生したイベントの行の値を参照するdata.rowValue
を使用しました。
統計コレクターID
統計コレクターテーブルでオブジェクトを表示する場合に、最善の方法はIDを使用する方法です。IDは、オブジェクトごとに異なる番号です。[表示形式]を使用して、番号の代わりにオブジェクトのパスを表示できます。[行の値のID]オプションを選択すると、[表示形式]が[オブジェクト]に設定されます。
ステップ3 平均コンテンツを取得する
以下のステップを辿ると、ステーションの平均コンテンツのそれぞれのテーブル値を表示できるようになります。
この機能を追加するには:
- 統計コレクターのプロパティウィンドウの[列]タブで、ボタンをクリックして、[列の追加]オプションを選択します。
- [名前]ボックスをクリックして、列の名前を「AvgContent」に変更します。
- [更新タイミング]の横をクリックして、それを[値がアクセスされた時点]に設定します。
- [値]ボックスの横にある矢印をクリックして、ピックリストオプションを開き、[オブジェクト統計]カテゴリを選択して、[オブジェクト別統計]オプションを選択します。これにより、オプション選択ウィンドウが表示されます。
- [オブジェクト]ボックスの横にある矢印をクリックにし、オプションから[data.rowValue]を選択します。[統計]フィールドはデフォルトとして[コンテンツ]に設定されているはずですが、そうなっていない場合は、ピックリストから[コンテンツ]を選択します。
- [タイプ]フィールドで、ピックリストオプションから[平均]を選択します。
- [適用]ボタンをクリックします。
モデルをリセットして実行します。この時点で統計コレクターのテーブルを表示すると、モデルが起動したときに、2つ目の列のセルにStation 1の平均コンテンツが入力されるのを確認できるはずです。
モデルでは、ステーションがすでに1つのグループにまとめられています。[グループ]カテゴリの[ツールボックス]タブを見ると、「ステーション」という名前のグループが表示されます。
統計コレクターに他のステーションを追加するには、次の手順を実行します。
- 統計コレクターのプロパティウィンドウで、[イベント]タブに移動します。On Resetイベントが選択されていることを確認します。
- [行の値]の横にある矢印をクリックして、ピックリストオプションを開きます。[グループのすべてのメンバー]オプションを選択して、[ステーション]グループ選択を選択します。操作が完了すると、次のような画面になります。
これで、モデルをリセットして再実行すると、テーブルを表示して、他のステーションも一緒に確認できます。
説明
列の更新タイミング
このステップでは、列を追加して、その更新タイミングを[アクセスされたときに更新]に設定します。この更新タイミングは、オブジェクトの平均コンテンツのように常に変化する値に適しています。この種の列が含まれているテーブルにアクセスまたは表示すると、統計コレクターが、それらの値が最新であることを確認します。統計コレクターは、他のすべての列がすでに最新になっていることを前提とします。
イベント内の複数の行の値
このステップでは、ステーショングループ内のすべてのオブジェクトの配列を生成するようにOn Resetイベントを変更します。イベントで値の配列が生成されると、統計コレクターが配列内の各値の行が存在することを確認します。
ステップ4 チャートを追加する
この最後のタスクでは、StationAvgContentコレクターを、収集されたデータを表示するダッシュボード内の単純な棒グラフに接続します。
そのためには、次の手順を実行します。
- 画面の最上部にある[ダッシュボード]ボタンをクリックして、[ブランクのダッシュボードを追加]オプションを選択します。
- 右側の[プロパティ]で、[ダッシュボード名]ボックスをクリックします。ダッシュボードの名前を「AverageStationContent」に変更します。
- ダッシュボードビューがアクティブになっている状態で、左側のライブラリに移動します。[基本のチャートタイプ]カテゴリで[棒グラフ]オプションを探して、棒グラフをダッシュボードウィンドウにドラッグします。これにより、新しい空白のチャートが作成され、そのプロパティウィンドウが開きます。
- [データソース]フィールドをクリックして、オプションから[StationAvgContent]コレクターを選択します。
- 選択すると、[バータイトル]フィールドと[バーラベル]フィールドがアクティブになっていることが確認できます。[バータイトル]フィールドをクリックして、[ステーション]を選択します。
- [バー列]エリアで、[AvgContent]ボックスがオンになっており、[ステーション]がオフになっていることを確認します。
- [設定]タブに移動して、[割合を表示]をオフにします(代わりに、チャートには実際のコンテンツ値を表示させることが目的です)。
ここで、モデルをリセットして、各ステーション内のコンテンツが生成されるまで実行します。ステーションが棒グラフに平均コンテンツを記録する様子を確認できます。
次のタスクでは、統計コレクターを使用して、各ステーションの出力を検索します。