イベントフレームの作成について

お世話になっております。

イベントフレームのStartTimeとEndTimeの仕組みについて質問です。

 

PI Pointに以下のように値を書き込みます。

時刻、値

2020/1/1 1:00:00、A

2020/1/1 3:00:00、B

 

PI System Explorer上で属性のトレンドを見ると、

値が2020/1/1 1:00~2:59まで補間されてAで表示されていますので、

一つ目のイベントは

StartTime:2020/1/1 1:00、EndTime:2020/1/1 2:59

となることを想定しておりましたが、

実際は一つ目のイベントが

StartTime:2020/1/1 1:00、EndTime:2020/1/1 1:00

のようになってしまいます。

想定のようにイベントを作成するには、StartTrigger、EndTriggerを設定すべきでしょうか?

 

現在のイベントフレームのStartTriggerロジックの設定としては、

PrevVal(‘PI Pointを設定した属性’)<>’ PI Pointを設定した属性’

としています。

 

以上よろしくお願いいたします。

Parents
  • 早川様、

     

    早速ご回答ありがとうございます。

     

    ■ 条件式について

    正しくは以下の条件式との認識でよろしいでしょうか。

    PrevVal(‘PI Pointを設定した属性’, '*')<>’ PI Point

    ⇒ 

    PrevVal(‘PI Pointを設定した属性’, '*')<>’ PI Pointを設定した属性’ 

    です。AFの属性名がtestという名前の場合、(testにはデータ参照でpipointを設定しています)

    Preval('test','*')<>'test'

    です。

     

    ■ イベントの時刻について

    StartTime:2020/1/1 1:00、EndTime:2020/1/1 3:00

     

          ⇒

    上記のようになってくれれば良いのですが、EndTimeがPI Pointに書き込んだ前の時刻

    StartTime:2020/1/1 1:00、EndTime:2020/1/1 1:00

    となってしまいます。

    また、間に以下のように書き込んだ場合も、一つ目のイベントのEndTimeは2020/1/1 1:30:00

    となってしまいます。

    時刻、値

    2020/1/1 1:00:00、A

    2020/1/1 1:30:00、A

    2020/1/1 3:00:00、B

     

    以上初歩的な質問で恐縮ですがよろしくお願いいたします。

  • ご連絡ありがとうございます。

    上記内容、把握させていただきました。

     

    今回、作成しようとしているEvent Frameは単純なスイッチ等からEvent Frameを作成するパターンとなりますでしょうか。それとも複数ステータスがあり、そのステータス毎にEvent Frameを作成する形になりますでしょうか。

     

    ON/OFFのみの2ステートのデータからEvent Frameを作成する場合は条件式を

    '属性' = "ON"

    のような単純な比較を使用していただくのがお勧めです。

    これはPI Systemではデータの保管タイミングが圧縮によってまばらとなるため、PrevValを使用したEvent Frame作成は期待した結果とならない場合があるためです。

     

    もし複数ステータスからEvent Frameを作成するのであれば、以下の条件式を使用し、固定時間軸で値を比較するのがお勧めです。

    TagVal( '属性', '*-1s' ) <> '属性'

    上記の内容は1秒前の値と比較しています。

    この条件式を設定する場合は対象のPI PointのStep属性が「On」である事が条件となります。

Reply
  • ご連絡ありがとうございます。

    上記内容、把握させていただきました。

     

    今回、作成しようとしているEvent Frameは単純なスイッチ等からEvent Frameを作成するパターンとなりますでしょうか。それとも複数ステータスがあり、そのステータス毎にEvent Frameを作成する形になりますでしょうか。

     

    ON/OFFのみの2ステートのデータからEvent Frameを作成する場合は条件式を

    '属性' = "ON"

    のような単純な比較を使用していただくのがお勧めです。

    これはPI Systemではデータの保管タイミングが圧縮によってまばらとなるため、PrevValを使用したEvent Frame作成は期待した結果とならない場合があるためです。

     

    もし複数ステータスからEvent Frameを作成するのであれば、以下の条件式を使用し、固定時間軸で値を比較するのがお勧めです。

    TagVal( '属性', '*-1s' ) <> '属性'

    上記の内容は1秒前の値と比較しています。

    この条件式を設定する場合は対象のPI PointのStep属性が「On」である事が条件となります。

Children
No Data