HOME > ソフテックだより > 第197号(2013年11月6日発行) 技術レポート「FAST/TOOLSを使用したシステム構築」

「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。

ソフテックだより(発行日順)のページへ
ソフテックだより 技術レポート(技術分野別)のページへ
ソフテックだより 現場の声(シーン別)のページへ


ソフテックだより 第197号(2013年11月6日発行)
技術レポート

「FAST/TOOLSを使用したシステム構築」

1. はじめに

ソフテックでは色々な監視制御ソフトウェアの開発を手掛けておりますので、私もまた、監視制御分野の開発に携わってきました。特に私は監視制御のための通信プロトコルとしてDNP3やModbusなどの汎用通信プロトコルの開発、パソコンリンク(横河電機PLC)やSLMP(三菱電機PLC)などのPLC用通信プロトコルの開発、また各種システムの独自プロトコルについても開発してきました。その経験から、横河電機からリリースされている「FAST/TOOLS」を使用する機会がありましたので、今回のソフテックだよりでは「FAST/TOOLS」を使用して、弊社でシステム構築を行った際に確認した機能について紹介したいと思います。

FAST/TOOLS(ファスト/ツールズ)は遠隔地に設置し各種機器と接続し制御を行うRTU(Remote Terminal Unit)からデータを収集・蓄積し、監視を行う、広域統合プラットフォームです。1978年から市場に投入され、全世界の製造現場で稼働しています。特に石油やガス関連業界の制御監視や風力発電などの再生可能エネルギー施設で多く使用されています。

FAST/TOOLSは、海外が主なターゲットでしたが、2011年に日本市場向けにオペレータ環境やエンジニアリング環境を日本語化し、日本でも使用しやすいようにアップデートされました。そのため、今後、日本でもFAST/TOOLSが稼働する現場が増えると思われます。
FAST/TOOLSは現時点ではまだ日本語化されていないドキュメントが多いため、ある程度英語の仕様書を読むスキルが必要になります。私はDNP3の開発を通じ、英語の仕様書を読むことは慣れていましたので、特に気にせず調査を行うことができました。

2. FAST/TOOLSの特長

FAST/TOOLSは石油やガスの採掘現場のような広範囲に分散したシステム制御でよく使用されていますが、スタンドアローンのような1つのネットワークで完結する小規模向けのシステム制御にも使用することができます。
FAST/TOOLSは小規模なシステムから大規模なシステムまで対応することができるため、最初はスタンドアローン構成でシステムを構築していき、最終的にそのスタンドアローン構成同士を連携させ、大規模な構成にするといったことも容易に対応することができます。そのため、FAST/TOOLSは規模を問わず採用することができます。

大規模なシステムになると、現地でデータを監視せず、中央監視室のような現地のデータを全て監視できるように遠隔地でデータの監視をすることになります。FAST/TOOLSのユーザーインターフェースはWebベースで作成されているため、遠隔監視、制御も容易に行うことができます。FAST/TOOLSの機能の一つにWebサーバーがありますので、Webサーバーとして立ち上げたFAST/TOOLSにネットワーク上からアクセスすることで、Webブラウザから監視制御を行えます。

弊社でFAST/TOOLS監視制御システム構築を行った際も、まずはスタンドアローン構成でシステム構築をし、そこから規模を少しずつ大きくしながら進めていきました。実際に行ってみて感じたことは、特に何の抵抗感もなく規模を大きくすることができたなということです。規模を大きくするのに新たにFAST/TOOLSを追加しますが、他のFAST/TOOLSとの接続はPCの準備やFAST/TOOLS同士の接続設定をすれば、簡単にできました。

スタンドアローンから広域分散構成へ変更した時のイメージ図
図1. スタンドアローンから広域分散構成へ変更した時のイメージ図

規模が大きくなればなるほど、ネットワーク負荷やCPU負荷について心配になりますが、FAST/TOOLSの場合は負荷が低くなるように設計されているため、問題ありません。低速のインターネット回線でも信頼性の高いデータ収集を行えるようになっています。これはデータの値の変化等、イベントが発生した時だけ、データ収集を行うことで、必要なデータだけを収集し、通信帯域を圧迫しないようにしているためです。そのため、専用線を用いず、システム構築を行うことも可能です。また、I/O点数も100万点まで実績があり、スペック上は10000点/秒のデータ収集でも数%のCPU負荷となっています。
また、特定のハードウェアに依存していないため、多様なOSに対応することができています。対応しているOSはWindows、Linux(Red Hat),UNIX(AIX、HP-UX)になります。OSの選択ができるため、環境に応じ、ベストなOSを選定することができるようになっています。

私がFAST/TOOLSを実際に使用して感じたことはFAST/TOOLSは非常に柔軟性が高いということです。柔軟性はFAST/TOOLSでのシステム構成においてだけでなく、実際FAST/TOOLSを使って各種の設定を行った際の感触としても感じました。一つ一つの設定が細かく設定でき、色々な場面で使えるように想定して設計されていると感じました。設定は多数ありますが、FAST/TOOLSではこの各種設定を簡略化する方法についても提供しています。画面設計においては、一度作った図形を流用できるようにシンボルとして登録することができます。また、FAST/TOOLSではフェースプレートという画面を作成することで、一つのまとまった表示内容を流用することができます。これによって、画面作成を簡単に行うことができるようになっています。また、I/Oの設定や各種コンフィグレーションはFAST/TOOLSの設定をインポート/エクスポートするための機能であるクイックロードを使うことで効率よく設定できるようになっています。細かく設定できかつ、その設定を簡単に行えるようにする機能を提供しているということはユーザーに対しきめ細やかなサービスを実現することができるということでもあると考えます。そういった視点でFAST/TOOLSは設計されていると感じました。

以下の図はフェースプレートを用いてPID制御画面を作成したものです。

PID制御画面
図2. PID制御画面

3. FAST/TOOLS監視制御システム構築を通して使用した機能

FAST/TOOLSには多種多様な機能が実装されていますが、今回は弊社でFAST/TOOLS監視制御システム構築を通して使用した機能について紹介します。

3.1〜3.5はスタンドアローン構成でも使用する機能になります。3.6以降の機能は広域分散を行う上で必要となる機能になります。
FAST/TOOLSのシステム構築を行う上で、押さえておきたいのは広域分散システムの振る舞いです。そのため、広域分散を想定したシステム構成とし、また、監視制御システムで必要な機能を中心に使用しました。
以下はシステム構成図になります。これはFAST/TOOLSの画面編集機能で作成したものです。

システム構成図
図3. システム構成図

3-1. DNP3.0通信

FAST/TOOLSは多種多様な通信接続をサポートしています。今回は以前弊社で対応したDNP3.0を用い、FAST/TOOLSとPLCを接続しました。図3システム構成図ではPLCとそれに接続しているFAST/TOOLSがDNP3.0で通信を行っています。FAST/TOOLSがサポートしている通信は他にも横河電機の製品であるSTARDOM,DAQステーション,DAQマスタ,FA-M3,ProSafe-RSとの通信や、それ以外でもModbus(マスタ、スレーブ)、IEC60870-5-101,102,103,104、三菱電機MELSECシリーズとの通信、IEC61850などがあります。

FAST/TOOLSと接続する通信の種類によって、FAST/TOOLSのライセンスの種類は変わり、ライセンス購入時に必要性に応じ通信プロトコルは選択できるようになっています。標準ではSTARDOM,DAQステーション,DAQマスタ,FA-M3,ProSafe-RSやModbus(マスタ、スレーブ)、Beckhoff BK8100があります。その他の通信プロトコルについてはライセンス購入時に選択する必要があります。

3-2. トレンド表示

FAST/TOOLSはトレンド表示を行うためのコンポーネントが用意されており、それを画面に貼り付け、トレンドのペンを割り当てるだけで簡単にトレンド画面が作れるようになっています。基本的にはデフォルトの内容で十分ですが、それをカスタマイズすることも可能です。カスタマイズしたものはテンプレートとして登録し、同じ形式のトレンド表示を流用することができます。
以下のトレンド表示はデフォルトのテンプレートで作成したものです。

トレンド画面
図4. トレンド画面

3-3. ODBCでFAST/TOOLSのデータ取得

FAST/TOOLSは自分自身でデータベースを保持しており、データ収集の結果はFAST/TOOLSのデータベース内に蓄積されます。FAST/TOOLSだけでシステムが完結する場合はそれでよいのですが、収集したデータを元に別のアプリケーションで制御を行う場合はデータを取り出す必要があります。
このような場合、FAST/TOOLSではODBCでの接続をサポートしていますのでODBC経由でデータ取得を行うことができます。データ取得は現在のデータだけでなく、過去のデータも取得できるので、一括でデータを収集し、別に立ち上げているMS SQL ServerやOracle DatabaseなどのRDBMS(Relational Data Base Management System)にデータを格納するといったこともできます。

実際にFAST/TOOLSからODBC経由でのデータ取得をExcelのデータソース接続およびC#(ADO.NETを使用)で実装してみたところ、FAST/TOOLSのデータを自由に取得することが可能でした。I/Oの値を取得する以外にもFAST/TOOLSの各種設定についても取得できるので、設定一覧ファイルなどを簡単に作成することができました。

3-4. 帳票出力

FAST/TOOLSでは帳票出力の機能として、現在の値をCSVファイルに出力することのできるレポート機能が標準で実装されています。CSVファイルへの出力タイミングはタイムスケジュールおよびデータの値変化や通信状態の変化などの状態変化をトリガとして設定することができます。値の収集以外にも現在の通信設定やシステムログなどを出力する機能も標準実装されています。また、レポート機能は標準実装されているものをカスタマイズして収集データを変更することもできます。データ収集のためのクエリはSQLライクな構文であるため、変更が容易になっています。

弊社でシステム構築を行った際、帳票出力にはレポート機能で出力したCSVファイルをエクセルのVBAで一日分にまとめて印刷形式にして対応しました。

3-5. プロセス

FAST/TOOLSのプロセス機能を使うことで、FAST/TOOLSの独自プログラミングにより、収集した値や設定した値などをもとに演算を行うことができます。演算した値をもとに画面制御や設定データを変更することができます。実行タイミングは定周期もしくはシステム起動時ですので、起動時に値を設定して、その後定周期で値を変更するときに有効だと感じました。

独自プログラミングではありますが、プログラミング言語はPASCALライクになっているため、独自とはいっても私はあまり抵抗なく扱うことができました。ただ、ブレークポイントの設定やコードの途中経過を確認することができないので、プログラミングをする際には注意が必要だと感じました。

3-6. FAST/TOOLS同士の接続(ホスト-ホスト接続)

FAST/TOOLSでは前述したとおり、低速回線でもデータ収集が行えるのですが、これを実現するのがFAST/TOOLS同士の接続(ホスト-ホスト接続)になります。ホスト-ホスト接続は通信帯域の節約のために、値やステータスの変化のタイミングでデータ通信が行われるようになっています。
ホスト-ホスト接続では相互に独立して機能する複数の FAST/TOOLS間でリアルタイムデータをやり取りすることができます。1対1だけでなく、1対多、多対多でのデータのやり取りを行えます。

図 3 システム構成図においてはFront EndとPrimary Server、Secondary Serverがホスト-ホスト接続をしています。この接続により、広域ネットワークを経由しても問題なくデータ収集を行えるようシステムを構築しました。

3-7. 冗長化

万が一、サーバーがダウンしたり、通信経路が切断されたりした場合、プラントのデータ収集や、プロセス全体の集中監視が行えなくなってしまいます。早期の復旧を行わないと、重大な事故につながりかねません。そういった事態を回避するため、FAST/TOOLSでは冗長化がサポートされています。
FAST/TOOLSでの冗長化は通信経路の冗長化とサーバーの冗長化があります。
通信経路の冗長化では一つの通信ラインが切断されても、もう一つの通信ラインで通信が行えるようになっています。

図3 システム構成図において、一つのFAST/TOOLSから2本ないし、3本の線が出ているのが、通信経路の冗長化になります。この通信経路の冗長化はホスト-ホスト接続以外にも、冗長化したサーバー同士の経路においても設定することができます。
サーバーの冗長化ではホットスタンバイ形式を採用しており、主サーバーがシステムダウンしても素早く待機サーバーに移行することができます。これによって、待機サーバーが引き続き、プロセスデータの収集を継続して行えるようになっています。このサーバー間においても通信経路を冗長化することができ、信頼性を高めることができます。この通信経路はホスト-ホスト接続とは別の専用線が推奨されています。

図3 システム構成図においてPrimary Serverが主サーバー、Secondary Serverが待機サーバーになります。Primary Serverのシステムがダウンしたり、ネットワークが切断されたりすると、Secondary Serverに制御が移ります。ネットワークの切断は冗長化設定がされていると、一つのネットワークが切断されても、もう一つのネットワークで通信が行えるため、主サーバーと待機サーバーの切り替わりは発生しません。全てのネットワークが切断されたら主サーバーと待機サーバーが切り替わります。

各サーバーは自分の通信経路が正しく切断されているかを確認するためにウオッチドッグの登録をすることができます。ウオッチドッグのタイマはユーザーがタイムアウト時間、リトライ回数、リトライ間隔を設定できます。ウオッチドッグとして登録したIPアドレスのデバイスとの通信が切断された場合、主サーバーはネットワークが切断されたと認識し、主サーバーと待機サーバーは切り替わります。またその時、主サーバーは再起動されます。
冗長化構成を行ったサーバーへアクセスする時、アクセスする側はサーバー冗長化構成が行われていることを意識することなく、アクセスできます。図 3 システム構成図において、WebサーバーはPrimary Server、Secondary Serverのうち、Activeなサーバーからデータを取得するように構築しています。Primary Serverがシステムダウンし、Secondary ServerがActiveになった場合でもWebサーバーは自動的に、Secondary Serverにアクセスすることができました。

3-8. Webサーバー/クライアント

FAST/TOOLSはWebサーバーを立ち上げることにより、インターネットを介していつでもどこでも監視をすることができます。Webサーバーは他のFAST/TOOLSと異なり、自分でデータを保持しません。他のFAST/TOOLSのデータを元にしています。図2システム構成図ではPrimary Server、Secondary Serverで蓄積したデータを使用しています。

WebクライアントはFAST/TOOLSがインストールされている必要がなく、Internet ExplorerなどのWebブラウザから、WebサーバーのFAST/TOOLSにアクセスし、Webブラウザ上で表示するか、Javaアプリケーションとして実行するか選べます。監視制御はWebブラウザ上またはJavaアプリケーションで実行できますが、エンジニアリングはJavaアプリケーションのみサポートしていました。

Webクライアントのブラウザとして、現在サポートしているWebブラウザはInternet ExplorerとFirefoxになります。Google Chromeはサポートされていませんでした。ただ、Javaアプリケーション上で実行する場合は別ウインドウでの操作になりますので、ブラウザについてあまり意識する必要はないと感じました。実際にWebクライアントからFAST/TOOLSのWebサーバーにアクセスしたところ、ブラウザ上に表示されるのでなく、FAST/TOOLSのウインドウそのままが表示されるので、FAST/TOOLSをインストールしている環境と同じ感覚でエンジニアリングができました。

4. 今後確認したいFAST/TOOLSの機能

>FAST/TOOLSでは今回紹介させていただいた機能の他にも各種機能がサポートされています。その中で今後確認したい機能をいくつか紹介します。

4-1. CDSS(Collaboration Decision Support Solution)

生産現場オペレーション全体のキーとなるデータを俯瞰視し、主要な生産設備の監視が可能になる機能です。一つの画面にWebカメラから取り込んだデータやインターネット/イントラネットの情報、PDFドキュメントなどあらゆる種類のデータソースから取得した情報を統合することができます。

4-2. モバイル端末サポート

タブレットコンピュータやスマートフォン、PDAなどのWebブラウザをサポートするモバイル端末からデータ監視を行える機能です。モバイル端末をサポートすることによって、いつでもどこでもデータの監視が行えるようになります。現在リリースされているFAST/TOOLSのバージョンではモバイル端末から制御を行うことはできませんので、制御が必要な場合はPCで行い、通常の監視時はモバイル端末で行うといった選択ができます。WebクライアントではWebブラウザがInternet ExplorerおよびFirefoxをサポートしていましたが、モバイル端末ではHTML5,SVG,JavascriptをサポートしているWebブラウザで表示することができます。そのため、Google Chrome、Safari、Opera、Androidブラウザでの表示が行えます。各端末で確認したいと考えています。

4-3. IEC61850

IEC61850は全世界で多くの変電所が採用している世界標準規格である通信プロトコルです。IEC61850は弊社でも調査を実施している規格であり、非常に興味深いです。

(S.O.)


関連ページへのリンク

関連するソフテックだより

ページTOPへ