PI Connector for UFLのバージョン1.3にUnicodeのサポートが改善された

PI Connector for UFLの1.3バージョンがリリースされました。

PI Connector for UFL 1.3: Unicode(UTF-8) support, statuses, REST headers

リリースについての質問があれば、下記のコメントにぜひ聞かせてください。

--------

 

次のPI Connector for UFLのバージョンにUnicodeの対応が改善されています。

(処理したいファイルにある日本語の内容を利用できるようになりました。)

 

現在、社内のベータ版を利用し、この機能を紹介したいと思います。

PI Connector for UFLのUnicodeのサポートが改善されたとは言っても、PI Data Archiveのサポートが改善されていないので、

残念ながら、十分利用はできない機能になっています。

 

以前は日本語があるデータファイルを事前処理してから、UFLで処理する必要がありましたが、

1.3のバージョンではこの事前処理が必要なくなりました。

 

 

1.3バージョンをテストをするために、個人の体重計のデータをPIに入れてみました。

体重計からのデータのフォーマットは下記の通りにエクスポートされます。

 

時間:05:02, 木曜日, 05/17/2018
体重 92.8kg 高い
体水分率 50.3% 不足
体脂肪率 29.5% 体重オーバー
骨量 3.1kg 健康
BMI 28.6 太る
内臓脂肪レベル 13 警戒
BMR 1808Kcal 低い
筋肉含有量 62.1kg 優秀

 

(かなり悪い数字しか出ていないのですが、それは無視してください。)

 

データのエクスポートはANSIのフォーマットです。


pastedImage_2.png.png

 

そのために、作成してみたINIファイルのフォーマットもANSIにし、

PI Connector for UFLのデータソースの設定に「Extended ASCII」を設定しました。(この設定は新しい設定になります)


pastedImage_3.png.png

 

一つのデータの行をみると、三つのデータがあります。 

1.体重

2.92.8kg

3.高い

 

「体重」をタグ名としてを利用したいのですが、タグ名はASCII以外利用できないので、

INIファイルでタグ名を変更します。

 

TagName = ["(*) *"]
if TagName == "体重" then
 TagName = "Weight"
ENDIF

 

こうすると、PI Connector for UFLがUFL.Weightというタグにデータを書き込みます。

 

「高い」のデータも同じようにPI Data Archiveに書き込むのは推奨できないので、

その代わりに、数字に変更します。

State = ["* * (*)"]
' 体重の状態
If State == "高い" then
 State_Value = 2
endif
If State == "健康" then
 State_Value = 1
endif
If State == "低い" then
 State_Value = 0
endif

元の日本語がクライアントに表示されるために、列挙セットを作成しました。


pastedImage_7.png.png

 

AFでの結果


pastedImage_8.png.png