「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。
ソフテックだより(発行日順)のページへ
ソフテックだより 技術レポート(技術分野別)のページへ
ソフテックだより 現場の声(シーン別)のページへ
FA-Panel6とは、監視対象の設備から何らかの通信によって各種状態信号や計測データの収集を行うSCADAの一種で、Panel Editor、Panel Brower、Panel Serverの3つのアプリケーションで構成されています。
今回はFA-Panel6を利用した案件の日報機能を焦点に、直面した課題と対策について紹介します。
冒頭でもふれたように、FA-Panel6はPanel Editor、Panel Browser、Panel Serverの3つのアプリケーションで構成されています。これらは連動して下記の図1のように一つのシステムを動かします。
図1. FA-Panel構成
それぞれの機能は以下の通りです。
(1) Panel Editor
画面作成のための編集ツールです。Panel Editorで作成した画面情報はクライアント設定ファイル(XML形式)に保存されます。
(2) Panel Browser
Panel Editorで作成したクライアント設定ファイルを読み込み、監視画面をランタイム実行するためのアプリケーションです。
(3) Panel Server
PLCと通信、アラーム、データログなどの各種バックグラウンド処理を行うためのサーバーアプリケーションです。
FA-Panel6に備わっている機能で特に代表的な6つの機能があります。
これらの機能を使用し、PLCから取得したデータを画面上で管理しやすいように表示や集計することができます。
(1) 通信ドライバ
(2) タグ
(3) グラフィック画面表示
(4) アラーム
(5) ロギング
(6) レポート集計
6番目に挙げたレポート集計の機能の一つに日報機能があります。
レポート収集ではログデータに基づき、日報・月報・年報などのレポート集計データとして自動的に集計することができます。
レポート集計データはレポート画面での表示や、帳票印字に利用されます。
レポート収集の機能の一つである日報機能は、サマリアクションのロギング機能、集計機能、レポート機能によって提供されます。
日報の画面表示では、画面ライブラリの部品として用意されている「日報」を使用します。
この画面ライブラリ部品は、Panel Serverに登録されているサマリアクションに接続して表示対象の日報データ(集計データ)を取得して画面上に表示します。
ロギング処理、集計処理(日報、月報、年報)は、サマリアクションによって行います。
下記の図は日報機能の処理の流れを示したものです。
図2. 日報機能の処理の流れ
FA-Panel6を利用した案件に携わらせていただき、その中でも日報機能は特に力を入れて開発を行いました。そこで対応した課題と解決策を紹介します。
<課題>
日報ファイルにはお客様が既存システムで使用していた独自のレイアウトを用いて出力したいというご要望がありました。
<解決策>
レイアウトマスタファイルの編集
<解説>
FA-Panel6には標準フレームワークと呼ばれるテンプレートがパッケージとしてあらかじめ用意されています。
基本的に開発は標準フレームワークを使用して進めていました。
日報機能のファイル出力は、標準フレームワークに備わっている日報ファイル用テンプレートのファイル(以下レイアウトマスタファイル)を使用しており、
調べるとレイアウトマスタファイルは書式やレイアウト、出力データの形式などについてかなり自由にカスタマイズすることができることがわかりました。
レイアウトマスタファイルを編集することで独自のレイアウトでのファイル出力が可能になりました。
<課題>
標準フレームワークを用いた日報機能は、日報機能で収集した値のみを日報ファイルへ出力するものでした。
お客様から日報ファイルにPanel Browserに手入力で入力した値を表示したいというご要望があり、実装方法を検討しました。
<解決策>
外部アプリケーションによるファイル出力
<解説>
検討の結果対策として外部アプリケーションを用意し、そのアプリでファイル出力を行うことにしました。
処理の流れは下記のフローチャートの通りです。
図3. レポート出力フローチャート
(1) 任意のタイミングでPanel Browser上に設置したファイル出力実行ボタンをユーザーが押下します。
(2) 出力するレポートのパラメータ(レポートの期間など)をtxtファイルに書き込みます。
(3) Panel Serverのアクション機能を用いて外部アプリケーションを起動します。
(4) 外部アプリケーションが(2)で作成したtxtファイルを読み込みます。
(5) 外部アプリケーションが読み込んだパラメータを用いて収集データをPanel Serverから、手作業で入力された値をPanel Browserから、取得します。
(6) レイアウトマスタファイルをコピーし、目的のフォルダに収集データを書き込み保存します。
(7) 外部アプリケーションが終了します。
今回はFA-Panel6のレポート機能のうちの一つ、日報機能を用いたファイル出力について標準フレームワークのみでは解決できない課題と対策について紹介しました。
FA-Panel6では備わっている標準フレームワークの機能を用いることで汎用的に画面表示やデータ集計を行うことができます。
それに加えて標準フレームワークに備わった機能だけでなく、その他の外部アプリケーションなどと連携することによって、さらに実現できる機能の幅を広げることができます。
(R.K.)
関連ページへのリンク
関連するソフテックだより