PI Web APIを使用したPI Coresight 2016 R2 カスタムシンボルによる値書き込み

This post is Japanese version of PI Coresight 2016 R2 Put Value Custom Symbol by PI Web API . (このブログはリンク先の日本語版です)

以前にPI Coresight 2016のカスタムシンボルでPIWebAPIを使用して値を書き込む方法を紹介しました。

The specified blog post was not found.

PICoresight2016R2がリリースされ、このPI Coresight 2016向けのカスタムシンボルはR2では動作しないため、コードを修正しました。(PI Vision用に変更してあります)

このコードを参考にしていただくことでPI CoresightからPI Web APIを使用するカスタムシンボルを作成していただけると思います。

コードはGitHubからダウンロードしていただけます。

GitHub - kenji0711/PICoresight2016R2-CustomSymbol-PutValue

また別のサンプルもございます。

 

 

以下の画面では250という値を現在のタイムスタンプでcdt158のタグに書き込んでいます。属性がタグに紐づいていれば属性にも値を書くことができます。


1-1.png
 

新しい値をボックスに入力し、"Put New Value"をクリックします。新しい値はPI Web APIにより、PI Data ArchiveかAFに現在時刻のタイムスタンプとともに書き込まれます。

書き込み用のボックスは 右クリック > Format Symbolより隠すことも可能です。

 


1-2.png
コードのポイントはPI Web APIのBatch リクエストを使用している点です。

バッチリクエストについては以下をご参照ください。

PI Web API Batchリクエストの紹介

 

以下3つのファイルを%PIHOME64%\Coresight\Scripts\app\editor\symbols\extフォルダにコピーします。

添付されたイメージpen.svgは%PIHOME64%\Coresight\Imagesフォルダにコピーします。

 

sym-putvalue.js (コード内のvar piwebapiaddress = "MachineName"は適切なPI Web APIマシン名に変更してください。PI CoresightマシンはPI Web APIが含まれるので、ここではPI Coreisghtマシンが該当します。)

 

ATTACHED 1-sym-putvalue

sym-putvalue.js (コード内のvar piwebapiaddress = "MachineName"は適切なPI Web APIマシン名に変更してください。PI CoresightマシンはPI Web APIが含まれるので、ここではPI Coreisghtマシンが該当します。)

 

ATTACHED 2-sym-putvalue-config.html

 

ATTACHED 3-sym-putvalue-template.html

 

このコードを実行するためにAFのConfigurationデータベースのPI Web APIの設定を変更する必要がありました。

CoresMethods = *, CorsHeaders = *, CorsOrigins = * , CorsSupportsCredentials = True (私はAuthentication MethodsにKerberosを使用しています )

 


1-3.png
HTTPSの証明書はグローバルサインのものを使用するべきです。または自己証明書の場合、クライアントマシンにてその証明書を登録し、証明書のエラーにならないようにする必要があります。

是非PI Visionから値を書き込んでみてください。

Parents Reply Children
No Data