初めてのマシン・トリガーの作り方
  • 31 Oct 2023
  • 1 読む分
  • 寄稿者

初めてのマシン・トリガーの作り方


Article Summary

最初のマシントリガーを作成する方法

マシントリガーを使用して、マシンモニタリング機能の各マシンの履歴を更新する。

この記事では、以下を学びます:

  • マシントリガーを使ってマシンの状態を変更する方法
  • マシントリガーで使用できるアクションの全リスト

属性とマシン・タイプを設定したら、OPC UAフィールドの値に基づいてマシンの履歴を更新する準備ができました。

言い換えれば、全ての機械に対してこのような履歴を作成したいと思うでしょう:

このガイドでは、上記の履歴を作成する方法を説明します。マシンの履歴では、テーブルの各行はマシンの状態の変化によって定義されます。左端のFieldに異なる状態が表示されます。

マシントリガへのデータの流れは以下の通りです:

  1. OPC UA フィールドは出力を共有します。
  2. その出力は、個々のマシンのページの属性にマッピングされます。
  3. その属性はマシントリガのロジックで使用されます。

マシンの状態の更新

個々のマシン・タイプのページで、マシン(または任意のフィールド)の状態を更新する複数のマシン・トリガを定義できます。

以下は、1つのタイプのマシン状態の例である:

マシントリガーを作成するには、Machine Typeページの右上にあるEditボタンをクリックする。

Machine Triggers"セクションの右上にある "+"記号をクリックする。

次に、状態を更新するタイミングを定義するために、Whenステートメントを追加する必要がある。Whenステートメントには2つのタイプがある:

  1. 特定のOPC UAフィールドから最後に出力された値に基づきます。
  2. 特定のOPC UAフィールドから最後に出力された値に基づく。

以下は最初の条件の例です:

When

  • 「機械 "が出力:「特定の属性 "スピンドル"

If* "機械属性" "スピンドル" "現在値" ">" "静的値" "数値" "100" "最後の出力から"

Then* "活動履歴の設定 "フィールド:"状態" 値:「Enum" "Running"

このタイプを持つすべてのマシンについて、このトリガーは、"spindle "属性に関連付けられたOPC UAフィールドの最後の値を調べます。その値が100より大きい場合、マシンは "Running "状態になります(または、その状態を継続します)。

タイミングを使用した例を示します:

タイミングを使用する例です。

  • "タイマーが作動する" "30秒ごと"

もし

  • 「機械属性" "主軸" "現在値" ">" "静止値" "数値" "100" "現在" の場合

次に

  • 「活動履歴の設定」フィールド"状態 "の値:「Enum "実行中

もしスピンドルの値が100より大きければ、機械の状態は "Running "に変わる。

**このトリガーは1秒ごとに評価される。**値が 100 より大きくなってから 1 秒以内に、機械の状態は "Running "に変わり、30 秒連続で値が 100 より大きくならない限り(30 連続値)"Running "のままである。

フィールドの値を変更する(欠陥数、部品数など)

状態を変更すると、各マシンのアクティビティ履歴に新しい行が自動的に追加されます。しかし、マシンの個々のフィールドを更新し、特定のステータスにグループ化することもできます。

例えば、マシンのステータスを "Running"(稼働中)、"Idle"(アイドル)、"Stopped"(停止中)の間で更新するマシントリガーがあるかもしれない。

次に、OPC UAフィールドの値が変更されたときに、"Part Count "を更新する別のトリガーがあるかもしれません。

App EditorのTrigger Editorで変数を更新するように、"Part Count "フィールドを更新することができます。

以下は、更新できる異なるフィールドです:

  • 状態
  • ダウンタイムの理由
  • プログラム
  • 理想ランレート
  • 欠陥数
  • 部品数

これらのフィールドは自動的に更新される。

マシントリガーには、これらのフィールドを更新できる2つのアクションがある:

  • **マシン状態を作成する:**State フィールドの値を設定する。
  • **データ操作:**以下のオプションを与える:クリア、デクリメント、インクリメント、またはフィールドへの値の格納。

次の例では、"part_counter "はブール属性で、機械が部品を完成させ、OPC UAフィールドを更新したときに更新されます。

もし

  • "機械属性" "スピンドル" "現在値" ">" "静的値" "数値" "100" "現在"

次に

  • "データ操作" "インクリメント" フィールド"部品数 "の値「静的値" "1"

これにより、マシンの現在のステータスの "Part Count "フィールドが更新され、アクティビティ履歴に即座に反映されます。

さらに読む


お探しのものは見つかりましたか?

community.tulip.coで質問を投稿したり、他の人が同じような質問に直面していないか確認することもできます!


この記事は役に立ちましたか?