操作方法<SCADA/編集>

<SCADA>

・SCADA処理フロー

本アドインで扱うTagデータベースの編集フローを表示します。

(1)TagデータベースからCSVファイルを出力

Tagデータベースから出力したCSVファイルの文字コードがUnicode等の場合は、Excelが扱えるシフトJISに変換する必要があります。(FCChecker等を使用して変換)

(2)CSVファイルをExcelシートに読み込み(分割)

(3)Tagリストを編集(文字列の連結/解除、置換等を使用)

(4)Tagリスト比較にて変更内容を確認

(5)ExcelシートからCSVファイルを生成(マージ)

(6)CSVファイルをデータベースにロード

ロードの際にエラーが発生した場合は、SMC(System Management Console)にてエラー内容を確認します。Tagデータベースが元々バグを持っていて、それらがロードの際のチェックで引っかかる場合があります。アナログTagの初期値のレンジ外設定、特殊文字の使用等です。その場合は、Excelシートにて修正した後に再度マージしてロードします。

Galaxyで対規模なTagを扱う場合は、「メモリエラー」が出るときがあります。その場合は、Excel/64ビット環境でのご使用をお願い致します。


 V2.5にて「Tagプロパティ」を追加しました。

InTouch/GalaxyのTagリストから複数の任意のプロパティ値をエクスポート、

また編集したリストのプロパティ値をTagリストにインポートします。

特にGalaxyの場合はプロパティの種類が3桁になりますので、この機能は大変有効です。


V2.9にて「InTouch→IWS」を追加しました。

InTouchのTagリストから、Indusoft Web StudioのTagリスト、ドライバーシートを

生成します。SCADAアプリのInTouch→IWSポーテイングやInTouchアプリをIndusoft Web Studioのデータベーススパイ機能を使用してテストする際に有効です。


V3.83にて、「GalaxyDump」の「CSVファイル読み込み」の際に「Galaxyのアトリビュート一覧の生成」をサポートしました。


V3.88にて「Tagプロパティ」でGalaxyのTagリストのアラームコメント生成をサポートしました。

<デジタル値のアラーム>

・アトリビュート.DescAttrName = ShortDesc & アトリビュート.Description

<アナログ値のアラーム>

・アトリビュート.HiHi.DescAttrName = ShortDesc & アトリビュート.Description & "HiHi"

・アトリビュート.Hi.DescAttrName = ShortDesc & アトリビュート.Description & "Hi"

・アトリビュート.Lo.DescAttrName = ShortDesc & アトリビュート.Description & "Lo"

・アトリビュート.LoLo.DescAttrName = ShortDesc & アトリビュート.Description & "LoLo"

Galaxyのプロパティリスト(Excelファイル)をオープンした状態でオペレーションします。

(1) 「Tagプロパティ」にて「アラームコメント指定(Galaxy)」をONにしてエクスポートします。

(2) 生成されたプロパティリストの列「ShortDesc」、各「アトリビュート.Description」に

適正な文字列を入力します

例えば、「ShortDesc」には設備名称、各「アトリビュート.Description」にはアトリビュートの説明等

(3) <デジタル値のアラーム>を実行します

(4) <アナログ値のアラーム>を実行します


・InTouch DBDump 分割/マージ(**)

InTouchのTagデータベースから出力したCSVファイルをExcelへ読込(Tagのタイプ毎にシートを分割)ます。また、ExcelファイルからDBLoad用CSVファイルをマージ出力します。


(1)分割

当該機能のボタンをクリックします。「タグ変数の種類毎にシート分割」を選択して、対象CSVファイルを読み込んだ後に分割を実行します。

CSVファイルは、InTouchからのDBDump実行時に「タグタイプ毎にグループ出力」を必ずONにします。

V3.86にて、「CSVファイル読み込み」の際に「Tagデータベースのプロパティ一覧の生成」をサポートしました。ポップアップで「はい」とすると、ブランクシートに一覧を記載します。

(2)マージ

マージ対象のExcelファイルをオープン状態にして、当該機能のボタンをクリックします。「複数シートをマージ」を選択して実行します。出力オプションのmodeは通常「replace」にします。

InTouchのバージョンが2012よりも古い場合は、下記のポップアップが表示されます。

「はい」をクリックするとそのままのフォーマットでマージ処理されます。

全シートについて確認されます。


・Galaxy Dump 分割/マージ(**)

System PlatformのGalaxy TagデータベースからGalaxy Dump出力したCSVファイルをExcelへ読込(Tagのテンプレート毎にシートを分割)ます。また、ExcelファイルからGalaxy Load用CSVファイルをマージ出力します。


(1)分割/(2)マージ

InTouchの場合とほぼ同じ操作になりますので詳細は割愛致します。Galaxyの場合は、Excelシートへの取り込みの単位が、タグ変数の種類毎ではなくTemplate毎になります。

分割処理において、CSVファイル読み込みの後に、生成するファイルの目次に記載するプロパティ(Tagのデジタル/アナログの区別、アナログの単位)の指定を行います。(青枠表示)

V3.83にて、「CSVファイル読み込み」の際に「Galaxyのアトリビュート一覧の生成」をサポートしました。ポップアップで「はい」とすると、ブランクシートに一覧を記載します。


・Tagリスト比較(*)

上記のExcelファイルについて編集前後のファイルの詳細比較結果をレポートします。Tagの追加/削除/変更を分類レポートし、変更はTagのプロパティの変更前後の値を表示します。Tagはソートされてから比較されますので出現順はランダムでも問題ありません。

これによりTagデータベースの履歴管理が可能になります。他のSCADA(InduSoft等)のTagリストやドライバーシート(PLCのIOリスト)等にも利用可能です。

シートのフォーマットが、左側にTag名、右側にプロパティであれば適用可能です。

Excel2013以降は、本機能の実行完了後、レポートを表示するウィンドウがフリーズ状態になる場合があります。この場合は、他のウィンドウに一旦移ってから戻って下さい。


(1)InTouchのTagリスト比較

比較対象のExcelファイルをオープンにして当該機能のボタンをクリックします。Tag名の開始セルとして「InTouch(A2固定)」を選択します。目次とmodeは比較対象から外します。

比較結果のファイルが生成されます。「比較結果」シートには、変更前のファイルと比較してシート毎に、add/delete/updateのTag数が表示されます。

変化のあったシートは、A列に変化の内容が表示されます。updateの場合は、変化のあったプロパティが強調表示されます。強調表示色は、「カスタマイズ」機能で好みの色を指定可能です。

(2)InduSoftのTagリスト比較

比較対象のExcelファイルをオープンにして当該機能のボタンをクリックします。Tag名の開始セルとして「任意」を選択します。

Tag名の開始セルを指定します。この例では、「$A$2」になります。

複数のシートを比較する場合は、この開始セルが同一であることが前提になります。


・Tagプロパティのインポート/エクスポート(**)

InTouch/GalaxyのTagリストから複数の任意のプロパティ値をエクスポート、

また編集したリストのプロパティ値をTagリストにインポートします。

特にGalaxyの場合はプロパティの種類が3桁になりますので、この機能は大変有効です。

エクスポート機能を使用してTag、コメント、PLCアドレスの情報のみを全Tagについて抽出して一覧にする等の用途にも有効です。


(1)Tagプロパティのエクスポート

対象のTagリストファイルをオープンします。エクスポートするプロパティをセルの色塗りによって指定します。

V3.8にて、セル範囲によるプロパティの指定が可能になりました。

セル範囲によるプロパティの指定の場合は、あらかじめ対象プロパティのリストを適当なシート上に作成しておくか、Tagリスト上のプロパティのラベルのセル範囲(連続領域)を直接指定します。

当該機能のボタンをクリックします。

プロパティをセル範囲で指定の場合は、ボタンをクリックして連続領域で指定します。

指定のない場合は、Tagリストの色塗りしたプロパティをサーチしに行きます。

実行モードでエクスポートを選択して、対象シート、出力ファイル名を指定して実行します。出力ファイル(プロパティリストファイル)は、Tagリストファイルと同じフォルダに作成されます。

A列にシート名、B列にTag名、C列以降にエクスポートされたプロパティ値が記載されます。

該当プロパティが存在しない箇所はグレーになります。

(2)Tagプロパティの編集

本シートのプロパティ値を編集します。Sheet、TagNameは変更できません。間違って変更した場合は、インポートのときに対象Tagリスト側に該当データなしとなってエラーになります。

下記では、黄色塗りの箇所を変更しました。

プロパティ値を変更するTagのみの行にして、他の行を削除しておくとインポート処理が速くなります。

あるいは、インポート時のオプション「色塗りのプロパティのみインポート(グレー以外の同一色)」を使用する前提で変更するプロパティ値のセルを色塗りするとインポート処理が速くなります。

(3)Tagプロパティのインポート

編集したプロパティを対象のTagリストファイルにインポートします。

プロパティリストファイルをオープン状態にして、インポート先のTagリストファイルをオープンします。このときに、Tagリストファイルが上書きされますので、別名のコピーを作成して使用下さい。

当該機能のボタンをクリックします。

実行モードでインポートを選択して、対象シート、入力プロパティリストファイル名を指定して実行します。

インポートの際にプロパティリストファイルで指定されたプロパティを持たないTagへの当該プロパティ書き込みは行われません。

オプションが2つあります。

「ブランクのプロパティは上書きしない」をONにするとプロパティリストファイルにブランクがあっても無視されます。ブランクへの変更を有効にする場合は、OFFにします。

「色塗りのプロパティのみインポート(グレー以外の同一色)」をONにするとインポート処理が高速になります。この場合は、上記の例のように変更するプロパティ値のセルに色塗りしておきます。色はグレー以外の同一色として下さい。誤って複数の色が使用されていた場合は、最初に見つけた色が適用されて、その他の色は無視されますのでご注意下さい。


インポート対象行の左端が色塗りされます。これにより、インポート結果の検証が容易になります。(V2.7で改善)

(4)インポート結果の確認

「Tagリストの比較」にて、インポート前後のTagリストを比較します。

ここでは「Tag名の開始セル(全シート共通)」でInTouchを選択して実行します。

変更した11箇所のプロパティ値を確認します。

・InTouch→IWS(**)

InTouchのTagリストから、Indusoft Web StudioのTagリスト、ドライバーシートを

生成します。

ドライバーシートは、I/OTagが対象になります。

SCADAアプリのInTouch→IWSポーテイングやInTouchアプリをIndusoft Web Studioのデータベーススパイ機能を使用してテストする際に有効です。

対象のInTouch Excelファイルをオープン状態にして、当該機能のボタンをクリックします。

出力ファイル名を指定して「実行」をクリックします。

「InTouch Tagリストからのオリジナル値抽出シートを残す」を指定すると、InTouchのオリジナル値を後で確認することができます。

<InTouch Tagリストからのオリジナル値抽出シート>

抽出対象のプロパティを持たないタグタイプの該当セルはグレー表示になります。

出力ファイル内に、残り2つのシート(InduSoft_Tag、InduSoft_DriverSheet)が生成されています。


<InduSoft_Tag>

・名前:InTouchの「TagName」の値をそのまま記入します。

・配列:全て「0」が記入されます。

・型:InTouchの「TagType」の値を反映します。

・説明:InTouchの「Comment」の値をそのまま記入します。

・有効範囲:全て「サーバ」が記入されます。

・スタートアップ:InTouchの「InitialValue」の値をそのまま記入します。

・最小:InTouchの「MinValue」or「MinEU」の値をそのまま記入します。

・最大:InTouchの「MaxValue」or「MaxEU」の値をそのまま記入します。

・単位:InTouchの「EngUnits」の値をそのまま記入します。

・値の保持:InTouchの「RetentiveValue」の値を反映します。

・パラメータの保持:記入しません。

・デッドバンド:InTouchの「Deadband」の値をそのまま記入します。

・スムージング:記入しません。

間接Tagについては、Tag名の先頭に識別子「@」が付加されます。

<InduSoft_DriverSheet>

・タグ名:InTouchの「TagName」の値をそのまま記入します。

・位置:InTouchの「AccessName」の値を仮値としてそのまま記入します。

・I/Oアドレス:InTouchの「ItemName」の値を仮値としてそのまま記入します。

・アクション:InTouchの「ReadOnly」の値を反映します。

・スキャン:全て「常時」が記入されます。

・除算:生値に対してスケーリングがかかっている場合は、その倍率が記入されます。

・追加:生値に対してオフセットがかかっている場合は、その値が記入されます。


「位置」、「I/Oアドレス」は別途適正な値に編集して下さい。


<編集>

・文字列の連結/解除(**)

複数の文字列に任意の区切り文字を前or後に付加して連結します。また文字列を指定の区切り文字で分解します。区切り文字(改行含む)は、コンボボックスで指定してユーザが自由に追加可能です。解除は、区切り文字の候補を出現頻度順に自動で抽出します。複数文字列の一括解除も可能です。Tag、Tagコメント、スクリプト内の代入式(A=B+C)等の作成に便利です。


(1)文字列の連結

結果を出力するセルE4を選択して、当該機能のボタンをクリックします。

対象セル範囲B4~D4を入力します。このとき、出力するセルE4を含まないようにして下さい。

連結する区切り文字として、接頭文字or接尾文字を指定して実行します。

・接頭文字+文字列1+接頭文字+文字列2+接頭文字+文字列3、もしくは

・文字列1+接尾文字+文字列2+接尾文字+文字列3 のように連結されます。

区切り文字がコンボボックスに存在しない場合は任意の文字列(複数文字可)を直接入力します。文字列はコンボボックスに自動追加されて次回の呼び出しから使用できます。(「個人用テーブル」に記録)

数式が挿入されます。E4をE5~E11にコピーします。

数式を展開する場合は、E4~E11を選択した状態で、Ctrl+C、Ctrl+Eを実行します。

Ctrl+Eは、本アドインのショートカットです。数式をそのままにしておくと、他のPCにブックを持って行ったときにリンクエラーになりますので注意下さい。

(2)文字列の連結解除(単独)

結果を出力するセルF4を選択して、当該機能のボタンをクリックします。

対象セルE4を入力します。

区切り文字の候補が出現の多い順に3つまでコンボボックスに表示されますので、そこから1つ選択します。結果の表示方向(下/右)を選択して実行をクリックします。

(3)文字列の連結解除(複数)

結果を出力するセルF4を選択して、当該機能のボタンをクリックします。

対象セル範囲E4~E11を入力します。

「連結解除モードへ」をクリックします。

結果の表示方向(下/右)で「右」を選択して実行をクリックします。

(4)文字列の連結(応用)

結果を出力するセルK4を選択して、当該機能のボタンをクリックします。

対象セル範囲J4~J11を入力します。

接頭文字として「(1)」を選択、「改行を挿入」をON、「接頭文字に、「1、①、A、a」が含まれていれば、ランニングナンバーとみなす」をONにして実行します。

(5)文字列の連結解除(改行)

結果を出力するセルL5を選択して、当該機能のボタンをクリックします。

対象セルK4を入力します。

区切り文字として「改行コード」を選択して実行します。

(6)文字列の連結(単独セル)

単独セルに対しても文字列連結が可能です。

結果を出力するセルC5を選択して、当該機能のボタンをクリックします。

対象セルB4を入力します。

「連結モードへ」をクリックします。

接頭文字列もしくは接尾文字列を入力して実行します。

数式が挿入されます。C4をC5~C10にコピーします。

数式を展開する場合は、C4~C10を選択した状態で、Ctrl+C、Ctrl+Eを実行します。


・文字列の置換(**)

任意の範囲(ブック、シート、セル範囲)で文字列を複数の組み合わせで置換します。オプションは、Excelのオリジナル置換機能(完全/部分一致、大小文字等)に準拠しています。置換した結果(対象セル数)を表示します。

(注)文字列が日付の置換はできません。VBAでは困難なようですのでマニュアルでお願い致します。


対象ブックをオープンします。

文字列置換の「対応表」を作成します。

「新規ブック」をクリックし、Cntl+Lで2つのブックを縦に整列します。

Ctrl+Lは、本アドインのショートカットです。

対象ブックを参照しながら文字列置換の「対応表」を作成します。

左側に置換前の文字列、右側に置換後の文字列を記入します。置換処理は上から順番に実行されます。作成後に本機能「文字列 置換」ボタンをクリックします。

尚、文字列置換の「対応表」を置換対象ブック内のシートに作成してもOKです。この場合は、そのシートに対する置換処理は行われません。

置換対象ブックをアクティブにして当該機能のボタンをクリックします。

置換方法、オプションを設定し、「対応表のセル範囲入力」をクリックします。

下記のようにセル範囲を入力します。

文字列置換の「対応表」の右側に置換された箇所数が記入されます。


・FCChecker 文字コード変換

Tagデータベースから出力したCSVファイルの文字コードがUnicode等の場合は、Excelが扱えるシフトJISに変換する必要があります。コード変換を事前に実施しないと、Excel側で文字化けする原因になります。(文字化けすると、文字列に?などが付加されます)

使用方法の詳細は、下記のサイト等を参照下さい。


・VLOOKUPウイザード(**)

作者がお勧めのExcelの2大機能(VLOOKUP関数、ピボットテーブル)のVLOOKUP関数を簡単にすばやく使用できます。ここでは、機能「VLOOKUPコピー」との組み合わせでご紹介します。

まず関数を挿入するセルC3を選択して当該機能のボタンをクリックします。

次に参照する検索範囲を指定します。同一シート内、別シート、オープン中の別ブックのどこにあってもOKです。上記で指定した検索値から取得値までの列を含むセル範囲を指定します。Excelオリジナルで指定する列番号(4)、検索方法(FALSE)は省略されます。


・VLOOKUPコピー(**)

続いてコピーするセル範囲C3:J3を指定してVLOOKUPコピーをクリックします。

C4:J9までコピーします。Tagname15、Tagname18は参照する検索範囲内に存在しませんのでブランクになります。(エラーにはしません。)

数式を展開する場合は、C3~J9を選択した状態で、Ctrl+C、Ctrl+Eを実行します。


・オブジェクトの選択(*)

言わずと知れたExcelオリジナルの機能です。Excel2007以降はリボンのどこかに隠れてしまっていたのを使用しやすい場所に配置しました。